All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.gwtopenmaps.openlayers.client.layer.ArcGIS93Rest Maven / Gradle / Ivy

The newest version!
/**
 *
 *   Copyright 2015 sourceforge.
 *
 *   Licensed under the Apache License, Version 2.0 (the "License");
 *   you may not use this file except in compliance with the License.
 *   You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 */
package org.gwtopenmaps.openlayers.client.layer;

import org.gwtopenmaps.openlayers.client.Bounds;
import org.gwtopenmaps.openlayers.client.Pixel;
import org.gwtopenmaps.openlayers.client.util.JSObject;
import org.gwtopenmaps.openlayers.client.util.JStringArray;

/**
 * @author Michel Vitor A Rodrigues - Intec
 *
 * @author Giuseppe La Scaleia - CNR IMAA geoSDI Group
 * @email [email protected]
 */
public class ArcGIS93Rest extends GridLayer {

    protected ArcGIS93Rest(JSObject element) {
        super(element);
    }

    /**
     * Constructor: ArcGIS93Rest Create a new ArcGIS93Rest layer object.
     *
     * Example: (code) ArcGIS93Rest arcGIS93Rest = new ArcGIS93Rest("MyName",
     * "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/export",
     * WMSParams,ArcGIS93RestOptions ); (end)
     *
     * Parameters: name - {String} A name for the layer url - {String} Base url
     * for the ArcGIS server REST service options - {Object} An object with
     * key/value pairs representing the options and option values. Valid
     * Options: format: {String} MIME type of desired image type. layers:
     * {String} Comma-separated list of layers to display. srs: {String}
     * Projection ID.
     */
    public ArcGIS93Rest(String name, String url, WMSParams params,
            ArcGIS93RestOptions options) {
        this(ArcGIS93RestImpl.create(name, url, params.getJSObject(),
                options.getJSObject()));
    }

    /**
     * Constructor: ArcGIS93Rest Create a new ArcGIS93Rest layer object.
     *
     * Example: (code) ArcGIS93Rest arcGIS93Rest = new ArcGIS93Rest("MyName",
     * "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/export",
     * WMSParams ); (end)
     *
     * Parameters: name - {String} A name for the layer url - {String} Base url
     * for the ArcGIS server REST service
     */
    public ArcGIS93Rest(String name, String url, WMSParams params) {

        this(ArcGIS93RestImpl.create(name, url, params.getJSObject()));
    }

    /**
     * Constructor: ArcGIS93Rest Create a new ArcGIS93Rest layer object.
     *
     * Example: (code) ArcGIS93Rest arcGIS93Rest = new ArcGIS93Rest("MyName",
     * "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/export",
     * WMSParams ); (end)
     *
     * Parameters: name - {String} A name for the layer vetor url[] - {String}
     * Base url for the ArcGIS server REST service options - {Object} An object
     * with key/value pairs representing the options and option values. Valid
     * Options: format: {String} MIME type of desired image type. layers:
     * {String} Comma-separated list of layers to display. srs: {String}
     * Projection ID.
     */
    public ArcGIS93Rest(String name, String[] urls, WMSParams params) {
        this(ArcGIS93RestImpl.create(name, new JStringArray(urls).getJSObject(),
                params.getJSObject()));
    }

    /**
     * Constructor: ArcGIS93Rest Create a new ArcGIS93Rest layer object.
     *
     * Example: (code) ArcGIS93Rest arcGIS93Rest = new ArcGIS93Rest("MyName",
     * "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/export",
     * WMSParams ); (end)
     *
     * Parameters: name - {String} A name for the layer vetor url[] - {String}
     * Base url for the ArcGIS server REST service
     *
     *
     */
    public ArcGIS93Rest(String name, String[] urls, WMSParams params,
            WMSOptions layerParams) {
        this(ArcGIS93RestImpl.create(name, new JStringArray(urls).getJSObject(),
                params.getJSObject(), layerParams.getJSObject()));
    }

    public ArcGIS93Rest narrowToArcGIS93Rest(JSObject arcgis93Rest) {
        return (arcgis93Rest == null) ? null : new ArcGIS93Rest(arcgis93Rest);
    }

    /**
     * APIProperty: isBaseLayer {Boolean} Default is true for ArcGIS93Rest layer
     */
    public void setIsBaseLayer(boolean isBaseLayer) {
        ArcGIS93RestImpl.setIsBaseLayer(getJSObject(), isBaseLayer);
    }

    /**
     * Method: destroy Destroy this layer
     */
    public void destroy() {
        ArcGIS93RestImpl.destroy(getJSObject());
    }

    /**
     * Method: clone Create a clone of this layer
     *
     * Returns: {} An exact clone of this layer
     */
    public ArcGIS93Rest clone(ArcGIS93Rest obj) {
        return new ArcGIS93Rest(ArcGIS93RestImpl.clone(getJSObject(),
                obj.getJSObject()));
    }

    /**
     * Method: getURL Return an image url this layer.
     *
     * Parameters: bounds - {} A bounds representing the bbox for the
     * request.
     *
     * Returns: {String} A string with the map image's url.
     */
    public String getURL(Bounds bounds) {
        return ArcGIS93RestImpl.getURL(getJSObject(), bounds.getJSObject());
    }

    /**
     * Method: setLayerFilter addTile creates a tile, initializes it, and adds
     * it to the layer div.
     *
     * Parameters: id - {String} The id of the layer to which the filter
     * applies. queryDef - {String} A sql-ish query filter, for more detail see
     * the ESRI documentation at
     * http://sampleserver1.arcgisonline.com/ArcGIS/SDK/REST/export.html
     */
    public void setLayerFilter(String id, String queryDef) {
        ArcGIS93RestImpl.setLayerFilter(getJSObject(), id, queryDef);
    }

    /**
     * Method: clearLayerFilter Clears layer filters, either from a specific
     * layer, or all of them.
     *
     * Parameters: id - {String} The id of the layer from which to remove any
     * filter. If unspecified/blank, all filters will be removed.
     */
    public void clearLayerFilter(String id) {
        ArcGIS93RestImpl.clearLayerFilter(getJSObject(), id);
    }

    /**
     * APIMethod: mergeNewParams Catch changeParams and uppercase the new params
     * to be merged in before calling changeParams on the super class.
     *
     * Once params have been changed, the tiles will be reloaded with the new
     * parameters.
     *
     * Parameters: newParams - {Object} Hashtable of new params to use
     */
    public boolean mergeNewParams(Params params) {
        return ArcGIS93RestImpl.mergeNewParams(getJSObject(),
                params.getJSObject());
    }

    /**
     * Method: addTile addTile creates a tile, initializes it, and adds it to
     * the layer div.
     *
     * Parameters: bounds - {} position - {}
     *
     * Returns: {} The added OpenLayers.Tile.Image
     */
    public void addTile(Bounds bounds, Pixel position) {
        ArcGIS93RestImpl.addTile(getJSObject(), bounds.getJSObject(),
                position.getJSObject());
    }

    public int getNumLoadingTiles() {
        return WMSImpl.getNumLoadingTiles(this.getJSObject());
    }

    @Override
    protected LayerCreator getLayerCreator() {
        return new LayerCreator() {

            public ArcGIS93Rest createLayer(JSObject jsObject) {
                return new ArcGIS93Rest(jsObject);
            }
        };
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy