Class CubeWerxStrategy
- Object
-
- Specification
-
- WFSStrategy
-
- AbstractWFSStrategy
-
- StrictWFS_1_x_Strategy
-
- CubeWerxStrategy
-
public class CubeWerxStrategy extends StrictWFS_1_x_Strategy
A strategy object to aid in querying a CubeWerx WFS 1.1 serverThis strategy was created as per the limitations encountered at the CubeWerx server being tested while developing this plugin.
For instance, the following issues were found:
- resultType parameter is not supported in GetFeature
- Logically grouped spatial filters can't be handled
- CubeWerx does not support logical filters containing mixed geometry filters (eg, AND(BBOX, Intersects)), no matter what the capabilities doc says
- Author:
- groldan
-
-
Field Summary
-
Fields inherited from class StrictWFS_1_x_Strategy
capabilities
-
-
Constructor Summary
Constructors Constructor Description CubeWerxStrategy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Map<String,String>buildGetFeatureParametersForGET(GetFeatureRequest request)Removes theRESULTTYPE.InputStreamgetPostContents(WFSRequest request)Returns the input stream with the POST body contents for the given request.Filter[]splitFilters(QName typeName, Filter queryFilter)Splits the filter provided by the geotools query into the server supported and unsupported ones.booleansupports(GetFeatureRequest.ResultType resultType)-
Methods inherited from class StrictWFS_1_x_Strategy
createDelete, createDescribeFeatureTypeRequestPost, createDescribeStoredQueriesRequestPost, createGetFeatureRequestPost, createInsert, createListStoredQueriesRequestPost, createTransactionRequest, createUpdate, findParameters, getClientSupportedOutputFormats, getFeatureTypeInfo, getFeatureTypeNames, getFilterCapabilities, getFilterConfiguration, getOperationMetadata, getOperationName, getOperationURI, getServerSupportedOutputFormats, getServerSupportedOutputFormats, getServiceInfo, getServiceVersion, getSupportedCRSIdentifiers, getWfsConfiguration, setCapabilities, supportsIdGenerator, supportsTransaction, translateTypeInfo
-
Methods inherited from class AbstractWFSStrategy
buildDescribeFeatureTypeParametersForGET, buildDescribeFeatureTypeParametersForGET, buildDescribeStoredQueriesParametersForGET, buildListStoredQueriesParametersForGET, buildUrlGET, createGetCapabilitiesRequest, dispose, encodeGetFeatureGetFilter, encodePropertyName, getConfig, getDefaultOutputFormat, getFieldTypeMappings, getOperationURL, getPostContentType, getPrefixedTypeName, getVersion, prepareEncoder, setConfig, simplify, supportsOperation, updatePropertyNames
-
Methods inherited from class WFSStrategy
canLimit, canOffset, newRequestHandle
-
-
-
-
Method Detail
-
supports
public boolean supports(GetFeatureRequest.ResultType resultType)
- Overrides:
supportsin classStrictWFS_1_x_Strategy- Returns:
trueonly if resultType == results, CubeWerx throws a service exception if the resultType parameter is set on a POST request, no matter it's value, and on a GET request it's just ignored; also the returned feature collection does not contain the number of features matched.
-
buildGetFeatureParametersForGET
protected Map<String,String> buildGetFeatureParametersForGET(GetFeatureRequest request)
Removes theRESULTTYPE.
-
getPostContents
public InputStream getPostContents(WFSRequest request) throws IOException
Description copied from class:AbstractWFSStrategyReturns the input stream with the POST body contents for the given request.- Overrides:
getPostContentsin classAbstractWFSStrategy- Throws:
IOException- See Also:
AbstractWFSStrategy.createDescribeFeatureTypeRequestPost(org.geotools.data.wfs.internal.DescribeFeatureTypeRequest),AbstractWFSStrategy.createGetFeatureRequestPost(org.geotools.data.wfs.internal.GetFeatureRequest),AbstractWFSStrategy.prepareEncoder(org.geotools.data.wfs.internal.WFSRequest),AbstractWFSStrategy.getOperationName(org.geotools.data.wfs.internal.WFSOperationType)
-
splitFilters
public Filter[] splitFilters(QName typeName, Filter queryFilter)
Description copied from class:AbstractWFSStrategySplits the filter provided by the geotools query into the server supported and unsupported ones.- Overrides:
splitFiltersin classAbstractWFSStrategy- 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(QName, Filter)
-
-