Package org.geotools.data

Examples of org.geotools.data.DefaultQuery


                    //FilterFactory fac=CommonFactoryFinder.getFilterFactory(GeoTools.getDefaultHints());
                    //final List<String> queryAtts = obtainQueryAttributesForFeatureTable(schema);
                   
                    Set<String> required = (Set<String>) filter.accept( new FilterAttributeExtractor(), null );
                    String[] names = required.toArray( new String[ required.size()]);
                    final DefaultQuery query=new DefaultQuery(schema.getName().getLocalPart(), filter, names );
                   
                    FeatureCollection<SimpleFeatureType, SimpleFeature> features;
                    features = source.getFeatures( query ); // we just want the FeatureID no attributes needed
                   
                    //features = source.getFeatures( filter );
View Full Code Here


            FeatureSource<SimpleFeatureType, SimpleFeature> source = notifierLayer.getResource(FeatureSource.class, ProgressManager.instance().get());
            SimpleFeatureType schema=source.getSchema();
           
            FilterFactory fac=CommonFactoryFinder.getFilterFactory(GeoTools.getDefaultHints());
            final List<String> queryAtts = obtainQueryAttributesForFeatureTable(schema);
            final DefaultQuery query=new DefaultQuery(schema.getName().getLocalPart(), Filter.EXCLUDE, queryAtts.toArray(new String[0]));

            String name = schema.getGeometryDescriptor().getName().getLocalPart();
      // add new features
            if( addedBounds!=null ){
              double minx=addedBounds.getMinX();
        double miny=addedBounds.getMinY();
        double maxx=addedBounds.getMaxX();
        double maxy=addedBounds.getMaxY();
        String srs=CRS.lookupIdentifier(schema.getCoordinateReferenceSystem(), false);
        BBOX bboxFilter = fac.bbox(name, minx, miny, maxx, maxy, srs);
       
                query.setFilter(bboxFilter);
                FeatureCollection<SimpleFeatureType, SimpleFeature>  features = source.getFeatures(query);
                this.table.update(features);
            }
            // update modified features
            if( modifiedBounds!=null ){
              double minx=modifiedBounds.getMinX();
        double miny=modifiedBounds.getMinY();
        double maxx=modifiedBounds.getMaxX();
        double maxy=modifiedBounds.getMaxY();
        String srs=CRS.lookupIdentifier(schema.getCoordinateReferenceSystem(), false);
        BBOX bboxFilter = fac.bbox(name, minx, miny, maxx, maxy, srs);

                query.setFilter(bboxFilter);
                FeatureCollection<SimpleFeatureType, SimpleFeature>  features = source.getFeatures(query);
                this.table.update(features);
            }       
        } catch (IOException e) {
            if( active ){
View Full Code Here

        //if the filter action is true, filter our results by the AOI service
        if(isAOIFilter()){
            filter = addAOIFilter(filter, schema.getCoordinateReferenceSystem());
        }
        final Query query = new DefaultQuery(schema.getName().getLocalPart(), filter, queryAtts.toArray(new String[0]));
        FeatureCollection<SimpleFeatureType, SimpleFeature>  featuresF = featureSource.getFeatures(query);       
        final FeatureCollection<SimpleFeatureType, SimpleFeature>  features = featuresF;
       
        Display.getDefault().asyncExec(new Runnable(){
            public void run() {
                    if (!table.showWarning(table.getControl().getDisplay())){
                        //user doesn't want to show table.
                        return;
                    }

                    // we don't need to display the geometries, that's what the map is for.
                    queryAtts.add(0,ANY);
                    queryAtts.add(CQL);
                    attributeCombo.setItems(queryAtts.toArray(new String[0]));                   
                    attributeCombo.select(0);
                   
                    AdaptableFeatureCollection adaptableCollection = new AdaptableFeatureCollection(features);
                    adaptableCollection.addAdapter(featureSource); // used to listen for changes

                    if( featureSource instanceof FeatureStore )
                        enableEditing(featureTypeCellModifier, query, adaptableCollection);

                    table.setFeatures(adaptableCollection);
            }

            private void enableEditing( final FeatureTypeCellModifier featureTypeCellModifier, final Query query, AdaptableFeatureCollection adaptableCollection ) {
                adaptableCollection.addAdapter(featureTypeCellModifier);
                ICellEditorListener[] keyBindingActivators=new ICellEditorListener[query.getPropertyNames().length];
                for( int i = 0; i < keyBindingActivators.length; i++ ) {
                    keyBindingActivators[i]=new ICellEditorListener(){
                        public void applyEditorValue() {
                            ApplicationGIS.getToolManager().registerActionsWithPart(TableView.this);
                        }
View Full Code Here

            }
           

            //get title from selected feature of farm layer           
            Filter farmParcelFilter = farmParcelLayer.getFilter();
            Query query = new DefaultQuery(farmParcelLayer.getSchema().getTypeName(),
                                           farmParcelFilter,
                                           new String[0]  ); //{"nume_com", "fbid"}
           
             FeatureSource<SimpleFeatureType, SimpleFeature> featureSource =
                farmParcelLayer.getResource(FeatureSource.class,
View Full Code Here

        // the new String[0] parameter indicates that we don't want any attributes.  We could have put an attribute/column
        // name to indicate the attributes that we want.
        SimpleFeatureType schema = layer.getSchema();
    String typeName = schema.getTypeName();
    Filter selected = layer.getFilter();
    Query query = new DefaultQuery(typeName, selected, Query.ALL_NAMES );
       
        FeatureSource<SimpleFeatureType,SimpleFeature> featureSource =
          layer.getResource(FeatureSource.class, new SubProgressMonitor(monitor, 1));
        FeatureCollection<SimpleFeatureType,SimpleFeature> features = featureSource.getFeatures(query);
        FeatureIterator<SimpleFeature> featureIterator = features.features();
View Full Code Here

            if (layer.isType(FeatureSource.class) && layer.isVisible()) {
                try {
                    FeatureSource<SimpleFeatureType, SimpleFeature> source = layer.getResource(FeatureSource.class, monitor);
                    Filter filter = layer.createBBoxFilter(map.getViewportModel().getBounds(),
                            monitor);
                    FeatureCollection<SimpleFeatureType, SimpleFeature>  results = source.getFeatures(new DefaultQuery(layer.getSchema()
                            .getName().getLocalPart(), filter));
                    int count = results.size();
                    // FeatureReader<SimpleFeatureType, SimpleFeature> reader=results.reader()
                    if (count > 0) {
                        featureCount += count;
View Full Code Here

    public void op( Display display, Object target, IProgressMonitor monitor ) throws Exception {
        final ILayer layer = (ILayer) target;
        final IMap map = layer.getMap();

        //get all selected features
        Query query = new DefaultQuery(layer.getSchema().getTypeName(), layer.getFilter());
       
        FeatureSource<SimpleFeatureType, SimpleFeature> featureSource = layer.getResource(FeatureSource.class, new SubProgressMonitor(monitor, 1));
        FeatureCollection<SimpleFeatureType, SimpleFeature>  features = featureSource.getFeatures(query);
       
        //combine them into one large polygon
View Full Code Here

                            throw new Abort();
                        if (filter.evaluate(feature))
                            fids.add(feature.getID());
                    }
            } else {
                DefaultQuery defaultQuery = new DefaultQuery(source.getSchema().getName().getLocalPart(),
                        filter, new String[0]);
                // TODO: Remove this workaround in 2.6.1 (note this has no performance impact)
                Set<String> required = (Set) filter.accept( new FilterAttributeExtractor(), null );               
                defaultQuery.setPropertyNames( required.toArray(new String[0]) );
               
                // get features that are just fids no attributes
                FeatureCollection<SimpleFeatureType, SimpleFeature>  features = source.getFeatures(defaultQuery);
                long start=System.currentTimeMillis();
               
View Full Code Here

        SimpleFeatureType targetSchema = targetLayer.getSchema();
        // Maps type names to type names since we are ignoring case

        queryAttributes.putAll(FeatureUtils.createAttributeMapping(sourceSchema, targetSchema));
        Set<String> properties = new HashSet(queryAttributes.values());
        return new DefaultQuery(sourceSchema.getName().getLocalPart(), filter, properties
                .toArray(new String[properties.size()]));
    }
View Full Code Here

                    Filter filter = layer.getFilter();
                    if (filter == Filter.EXCLUDE) {
                        // no selection provided; so lets do everything
                        filter = Filter.INCLUDE;
                    }
                    DefaultQuery query = new DefaultQuery(layer.getSchema().getTypeName(), filter);
                    Data data2 = new Data(resource, query);
                    data2.setChecked(layer.isVisible());
                    data.add(data2);
                }
            } else if (object instanceof IMap) {
View Full Code Here

TOP

Related Classes of org.geotools.data.DefaultQuery

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.