Search in sources :

Example 1 with SpatialCapabilitiesType

use of ogc.schema.opengis.filter_capabilities.v_1_0_0.SpatialCapabilitiesType in project ddf by codice.

the class TestCswFilterDelegate method getSpatialCapabilities.

private static SpatialCapabilitiesType getSpatialCapabilities(List<String> geometries) {
    List<QName> mockGeometryOperands = new ArrayList<>();
    String nameSpaceUri = "http://www.opengis.net/gml";
    String prefix = "gml";
    for (String geometry : geometries) {
        QName polygonQName = new QName(nameSpaceUri, geometry, prefix);
        mockGeometryOperands.add(polygonQName);
    }
    GeometryOperandsType mockGeometryOperandsType = mock(GeometryOperandsType.class);
    when(mockGeometryOperandsType.getGeometryOperand()).thenReturn(mockGeometryOperands);
    SpatialCapabilitiesType mockSpatialCapabilitiesType = mock(SpatialCapabilitiesType.class);
    when(mockSpatialCapabilitiesType.getGeometryOperands()).thenReturn(mockGeometryOperandsType);
    return mockSpatialCapabilitiesType;
}
Also used : QName(javax.xml.namespace.QName) ArrayList(java.util.ArrayList) GeometryOperandsType(net.opengis.filter.v_1_1_0.GeometryOperandsType) SpatialCapabilitiesType(net.opengis.filter.v_1_1_0.SpatialCapabilitiesType)

Example 2 with SpatialCapabilitiesType

use of ogc.schema.opengis.filter_capabilities.v_1_0_0.SpatialCapabilitiesType in project ddf by codice.

the class TestCswFilterDelegate method getAllSpatialCapabilities.

private static SpatialCapabilitiesType getAllSpatialCapabilities() {
    List<QName> mockGeometryOperands = new ArrayList<QName>();
    String nameSpaceUri = "http://www.opengis.net/gml";
    String prefix = "gml";
    QName polygonQName = new QName(nameSpaceUri, "Polygon", prefix);
    mockGeometryOperands.add(polygonQName);
    QName pointQName = new QName(nameSpaceUri, "Point", prefix);
    mockGeometryOperands.add(pointQName);
    QName lineStringQName = new QName(nameSpaceUri, "LineString", prefix);
    mockGeometryOperands.add(lineStringQName);
    QName multiPolygonQName = new QName(nameSpaceUri, "MultiPolygon", prefix);
    mockGeometryOperands.add(multiPolygonQName);
    QName multiPointQName = new QName(nameSpaceUri, "MultiPoint", prefix);
    mockGeometryOperands.add(multiPointQName);
    QName multiLineStringQName = new QName(nameSpaceUri, "MultiLineString", prefix);
    mockGeometryOperands.add(multiLineStringQName);
    QName envelopeQName = new QName(nameSpaceUri, "Envelope", prefix);
    mockGeometryOperands.add(envelopeQName);
    GeometryOperandsType mockGeometryOperandsType = mock(GeometryOperandsType.class);
    when(mockGeometryOperandsType.getGeometryOperand()).thenReturn(mockGeometryOperands);
    SpatialCapabilitiesType mockSpatialCapabilitiesType = mock(SpatialCapabilitiesType.class);
    when(mockSpatialCapabilitiesType.getGeometryOperands()).thenReturn(mockGeometryOperandsType);
    return mockSpatialCapabilitiesType;
}
Also used : QName(javax.xml.namespace.QName) ArrayList(java.util.ArrayList) GeometryOperandsType(net.opengis.filter.v_1_1_0.GeometryOperandsType) SpatialCapabilitiesType(net.opengis.filter.v_1_1_0.SpatialCapabilitiesType)

Example 3 with SpatialCapabilitiesType

use of ogc.schema.opengis.filter_capabilities.v_1_0_0.SpatialCapabilitiesType in project ddf by codice.

the class TestCswCqlFilter method getAllSpatialCapabilities.

