org.geotools.data.wfs.v1_1_0
Class IonicStrategy
Object
DefaultWFSStrategy
IonicStrategy
- All Implemented Interfaces:
- WFSStrategy
public class IonicStrategy
- extends DefaultWFSStrategy
Nested Class Summary |
static class |
IonicStrategy.IonicGML2BoxTypeBinding
A gml:Box binding to override the default one to adapt to the Ionic server that recognizes
<gml:Box><gml:coordinates> but not <gml:Box><gml:coord>... |
Methods inherited from class Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
IonicStrategy
public IonicStrategy()
supportsPost
public boolean supportsPost()
- We can't use POST at all against Ionic cause it is not a WFS 1.1 implementation and expect
the filters to be encoded as per Filter 1.0, and I wasn't able of creating a WFS 1.1 with
Filter 1.0
Configuration
that works.
- Specified by:
supportsPost
in interface WFSStrategy
- Overrides:
supportsPost
in class DefaultWFSStrategy
- Returns:
- false
- See Also:
WFSStrategy.supportsPost()
getDefaultOutputFormat
public String getDefaultOutputFormat(WFSProtocol wfs,
WFSOperationType op)
- Ionic does not declare the supported output formats in the caps, yet it fails if asked for
text/xml; subtype=gml/3.1.1
but succeeds if asked for GML3
- Specified by:
getDefaultOutputFormat
in interface WFSStrategy
- Overrides:
getDefaultOutputFormat
in class DefaultWFSStrategy
- Returns:
"text/xml; subtype=gml/3.1.1"
- See Also:
WFSProtocol#getDefaultOutputFormat()
getFilterConfiguration
protected Configuration getFilterConfiguration()
- Overrides:
getFilterConfiguration
in class DefaultWFSStrategy
- Returns:
- a Filter 1.0 configuration since Ionic expects that instead of 1.1
createGetFeatureRequest
public WFSStrategy.RequestComponents createGetFeatureRequest(WFSProtocol wfs,
GetFeature query)
throws IOException
- Ionic uses
urn:opengis:def:crs:ogc::83
instead of EPSG:4269
. If that's the
case, the query srsName is replaced by the kown "EPSG:4269" code
- Specified by:
createGetFeatureRequest
in interface WFSStrategy
- Overrides:
createGetFeatureRequest
in class DefaultWFSStrategy
- Parameters:
wfs
- the WFS protocol handler from which the strategy may need to grab some feature
type metadata not available through the datastore interface, or even perform some
test request.query
- the GetFeature query to create the server request and post-processing filter for
- Returns:
- a handle to the request and post-processing filter appropriate to attend the given
query
- Throws:
IOException
- See Also:
WFSStrategy#createGetFeatureRequest(WFS_1_1_0_DataStore, WFSProtocol, Query, String)
splitFilters
public Filter[] splitFilters(Capabilities caps,
Filter queryFilter)
- Ionic's capabilities may state the spatial operator
Intersect
instead of Intersects
. If so, we fix that here so intersects is actually recognized as a supported
filter.
- Specified by:
splitFilters
in interface WFSStrategy
- Overrides:
splitFilters
in class DefaultWFSStrategy
- Parameters:
caps
- the server filter capabilities description
- Returns:
- a two-element array where the first element is the supported filter and the second
the one to post-process
- See Also:
WFSStrategy#splitFilters(WFS_1_1_0_Protocol, Filter)
Copyright © 1996-2014 Geotools. All Rights Reserved.