Package org.geotools.data

Examples of org.geotools.data.FeatureEvent


            return;

        Filter filter = idFilter(feature);
        ReferencedEnvelope bounds = new ReferencedEnvelope(feature.getBounds());

        FeatureEvent event = new FeatureEvent(source, Type.REMOVED, bounds, filter);

        fireFeatureEvent(event);
    }
View Full Code Here


        store1.removeFeatures(fidFilter);

        assertEquals(1, listener1.events.size());
        assertEquals(0, listener2.events.size());

        FeatureEvent event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.REMOVED, event.getType());

        // test that commit only sends events to listener2.
        listener1.events.clear();
        listener2.events.clear();

        store1.getTransaction().commit();

        assertEquals(0, listener1.events.size());
        assertEquals(3, listener2.events.size());

        event = listener2.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.REMOVED, event.getType());

        // test add same as modify
        listener1.events.clear();
        listener2.events.clear();

        store1.addFeatures(DataUtilities.collection(feature));

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.ADDED, event.getType());
        assertEquals(0, listener2.events.size());

        // test that rollback only sends events to listener1.
        listener1.events.clear();
        listener2.events.clear();

        store1.getTransaction().rollback();

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertNull(event.getBounds());
        assertEquals(FeatureEvent.Type.CHANGED, event.getType());

        assertEquals(0, listener2.events.size());
    }
View Full Code Here

            affectedBounds.expandToInclude(bounds);
        }

        if (contentState.hasListener()) {
            // issue notificaiton
            FeatureEvent event = new FeatureEvent(this, Type.CHANGED, affectedBounds, filter);
            contentState.fireFeatureEvent(event);
        }

    }
View Full Code Here

        store1.removeFeatures(fidFilter);

        assertEquals(1, listener1.events.size());
        assertEquals(1, listener2.events.size());
       
        FeatureEvent event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.REMOVED, event.getType());
       
        // test add
        listener1.events.clear();
        listener2.events.clear();       

        store1.addFeatures(DataUtilities.collection(feature));

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.ADDED, event.getType());
        assertEquals(1, listener2.events.size());
    }
View Full Code Here

        store1.removeFeatures(fidFilter);

        assertEquals(1, listener1.events.size());
        assertEquals(0, listener2.events.size());

        FeatureEvent event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.REMOVED, event.getType());

        listener1.events.clear();
        listener2.events.clear();
       
        // test that commit sends events to both listeners.

        store1.getTransaction().commit();

        assertEquals(2, listener1.events.size());
        assertEquals(2, listener2.events.size());

        event = listener2.getEvent(1);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.COMMIT, event.getType());

        // test add
        listener1.events.clear();
        listener2.events.clear();

        store1.addFeatures(DataUtilities.collection(feature));

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.Type.ADDED, event.getType());
        assertEquals(0, listener2.events.size());

        // test that rollback sends events to both listeners.
        listener1.events.clear();
        listener2.events.clear();

        store1.getTransaction().rollback();

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(FeatureEvent.Type.ROLLBACK, event.getType());

        assertEquals(1, listener2.events.size());
    }
View Full Code Here

                            Geometry geometry = (Geometry) value;
                            bounds.expandToInclude( geometry.getEnvelopeInternal() );
                        }
                    }
                    // issue notificaiton
                    FeatureEvent event = new FeatureEvent(this, Type.CHANGED, bounds, preFilter );
                    state.fireFeatureEvent( event );
                }
            } finally {
                if(tx == null || tx == Transaction.AUTO_COMMIT) {
                    getDataStore().closeSafe(cx);
View Full Code Here

                    }
                }           
                getDataStore().delete(featureType, preFilter, cx);
                if( state.hasListener() ){
                    // issue notification
                    FeatureEvent event = new FeatureEvent(this, Type.REMOVED, bounds, preFilter );
                    state.fireFeatureEvent( event );
                }
            } finally {
                if(tx == null || tx == Transaction.AUTO_COMMIT) {
                    getDataStore().closeSafe(cx);
View Full Code Here

        // test that only the listener listening with the current transaction gets the event.
        final SimpleFeature feature = roadFeatures[0];
        store1.removeFeatures(factory.id(Collections.singleton(factory.featureId(feature.getID()))));
        assertEquals(1, listener1.events.size());
        assertEquals(0, listener2.events.size());
        FeatureEvent event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.FEATURES_REMOVED, event.getEventType());

        // test that commit only sends events to listener2.
        listener1.events.clear();
        listener2.events.clear();

        store1.getTransaction().commit();

        assertEquals(0, listener1.events.size());

        assertEquals(3, listener2.events.size());
        event = listener2.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.FEATURES_REMOVED, event.getEventType());

        // test add same as modify
        listener1.events.clear();
        listener2.events.clear();

        store1.addFeatures(DataUtilities.collection(feature));

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.FEATURES_ADDED, event.getEventType());
        assertEquals(0, listener2.events.size());

        // test that rollback only sends events to listener1.
        listener1.events.clear();
        listener2.events.clear();

        store1.getTransaction().rollback();

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertNull(event.getBounds());
        assertEquals(FeatureEvent.FEATURES_CHANGED, event.getEventType());

        assertEquals(0, listener2.events.size());

        // this is how Auto_commit is supposed to work
        listener1.events.clear();
        listener2.events.clear();
        store2.addFeatures(DataUtilities.collection(feature));

        assertEquals(1, listener1.events.size());
        event = listener1.getEvent(0);
        assertEquals(feature.getBounds(), event.getBounds());
        assertEquals(FeatureEvent.FEATURES_ADDED, event.getEventType());
        assertEquals(0, listener2.events.size());
    }
View Full Code Here

        this.source = source;
        this.listener = listener;
    }

    public void changed(FeatureEvent featureEvent) {
        FeatureEvent retyped = new FeatureEvent(source, featureEvent.getEventType(), featureEvent
                .getBounds());
        listener.changed(retyped);
    }
View Full Code Here

        this.source = source;
        this.listener = listener;
    }

    public void changed(FeatureEvent featureEvent) {
        FeatureEvent retyped = new FeatureEvent(source, featureEvent.getEventType(), featureEvent
                .getBounds());
        listener.changed(retyped);
    }
View Full Code Here

TOP

Related Classes of org.geotools.data.FeatureEvent

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.