private static SpatialCapabilitiesType getAllSpatialCapabilities() {
    List<QName> mockGeometryOperands = new ArrayList<>();
    String nameSpaceUri = "http://www.opengis.net/gml";
    String prefix = "gml";
    QName polygonQName = new QName(nameSpaceUri, "Polygon", prefix);
    mockGeometryOperands.add(polygonQName);
    QName pointQName = new QName(nameSpaceUri, "Point", prefix);
    mockGeometryOperands.add(pointQName);
    QName lineStringQName = new QName(nameSpaceUri, "LineString", prefix);
    mockGeometryOperands.add(lineStringQName);
    QName multiPolygonQName = new QName(nameSpaceUri, "MultiPolygon", prefix);
    mockGeometryOperands.add(multiPolygonQName);
    QName multiPointQName = new QName(nameSpaceUri, "MultiPoint", prefix);
    mockGeometryOperands.add(multiPointQName);
    QName multiLineStringQName = new QName(nameSpaceUri, "MultiLineString", prefix);
    mockGeometryOperands.add(multiLineStringQName);
    QName envelopeQName = new QName(nameSpaceUri, "Envelope", prefix);
    mockGeometryOperands.add(envelopeQName);
    GeometryOperandsType mockGeometryOperandsType = mock(GeometryOperandsType.class);
    when(mockGeometryOperandsType.getGeometryOperand()).thenReturn(mockGeometryOperands);
    SpatialCapabilitiesType mockSpatialCapabilitiesType = mock(SpatialCapabilitiesType.class);
    when(mockSpatialCapabilitiesType.getGeometryOperands()).thenReturn(mockGeometryOperandsType);
    return mockSpatialCapabilitiesType;
}
Also used : QName(javax.xml.namespace.QName) ArrayList(java.util.ArrayList) GeometryOperandsType(net.opengis.filter.v_1_1_0.GeometryOperandsType) SpatialCapabilitiesType(net.opengis.filter.v_1_1_0.SpatialCapabilitiesType)

Example 4 with SpatialCapabilitiesType

use of ogc.schema.opengis.filter_capabilities.v_1_0_0.SpatialCapabilitiesType in project ddf by codice.

the class CswCqlFilterTest method getMockFilterCapabilities.

private static FilterCapabilities getMockFilterCapabilities() {
    FilterCapabilities mockFilterCapabilities = mock(FilterCapabilities.class);
    ComparisonOperatorsType mockComparisonOps = mock(ComparisonOperatorsType.class);
    when(mockComparisonOps.getComparisonOperator()).thenReturn(getFullComparisonOpsList());
    SpatialOperatorsType mockSpatialOperatorsType = mock(SpatialOperatorsType.class);
    when(mockSpatialOperatorsType.getSpatialOperator()).thenReturn(getSpatialOperatorsList());
    SpatialCapabilitiesType mockSpatialCapabilities = getAllSpatialCapabilities();
    when(mockSpatialCapabilities.getSpatialOperators()).thenReturn(mockSpatialOperatorsType);
    ScalarCapabilitiesType mockScalarCapabilities = mock(ScalarCapabilitiesType.class);
    when(mockScalarCapabilities.getComparisonOperators()).thenReturn(mockComparisonOps);
    when(mockFilterCapabilities.getScalarCapabilities()).thenReturn(mockScalarCapabilities);
    when(mockFilterCapabilities.getSpatialCapabilities()).thenReturn(mockSpatialCapabilities);
    when(mockScalarCapabilities.getLogicalOperators()).thenReturn(mock(LogicalOperators.class));
    return mockFilterCapabilities;
}
Also used : FilterCapabilities(net.opengis.filter.v_1_1_0.FilterCapabilities) ComparisonOperatorsType(net.opengis.filter.v_1_1_0.ComparisonOperatorsType) ScalarCapabilitiesType(net.opengis.filter.v_1_1_0.ScalarCapabilitiesType) SpatialOperatorsType(net.opengis.filter.v_1_1_0.SpatialOperatorsType) LogicalOperators(net.opengis.filter.v_1_1_0.LogicalOperators) SpatialCapabilitiesType(net.opengis.filter.v_1_1_0.SpatialCapabilitiesType)

Example 5 with SpatialCapabilitiesType

