001/* 002 * Copyright 2002-2012 the original author or authors. 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * https://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017package org.springframework.mock.web.portlet; 018 019import java.util.Map; 020import javax.portlet.ResourceURL; 021 022/** 023 * Mock implementation of the {@link javax.portlet.ResourceURL} interface. 024 * 025 * @author Juergen Hoeller 026 * @since 3.0 027 */ 028public class MockResourceURL extends MockBaseURL implements ResourceURL { 029 030 private String resourceID; 031 032 private String cacheability; 033 034 035 //--------------------------------------------------------------------- 036 // ResourceURL methods 037 //--------------------------------------------------------------------- 038 039 @Override 040 public void setResourceID(String resourceID) { 041 this.resourceID = resourceID; 042 } 043 044 public String getResourceID() { 045 return this.resourceID; 046 } 047 048 @Override 049 public void setCacheability(String cacheLevel) { 050 this.cacheability = cacheLevel; 051 } 052 053 @Override 054 public String getCacheability() { 055 return this.cacheability; 056 } 057 058 059 @Override 060 public String toString() { 061 StringBuilder sb = new StringBuilder(); 062 sb.append(encodeParameter("resourceID", this.resourceID)); 063 if (this.cacheability != null) { 064 sb.append(";").append(encodeParameter("cacheability", this.cacheability)); 065 } 066 for (Map.Entry<String, String[]> entry : this.parameters.entrySet()) { 067 sb.append(";").append(encodeParameter("param_" + entry.getKey(), entry.getValue())); 068 } 069 return (isSecure() ? "https:" : "http:") + 070 "//localhost/mockportlet?" + sb.toString(); 071 } 072 073}