Examples of StyleParameterFilter


Examples of org.geoserver.gwc.layer.StyleParameterFilter

        GeoServerAjaxFormLink addStyleFilterLink = new GeoServerAjaxFormLink("addStyleFilter") {
            private static final long serialVersionUID = 1L;

            @Override
            protected void onClick(AjaxRequestTarget target, Form form) {
                StyleParameterFilter newFilter = new StyleParameterFilter();
                newFilter.setLayer((LayerInfo)layerModel.getObject());
               
                addFilter(newFilter);

                target.addComponent(container);
            }
        };
        addStyleFilterLink.add(new Icon("addIcon", GWCIconFactory.ADD_ICON));
        add(addStyleFilterLink);
       
        // FIXME: make this extensible so new kinds of filter can be supported by
        ArrayList<Class<? extends ParameterFilter>> filterTypes =
                new ArrayList<Class<? extends ParameterFilter>>();
        filterTypes.add(StringParameterFilter.class);
        filterTypes.add(FloatParameterFilter.class);
        filterTypes.add(RegexParameterFilter.class);
       
       
        availableFilterTypes = new DropDownChoice<Class<? extends ParameterFilter>>
            (       "availableFilterTypes",
                    new Model<Class<? extends ParameterFilter>>(),
                    new Model<ArrayList<Class<? extends ParameterFilter>>>(filterTypes),
                    new IChoiceRenderer<Class<? extends ParameterFilter>>() {

                        /** serialVersionUID */
                        private static final long serialVersionUID = 1L;

                        @Override
                        public Object getDisplayValue(
                                Class<? extends ParameterFilter> object) {
                            String resource = "ParameterFilterEditor.filtername."
                                    +object.getCanonicalName();
                            try {
                                // Try to look up a localized name for the class
                                return getLocalizer().getString(resource,
                                        ParameterFilterEditor.this);
                            } catch (MissingResourceException ex) {
                                // Use the simple name as a backup
                                if(LOGGER.isLoggable(Level.CONFIG))
                                    LOGGER.log(Level.CONFIG, "Could not find localization resource"+
                                " for ParameterFilter subclass "+object.getCanonicalName());
                               
                                return object.getSimpleName();
                            }
                        }

                        @Override
                        public String getIdValue(
                                Class<? extends ParameterFilter> object,
                                int index) {
                            return Integer.toString(index);
                        }
               
            });
        availableFilterTypes.setOutputMarkupId(true);
        add(availableFilterTypes);
       
        newFilterKey = new TextField<String>("newFilterKey", Model.of(""));
        add(newFilterKey);
       
        // TODO update this to eliminate keys that are in use
        final RepeatingView commonKeys = new RepeatingView("commonKeys");
        for(String key: COMMON_KEYS) {
            commonKeys.add(new Label(commonKeys.newChildId(), key));
        }
        add(commonKeys);
       
        GeoServerAjaxFormLink addFilterLink = new GeoServerAjaxFormLink("addFilter") {
            private static final long serialVersionUID = 1L;

            @Override
            protected void onClick(AjaxRequestTarget target, Form form) {
                availableFilterTypes.processInput();
                newFilterKey.processInput();
                String key = newFilterKey.getModelObject();
                if(key == null || key.isEmpty()){
                    ParamResourceModel rm = new ParamResourceModel("ParameterFilterEditor.nonEmptyFilter", null, "");
                    error(rm.getString());
                }else{
                    Class<? extends ParameterFilter> type = availableFilterTypes.getModelObject();

                    try {
                        ParameterFilter newFilter = type.getConstructor().newInstance();
                        newFilter.setKey(key);
                        addFilter(newFilter);
                        newFilterKey.setModel(Model.of("")); // Reset the key field
                    } catch (NoSuchMethodException ex) {
                        LOGGER.log(Level.WARNING, "No Default Constructor for "+type ,ex);
                    } catch (InvocationTargetException ex) {
View Full Code Here

Examples of org.geoserver.gwc.layer.StyleParameterFilter

        assertEquals(3, filters.size()); // Float, String, and a Style filter that should replace
                                         // the old String style filter.

        FloatParameterFilter floatFilter=null;
        StringParameterFilter stringFilter=null;
        StyleParameterFilter styleFilter=null;
       
        for(ParameterFilter filter: filters) {
            if(filter instanceof FloatParameterFilter) floatFilter = (FloatParameterFilter) filter;
            if(filter instanceof StringParameterFilter) stringFilter = (StringParameterFilter) filter;
            if(filter instanceof StyleParameterFilter) styleFilter = (StyleParameterFilter) filter;
        }

        assertNotNull(floatFilter);
        assertNotNull(stringFilter);
        assertNotNull(styleFilter);

        assertEquals("ELEVATION", floatFilter.getKey());
        assertEquals("10.1", floatFilter.getDefaultValue());
        assertEquals(1.0E-2f, floatFilter.getThreshold());
        assertEquals(ImmutableList.of(new Float(10.1f), new Float(10.2f), new Float(10.3f)),
                floatFilter.getValues());

        assertEquals("BGCOLOR", stringFilter.getKey());
        assertEquals("0xFFFFFF", stringFilter.getDefaultValue());
        assertEquals(ImmutableList.of("0x000000", "0x888888"), stringFilter.getLegalValues());
       
        assertEquals("STYLES", styleFilter.getKey());
    }
View Full Code Here

Examples of org.geoserver.gwc.layer.StyleParameterFilter

        assertEquals(6, info.getMetaTilingY());

        List<ParameterFilter> filters = Lists.newArrayList(info.getParameterFilters());
        assertEquals(1, filters.size());
       
        StyleParameterFilter styleFilter=(StyleParameterFilter) filters.get(0);

        assertEquals("STYLES", styleFilter.getKey());
        assertEquals("capitals", styleFilter.getDefaultValue());
        assertEquals(ImmutableSet.of("points", "bergs"), styleFilter.getStyles());
    }
View Full Code Here

Examples of org.geoserver.gwc.layer.StyleParameterFilter

        List<ParameterFilter> filters = Lists.newArrayList(info.getParameterFilters());
        assertEquals(2, filters.size());

        FloatParameterFilter floatFilter=null;
        StyleParameterFilter styleFilter=null;
       
        for(ParameterFilter filter: filters) {
            if(filter instanceof FloatParameterFilter) floatFilter = (FloatParameterFilter) filter;
            if(filter instanceof StyleParameterFilter) styleFilter = (StyleParameterFilter) filter;
        }

        assertNotNull(floatFilter);
        assertNotNull(styleFilter);

        assertEquals("ELEVATION", floatFilter.getKey());
        assertEquals("10.1", floatFilter.getDefaultValue());
        assertEquals(1.0E-2f, floatFilter.getThreshold());
        assertEquals(ImmutableList.of(new Float(10.1f), new Float(10.2f), new Float(10.3f)),
                floatFilter.getValues());

        assertEquals("STYLES", styleFilter.getKey());
        assertEquals("capitals", styleFilter.getDefaultValue());
        assertEquals(ImmutableSet.of("burg", "point"), styleFilter.getStyles());
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.