Package org.geowebcache.layer

Examples of org.geowebcache.layer.TileLayer


        return link;
    }

    private Component previewLinks(String id, IModel<TileLayer> tileLayerModel) {

        final TileLayer layer = tileLayerModel.getObject();
        if (!layer.isEnabled()) {
            return new Label(id, new ResourceModel("previewDisabled"));
        }
        final Set<String> gridSubsets = new TreeSet<String>(layer.getGridSubsets());
        final List<MimeType> mimeTypes = new ArrayList<MimeType>(layer.getMimeTypes());
        Collections.sort(mimeTypes, new Comparator<MimeType>() {
            @Override
            public int compare(MimeType o1, MimeType o2) {
                return o1.getFormat().compareTo(o2.getFormat());
            }
        });

        Fragment f = new Fragment(id, "menuFragment", CachedLayersPage.this);

        WebMarkupContainer menu = new WebMarkupContainer("menu");

        RepeatingView previewLinks = new RepeatingView("previewLink");

        int i = 0;
        for (String gridSetId : gridSubsets) {
            for (MimeType mimeType : mimeTypes) {
                String label = gridSetId + " / " + mimeType.getFileExtension();
                // build option with text and value
                Label format = new Label(String.valueOf(i++), label);
                String value = "gridSet=" + gridSetId + "&format=" + mimeType.getFormat();
                format.add(new AttributeModifier("value", true, new Model<String>(value)));
                previewLinks.add(format);
            }
        }
        menu.add(previewLinks);

        // build the wms request, redirect to it in a new window, reset the selection
        String demoUrl = "'../gwc/demo/" + layer.getName()
                + "?' + this.options[this.selectedIndex].value";
        menu.add(new AttributeAppender("onchange", new Model<String>("window.open(" + demoUrl
                + ");this.selectedIndex=0"), ";"));

        f.add(menu);
View Full Code Here


        SRS srs = SRS.getSRS(epsgCode);

        // figure out the appropriate grid sub set
        Set<GridSubset> gridSubsets = new LinkedHashSet<GridSubset>();
        for (MapLayerInfo l : req.getLayers()) {
            TileLayer tl = gwc.getTileLayerByName(l.getName());
            if (tl == null) {
                throw new ServiceException("No tile layer for " + l.getName());
            }

            List<GridSubset> theseGridSubsets = tl.getGridSubsetsForSRS(srs);
            if (gridSubsets.isEmpty()) {
                gridSubsets.addAll(theseGridSubsets);
            } else {
                gridSubsets.retainAll(theseGridSubsets);
            }
View Full Code Here

        } else {
            throw new IllegalArgumentException(
                    "Provided model does not target a LayerInfo nor a LayerGroupInfo: " + info);
        }

        TileLayer tileLayer = null;
        if (originalLayerName != null) {
            try {
                tileLayer = mediator.getTileLayerByName(originalLayerName);
            } catch (IllegalArgumentException notFound) {
                //
View Full Code Here

        this.returnPage = returnPage;
    }

    @Override
    protected void onClick(AjaxRequestTarget target) {
        final TileLayer layer = getModelObject();
        if (!(layer instanceof GeoServerTileLayer)) {
            return;
        }
        final GeoServerTileLayer geoserverTileLayer = (GeoServerTileLayer) getModelObject();
        LayerInfo layerInfo = geoserverTileLayer.getLayerInfo();
View Full Code Here

        // }

        // 1) Check that cite:Lakes
        boolean foundLakes = false;
        while (tlIter.hasNext()) {
            TileLayer tl = tlIter.next();
            if (tl.getName().equals("cite:Lakes")) {
                // tl.isInitialized();
                foundLakes = true;
                break;
            }
        }
        assertTrue(foundLakes);

        // 2) Check sf:GenerictEntity is present and initialized
        layerList = gwcListener.getTileLayers(true);
        tlIter = layerList.iterator();
        boolean foudAGF = false;
        while (tlIter.hasNext()) {
            TileLayer tl = tlIter.next();
            System.out.println(tl.getName());
            if (tl.getName().equals("sf:AggregateGeoFeature")) {
                // tl.isInitialized();
                foudAGF = true;
                GridSubset epsg4326 = tl.getGridSubset(gridSetBroker.WORLD_EPSG4326
                        .getName());
                assertTrue(epsg4326.getGridSetBounds().equals(
                        new BoundingBox(-180.0, -90.0, 180.0, 90.0)));
                String mime = tl.getMimeTypes().get(1).getMimeType();
                assertTrue(mime.startsWith("image/")
                        || mime.startsWith("application/vnd.google-earth.kml+xml"));
            }
        }

        assertTrue(foudAGF);

        // 3) Basic get
        LayerInfo li = cat.getLayers().get(1);
        String layerName = li.getResource().getPrefixedName();

        TileLayer tl = tld.getTileLayer(layerName);

        assertEquals(layerName, tl.getName());

        // 4) Removal of LayerInfo from catalog
        cat.remove(li);

        assertTrue(cat.getLayerByName(tl.getName()) == null);

        boolean caughtException = false;
        try {
            TileLayer tl2 = tld.getTileLayer(layerName);
        } catch (GeoWebCacheException gwce) {
            caughtException = true;
        }
        assertTrue(caughtException);

        // 5) Introducing new LayerInfo
        ResourceInfo resInfo = li.getResource();
       
        //JD: not sure what this next line is really doing, disabling it because it changes the
        // namespace and does not save it... and the catalog does not cascade changes
        //resInfo.getNamespace().setPrefix("sf");
       
        resInfo.setName("hithere");
        cat.save(resInfo);
       
        LayerInfo layerInfo = cat.getFactory().createLayer();
        layerInfo.setResource(resInfo);
        layerInfo.setName(resInfo.getPrefixedName());

        cat.add(layerInfo);
        String newLayerName = layerInfo.getResource().getPrefixedName();
        TileLayer tl3 = tld.getTileLayer(newLayerName);
        assertEquals(newLayerName, tl3.getName());

        // 6) Add new LayerGroupInfo
        LayerGroupInfo lgi = cat.getFactory().createLayerGroup();
        lgi.setName("sf:aLayerGroup");
        lgi.setBounds(new ReferencedEnvelope(-180, 180, -90, 90, CRS.decode("EPSG:4326")));
        lgi.getLayers().add(cat.getLayerByName("hithere"));

        cat.add(lgi);
        TileLayer tl4 = tld.getTileLayer("sf:aLayerGroup");
        assertNotNull(tl4);
        assertEquals(lgi.getName(), tl4.getName());

    }
View Full Code Here

     * @return
     * @throws RestletException
     */
    protected Representation doGetInternal(String layerName, String gridSetId, String type)
    throws RestletException {
        TileLayer tl = findTileLayer(layerName, layerDispatcher);
  
        if(tl == null) {
            throw new RestletException(layerName + " is not known", Status.CLIENT_ERROR_NOT_FOUND);
        }
       
        GridSubset grid = tl.getGridSubset(gridSetId);
       
        if(grid == null) {
            throw new RestletException(layerName + " does not support " + gridSetId, Status.CLIENT_ERROR_NOT_FOUND);
        }
       
View Full Code Here

        if (!layerDispatcher.layerExists(layerName)) {
            throw new RestletException("Unknown layer: " + layerName, Status.CLIENT_ERROR_NOT_FOUND);
        }

        TileLayer layer;
        try {
            layer = layerDispatcher.getTileLayer(layerName);
        } catch (GeoWebCacheException gwce) {
            throw new RestletException("Encountered error: " + gwce.getMessage(),
                    Status.SERVER_ERROR_INTERNAL);
View Full Code Here

     * @return
     * @throws RestletException
     */
    protected Representation doGetInternal(String layerName, String formatExtension)
            throws RestletException {
        TileLayer tl = findTileLayer(layerName, layerDispatcher);

        if (formatExtension.equalsIgnoreCase("xml")) {
            return getXMLRepresentation(tl);
        } else if (formatExtension.equalsIgnoreCase("json")) {
            return getJsonRepresentation(tl);
View Full Code Here

     * @param resp
     * @throws RestletException
     */
    private void doPost(Request req, Response resp) throws RestletException, IOException,
            GeoWebCacheException {
        TileLayer tl = deserializeAndCheckLayer(req, resp, false);

        try {
            Configuration configuration = layerDispatcher.modify(tl);
            configuration.save();
        } catch (IllegalArgumentException e) {
            throw new RestletException("Layer " + tl.getName()
                    + " is not known by the configuration."
                    + "Maybe it was loaded from another source, or you're trying to add a new "
                    + "layer and need to do an HTTP PUT ?", Status.CLIENT_ERROR_BAD_REQUEST);
        }
    }
View Full Code Here

     * @param resp
     * @throws RestletException
     */
    private void doPut(Request req, Response resp) throws RestletException, IOException,
            GeoWebCacheException {
        TileLayer tl = deserializeAndCheckLayer(req, resp, true);

        TileLayer testtl = null;
        try {
            testtl = findTileLayer(tl.getName(), layerDispatcher);
        } catch (RestletException re) {
            // This is the expected behavior, it should not exist
        }
View Full Code Here

TOP

Related Classes of org.geowebcache.layer.TileLayer

Copyright © 2018 www.massapicom. 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.