public void changed(FeatureEvent featureEvent) { FeatureEvent retyped = new FeatureEvent(source, featureEvent.getEventType(), featureEvent.getBounds()); listener.changed(retyped); } }
@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); } }
@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); }
@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); }
@Override protected void doFireFeaturesAdded(String typeName, ReferencedEnvelope bounds, Filter filter) { Transaction transaction = state.getTransaction(); FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.ADDED, bounds, filter); listenerManager.fireEvent(typeName, transaction, event); }
@Override protected void doFireFeaturesChanged( String typeName, ReferencedEnvelope bounds, Filter filter) { Transaction transaction = state.getTransaction(); FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.CHANGED, bounds, filter); listenerManager.fireEvent(typeName, transaction, event); }
@Override protected void doFireFeaturesRemoved( String typeName, ReferencedEnvelope bounds, Filter filter) { Transaction transaction = state.getTransaction(); FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.REMOVED, bounds, filter); listenerManager.fireEvent(typeName, transaction, event); } }
/** * Fire notifications out to those listing on this transaction. * * @param typeName * @param transaction * @param type * @param bounds */ private void fireEvent( String typeName, Transaction transaction, int type, ReferencedEnvelope bounds) { FeatureSource<? extends FeatureType, ? extends Feature> featureSource; FeatureListener[] listeners; FeatureEvent event; Map<SimpleFeatureSource, FeatureListener[]> map = getListeners(typeName, transaction); for (Map.Entry entry : map.entrySet()) { featureSource = (FeatureSource) entry.getKey(); listeners = (FeatureListener[]) entry.getValue(); event = new FeatureEvent(featureSource, type, bounds); for (int l = 0; l < listeners.length; l++) { listeners[l].changed(event); } } } /**
public void fireFeatureRemoved(FeatureSource<?, ?> source, Feature feature) { if (listeners.isEmpty() && tx != Transaction.AUTO_COMMIT) return; Filter filter = idFilter(feature); ReferencedEnvelope bounds = ReferencedEnvelope.reference(feature.getBounds()); FeatureEvent event = new FeatureEvent(source, Type.REMOVED, bounds, filter); fireFeatureEvent(event); }
/** * Used to issue a Type.ADDED FeatureEvent indicating a new feature being created * * @param source * @param feature */ public final void fireFeatureAdded(FeatureSource<?, ?> source, Feature feature) { if (listeners.isEmpty() && tx != Transaction.AUTO_COMMIT) return; Filter filter = idFilter(feature); ReferencedEnvelope bounds = ReferencedEnvelope.reference(feature.getBounds()); FeatureEvent event = new FeatureEvent(source, Type.ADDED, bounds, filter); fireFeatureEvent(event); }
/** * Fire notifications out to everyone. * * @param typeName * @param transaction */ private void fireCommit( String typeName, Transaction transaction, int type, ReferencedEnvelope bounds) { FeatureSource<? extends FeatureType, ? extends Feature> featureSource; FeatureListener[] listeners; FeatureEvent event; Map<SimpleFeatureSource, FeatureListener[]> map = getListeners(typeName, Transaction.AUTO_COMMIT); for (Map.Entry entry : map.entrySet()) { featureSource = (FeatureSource<? extends FeatureType, ? extends Feature>) entry.getKey(); listeners = (FeatureListener[]) entry.getValue(); if (hasTransaction(featureSource) && (getTransaction(featureSource) == transaction)) { continue; // skip notify members of the same transaction } event = new FeatureEvent(featureSource, type, bounds); for (int l = 0; l < listeners.length; l++) { listeners[l].changed(event); } } } /**
/** * Creates a FeatureEvent indicating that the provided feature has been changed. * * <p>This method is provided to simplify event notification for implementors by constructing a * FeatureEvent internally (and then only if listeners are interested). You may find it easier * to construct your own FeatureEvent using {{@link #hasListener()} to check if you need to fire * events at all. * * @param source FeatureSource responsible for the change * @param feature The updated feature * @param before the bounds of the feature before the change */ public void fireFeatureUpdated( FeatureSource<?, ?> source, Feature feature, ReferencedEnvelope before) { if (feature == null) { return; // nothing changed } if (listeners.isEmpty() && tx != Transaction.AUTO_COMMIT) return; // nobody is listenting Filter filter = idFilter(feature); ReferencedEnvelope bounds = ReferencedEnvelope.reference(feature.getBounds()); if (bounds != null) { bounds.expandToInclude(before); } FeatureEvent event = new FeatureEvent(source, Type.CHANGED, bounds, filter); fireFeatureEvent(event); }
FeatureEvent event = new FeatureEvent(this, Type.CHANGED, bounds, preFilter); state.fireFeatureEvent(event);
if (state.hasListener()) { FeatureEvent event = new FeatureEvent(this, Type.REMOVED, bounds, preFilter); state.fireFeatureEvent(event);
@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); }
@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); }
FeatureEvent event = new FeatureEvent(this, Type.CHANGED, affectedBounds, filter); contentState.fireFeatureEvent(event);
public void fireFeatureRemoved(FeatureSource<?, ?> source, Feature feature) { if (listeners.isEmpty() && tx != Transaction.AUTO_COMMIT) return; Filter filter = idFilter(feature); ReferencedEnvelope bounds = new ReferencedEnvelope(feature.getBounds()); FeatureEvent event = new FeatureEvent(source, Type.REMOVED, bounds, filter); fireFeatureEvent(event); }
@Override protected void doFireFeaturesAdded(String typeName, ReferencedEnvelope bounds, Filter filter) { Transaction transaction = state.getTransaction(); FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.ADDED, bounds, filter); listenerManager.fireEvent(typeName, transaction, event); }
@Override protected void doFireFeaturesRemoved(String typeName, ReferencedEnvelope bounds, Filter filter) { Transaction transaction = state.getTransaction(); FeatureEvent event = new FeatureEvent(this, FeatureEvent.Type.REMOVED, bounds, filter); listenerManager.fireEvent(typeName, transaction, event); }