private void saveGridSet(GridSet gridSet) throws IOException { addOrReplaceGridSet(new XMLGridSet(gridSet)); save(); }
private void loadGridSets() { if (getGwcConfig().getGridSets() != null) { this.gridSets = getGwcConfig() .getGridSets() .stream() .map( (xmlGridSet) -> { if (log.isDebugEnabled()) { log.debug("Reading " + xmlGridSet.getName()); } GridSet gridSet = xmlGridSet.makeGridSet(); log.info("Read GridSet " + gridSet.getName()); return gridSet; }) .collect( Collectors.toMap( GridSet::getName, Function.identity(), (GridSet x, GridSet y) -> { throw new IllegalStateException( "Gridsets with duplicate name " + x.getName()); }, HashMap::new)); } }
/** Copy constructor */ public XMLGridSet(XMLGridSet orig) { setAlignTopLeft(orig.getAlignTopLeft()); setExtent(orig.getExtent() == null ? null : new BoundingBox(orig.getExtent())); setResolutions(orig.getResolutions() == null ? null : orig.getResolutions().clone()); setLevels(orig.getLevels()); setScaleDenominators( orig.getScaleDenominators() == null ? null : orig.getScaleDenominators().clone()); setMetersPerUnit(orig.getMetersPerUnit()); setName(orig.getName()); setDescription(orig.getDescription()); setPixelSize(orig.getPixelSize()); setScaleNames(orig.getScaleNames() == null ? null : orig.getScaleNames().clone()); setSrs(orig.getSrs()); setTileWidth(orig.getTileWidth()); setTileHeight(orig.getTileHeight()); }
public GridSet makeGridSet() { if (getTileWidth() == null) { setTileWidth(256); if (getTileHeight() == null) { setTileHeight(256); if (getAlignTopLeft() == null) { setAlignTopLeft(false); if (getPixelSize() == null) { setPixelSize(GridSetFactory.DEFAULT_PIXEL_SIZE_METER); if (getYCoordinateFirst() == null) { setYCoordinateFirst(false); String name = getName(); SRS srs = getSrs(); BoundingBox extent = getExtent(); Boolean alignTopLeft = getAlignTopLeft(); double[] resolutions = getResolutions(); double[] scaleDenominators = getScaleDenominators(); Double metersPerUnit = getMetersPerUnit(); Double pixelSize = getPixelSize(); String[] scaleNames = getScaleNames(); Integer tileWidth = getTileWidth(); Integer tileHeight = getTileHeight(); Boolean yCoordinateFirst = getYCoordinateFirst(); if (getResolutions() != null || getScaleDenominators() != null) {
/** Builds an XMLGridSet from a GridSet */ public XMLGridSet(GridSet gset) { setAlignTopLeft(gset.isTopLeftAligned()); setYCoordinateFirst(gset.isyCoordinateFirst()); setExtent(gset.getOriginalExtent()); setLevels(null); if (gset.isResolutionsPreserved()) { setResolutions(resolutions(gset.getGridLevels())); setScaleDenominators(null); } else { setResolutions(null); setScaleDenominators(scaleDenominators(gset.getGridLevels())); } setMetersPerUnit(gset.getMetersPerUnit()); setName(gset.getName()); setDescription(gset.getDescription()); setPixelSize(gset.getPixelSize()); setScaleNames(scaleNames(gset.getGridLevels())); setSrs(gset.getSrs()); setTileWidth(gset.getTileWidth()); setTileHeight(gset.getTileHeight()); }
public void testModifyGridsetTruncates() throws Exception { final String oldName = "EPSG:4326"; final String newName = "MyEPSG:4326"; final GridSet oldGridset = gridSetBroker.get(oldName); final GridSet newGridset; { XMLGridSet xmlGridSet = new XMLGridSet(oldGridset); xmlGridSet.setName(newName); // make it so the gridset forces truncation xmlGridSet.setAlignTopLeft(!xmlGridSet.getAlignTopLeft()); newGridset = xmlGridSet.makeGridSet(); } XMLConfiguration xmlConfig = mock(XMLConfiguration.class); mediator = spy(mediator); when(mediator.getXmlConfiguration()).thenReturn(xmlConfig); when(tld.getConfiguration(same(tileLayer))).thenReturn(config); when(tld.getConfiguration(same(tileLayerGroup))).thenReturn(config); mediator.modifyGridSet(oldName, newGridset); verify(storageBroker, times(1)).deleteByGridSetId(eq(tileLayer.getName()), eq(oldName)); verify(storageBroker, times(1)) .deleteByGridSetId(eq(tileLayerGroup.getName()), eq(oldName)); }
public void testModifyGridsetNoNeedToTruncate() throws Exception { final String oldName = "EPSG:4326"; final String newName = "MyEPSG:4326"; final GridSet oldGridset = gridSetBroker.get(oldName); final GridSet newGridset; { XMLGridSet xmlGridSet = new XMLGridSet(oldGridset); xmlGridSet.setName(newName); newGridset = xmlGridSet.makeGridSet(); } XMLConfiguration xmlConfig = mock(XMLConfiguration.class); mediator = spy(mediator); when(mediator.getXmlConfiguration()).thenReturn(xmlConfig); assertNotNull(tileLayer.getGridSubset(oldName)); assertNotNull(tileLayerGroup.getGridSubset(oldName)); when(tld.getConfiguration(same(tileLayer))).thenReturn(config); when(tld.getConfiguration(same(tileLayerGroup))).thenReturn(config); mediator.modifyGridSet(oldName, newGridset); assertNull(tileLayer.getGridSubset(oldName)); assertNull(tileLayerGroup.getGridSubset(oldName)); assertNotNull(tileLayer.getGridSubset(newName)); assertNotNull(tileLayerGroup.getGridSubset(newName)); verify(xmlConfig, times(1)).removeGridset(eq(oldName)); verify(xmlConfig, times(1)).addOrReplaceGridSet(eq(new XMLGridSet(newGridset))); verify(xmlConfig, times(1)).save(); assertNull(gridSetBroker.get(oldName)); assertEquals(newGridset, gridSetBroker.get(newName)); verify(config, times(1)).save(); }
return (T) ((XMLGridSet) object).makeGridSet();
XMLGridSet xmlGridSet = new XMLGridSet(oldGridset); xmlGridSet.setName("My4326"); xmlGridSet.setAlignTopLeft(!xmlGridSet.getAlignTopLeft()); newGridset = xmlGridSet.makeGridSet(); gridSetBroker.put(newGridset);
xs.registerConverter(wrapper.createConverter()); } else if (object instanceof GridSet) { xsObject = new XMLGridSet((GridSet) object); jsonObject = new JSONArray(((XStreamListAliasWrapper) object).object); } else if (object instanceof GridSet) { jsonObject = new JSONObject(xs.toXML(new XMLGridSet((GridSet) object))); } else { jsonObject = new JSONObject(xs.toXML(object));
mainConfig.addOrReplaceGridSet(new XMLGridSet(newGridSet)); mainConfig.save(); getGridSetBroker().remove(oldGridSetName);