public BaseURLImpl(PortletResponseContext responseContext, PortletURLProvider portletURLProvider, Copy copy) { this(responseContext, portletURLProvider); switch (copy) { case NONE: urlProvider.clearParameters(windowId, PortletURLProvider.ParamType.PUBLIC); case PUBLIC: urlProvider.clearParameters(windowId, PortletURLProvider.ParamType.RENDER); break; case ALL: } }
public String getCacheability() { return urlProvider.getCacheability(); }
@Override public String getFragmentIdentifier() { return urlProvider.getFragmentIdentifier(); }
public Map<String, String[]> getParameterMap() { Map<String, String[]> parameters = new HashMap<String, String[]>(); Set<String> names = urlProvider.getPrivateParameterNames(windowId); for (String name : names) { String[] vals = urlProvider.getParameterValues(windowId, name); parameters.put(name, vals); } if (renderURL) { names = urlProvider.getPublicParameterNames(windowId); for (String name : names) { String[] vals = urlProvider.getParameterValues(windowId, name); if (vals != null) { parameters.put(name, vals); } } } return parameters; }
public void setParameters(Map<String, String[]> parameters) { ArgumentUtility.validateNotNull("parameters", parameters); // validate map first for (String key : parameters.keySet()) { String[] vals = parameters.get(key); if (key == null || vals == null) { throw new IllegalArgumentException( "parameters map contains a null key or values array"); } } // Remove the parameters that are gone Set<String> currNames = urlProvider.getPrivateParameterNames(windowId); currNames.removeAll(parameters.keySet()); for (String name : currNames) { urlProvider.removeParameter(windowId, name); } // Now set the new values for (String key : parameters.keySet()) { urlProvider.setParameter(windowId, key, parameters.get(key)); } }
public void addProperty(String key, String value) { ArgumentUtility.validateNotEmpty("key", key); if (value != null) { Map<String, List<String>> properties = urlProvider.getProperties(); List<String> values = properties.get(key); if (values == null) { values = new ArrayList<String>(); urlProvider.getProperties().put(key, values); } values.add(value); } }
/** * For creating a new object from scratch * * @param urlProvider * @param windowId */ public RenderParametersImpl(PortletURLProvider urlProvider, String windowId) { super(urlProvider, windowId, ParamType.RENDER); prpNames = urlProvider.getPublicParameterNames(windowId); }
public PortletMode getPortletMode() { return urlProvider.getPortletMode(); }
/** * Regular constructor used by extending classes for instantiation. * @param urlProvider * @param windowId * @param type */ protected PortletParametersImpl(PortletURLProvider urlProvider, String windowId, ParamType type) { this.urlProvider = urlProvider; this.windowId = windowId; this.type = type; this.params = this.urlProvider.getParameterMap(windowId, type); if (isTrace) { LOGGER.debug("Created PortletParameters object for window: " + windowId + ", Type: " + type); } }
public Appendable append(Appendable out, boolean escapeXML) throws IOException { filterURL(); urlProvider.append(out, escapeXML); return out; }
public void setProperty(String key, String value) { ArgumentUtility.validateNotEmpty("key", key); Map<String, List<String>> properties = urlProvider.getProperties(); if (value == null) { properties.remove(key); } else { List<String> values = properties.get(key); if (values == null) { values = new ArrayList<String>(); properties.put(key, values); } else { values.clear(); } values.add(value); } }
/** * @param urlProvider * @param windowId * @param type */ public MutableRenderParametersImpl(PortletURLProvider urlProvider, String windowId) { super(urlProvider, windowId, ParamType.RENDER); prpNames = urlProvider.getPublicParameterNames(windowId); }