public Object getDisplayValue(Object object) { return ((StyleInfo) object).prefixedName(); }
public Object getDisplayValue(StyleInfo object) { return object.prefixedName(); }
/** * Set/update the availableStyles and defaultStyle based on the given GeoServer layer. * * @param layer */ public void setLayer(LayerInfo layer) { availableStyles = new TreeSet<String>(); for (StyleInfo style : layer.getStyles()) { availableStyles.add(style.prefixedName()); } if (layer.getDefaultStyle() != null) { defaultStyle = layer.getDefaultStyle().prefixedName(); } else { defaultStyle = null; } }
public void updateStyleImage(AjaxRequestTarget target) { String url = wmsURL + "REQUEST=GetLegendGraphic&VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&STRICT=false&style="; StyleInfo styleInfo = (StyleInfo) styleInfoModel.getObject(); if (styleInfo != null) { String style = styleInfo.prefixedName(); url += style; urlModel.setObject(url); if (target != null) { target.add(image); } } } }
final StyleInfo newStyle = (StyleInfo) newValues.get(propIndex); final String oldStyleName = oldStyle.prefixedName(); final String newStyleName = newStyle.prefixedName(); if (!oldStyleName.equals(newStyleName)) { properties.put("defaultStyle", newStyleName);
private void handleCommonStyleElements(StyleInfo defaultStyle) { Style ftStyle; try { ftStyle = defaultStyle.getStyle(); } catch (IOException e) { throw new RuntimeException(e); } element("Name", defaultStyle.prefixedName()); if (ftStyle.getDescription() != null) { // PMT: WMS capabilities requires at least a title, // if description's title is null, use the name // for title. if (ftStyle.getDescription().getTitle() != null) { element("Title", ftStyle.getDescription().getTitle()); } else { element("Title", defaultStyle.prefixedName()); } element("Abstract", ftStyle.getDescription().getAbstract()); } else { element("Title", defaultStyle.prefixedName()); } }
final String styleName = modifiedStyle.prefixedName(); log.finer("Handling style modification: " + styleName);
/** * The default style name for the layer, as advertised by its backing {@link * LayerInfo#getDefaultStyle()}, or {@code null} if this tile layer is backed by a {@link * LayerGroupInfo}. * * <p>As the default style is always cached, its name is not stored as part of this tile layer's * {@link GeoServerTileLayerInfo}. Instead it's 'live' and retrieved from the current {@link * LayerInfo} every time this method is invoked. * * @see org.geowebcache.layer.TileLayer#getStyles() */ @Override public String getStyles() { LayerGroupInfo layerGroupInfo = getLayerGroupInfo(); if (layerGroupInfo != null) { // there's no such thing as default style for a layer group return null; } LayerInfo layerInfo = getLayerInfo(); StyleInfo defaultStyle = layerInfo.getDefaultStyle(); if (defaultStyle == null) { setConfigErrorMessage("Underlying GeoSever Layer has no default style"); return null; } return defaultStyle.prefixedName(); }
private void handleStyleRenamed(final String oldStyleName, final String newStyleName) { if (oldStyleName.equals(newStyleName)) { return; } List<GeoServerTileLayer> affectedLayers; affectedLayers = mediator.getTileLayersForStyle(oldStyleName); for (GeoServerTileLayer tl : affectedLayers) { LayerInfo layerInfo = tl.getLayerInfo(); if (layerInfo == null) { // no extra styles for layer groups continue; } GeoServerTileLayerInfo info = tl.getInfo(); ImmutableSet<String> styleNames = info.cachedStyles(); if (styleNames.contains(oldStyleName)) { tl.resetParameterFilters(); // pity, we don't have a way to just rename a style in GWC mediator.truncateByLayerAndStyle(tl.getName(), oldStyleName); Set<String> newStyles = new HashSet<String>(styleNames); newStyles.remove(oldStyleName); newStyles.add(newStyleName); String defaultStyle = layerInfo.getDefaultStyle() == null ? null : layerInfo.getDefaultStyle().prefixedName(); TileLayerInfoUtil.setCachedStyles(info, defaultStyle, newStyles); mediator.save(tl); } } }
private void handleCommonStyleElements(StyleInfo styleInfo) { Style ftStyle; try { ftStyle = styleInfo.getStyle(); } catch (IOException e) { throw new RuntimeException(e); } element("Name", styleInfo.prefixedName()); if (ftStyle.getDescription() != null) { if (ftStyle.getDescription().getTitle() != null) { element("Title", ftStyle.getDescription().getTitle()); } else { // Title is not required by the SLD spec, but it is required // by the WMS 1.1 DTD so we have to provide something. element("Title", styleInfo.prefixedName()); } element("Abstract", ftStyle.getDescription().getAbstract()); } }
context.put("id", olPreview.getMarkupId()); context.put("layer", getStylePage().getLayerInfo().prefixedName()); context.put("style", getStylePage().getStyleInfo().prefixedName());
log.log( Level.SEVERE, "Failed to layers associated to style " + style.prefixedName(), e);
log.log( Level.SEVERE, "Failed to load groups associated to style " + style.prefixedName(), e);
public static GeoServerTileLayerInfoImpl load(final LayerInfo layer) { MetadataMap metadataMap = layer.getMetadata(); if (!hasTileLayerDef(metadataMap)) { return null; } GeoServerTileLayerInfoImpl tileLayerInfo = load(metadataMap); if (metadataMap.containsKey(CONFIG_KEY_CACHED_STYLES)) { final String defaultStyle = layer.getDefaultStyle() == null ? "" : layer.getDefaultStyle().prefixedName(); String cachedStylesStr = metadataMap.get(CONFIG_KEY_CACHED_STYLES, String.class); Set<String> cachedStyles = unmarshalSet(cachedStylesStr); TileLayerInfoUtil.setCachedStyles(tileLayerInfo, defaultStyle, cachedStyles); } TileLayerInfoUtil.checkAutomaticStyles(layer, tileLayerInfo); tileLayerInfo.setName(tileLayerName(layer)); tileLayerInfo.setId(layer.getId()); return tileLayerInfo; }
ft.setStyles(layer.getDefaultStyle().prefixedName()); ft.setSrs(layer.getResource().getSRS()); ft.setBbox(bboxToString(layer.getResource().getNativeBoundingBox()));
@Test public void testCreateCollectionSimpleLayerWithCustomStyle() throws Exception { // setup the granules setupLayer( "/test123-product-granules-rgb.json", "/test123-layer-simple-graystyle.json", "gs", Boolean.FALSE); LayerInfo layer = validateBasicLayerStructure( "gs", "gs:test123", new String[] {"RED_BAND", "GREEN_BAND", "BLUE_BAND"}); // ... its style is a gray one based on the RED band assertThat(layer.getDefaultStyle().prefixedName(), equalTo("gs:test123")); ChannelSelection cs = getChannelSelection(layer); assertNull(cs.getRGBChannels()[0]); assertNull(cs.getRGBChannels()[1]); assertNull(cs.getRGBChannels()[2]); assertEquals("1", cs.getGrayChannel().getChannelName().evaluate(null, String.class)); BufferedImage image = getAsImage("wms/reflect?layers=gs:test123&format=image/png&width=200", "image/png"); File expected = new File("src/test/resources/test123-simple-gray.png"); ImageAssert.assertEquals(expected, image, 1000); }
@Test public void testBandsFlagsGrayFlag() throws Exception { setupLayer( "/test123-product-granules-bands-flags.json", "/test123-layer-bands-flags-grayFlag.json", "gs", Boolean.TRUE); // check the configuration elements are there too LayerInfo layer = validateBasicLayerStructure( "gs", "gs:test123", new String[] { "VNIR_0", "VNIR_1", "VNIR_2", "QUALITY", "CLOUDSHADOW", "HAZE", "SNOW" }); // ... its style has been generated assertThat(layer.getDefaultStyle().prefixedName(), equalTo("gs:test123")); // ... and it uses only a gray band, the snow flag ChannelSelection cs = getChannelSelection(layer); assertNull(cs.getRGBChannels()[0]); assertNull(cs.getRGBChannels()[1]); assertNull(cs.getRGBChannels()[2]); assertEquals("7", cs.getGrayChannel().getChannelName().evaluate(null, String.class)); // the image is almost black, but not fully BufferedImage image = getAsImage("wms/reflect?layers=gs:test123&format=image/png&width=200", "image/png"); File expected = new File("src/test/resources/test123-gray-snow.png"); ImageAssert.assertEquals(expected, image, 1000); }
@Test public void testCreateCollectionMultiband() throws Exception { // setup the granules setupLayer( "/test123-product-granules-multiband.json", "/test123-layer-multiband.json", "gs", Boolean.TRUE); // check the configuration elements are there too LayerInfo layer = validateBasicLayerStructure( "gs", "gs:test123", new String[] {"B02", "B03", "B04", "B08"}); // ... its style is a RGB one based on the B2, B3, B4 assertThat(layer.getDefaultStyle().prefixedName(), equalTo("gs:test123")); ChannelSelection cs = getChannelSelection(layer); assertEquals("4", cs.getRGBChannels()[0].getChannelName().evaluate(null, String.class)); assertEquals("2", cs.getRGBChannels()[1].getChannelName().evaluate(null, String.class)); assertEquals("1", cs.getRGBChannels()[2].getChannelName().evaluate(null, String.class)); assertNull(cs.getGrayChannel()); BufferedImage image = getAsImage("wms/reflect?layers=gs:test123&format=image/png&width=200", "image/png"); File expected = new File("src/test/resources/test123-multiband.png"); ImageAssert.assertEquals(expected, image, 1000); }
@Test public void testBandsFlagsMix() throws Exception { setupLayer( "/test123-product-granules-bands-flags.json", "/test123-layer-bands-flags-browseMix.json", "gs", Boolean.TRUE); // check the configuration elements are there too LayerInfo layer = validateBasicLayerStructure( "gs", "gs:test123", new String[] { "VNIR_0", "VNIR_1", "VNIR_2", "QUALITY", "CLOUDSHADOW", "HAZE", "SNOW" }); // ... its style has been generated assertThat(layer.getDefaultStyle().prefixedName(), equalTo("gs:test123")); // ... and it uses all two vnir bands and a flag ChannelSelection cs = getChannelSelection(layer); assertEquals("1", cs.getRGBChannels()[0].getChannelName().evaluate(null, String.class)); assertEquals("2", cs.getRGBChannels()[1].getChannelName().evaluate(null, String.class)); assertEquals("7", cs.getRGBChannels()[2].getChannelName().evaluate(null, String.class)); assertNull(cs.getGrayChannel()); BufferedImage image = getAsImage("wms/reflect?layers=gs:test123&format=image/png&width=200", "image/png"); File expected = new File("src/test/resources/test123-vnir-snow.png"); ImageAssert.assertEquals(expected, image, 1000); }
@Test public void testBandsFlagsAll() throws Exception { setupLayer( "/test123-product-granules-bands-flags.json", "/test123-layer-bands-flags-all.json", "gs", Boolean.TRUE); // check the configuration elements are there too LayerInfo layer = validateBasicLayerStructure( "gs", "gs:test123", new String[] { "VNIR_0", "VNIR_1", "VNIR_2", "QUALITY", "CLOUDSHADOW", "HAZE", "SNOW" }); // ... its style has been generated assertThat(layer.getDefaultStyle().prefixedName(), equalTo("gs:test123")); // ... and it uses all VNIR bands ChannelSelection cs = getChannelSelection(layer); assertEquals("1", cs.getRGBChannels()[0].getChannelName().evaluate(null, String.class)); assertEquals("2", cs.getRGBChannels()[1].getChannelName().evaluate(null, String.class)); assertEquals("3", cs.getRGBChannels()[2].getChannelName().evaluate(null, String.class)); assertNull(cs.getGrayChannel()); BufferedImage image = getAsImage("wms/reflect?layers=gs:test123&format=image/png&width=200", "image/png"); File expected = new File("src/test/resources/test123-vnir.png"); ImageAssert.assertEquals(expected, image, 1000); }