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 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; }