/* Copyright (c) 2001 - 2011 TOPP - www.openplans.org. All rights reserved. * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.gwc.web; import java.io.Serializable; import org.apache.wicket.ResourceReference; import org.geoserver.web.GeoServerBasePage; /** * Utility class used to lookup icons for various catalog objects */ @SuppressWarnings("serial") public class GWCIconFactory implements Serializable { public static final ResourceReference RASTER_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/geosilk/raster.png"); public static final ResourceReference VECTOR_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/geosilk/vector.png"); public static final ResourceReference MAP_ICON = new ResourceReference(GeoServerBasePage.class, "img/icons/geosilk/map.png"); public static final ResourceReference MAP_STORE_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/geosilk/server_map.png"); public static final ResourceReference POINT_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/bullet_blue.png"); public static final ResourceReference LINE_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/line_blue.png"); public static final ResourceReference POLYGON_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/shape_square_blue.png"); public static final ResourceReference GEOMETRY_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/geosilk/vector.png"); public static final ResourceReference UNKNOWN_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/error.png"); public static final ResourceReference GROUP_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/layers.png"); public static final ResourceReference DISABLED_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/error.png"); public static final ResourceReference ENABLED_ICON = new ResourceReference( GeoServerBasePage.class, "img/icons/silk/tick.png"); static final GWCIconFactory INSTANCE = new GWCIconFactory(); public static final GWCIconFactory get() { return INSTANCE; } private GWCIconFactory() { // private constructor, this is a singleton } /** * Returns the appropriate icon for the specified layer type. * * @param info * @return */ public ResourceReference getSpecificLayerIcon(final CachedLayerInfo.TYPE type) { switch (type) { case RASTER: return RASTER_ICON; case VECTOR: return VECTOR_ICON; case LAYERGROUP: return GROUP_ICON; case WMS: return MAP_ICON; default: return UNKNOWN_ICON; } } /** * Returns a reference to a general purpose icon to indicate an enabled/properly configured * resource */ public ResourceReference getEnabledIcon() { return ENABLED_ICON; } /** * Returns a reference to a general purpose icon to indicate a * disabled/missconfigured/unreachable resource */ public ResourceReference getDisabledIcon() { return DISABLED_ICON; } public ResourceReference getErrorIcon() { return UNKNOWN_ICON; } }