WFS_1_1_0_Protocol implements WFSProtocol { public WFS_1_1_0_Protocol(InputStream capabilitiesReader, HTTPClient http, Charset defaultEncoding, WFSStrategy strategy) throws IOException { this.defaultEncoding = defaultEncoding; this.strategy = strategy; if(this.strategy == null) { this.strategy = new DefaultWFSStrategy(); } this.capabilities = parseCapabilities(capabilitiesReader); this.http = http; this.typeInfos = new HashMap<String, FeatureTypeType>(); final List<FeatureTypeType> ftypes = capabilities.getFeatureTypeList().getFeatureType(); QName typeName; for (FeatureTypeType ftype : ftypes) { typeName = ftype.getName(); String prefixedTypeName = this.strategy.getPrefixedTypeName(typeName); typeInfos.put(prefixedTypeName, ftype); } } WFS_1_1_0_Protocol(InputStream capabilitiesReader, HTTPClient http,
            Charset defaultEncoding, WFSStrategy strategy); void setStrategy(WFSStrategy strategy); Version getServiceVersion(); String getServiceTitle(); String getServiceAbstract(); Set<String> getServiceKeywords(); URI getServiceProviderUri(); Set<String> getSupportedGetFeatureOutputFormats(); Set<String> getSupportedOutputFormats(String typeName); Set<QName> getFeatureTypeNames(); QName getFeatureTypeName(String typeName); FilterCapabilities getFilterCapabilities(); boolean supportsOperation(WFSOperationType operation, boolean post); URL getOperationURL(WFSOperationType operation, boolean post); String getFeatureTypeTitle(String typeName); String getFeatureTypeAbstract(String typeName); ReferencedEnvelope getFeatureTypeWGS84Bounds(String typeName); String getDefaultCRS(String typeName); Set<String> getSupportedCRSIdentifiers(String typeName); Set<String> getFeatureTypeKeywords(String typeName); URL getDescribeFeatureTypeURLGet(String typeName); WFSResponse describeFeatureTypeGET(String typeName, String outputFormat); WFSResponse describeFeatureTypePOST(String typeName, String outputFormat); WFSResponse issueGetFeatureGET(final GetFeature request); WFSResponse issueGetFeaturePOST(final GetFeature request); void dispose(); static void encode(final EObject request, final Configuration configuration,
            final OutputStream out, final Charset charset); String getDefaultOutputFormat(WFSOperationType operation); Filter[] splitFilters(Filter filter); @Override SimpleFeatureType issueDescribeFeatureTypeGET(final String prefixedTypeName,
            CoordinateReferenceSystem crs);  }
@Test public void testWFS_1_1_0_Protocol() throws IOException { try { createTestProtocol(GEOS_STATES.SCHEMA); fail("Excpected IOException as a capabilities document was not provided"); } catch (IOException e) { assertTrue(true); } try { InputStream badData = new ByteArrayInputStream(new byte[1024]); HTTPClient connFac = new SimpleHttpClient(); new WFS_1_1_0_Protocol(badData, connFac, null, null); fail("Excpected IOException as a capabilities document was not provided"); } catch (IOException e) { assertTrue(true); } createTestProtocol(GEOS_ARCHSITES.CAPABILITIES); assertNotNull(wfs); assertNotNull(((WFS_1_1_0_Protocol) wfs).capabilities); }