use of ogc.schema.opengis.filter_capabilities.v_1_0_0.SpatialCapabilitiesType in project ddf by codice.

the class WfsSourceTest method setUpMocks.

private void setUpMocks(final List<String> supportedGeos, final String srsName, final int results, final int hits) throws WfsException {
    SecureCxfClientFactory<ExtendedWfs> mockFactory = mock(SecureCxfClientFactory.class);
    when(mockFactory.getClient()).thenReturn(mockWfs);
    clientBuilderFactory = mock(ClientBuilderFactory.class);
    ClientBuilder<ExtendedWfs> clientBuilder = new ClientBuilderImpl<ExtendedWfs>(mock(OAuthSecurity.class), mock(SamlSecurity.class), mock(SecurityLogger.class), mock(SecurityManager.class)) {

        @Override
        public SecureCxfClientFactory<ExtendedWfs> build() {
            return mockFactory;
        }
    };
    when(clientBuilderFactory.<ExtendedWfs>getClientBuilder()).thenReturn(clientBuilder);
    // GetCapabilities Response
    when(mockWfs.getCapabilities(any(GetCapabilitiesRequest.class))).thenReturn(mockCapabilities);
    mockCapabilities.setFilterCapabilities(new FilterCapabilities());
    mockCapabilities.getFilterCapabilities().setSpatialCapabilities(new SpatialCapabilitiesType());
    mockCapabilities.getFilterCapabilities().getSpatialCapabilities().setSpatialOperators(new SpatialOperatorsType());
    if (CollectionUtils.isNotEmpty(supportedGeos)) {
        mockCapabilities.getFilterCapabilities().getSpatialCapabilities().getSpatialOperators().getSpatialOperator().addAll(supportedGeos.stream().map(opName -> {
            SpatialOperatorType spatialOperatorType = new SpatialOperatorType();
            spatialOperatorType.setName(SpatialOperatorNameType.fromValue(opName));
            return spatialOperatorType;
        }).collect(Collectors.toList()));
    }
    mockCapabilities.getFilterCapabilities().getSpatialCapabilities().setGeometryOperands(new GeometryOperandsType());
    mockCapabilities.getFilterCapabilities().getSpatialCapabilities().getGeometryOperands().getGeometryOperand().addAll(Arrays.asList(Wfs11Constants.POLYGON, Wfs11Constants.POINT));
    sampleFeatures = new ArrayList<>();
    mockCapabilities.setFeatureTypeList(new FeatureTypeListType());
    for (int ii = 0; ii < results; ii++) {
        FeatureTypeType feature = new FeatureTypeType();
        QName qName;
        if (ii == 0) {
            qName = new QName("SampleFeature" + ii);
        } else {
            qName = new QName("http://example.com", "SampleFeature" + ii, "Prefix" + ii);
        }
        sampleFeatures.add(qName);
        feature.setName(qName);
        if (null != srsName) {
            feature.setDefaultSRS(srsName);
        }
        mockCapabilities.getFeatureTypeList().getFeatureType().add(feature);
    }
    List<Metacard> metacards = new ArrayList<>(results);
    for (int i = 0; i < results; i++) {
        MetacardImpl mc = new MetacardImpl();
        mc.setId("ID_" + (i + 1));
        metacards.add(mc);
    }
    when(mockWfs.getFeature(withResultType(ResultTypeType.HITS))).thenReturn(new WfsFeatureCollectionImpl(hits));
    when(mockWfs.getFeature(withResultType(ResultTypeType.RESULTS))).thenReturn(new WfsFeatureCollectionImpl(results, metacards));
    final ScheduledFuture<?> mockAvailabilityPollFuture = mock(ScheduledFuture.class);
    doReturn(mockAvailabilityPollFuture).when(mockScheduler).scheduleWithFixedDelay(any(), anyInt(), anyInt(), any());
    source = new WfsSource(clientBuilderFactory, encryptionService, mockScheduler);
    source.setId(WFS_ID);
    source.setFilterAdapter(new GeotoolsFilterAdapterImpl());
    source.setContext(mockContext);
    source.setWfsMetacardTypeRegistry(mockWfsMetacardTypeRegistry);
    source.setMetacardTypeEnhancers(Collections.emptyList());
    source.setMetacardMappers(metacardMappers);
    source.setPollInterval(10);
    source.setWfsUrl(SAMPLE_WFS_URL);
    source.setSupportsStartIndex(false);
    source.setForceAllGeometryOperands(forceAllGeometryOperands);
    source.init();
}
Also used : SecurityManager(ddf.security.service.SecurityManager) ClientBuilderFactory(org.codice.ddf.cxf.client.ClientBuilderFactory) ArrayList(java.util.ArrayList) SpatialCapabilitiesType(net.opengis.filter.v_1_1_0.SpatialCapabilitiesType) FilterCapabilities(net.opengis.filter.v_1_1_0.FilterCapabilities) SpatialOperatorsType(net.opengis.filter.v_1_1_0.SpatialOperatorsType) WfsFeatureCollectionImpl(org.codice.ddf.spatial.ogc.wfs.catalog.common.WfsFeatureCollectionImpl) GeometryOperandsType(net.opengis.filter.v_1_1_0.GeometryOperandsType) GetCapabilitiesRequest(org.codice.ddf.spatial.ogc.wfs.v110.catalog.common.GetCapabilitiesRequest) ClientBuilderImpl(org.codice.ddf.cxf.client.impl.ClientBuilderImpl) FeatureTypeType(net.opengis.wfs.v_1_1_0.FeatureTypeType) FeatureTypeListType(net.opengis.wfs.v_1_1_0.FeatureTypeListType) QName(javax.xml.namespace.QName) OAuthSecurity(org.codice.ddf.cxf.oauth.OAuthSecurity) SpatialOperatorType(net.opengis.filter.v_1_1_0.SpatialOperatorType) MetacardImpl(ddf.catalog.data.impl.MetacardImpl) Metacard(ddf.catalog.data.Metacard) SamlSecurity(org.codice.ddf.security.jaxrs.SamlSecurity) GeotoolsFilterAdapterImpl(ddf.catalog.filter.proxy.adapter.GeotoolsFilterAdapterImpl) SecurityLogger(ddf.security.audit.SecurityLogger)

