public static void updateStringParameterFilter(final GeoServerTileLayerInfo tileLayerInfo, final String paramKey, boolean createParam, final String defaultValue, final Set<String> allowedValues) { removeParameterFilter(tileLayerInfo, paramKey); if (createParam && allowedValues != null && allowedValues.size() > 0) { // make sure default value is among the list of allowed values Set<String> values = new TreeSet<String>(allowedValues); StringParameterFilter stringListFilter = new StringParameterFilter(); stringListFilter.setKey(paramKey); stringListFilter.setDefaultValue(defaultValue == null ? "" : defaultValue); stringListFilter.getValues().addAll(values); tileLayerInfo.getParameterFilters().add(stringListFilter); } }
/** * Add a {@link StringParameterFilter} to the layer, replacing any existing filter for the same * parameter. * * @param tileLayerInfo layer to update the filter on * @param paramKey key for the parameter * @param createParam create a new filter if there is none to replace for the specified key * @param defaultValue default value * @param allowedValues legal values for the parameter */ public static void updateStringParameterFilter( final GeoServerTileLayerInfo tileLayerInfo, final String paramKey, boolean createParam, final String defaultValue, final Set<String> allowedValues) { createParam |= tileLayerInfo.removeParameterFilter(paramKey); if (createParam && allowedValues != null && allowedValues.size() > 0) { // make sure default value is among the list of allowed values Set<String> values = new TreeSet<String>(allowedValues); StringParameterFilter stringListFilter = new StringParameterFilter(); stringListFilter.setKey(paramKey); stringListFilter.setDefaultValue(defaultValue == null ? "" : defaultValue); values.addAll(stringListFilter.getValues()); stringListFilter.setValues(new ArrayList<String>(values)); tileLayerInfo.addParameterFilter(stringListFilter); } }
@Override public StringParameterFilter clone() { StringParameterFilter clone = new StringParameterFilter(); clone.setDefaultValue(getDefaultValue()); clone.setKey(getKey()); if (values != null) { clone.values = new ArrayList<String>(values); } clone.setNormalize(getNormalize().clone()); return clone; } }
@Before public void setUp() { filter = new StringParameterFilter(); filter.setKey("TEST"); filter.setValues(Arrays.asList("foo", "Bar", "BAZ")); filter.setDefaultValue("Default"); xs = new GeoWebCacheXStream(); xs = XMLConfiguration.getConfiguredXStream(xs, new StaticWebApplicationContext()); }
strParam.setDefaultValue("now"); strParam.getValues().addAll(Arrays.asList("today", "yesterday", "tomorrow")); strParam2.setDefaultValue("1"); strParam2.getValues().addAll(Arrays.asList("1", "2", "3")); info.getParameterFilters().add(strParam2);
filter.setKey("STYLES"); filter.setValues(Arrays.asList("polygon", "point")); filter.setDefaultValue("polygon");
EasyMock.expect(layer.getName()).andStubReturn("testLayer"); StringParameterFilter testFilter = new StringParameterFilter(); testFilter.setDefaultValue("DEFAULT"); testFilter.setKey("testKey"); testFilter.setValues(Arrays.asList("testValue2"));
parameterFilter.setDefaultValue("population"); parameterFilter.setValues(Arrays.asList("population", "polygon", "pophatch"));
testFilter.setDefaultValue("DEFAULT"); testFilter.setKey(paramKey); testFilter.setValues(Arrays.asList("keep1", "keep2", "keep3"));
filter.setKey("STYLES"); filter.setValues(Arrays.asList("polygon", "point")); filter.setDefaultValue("polygon");