public class FanoutEventProcessor extends EventProcessorImpl
EventProcessorImpl.DateType
bundleContext, catalog, EQUATORIAL_RADIUS_IN_METERS, eventAdmin, preDelivery, preSubscription
EVENT_METACARD, EVENT_OLD_METACARD, EVENT_TIME, EVENTS_TOPIC_CREATED, EVENTS_TOPIC_DELETED, EVENTS_TOPIC_UPDATED
Constructor and Description |
---|
FanoutEventProcessor(org.osgi.framework.BundleContext bundleContext,
org.osgi.service.event.EventAdmin eventAdmin,
List<PreSubscriptionPlugin> preSubscription,
List<PreDeliveryPlugin> preDelivery,
CatalogFramework catalog) |
Modifier and Type | Method and Description |
---|---|
void |
destroy() |
void |
init() |
void |
notifyCreated(Metacard newMetacard)
|
void |
notifyDeleted(Metacard oldMetacard)
|
void |
notifyUpdated(Metacard newMetacard,
Metacard oldMetacard)
|
createSubscription, createSubscription, deleteSubscription, handleEvent, postEvent, process, process, process, processEntry, updateSubscription
public FanoutEventProcessor(org.osgi.framework.BundleContext bundleContext, org.osgi.service.event.EventAdmin eventAdmin, List<PreSubscriptionPlugin> preSubscription, List<PreDeliveryPlugin> preDelivery, CatalogFramework catalog)
public void init()
init
in class EventProcessorImpl
public void destroy()
destroy
in class EventProcessorImpl
public void notifyCreated(Metacard newMetacard)
EventProcessor
EventProcessor
that a Metacard
(or equivalent) has been created in
a RemoteSource
.
Implementations of this method must:
PreDeliveryPlugin.processCreate(Metacard)
method for
all of the registered PreDeliveryPlugin
s
DeliveryMethod.created(Metacard)
method of the DeliveryMethod
of
matching Subscription
s with the new Metacard
created.
notifyCreated
in interface EventProcessor
notifyCreated
in class EventProcessorImpl
newMetacard
- the newly created Metacard
RemoteSource
,
FederatedSource
,
ConnectedSource
public void notifyUpdated(Metacard newMetacard, Metacard oldMetacard)
EventProcessor
EventProcessor
that a Metacard
(or equivalent) has been updated in
a RemoteSource
.
Implementations of this method must:
PreDeliveryPlugin.processUpdateHit(ddf.catalog.operation.Update)
method of all registered PreDeliveryPlugin
s when a Metacard
has been updated and the new version matches a Subscription
Call PreDeliveryPlugin.processUpdateMiss(ddf.catalog.operation.Update)
method of all registered PreDeliveryPlugin
s when a Metacard
has been updated and the new version matches a Subscription
but the old
version does not
DeliveryMethod
with the updated Metacard
.
notifyUpdated
in interface EventProcessor
notifyUpdated
in class EventProcessorImpl
newMetacard
- the new version of the Metacard
oldMetacard
- the previous version of the Metacard
(optional, pass null
if
not relevant)FederatedSource
,
RemoteSource
,
ConnectedSource
public void notifyDeleted(Metacard oldMetacard)
EventProcessor
EventProcessor
that a Metacard
(or equivalent) has been deleted in
a RemoteSource
.
Implementations of this method must:
Metacard
is fully populated) call all active matching
Subscription
s associated DeliveryMethod.deleted(Metacard)
with the Metacard
that was deleted.
Metacard
only has Metacard.getId()
, call all
active Subscription
s.
notifyDeleted
in interface EventProcessor
notifyDeleted
in class EventProcessorImpl
oldMetacard
- the deleted Metacard
RemoteSource
,
FederatedSource
,
ConnectedSource
This work is licensed under a Creative Commons Attribution 4.0 International License.