Class NotificatorService
java.lang.Object
org.apache.cxf.ws.eventing.backend.notification.NotificatorService
- Direct Known Subclasses:
EventSinkInterfaceNotificatorService
The service which takes care of notifying subscribers about events. Has access to the subscription database.
Receives events from compliant Emitters, eg. EmitterServlet / EmitterMBean,..
Don't forget to use the 'stop' method, especially if running inside a servlet container!!
Suggested approach for a web container is to instantiate this class in a ServletContextListener
and then have it stopped using the same listener. If you don't call 'stop' upon undeployment,
the underlying ExecutorService will not be shut down, leaking resources.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intprotected static final Loggerprotected ExecutorService -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddispatchEvent(Object event) protected abstract SubscriptionManagerInterfaceForNotificatorsvoidstart()Starts this NotificatorService.voidstop()Shuts down the NotificatorService.protected abstract voidsubmitNotificationTask(SubscriptionTicket ticket, Object event) voidsubscriptionEnd(SubscriptionTicket ticket, String reason, SubscriptionEndStatus status)
-
Field Details
-
CORE_POOL_SIZE
public static final int CORE_POOL_SIZE- See Also:
-
LOG
-
service
-
-
Constructor Details
-
NotificatorService
public NotificatorService()
-
-
Method Details
-
obtainManager
-
dispatchEvent
-
submitNotificationTask
-
subscriptionEnd
-
start
public void start()Starts this NotificatorService. You MUST run this method on every instance before starting to pass any events to it. Run it only once. -
stop
public void stop()Shuts down the NotificatorService. This method is a MUST if you are running it inside a servlet container, because it will shutdown the underlying ExecutorService.
-