Aggregations

SpatialCapabilitiesType (net.opengis.filter.v_1_1_0.SpatialCapabilitiesType)15 ArrayList (java.util.ArrayList)11 QName (javax.xml.namespace.QName)10 GeometryOperandsType (net.opengis.filter.v_1_1_0.GeometryOperandsType)9 ComparisonOperatorsType (net.opengis.filter.v_1_1_0.ComparisonOperatorsType)8 FilterCapabilities (net.opengis.filter.v_1_1_0.FilterCapabilities)8 ScalarCapabilitiesType (net.opengis.filter.v_1_1_0.ScalarCapabilitiesType)8 SpatialOperatorsType (net.opengis.filter.v_1_1_0.SpatialOperatorsType)8 LogicalOperators (net.opengis.filter.v_1_1_0.LogicalOperators)7 SpatialOperatorType (net.opengis.filter.v_1_1_0.SpatialOperatorType)4 SpatialOperatorNameType (net.opengis.filter.v_1_1_0.SpatialOperatorNameType)3 Metacard (ddf.catalog.data.Metacard)2 MetacardImpl (ddf.catalog.data.impl.MetacardImpl)2 GeotoolsFilterAdapterImpl (ddf.catalog.filter.proxy.adapter.GeotoolsFilterAdapterImpl)2 ConcurrentHashMap (java.util.concurrent.ConcurrentHashMap)2 ComparisonOperatorType (net.opengis.filter.v_2_0_0.ComparisonOperatorType)2 ComparisonOperatorsType (net.opengis.filter.v_2_0_0.ComparisonOperatorsType)2 GeometryOperandsType (net.opengis.filter.v_2_0_0.GeometryOperandsType)2 GeometryOperand (net.opengis.filter.v_2_0_0.GeometryOperandsType.GeometryOperand)2 ScalarCapabilitiesType (net.opengis.filter.v_2_0_0.ScalarCapabilitiesType)2