Class DefaultTopicDistributionService
- java.lang.Object
-
- org.glassfish.hk2.extras.events.internal.DefaultTopicDistributionService
-
- All Implemented Interfaces:
DynamicConfigurationListener
,InstanceLifecycleListener
,TopicDistributionService
@Singleton @Named("HK2TopicDistributionService") @ContractsProvided({TopicDistributionService.class,InstanceLifecycleListener.class,DynamicConfigurationListener.class}) public class DefaultTopicDistributionService extends Object implements TopicDistributionService, InstanceLifecycleListener, DynamicConfigurationListener
This is the default implementation of the TopicDistributionService.- Author:
- jwells
-
-
Field Summary
-
Fields inherited from interface org.glassfish.hk2.api.messaging.TopicDistributionService
HK2_DEFAULT_TOPIC_DISTRIBUTOR
-
-
Constructor Summary
Constructors Constructor Description DefaultTopicDistributionService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
configurationChanged()
This method is called when the set of descriptors in this service locator has been changed.void
distributeMessage(Topic<?> topic, Object message)
Must distribute the message to all of the matching topic subscribers.Filter
getFilter()
This returns a filter that tells the system whether a particular descriptor should be handled by this lifecycle listener.void
lifecycleEvent(InstanceLifecycleEvent lifecycleEvent)
This method will be called when any lifecycle event occurs.
-
-
-
Method Detail
-
distributeMessage
public void distributeMessage(Topic<?> topic, Object message)
Description copied from interface:TopicDistributionService
Must distribute the message to all of the matching topic subscribers. Any exception thrown from this method will be ignored. Instead error handling should be performed by the implementation of this message- Specified by:
distributeMessage
in interfaceTopicDistributionService
- Parameters:
topic
- The topic to which to distribute the message. Must not be nullmessage
- The message to send to the topic. Must not be null
-
getFilter
public Filter getFilter()
Description copied from interface:InstanceLifecycleListener
This returns a filter that tells the system whether a particular descriptor should be handled by this lifecycle listener. The filter can be called at any time- Specified by:
getFilter
in interfaceInstanceLifecycleListener
- Returns:
- The filter that tells the system if this listener applies to this descriptor. If this returns null then this Listener will apply to ALL descriptors.
-
lifecycleEvent
public void lifecycleEvent(InstanceLifecycleEvent lifecycleEvent)
Description copied from interface:InstanceLifecycleListener
This method will be called when any lifecycle event occurs. The currently supported lifecycle events are PRE_PRODUCTION, POST_PRODUCTION and PRE_DESTRUCTION. Code should be written to allow for future events to be generated. This method should not throw exceptions- Specified by:
lifecycleEvent
in interfaceInstanceLifecycleListener
- Parameters:
lifecycleEvent
- The event that has occurred, will not be null
-
configurationChanged
public void configurationChanged()
Description copied from interface:DynamicConfigurationListener
This method is called when the set of descriptors in this service locator has been changed. Changes to parent service locators descriptors will not be reported. These services are called back on the thread doing theDynamicConfiguration.commit()
so care should be taken to do any work quickly. Any exception thrown from this method will be ignored. A commit that failed will not be reported to this method- Specified by:
configurationChanged
in interfaceDynamicConfigurationListener
-
-