public void changed(FeatureEvent featureEvent) { FeatureEvent retyped = new FeatureEvent(source, featureEvent.getEventType(), featureEvent.getBounds()); listener.changed(retyped); } }
if (change.getType() == Type.ADDED) { if (change.getFilter() instanceof Id) { Id newFeatureIds = (Id) change.getFilter(); fids.addAll(newFeatureIds.getIdentifiers()); } else { Level.FINE, "Found added features without an id filter associated with them: {0}", change.getFilter()); if (change.getFilter() == Filter.INCLUDE || change.getBounds() == ReferencedEnvelope.EVERYTHING) { return; bounds.expandToInclude(change.getBounds()); filter = change.getFilter(); } else if (filter instanceof And) { And and = (And) filter; List<Filter> children = new ArrayList(and.getChildren()); children.add(change.getFilter()); filter = ff.and(children); } else { filter = ff.and(filter, change.getFilter());
public void changed(FeatureEvent featureEvent) { type = featureEvent.getType(); if (bounds == null) { bounds = featureEvent.getBounds(); } else { bounds.expandToInclude(featureEvent.getBounds()); } filter = featureEvent.getFilter(); source = featureEvent.getFeatureSource(); count++; }
/** Makes a deep copy of the provided event. */ public FeatureEvent(FeatureEvent origional) { super(origional.getSource()); this.type = origional.type; this.bounds = new ReferencedEnvelope(origional.bounds); this.filter = origional.filter; // filter is immutable this.featureSource = origional.getFeatureSource(); } /**
@Override protected void doFireFeaturesAdded(String typeName, ReferencedEnvelope bounds, Filter filter) { FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.ADDED, bounds, filter); listenerManager.fireEvent(typeName, Transaction.AUTO_COMMIT, event); }
assertEquals(0, listener2.events.size()); FeatureEvent event = listener1.getEvent(0); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.REMOVED, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.COMMIT, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.ADDED, event.getType()); assertEquals(0, listener2.events.size()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.ROLLBACK, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.ADDED, event.getType()); assertEquals(1, listener2.events.size());
public void changed(FeatureEvent featureEvent) { if( cacheBounds != null ){ if( featureEvent.getEventType() == FeatureEvent.FEATURES_ADDED ){ cacheBounds.expandToInclude( featureEvent.getBounds() ); } else { cacheBounds = null; } } cacheCount = -1; } });
if (event.getType() == FeatureEvent.Type.COMMIT || event.getType() == FeatureEvent.Type.ROLLBACK) { FeatureSource featureSource = (FeatureSource) entry.getKey(); FeatureListener[] listeners = (FeatureListener[]) entry.getValue(); event.setFeatureSource(featureSource); for (FeatureListener listener : listeners) { try { FeatureSource featureSource = (FeatureSource) entry.getKey(); FeatureListener[] listeners = (FeatureListener[]) entry.getValue(); event.setFeatureSource(featureSource); for (FeatureListener listener : listeners) { try {
System.out.println("Registering a feature listener for schema '" + typeName + "'"); FeatureListener listener = featureEvent -> { System.out.println("Received FeatureEvent from schema '" + typeName + "' of type '" + featureEvent.getType() + "'"); if (featureEvent.getType() == FeatureEvent.Type.CHANGED && featureEvent instanceof KafkaFeatureChanged) { System.out.println(DataUtilities.encodeFeature(((KafkaFeatureChanged) featureEvent).feature())); } else if (featureEvent.getType() == FeatureEvent.Type.REMOVED) { System.out.println("Received Delete for filter: " + featureEvent.getFilter());
public CollectionEvent(FeatureCollection collection, FeatureEvent event) { super(collection); switch (event.getEventType()) { case FeatureEvent.FEATURES_ADDED: this.type = CollectionEvent.FEATURES_ADDED; break; case FeatureEvent.FEATURES_CHANGED: this.type = CollectionEvent.FEATURES_CHANGED; break; case FeatureEvent.FEATURES_REMOVED: this.type = CollectionEvent.FEATURES_REMOVED; break; default: this.type = CollectionEvent.FEATURES_REMOVED; } this.features = null; }
public CollectionEvent( FeatureCollection<? extends FeatureType, ? extends Feature> collection, FeatureEvent event) { super(collection); switch (event.getType()) { case ADDED: this.type = CollectionEvent.FEATURES_ADDED; break; case CHANGED: this.type = CollectionEvent.FEATURES_CHANGED; break; case REMOVED: this.type = CollectionEvent.FEATURES_REMOVED; break; default: this.type = CollectionEvent.FEATURES_REMOVED; } this.features = null; }
batchFeatureEvent = new BatchFeatureEvent(event.getFeatureSource());
@Override protected void doFireFeaturesRemoved( String typeName, ReferencedEnvelope bounds, Filter filter) { FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.REMOVED, bounds, filter); listenerManager.fireEvent(typeName, Transaction.AUTO_COMMIT, event); } }
public void changed(FeatureEvent featureEvent) { if( cacheBounds != null ){ if( featureEvent.getEventType() == FeatureEvent.FEATURES_ADDED ){ cacheBounds.expandToInclude( featureEvent.getBounds() ); } else { cacheBounds = null; } } cacheCount = -1; } });
if( event.getType() == FeatureEvent.Type.COMMIT || event.getType() == FeatureEvent.Type.ROLLBACK ){ FeatureSource featureSource = (FeatureSource) entry.getKey(); FeatureListener[] listeners = (FeatureListener[]) entry.getValue(); event.setFeatureSource( featureSource ); for (FeatureListener listener : listeners ){ try { FeatureSource featureSource = (FeatureSource) entry.getKey(); FeatureListener[] listeners = (FeatureListener[]) entry.getValue(); event.setFeatureSource( featureSource ); for (FeatureListener listener : listeners ){ try {
batchFeatureEvent = new BatchFeatureEvent(event.getFeatureSource());
@Override protected void doFireFeaturesChanged( String typeName, ReferencedEnvelope bounds, Filter filter) { FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.CHANGED, bounds, filter); listenerManager.fireEvent(typeName, Transaction.AUTO_COMMIT, event); }
assertEquals(bounds, event.getBounds()); assertEquals(FeatureEvent.Type.CHANGED, event.getType()); assertEquals(bounds, event.getBounds()); assertEquals(FeatureEvent.Type.ROLLBACK, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.REMOVED, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.COMMIT, event.getType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.Type.ADDED, event.getType()); assertEquals(0, listener2.events.size()); assertEquals(0, listener2.events.size()); event = listener1.getEvent(0); assertEquals(FeatureEvent.Type.ROLLBACK, event.getType());
assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.FEATURES_REMOVED, event.getEventType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.FEATURES_REMOVED, event.getEventType()); assertEquals(feature.getBounds(), event.getBounds()); assertEquals(FeatureEvent.FEATURES_ADDED, event.getEventType()); assertEquals(0, listener2.events.size()); assertNull(event.getBounds()); assertEquals(FeatureEvent.FEATURES_CHANGED, event.getEventType());