/** * Returns the list of {@link GeoServerTileLayer} objects matching the GeoServer ones. * <p> * The list is built dynamically on each call. * </p> * * @see org.geowebcache.config.Configuration#getTileLayers(boolean) * @see org.geowebcache.config.Configuration#getTileLayers() * @deprecated */ @Override public List<GeoServerTileLayer> getTileLayers() { Iterable<GeoServerTileLayer> layers = getLayers(); return Lists.newArrayList(layers); }
/** * @see org.geowebcache.config.Configuration#getTileLayer(java.lang.String) */ @Override public GeoServerTileLayer getTileLayer(final String layerName) { checkNotNull(layerName, "layer name is null"); final String layerId; lock.readLock().lock(); try { layerId = getLayerId(layerName); if (layerId == null) { return null; } } finally { lock.readLock().unlock(); } return getTileLayerById(layerId); }
/** * {@link TileLayerDispatcher} is requesting to remove the layer named after {@code layerName} * * @see org.geowebcache.config.Configuration#removeLayer(java.lang.String) * @return {@code true} if the layer was removed, false if it didn't exist */ @Override public boolean removeLayer(final String layerName) { checkNotNull(layerName); lock.writeLock().lock(); try { GeoServerTileLayerInfo tileLayerInfo = getTileLayerInfoByName(layerName); if (tileLayerInfo != null) { final String layerId = tileLayerInfo.getId(); pendingModications.remove(layerId); pendingDeletes.add(layerId); layerCache.invalidate(layerId); return true; } else { return false; } } finally { lock.writeLock().unlock(); } }
@Override public synchronized void addLayer(final TileLayer tl) { checkNotNull(tl); checkArgument(canSave(tl), "Can't save TileLayer of type ", tl.getClass()); GeoServerTileLayer tileLayer = (GeoServerTileLayer) tl; checkNotNull(tileLayer.getInfo(), "GeoServerTileLayerInfo is null"); if (layerInfo != null && !isLayerExposable(layerInfo)) { LOGGER.warning( "Requested layer " lock.releaseWriteLock(); save();
if (!CatalogConfiguration.isLayerExposable(layer)) { continue;
@Override public synchronized void addLayer(final TileLayer tl) { checkNotNull(tl); checkArgument(canSave(tl), "Can't save TileLayer of type ", tl.getClass()); GeoServerTileLayer tileLayer = (GeoServerTileLayer) tl; checkNotNull(tileLayer.getInfo(), "GeoServerTileLayerInfo is null"); if(layerInfo!=null && !isLayerExposable(layerInfo)) { LOGGER.warning("Requested layer " + layerInfo.getName() + " has no geometry. Won't create TileLayer"); return;
public void testRemoveLayer() { try { config.removeLayer(null); fail("expected precondition violation exception"); } catch (RuntimeException e) { assertTrue(true); } assertFalse(config.removeLayer(GWC.tileLayerName(layerWithNoTileLayer))); assertFalse(config.removeLayer(GWC.tileLayerName(groupWithNoTileLayer))); String layerName; layerName = tileLayerName(layer1); assertNotNull(config.getTileLayer(layerName)); final int initialCount = config.getTileLayerCount(); assertTrue(config.removeLayer(layerName)); assertNull(config.getTileLayer(layerName)); assertFalse(config.getTileLayerNames().contains(layerName)); assertEquals(initialCount - 1, config.getTileLayerCount()); layerName = GWC.tileLayerName(group1); assertNotNull(config.getTileLayer(layerName)); assertTrue(config.removeLayer(layerName)); assertNull(config.getTileLayer(layerName)); assertEquals(initialCount - 2, config.getTileLayerCount()); }
final String layerName = tileLayerCatalog.getLayerName(layerId); try { getTileLayerById(layerId); } catch (Exception e) { String msg = "GeoServer TileLayer named '" + layerName + "' with id '" lock.writeLock().unlock(); return getTileLayerCount();
/** @see TileLayerConfiguration#modifyLayer(TileLayer) */ @Override public synchronized void modifyLayer(TileLayer tl) throws NoSuchElementException { checkNotNull(tl, "TileLayer is null"); checkArgument(canSave(tl), "Can't save TileLayer of type ", tl.getClass()); GeoServerTileLayer tileLayer = (GeoServerTileLayer) tl; checkNotNull(tileLayer.getInfo(), "GeoServerTileLayerInfo is null"); checkNotNull(tileLayer.getInfo().getId(), "id is null"); checkNotNull(tileLayer.getInfo().getName(), "name is null"); final GeoServerTileLayerInfo info = tileLayer.getInfo(); lock.acquireWriteLock(); try { final String layerId = info.getId(); // check pendingModifications too to catch unsaved adds boolean exists = pendingModications.containsKey(layerId) || tileLayerCatalog.exists(layerId); if (!exists) { throw new NoSuchElementException( "No GeoServerTileLayer named '" + info.getName() + "' exists"); } pendingModications.put(layerId, info); layerCache.invalidate(layerId); } finally { lock.releaseWriteLock(); } save(); }
lock.acquireWriteLock(); try { GeoServerTileLayerInfo tileLayerInfo = getTileLayerInfoByName(layerName); if (tileLayerInfo != null) { final String layerId = tileLayerInfo.getId(); lock.releaseWriteLock(); save();
@Override public GeoServerTileLayer apply(final String layerId) { return CatalogConfiguration.this.getTileLayerById(layerId); } };
/** Flush caches */ void reset() { CatalogConfiguration c = GeoServerExtensions.bean(CatalogConfiguration.class); if (c != null) { c.reset(); } }
Set<XMLGridSubset> newGridSubsets = newInfo.getGridSubsets(); Set<String> oldGridSubsetNames = gridsetNames(oldGridSubsets); Set<String> newGridSubsetNames = gridsetNames(newGridSubsets);
} else { issueTileLayerInfoChangeNotifications(old, modified);
/** * @see org.geowebcache.config.Configuration#modifyLayer(org.geowebcache.layer.TileLayer) */ @Override public synchronized void modifyLayer(TileLayer tl) throws NoSuchElementException { checkNotNull(tl, "TileLayer is null"); checkArgument(canSave(tl), "Can't save TileLayer of type ", tl.getClass()); GeoServerTileLayer tileLayer = (GeoServerTileLayer) tl; checkNotNull(tileLayer.getInfo(), "GeoServerTileLayerInfo is null"); checkNotNull(tileLayer.getInfo().getId(), "id is null"); checkNotNull(tileLayer.getInfo().getName(), "name is null"); final GeoServerTileLayerInfo info = tileLayer.getInfo(); lock.writeLock().lock(); try { final String layerId = info.getId(); // check pendingModifications too to catch unsaved adds boolean exists = pendingModications.containsKey(layerId) || tileLayerCatalog.exists(layerId); checkArgument(exists, "No GeoServerTileLayer named '" + info.getName() + "' exists"); pendingModications.put(layerId, info); layerCache.invalidate(layerId); } finally { lock.writeLock().unlock(); } }
public void testGetTileLayerCount() { assertEquals(4, config.getTileLayerCount()); }
if (!CatalogConfiguration.isLayerExposable(layer)) { continue;
/** @see TileLayerConfiguration#getTileLayer(String) */ @Deprecated @Override public GeoServerTileLayer getTileLayer(final String layerName) { return getTileLayerById(layerName); }
/** * Flush caches */ public void reset() { CatalogConfiguration c = GeoServerExtensions.bean(CatalogConfiguration.class); if (c != null) { c.reset(); } } }