/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * (c) 2001 - 2013 OpenPlans * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.data.test; import java.util.HashMap; import java.util.Map; import javax.xml.namespace.QName; import org.geotools.geometry.jts.ReferencedEnvelope; import org.geotools.referencing.crs.DefaultGeographicCRS; /** * Abstract TestData class that defines names for all the layers from the WFS, WMS, and WCS CITE * tests. * * @author Justin Deoliveira, OpenGeo * */ public abstract class CiteTestData implements TestData { // //// WMS 1.1.1 /** * WMS 1.1.1 cite namespace + uri */ public static String CITE_PREFIX = "cite"; public static String CITE_URI = "http://www.opengis.net/cite"; /** featuretype name for WMS 1.1.1 CITE BasicPolygons features */ public static QName BASIC_POLYGONS = new QName(CITE_URI, "BasicPolygons", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Bridges features */ public static QName BRIDGES = new QName(CITE_URI, "Bridges", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Buildings features */ public static QName BUILDINGS = new QName(CITE_URI, "Buildings", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Divided Routes features */ public static QName DIVIDED_ROUTES = new QName(CITE_URI, "DividedRoutes", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Forests features */ public static QName FORESTS = new QName(CITE_URI, "Forests", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Lakes features */ public static QName LAKES = new QName(CITE_URI, "Lakes", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Map Neatliine features */ public static QName MAP_NEATLINE = new QName(CITE_URI, "MapNeatline", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Named Places features */ public static QName NAMED_PLACES = new QName(CITE_URI, "NamedPlaces", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Ponds features */ public static QName PONDS = new QName(CITE_URI, "Ponds", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Road Segments features */ public static QName ROAD_SEGMENTS = new QName(CITE_URI, "RoadSegments", CITE_PREFIX); /** featuretype name for WMS 1.1.1 CITE Streams features */ public static QName STREAMS = new QName(CITE_URI, "Streams", CITE_PREFIX); // /// WFS 1.0 /** * WFS 1.0 cdf namespace + uri */ public static String CDF_PREFIX = "cdf"; public static String CDF_URI = "http://www.opengis.net/cite/data"; /** featuretype name for WFS 1.0 CITE Deletes features */ public static QName DELETES = new QName(CDF_URI, "Deletes", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Fifteen features */ public static QName FIFTEEN = new QName(CDF_URI, "Fifteen", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Inserts features */ public static QName INSERTS = new QName(CDF_URI, "Inserts", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Inserts features */ public static QName LOCKS = new QName(CDF_URI, "Locks", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Nulls features */ public static QName NULLS = new QName(CDF_URI, "Nulls", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Other features */ public static QName OTHER = new QName(CDF_URI, "Other", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Nulls features */ public static QName SEVEN = new QName(CDF_URI, "Seven", CDF_PREFIX); /** featuretype name for WFS 1.0 CITE Updates features */ public static QName UPDATES = new QName(CDF_URI, "Updates", CDF_PREFIX); /** * cgf namespace + uri */ public static String CGF_PREFIX = "cgf"; public static String CGF_URI = "http://www.opengis.net/cite/geometry"; /** featuretype name for WFS 1.0 CITE Lines features */ public static QName LINES = new QName(CGF_URI, "Lines", CGF_PREFIX); /** featuretype name for WFS 1.0 CITE MLines features */ public static QName MLINES = new QName(CGF_URI, "MLines", CGF_PREFIX); /** featuretype name for WFS 1.0 CITE MPoints features */ public static QName MPOINTS = new QName(CGF_URI, "MPoints", CGF_PREFIX); /** featuretype name for WFS 1.0 CITE MPolygons features */ public static QName MPOLYGONS = new QName(CGF_URI, "MPolygons", CGF_PREFIX); /** featuretype name for WFS 1.0 CITE Points features */ public static QName POINTS = new QName(CGF_URI, "Points", CGF_PREFIX); /** featuretype name for WFS 1.0 CITE Polygons features */ public static QName POLYGONS = new QName(CGF_URI, "Polygons", CGF_PREFIX); // //// WFS 1.1 /** * sf namespace + uri */ public static String SF_PREFIX = "sf"; public static String SF_URI = "http://cite.opengeospatial.org/gmlsf"; public static QName PRIMITIVEGEOFEATURE = new QName(SF_URI, "PrimitiveGeoFeature", SF_PREFIX); public static QName AGGREGATEGEOFEATURE = new QName(SF_URI, "AggregateGeoFeature", SF_PREFIX); public static QName GENERICENTITY = new QName(SF_URI, "GenericEntity", SF_PREFIX); // WCS 1.0 public static QName GTOPO_DEM = new QName(CDF_URI, "W020N90", CDF_PREFIX); public static QName USA_WORLDIMG = new QName(CDF_URI, "usa", CDF_PREFIX); public static String DEM = "dem"; public static String PNG = "png"; // WCS 1.1 public static String WCS_PREFIX = "wcs"; public static String WCS_URI = "http://www.opengis.net/wcs/1.1.1"; public static QName TASMANIA_DEM = new QName(WCS_URI, "DEM", WCS_PREFIX); public static QName TASMANIA_BM = new QName(WCS_URI, "BlueMarble", WCS_PREFIX); public static QName ROTATED_CAD = new QName(WCS_URI, "RotatedCad", WCS_PREFIX); public static QName WORLD = new QName(WCS_URI, "World", WCS_PREFIX); public static String TIFF = "tiff"; // DEFAULT public static String DEFAULT_PREFIX = "gs"; public static String DEFAULT_URI = "http://geoserver.org"; // public static QName ENTIT\u00C9G\u00C9N\u00C9RIQUE = new QName( SF_URI, // "Entit\u00E9G\u00E9n\u00E9rique", SF_PREFIX ); // Extra types public static QName GEOMETRYLESS = new QName(CITE_URI, "Geometryless", CITE_PREFIX); /** * List of all cite types names */ public static QName[] TYPENAMES = new QName[] { // WMS 1.1.1 BASIC_POLYGONS, BRIDGES, BUILDINGS, DIVIDED_ROUTES, FORESTS, LAKES, MAP_NEATLINE, NAMED_PLACES, PONDS, ROAD_SEGMENTS, STREAMS, GEOMETRYLESS, // WFS 1.0 DELETES, FIFTEEN, INSERTS, LOCKS, NULLS, OTHER, SEVEN, UPDATES, LINES, MLINES, MPOINTS, MPOLYGONS, POINTS, POLYGONS, // WFS 1.1 PRIMITIVEGEOFEATURE, AGGREGATEGEOFEATURE, GENERICENTITY /* ENTIT\u00C9G\u00C9N\u00C9RIQUE */ }; /** * List of wms type names. */ public static QName[] WMS_TYPENAMES = new QName[] { BASIC_POLYGONS, BRIDGES, BUILDINGS, DIVIDED_ROUTES, FORESTS, LAKES, MAP_NEATLINE, NAMED_PLACES, PONDS, ROAD_SEGMENTS, STREAMS, GEOMETRYLESS }; /** * List of wcs type names. */ public static QName[] WCS_TYPENAMES = new QName[] { TASMANIA_DEM, TASMANIA_BM, ROTATED_CAD, WORLD }; /** * List of wfs 1.0 type names. */ public static QName[] WFS10_TYPENAMES = new QName[] { DELETES, FIFTEEN, INSERTS, LOCKS, NULLS, OTHER, SEVEN, UPDATES, LINES, MLINES, MPOINTS, MPOLYGONS, POINTS, POLYGONS }; /** * List of wfs 1.1 type names. */ public static QName[] WFS11_TYPENAMES = new QName[] { PRIMITIVEGEOFEATURE, AGGREGATEGEOFEATURE, GENERICENTITY /* ENTIT\u00C9G\u00C9N\u00C9RIQUE */ }; public static QName[] CDF_TYPENAMES = new QName[] { DELETES, FIFTEEN, INSERTS, LOCKS, NULLS, OTHER, SEVEN, UPDATES }; public static QName[] CGF_TYPENAMES = new QName[] { LINES, MLINES, MPOINTS, MPOLYGONS, POINTS, POLYGONS }; public static QName[] SF_TYPENAMES = WFS11_TYPENAMES; public static QName[] CITE_TYPENAMES = WMS_TYPENAMES; /** * map of qname to srs */ public static HashMap<QName,Integer> SRS = new HashMap<QName, Integer>(); static { for ( int i = 0; i < WFS10_TYPENAMES.length; i++ ) { SRS.put( WFS10_TYPENAMES[i], 32615); } for ( int i = 0; i < WFS11_TYPENAMES.length; i++ ) { SRS.put( WFS11_TYPENAMES[i], 4326 ); } } public static String DEFAULT_VECTOR_STYLE = "Default"; public static String DEFAULT_RASTER_STYLE = "raster"; /** * map of coverage qname to filename and format */ public static HashMap<QName, String[]> COVERAGES = new HashMap<QName, String[]>(); static { COVERAGES.put(TASMANIA_DEM, new String[]{"tazdem.tiff", TIFF}); COVERAGES.put(TASMANIA_BM, new String[]{"tazbm.tiff", TIFF}); COVERAGES.put(ROTATED_CAD, new String[]{"rotated.tiff", TIFF}); COVERAGES.put(WORLD, new String[]{"world.tiff", TIFF}); } /** * Default lon/lat envelope */ public static final ReferencedEnvelope DEFAULT_LATLON_ENVELOPE = new ReferencedEnvelope(-180,180,-90,90, DefaultGeographicCRS.WGS84); /** * Populates a map with prefix to namespace uri mappings for all the * mock data namespaces. */ public static void registerNamespaces(Map<String,String> namespaces) { namespaces.put(CITE_PREFIX, CITE_URI); namespaces.put(CDF_PREFIX, CDF_URI); namespaces.put(CGF_PREFIX, CGF_URI); namespaces.put(SF_PREFIX, SF_URI); } }