element can enclose child elements providing metadata about
the Layer.
----------------------------------------------------------------------
- Version:
- 2002-03-01
- Author:
- Katharina Lupp, Markus Schneider
Constructor Summary |
private |
Layer_Impl()
default constructor |
(package private) |
Layer_Impl(boolean queryable,
int cascaded,
boolean opaque,
boolean noSubsets,
int fixedWidth,
int fixedHeight,
java.lang.String name,
java.lang.String title,
java.lang.String abstract_,
GM_Envelope latLonBoundingBox,
Attribution attribution,
ScaleHint scaleHint,
java.lang.String[] keywordList,
java.lang.String[] srs,
LayerBoundingBox[] boundingBoxes,
Dimension[] dimensions,
Extent[] extents,
AuthorityURL[] authorityURLs,
Identifier[] identifiers,
MetadataURL[] metadataURLs,
DataURL[] dataURLs,
FeatureListURL[] featureListURLs,
Style[] styles,
Layer[] layers,
DataSource[] dataSource,
Layer parent)
constructor initializing the class with the |
Method Summary |
void |
addAuthorityURL(AuthorityURL authorityURL)
adds the authority attribute of the Identifier element |
void |
addBoundingBox(GM_Envelope boundingBox)
adds the |
void |
addDataSource(DataSource dataSource)
source where the WMS can find the data of a layer. |
void |
addDataURL(DataURL dataURL)
adds the dataURL |
void |
addDimension(Dimension dimension)
adds the dimension |
void |
addExtent(Extent extent)
adds the extent declarations |
void |
addFeatureListURL(FeatureListURL featureListURL)
adds the |
void |
addIdentifier(Identifier identifier)
adds the |
void |
addKeyword(java.lang.String keyword)
adds the keywordList |
void |
addLayer(Layer layer)
adds a list of layers the are enclosed by this layer. |
void |
addMetadataURL(MetadataURL metadataURL)
adds the metadataURL |
void |
addSrs(java.lang.String srs)
adds the spatial reference system (srs) |
void |
addStyles(Style style)
adds a list of style that can be used form rendering the layer. |
java.lang.String |
exportAsXML()
Returns an XML representation of this object. |
java.lang.String |
getAbstract()
Abstract is a narrative description of the map layer. |
Attribution |
getAttribution()
The optional element provides a way to identify the source
of the map data used in a Layer or collection of Layers. |
AuthorityURL[] |
getAuthorityURL()
The authority attribute of the Identifier element corresponds to the name
attribute of a separate element. |
LayerBoundingBox[] |
getBoundingBox()
Layers may have zero or more elements that are either stated
explicitly or inherited from a parent Layer. |
int |
getCascaded()
returns '0' if the layer is provided directly form the deegree WMS.
|
DataSource[] |
getDataSource()
source where the WMS can find the data of a layer. |
DataSource |
getDataSource(double scale)
source where the WMS can find the data of a layer that matches the submitted
scale. |
DataURL[] |
getDataURL()
A Map Server may use DataURL to offer more information about the data
represented by a particular layer. |
Dimension[] |
getDimension()
Dimension declarations are inherited from parent Layers. |
Extent[] |
getExtent()
Extent declarations are inherited from parent Layers. |
FeatureListURL[] |
getFeatureListURL()
A Map Server may use a element to point to a list of
the features represented in a Layer. |
int |
getFixedHeight()
returns '0' if the WMS can resize map to arbitrary height.
|
int |
getFixedWidth()
returns '0' if the WMS can resize map to arbitrary width.
|
Identifier[] |
getIdentifier()
A Map Server may use zero or more elements to list ID numbers
or labels defined by a particular Authority. |
java.lang.String[] |
getKeywordList()
KeywordList contains zero or more Keywords to aid in catalog searches.
|
GM_Envelope |
getLatLonBoundingBox()
Every Layer shall have exactly one element that is
either stated explicitly or inherited from a parent Layer.
|
Layer[] |
getLayer()
returns a list of layers the are enclosed by this layer. |
MetadataURL[] |
getMetadataURL()
A Map Server should use one or more elements to offer
detailed, standardized metadata about the data underneath a particular
layer. |
java.lang.String |
getName()
If, and only if, a layer has a , then it is a map layer that
can be requested by using that Name in the LAYERS parameter of a
GetMap request. |
Layer |
getParent()
returns the parent layer of this layer. |
ScaleHint |
getScaleHint()
Layers may include a element that suggests minimum and
maximum scales for which it is appropriate to display this layer.
|
java.lang.String[] |
getSrs()
Every Layer is available in one or more spatial reference systems
Every Layer shall have at least one element that is either stated
explicitly or inherited from a parent Layer . |
UserStyle |
getStyle(java.lang.String name)
returns the UserStyle (SLD) representation of the style
identified by the submitted name. |
Style |
getStyleResource(java.lang.String name)
returns the Style identified by the submitted name. |
Style[] |
getStyles()
returns a list of style that can be used form rendering the layer. |
java.lang.String |
getTitle()
A is required for all layers; it is a human-readable string
for presentation in a menu. |
boolean |
hasNoSubsets()
returns false if the WMS can map a subset of the full bounding box. |
boolean |
isOpaque()
returns false if map data represents vector features that probably do not
completely fill space. |
boolean |
isQueryable()
returns true if the layer is queryable. |
boolean |
isSrsSupported(java.lang.String srs)
return s true if the submitted srs (name) is supported by the layer |
void |
setAbstract(java.lang.String abstract_)
sets the a narrative description of the map layer |
void |
setAttribution(Attribution attribution)
sets the optional element |
void |
setAuthorityURL(AuthorityURL[] authorityURL)
sets the authority attribute of the Identifier element |
void |
setBoundingBox(LayerBoundingBox[] boundingBox)
sets the boundingBox |
void |
setDataSource(DataSource[] dataSource)
source where the WMS can find the data of a layer. |
void |
setDataURL(DataURL[] dataURL)
sets the dataURL |
void |
setDimension(Dimension[] dimension)
sets the dimension |
void |
setExtent(Extent[] extent)
sets the extent |
void |
setFeatureListURL(FeatureListURL[] featureListURL)
sets the |
void |
setIdentifier(Identifier[] identifier)
sets the |
void |
setKeywordList(java.lang.String[] keywordList)
sets the keywordList |
void |
setLatLonBoundingBox(GM_Envelope latLonBoundingBox)
sets the LatLonBoundingBox element that is either stated explicitly or
inherited from a parent Layer. |
void |
setLayer(Layer[] layer)
sets a list of layers the are enclosed by this layer. |
void |
setMetadataURL(MetadataURL[] metadataURL)
sets the metadataURL |
void |
setName(java.lang.String name)
sets the name of the layer |
void |
setParent(Layer parent)
sets the parent layer of this layer. |
void |
setScaleHint(ScaleHint scaleHint)
sets the |
void |
setSrs(java.lang.String[] srs)
sets the srs |
void |
setStyles(Style[] styles)
sets a list of style that can be used form rendering the layer. |
void |
setTitle(java.lang.String title)
sets the title for the layer |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
authorityURL
private java.util.ArrayList authorityURL
boundingBox
private java.util.ArrayList boundingBox
dataSource
private java.util.ArrayList dataSource
dataURL
private java.util.ArrayList dataURL
dimension
private java.util.ArrayList dimension
extent
private java.util.ArrayList extent
featureListURL
private java.util.ArrayList featureListURL
identifier
private java.util.ArrayList identifier
keywordList
private java.util.ArrayList keywordList
layer
private java.util.ArrayList layer
metadataURL
private java.util.ArrayList metadataURL
srs
private java.util.ArrayList srs
attribution
private Attribution attribution
latLonBoundingBox
private GM_Envelope latLonBoundingBox
styles
private java.util.HashMap styles
parent
private Layer parent
scaleHint
private ScaleHint scaleHint
abstract_
private java.lang.String abstract_
name
private java.lang.String name
title
private java.lang.String title
noSubsets
private boolean noSubsets
opaque
private boolean opaque
queryable
private boolean queryable
cascaded
private int cascaded
fixedHeight
private int fixedHeight
fixedWidth
private int fixedWidth
Layer_Impl
private Layer_Impl()
- default constructor
Layer_Impl
Layer_Impl(boolean queryable,
int cascaded,
boolean opaque,
boolean noSubsets,
int fixedWidth,
int fixedHeight,
java.lang.String name,
java.lang.String title,
java.lang.String abstract_,
GM_Envelope latLonBoundingBox,
Attribution attribution,
ScaleHint scaleHint,
java.lang.String[] keywordList,
java.lang.String[] srs,
LayerBoundingBox[] boundingBoxes,
Dimension[] dimensions,
Extent[] extents,
AuthorityURL[] authorityURLs,
Identifier[] identifiers,
MetadataURL[] metadataURLs,
DataURL[] dataURLs,
FeatureListURL[] featureListURLs,
Style[] styles,
Layer[] layers,
DataSource[] dataSource,
Layer parent)
- constructor initializing the class with the
getName
public java.lang.String getName()
- If, and only if, a layer has a , then it is a map layer that
can be requested by using that Name in the LAYERS parameter of a
GetMap request. If the layer has a Title but no Name, then that
layer is only a category title for all the layers nested within. A Map
Server that advertises a Layer containing a Name element shall be able
to accept that Name as the value of LAYERS argument in a GetMap request
and return the corresponding map. A Client shall not attempt to request
a layer that has a Title but no Name.
- Specified by:
getName
in interface Layer
setName
public void setName(java.lang.String name)
- sets the name of the layer
getTitle
public java.lang.String getTitle()
- A is required for all layers; it is a human-readable string
for presentation in a menu. The Title is not inherited by child Layers.
- Specified by:
getTitle
in interface Layer
setTitle
public void setTitle(java.lang.String title)
- sets the title for the layer
getAbstract
public java.lang.String getAbstract()
- Abstract is a narrative description of the map layer. The Abstract
elements are not inherited by child Layers.
- Specified by:
getAbstract
in interface Layer
setAbstract
public void setAbstract(java.lang.String abstract_)
- sets the a narrative description of the map layer
getKeywordList
public java.lang.String[] getKeywordList()
- KeywordList contains zero or more Keywords to aid in catalog searches.
The KeywordList elements are not inherited by child Layers.
- Specified by:
getKeywordList
in interface Layer
addKeyword
public void addKeyword(java.lang.String keyword)
- adds the keywordList
setKeywordList
public void setKeywordList(java.lang.String[] keywordList)
- sets the keywordList
getSrs
public java.lang.String[] getSrs()
- Every Layer is available in one or more spatial reference systems
Every Layer shall have at least one element that is either stated
explicitly or inherited from a parent Layer . The root element
shall include a sequence of zero or more SRS elements listing all SRSes
that are common to all subsidiary layers. Use a single SRS element with
empty content (like so: " ") if there is no common SRS. Layers
may optionally add to the global SRS list, or to the list inherited from
a parent layer. Any duplication shall be ignored by clients. When a Layer
is available in several Spatial Reference Systems, there are two ways to
encode the list of SRS values. The first of these is new in this version
of the specification, the second is deprecated but still included for
backwards compatibility.
1. Optional, recommended: Multiple single-valued elements: a list
of SRS values is represented as a sequence of elements, each of which
contains only a single SRS name. Example: EPSG:1234
EPSG:5678.
2. Deprecated: Single list-valued element: a list of SRS values is
represented asa whitespace-separated list of SRS names contained within a
single element. Example: EPSG:1234 EPSG:5678.
- Specified by:
getSrs
in interface Layer
isSrsSupported
public boolean isSrsSupported(java.lang.String srs)
- return s true if the submitted srs (name) is supported by the layer
- Specified by:
isSrsSupported
in interface Layer
addSrs
public void addSrs(java.lang.String srs)
- adds the spatial reference system (srs)
setSrs
public void setSrs(java.lang.String[] srs)
- sets the srs
getLatLonBoundingBox
public GM_Envelope getLatLonBoundingBox()
- Every Layer shall have exactly one element that is
either stated explicitly or inherited from a parent Layer.
LatLonBoundingBox states the minimum bounding rectangle of the map data
in the EPSG:4326 geographic coordinate system. The LatLonBoundingBox
attributes minx, miny, maxx, maxy indicate the edges of an enclosing
rectangle in decimal degrees. LatLonBoundingBox shall be supplied
regardless of what SRS the map server may support, but it may be
approximate if EPSG:4326 is not supported. Its purpose is to facilitate
geographic searches without requiring coordinate transformations by the
search engine.
- Specified by:
getLatLonBoundingBox
in interface Layer
setLatLonBoundingBox
public void setLatLonBoundingBox(GM_Envelope latLonBoundingBox)
- sets the LatLonBoundingBox element that is either stated explicitly or
inherited from a parent Layer.
getBoundingBox
public LayerBoundingBox[] getBoundingBox()
- Layers may have zero or more elements that are either stated
explicitly or inherited from a parent Layer. Each BoundingBox states the
bounding rectangle of the map data in a particular spatial reference
system; the attribute SRS indicates which SRS applies. If the data area is
shaped irregularly then the BoundingBox gives the minimum enclosing
rectangle. The attributes minx, miny, maxx, maxy indicate the edges of the
bounding box in units of the specified SRS. Optional resx and resy
attributes indicate the spatial resolution of the data in those same units.
A Layer may have multiple BoundingBox element, but each one shall state a
different SRS. A Layer inherits any BoundingBox values defined by its
parents. A BoundingBox inherited from the parent Layer for a particular
SRS is replaced by any declaration for the same SRS in the child Layer.
A BoundingBox in the child for a new SRS not already declared by the
parent is added to the list of bounding boxes for the child Layer. A
single Layer element shall not contain more than one BoundingBox for the
same SRS.
- Specified by:
getBoundingBox
in interface Layer
addBoundingBox
public void addBoundingBox(GM_Envelope boundingBox)
- adds the
setBoundingBox
public void setBoundingBox(LayerBoundingBox[] boundingBox)
- sets the boundingBox
getDimension
public Dimension[] getDimension()
- Dimension declarations are inherited from parent Layers. Any new Dimension
declarations in the child are added to the list inherited from the parent.
A child shall not redefine a Dimension with the same name attribute as one
that was inherited.
- Specified by:
getDimension
in interface Layer
addDimension
public void addDimension(Dimension dimension)
- adds the dimension
setDimension
public void setDimension(Dimension[] dimension)
- sets the dimension
getExtent
public Extent[] getExtent()
- Extent declarations are inherited from parent Layers. Any Extent
declarations in the child with the same name attribute as one inherited
from the parent replaces the value declared by the parent. A Layer shall
not declare an Extent unless a Dimension with the same name has been
declared or inherited earlier in the Capabilities XML.
- Specified by:
getExtent
in interface Layer
addExtent
public void addExtent(Extent extent)
- adds the extent declarations
setExtent
public void setExtent(Extent[] extent)
- sets the extent
getAttribution
public Attribution getAttribution()
- The optional element provides a way to identify the source
of the map data used in a Layer or collection of Layers. Attribution
encloses several optional elements: states the data
provider's URL; is a human-readable string naming the data
provider; is the URL of a logo image. Client applications may
choose to display one or more of these items. A element in
LogoURL indicates the MIME type of the logo image, and the attributes
width and height state the size of the image in pixels.
- Specified by:
getAttribution
in interface Layer
setAttribution
public void setAttribution(Attribution attribution)
- sets the optional element
getAuthorityURL
public AuthorityURL[] getAuthorityURL()
- The authority attribute of the Identifier element corresponds to the name
attribute of a separate element. AuthorityURL encloses an
element which states the URL of a document defining the
meaning of the Identifier values.
- Specified by:
getAuthorityURL
in interface Layer
addAuthorityURL
public void addAuthorityURL(AuthorityURL authorityURL)
- adds the authority attribute of the Identifier element
setAuthorityURL
public void setAuthorityURL(AuthorityURL[] authorityURL)
- sets the authority attribute of the Identifier element
getIdentifier
public Identifier[] getIdentifier()
- A Map Server may use zero or more elements to list ID numbers
or labels defined by a particular Authority. The text content of the
Identifier element is the ID value.
- Specified by:
getIdentifier
in interface Layer
addIdentifier
public void addIdentifier(Identifier identifier)
- adds the
setIdentifier
public void setIdentifier(Identifier[] identifier)
- sets the
getMetadataURL
public MetadataURL[] getMetadataURL()
- A Map Server should use one or more elements to offer
detailed, standardized metadata about the data underneath a particular
layer. The type attribute indicates the standard to which the metadata
complies. Two types are defined at present: the value 'TC211' refers to
[ISO 19115]; the value 'FGDC' refers to [FGDC-STD-001-1988]. The
MetadataURL element shall not be used to reference metadata in a
non-standardized metadata format; see DataURL instead. The enclosed
element indicates the file format MIME type of the metadata record.
- Specified by:
getMetadataURL
in interface Layer
addMetadataURL
public void addMetadataURL(MetadataURL metadataURL)
- adds the metadataURL
setMetadataURL
public void setMetadataURL(MetadataURL[] metadataURL)
- sets the metadataURL
getDataURL
public DataURL[] getDataURL()
- A Map Server may use DataURL to offer more information about the data
represented by a particular layer. While the semantics are not well-defined,
as long as the results of an HTTP GET request against the DataURL are
properly MIME-typed, Viewer Clients and Cascading Map Servers can make
use of this. Use instead for a precisely defined reference
to standardized metadata records.
- Specified by:
getDataURL
in interface Layer
- Returns:
addDataURL
public void addDataURL(DataURL dataURL)
- adds the dataURL
setDataURL
public void setDataURL(DataURL[] dataURL)
- sets the dataURL
getFeatureListURL
public FeatureListURL[] getFeatureListURL()
- A Map Server may use a element to point to a list of
the features represented in a Layer.
- Specified by:
getFeatureListURL
in interface Layer
- Returns:
addFeatureListURL
public void addFeatureListURL(FeatureListURL featureListURL)
- adds the
setFeatureListURL
public void setFeatureListURL(FeatureListURL[] featureListURL)
- sets the
getStyles
public Style[] getStyles()
- returns a list of style that can be used form rendering the layer.
- Specified by:
getStyles
in interface Layer
addStyles
public void addStyles(Style style)
- adds a list of style that can be used form rendering the layer.
setStyles
public void setStyles(Style[] styles)
- sets a list of style that can be used form rendering the layer.
getStyle
public UserStyle getStyle(java.lang.String name)
- returns the UserStyle (SLD) representation of the style
identified by the submitted name.
- Specified by:
getStyle
in interface Layer
- Parameters:
name
- of the requested style
- Returns:
- SLD - UserStyle
getStyleResource
public Style getStyleResource(java.lang.String name)
- returns the Style identified by the submitted name.
- Specified by:
getStyleResource
in interface Layer
- Parameters:
name
- of the requested style
- Returns:
- Style
getScaleHint
public ScaleHint getScaleHint()
- Layers may include a element that suggests minimum and
maximum scales for which it is appropriate to display this layer.
Because WMS output is destined for output devices of arbitrary size
and resolution, the usual definition of scale as the ratio of map size
to real-world size is not appropriate here. The following definition of
Scale Hint is recommended. Consider a hypothetical map with a given
Bounding Box, width and height. The central pixel of that map (or the
pixel just to the northwest of center) will have some size, which can
be expressed as the ground distance in meters of the southwest to northeast
diagonal of that pixel. The two values in ScaleHint are the minimum and
maximum recommended values of that diagonal. It is recognized that this
definition is not geodetically precise, but at the same time the hope is
that by including it conventions will develop that can be later specified
more clearly.
- Specified by:
getScaleHint
in interface Layer
setScaleHint
public void setScaleHint(ScaleHint scaleHint)
- sets the
getLayer
public Layer[] getLayer()
- returns a list of layers the are enclosed by this layer.
- Specified by:
getLayer
in interface Layer
- Returns:
addLayer
public void addLayer(Layer layer)
- adds a list of layers the are enclosed by this layer.
setLayer
public void setLayer(Layer[] layer)
- sets a list of layers the are enclosed by this layer.
getDataSource
public DataSource[] getDataSource()
- source where the WMS can find the data of a layer.
- Specified by:
getDataSource
in interface Layer
- Returns:
getDataSource
public DataSource getDataSource(double scale)
- source where the WMS can find the data of a layer that matches the submitted
scale. If no DataSource is defined that matches the scale, null
will be returned;
- Specified by:
getDataSource
in interface Layer
- Returns:
- DataSource that fits the submitted scale
setDataSource
public void setDataSource(DataSource[] dataSource)
- source where the WMS can find the data of a layer.
addDataSource
public void addDataSource(DataSource dataSource)
- source where the WMS can find the data of a layer.
getParent
public Layer getParent()
- returns the parent layer of this layer. If the method returns null
the current layer is the root layer. In addition with the getLayer
method this enables a program to traverse the layer tree in both directions.
- Specified by:
getParent
in interface Layer
setParent
public void setParent(Layer parent)
- sets the parent layer of this layer.
getCascaded
public int getCascaded()
- returns '0' if the layer is provided directly form the deegree WMS.
other it returns the number of cascaded WMS servers the is passed through
- Specified by:
getCascaded
in interface Layer
getFixedHeight
public int getFixedHeight()
- returns '0' if the WMS can resize map to arbitrary height.
nonzero: map has a fixed height that cannot be changed by the
WMS.
- Specified by:
getFixedHeight
in interface Layer
getFixedWidth
public int getFixedWidth()
- returns '0' if the WMS can resize map to arbitrary width.
nonzero: map has a fixed width that cannot be changed by the
WMS.
- Specified by:
getFixedWidth
in interface Layer
hasNoSubsets
public boolean hasNoSubsets()
- returns false if the WMS can map a subset of the full bounding box.
- Specified by:
hasNoSubsets
in interface Layer
isOpaque
public boolean isOpaque()
- returns false if map data represents vector features that probably do not
completely fill space.
- Specified by:
isOpaque
in interface Layer
isQueryable
public boolean isQueryable()
- returns true if the layer is queryable. That means it can be targeted
by a GetFeatureInfo request.
- Specified by:
isQueryable
in interface Layer
exportAsXML
public java.lang.String exportAsXML()
- Returns an XML representation of this object.
- Specified by:
exportAsXML
in interface Marshallable
- Returns:
- XML-representation of this object