Class ServiceAnnouncingChatHandlerProvider
- java.lang.Object
-
- org.apache.druid.segment.realtime.firehose.ServiceAnnouncingChatHandlerProvider
-
- All Implemented Interfaces:
ChatHandlerProvider
public class ServiceAnnouncingChatHandlerProvider extends Object implements ChatHandlerProvider
Provides a way for the outside world to talk to objects in the indexing service. Theget(String)method allows anyone with a reference to this object to obtain a particularChatHandler. An embeddedServiceAnnouncerwill be used to advertise handlers on this host.
-
-
Constructor Summary
Constructors Constructor Description ServiceAnnouncingChatHandlerProvider(DruidNode node, ServiceAnnouncer serviceAnnouncer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.google.common.base.Optional<ChatHandler>get(String key)Retrieves a chat handler.voidregister(String service, ChatHandler handler)Registers a chat handler which provides an API for others to talk to objects in the indexing service.voidregister(String service, ChatHandler handler, boolean announce)Registers a chat handler which provides an API for others to talk to objects in the indexing service.voidunregister(String service)Unregisters a chat handler.
-
-
-
Constructor Detail
-
ServiceAnnouncingChatHandlerProvider
@Inject public ServiceAnnouncingChatHandlerProvider(DruidNode node, ServiceAnnouncer serviceAnnouncer)
-
-
Method Detail
-
register
public void register(String service, ChatHandler handler)
Description copied from interface:ChatHandlerProviderRegisters a chat handler which provides an API for others to talk to objects in the indexing service. Depending on the implementation, this method may also announce this node so that it can be discovered by other services.- Specified by:
registerin interfaceChatHandlerProvider- Parameters:
service- a unique name identifying this servicehandler- instance which implements the API to be exposed
-
register
public void register(String service, ChatHandler handler, boolean announce)
Description copied from interface:ChatHandlerProviderRegisters a chat handler which provides an API for others to talk to objects in the indexing service. Setting announce to false instructs the implementation to only register the handler to expose the API and skip any discovery announcements that might have been broadcast.- Specified by:
registerin interfaceChatHandlerProvider- Parameters:
service- a unique name identifying this servicehandler- instance which implements the API to be exposedannounce- for implementations that have a service discovery mechanism, whether this node should be announced
-
unregister
public void unregister(String service)
Description copied from interface:ChatHandlerProviderUnregisters a chat handler.- Specified by:
unregisterin interfaceChatHandlerProvider- Parameters:
service- the name of the service
-
get
public com.google.common.base.Optional<ChatHandler> get(String key)
Description copied from interface:ChatHandlerProviderRetrieves a chat handler.- Specified by:
getin interfaceChatHandlerProvider- Parameters:
key- the name of the service
-
-