@InterfaceAudience.Public @InterfaceStability.Evolving public class AsyncDispatcher extends org.apache.hadoop.service.AbstractService implements Dispatcher
Events in a separate thread. Currently only single thread
does that. Potentially there could be multiple channels for each event type
class and a thread pool can be used to dispatch the events.| Modifier and Type | Field and Description |
|---|---|
protected Map<Class<? extends Enum>,EventHandler> |
eventDispatchers |
| Constructor and Description |
|---|
AsyncDispatcher() |
AsyncDispatcher(BlockingQueue<Event> eventQueue) |
AsyncDispatcher(String dispatcherName)
Set a name for this dispatcher thread.
|
| Modifier and Type | Method and Description |
|---|---|
void |
disableExitOnDispatchException() |
protected void |
dispatch(Event event) |
EventHandler<Event> |
getEventHandler() |
protected boolean |
isDrained() |
protected boolean |
isEventThreadWaiting() |
protected boolean |
isStopped() |
void |
register(Class<? extends Enum> eventType,
EventHandler handler) |
protected void |
serviceInit(org.apache.hadoop.conf.Configuration conf) |
protected void |
serviceStart() |
protected void |
serviceStop() |
void |
setDrainEventsOnStop() |
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStopprotected final Map<Class<? extends Enum>,EventHandler> eventDispatchers
public AsyncDispatcher()
public AsyncDispatcher(BlockingQueue<Event> eventQueue)
public AsyncDispatcher(String dispatcherName)
dispatcherName - name of the dispatcher threadpublic void disableExitOnDispatchException()
protected void serviceInit(org.apache.hadoop.conf.Configuration conf)
throws Exception
serviceInit in class org.apache.hadoop.service.AbstractServiceExceptionprotected void serviceStart()
throws Exception
serviceStart in class org.apache.hadoop.service.AbstractServiceExceptionpublic void setDrainEventsOnStop()
protected void serviceStop()
throws Exception
serviceStop in class org.apache.hadoop.service.AbstractServiceExceptionprotected void dispatch(Event event)
public void register(Class<? extends Enum> eventType, EventHandler handler)
register in interface Dispatcherpublic EventHandler<Event> getEventHandler()
getEventHandler in interface Dispatcherprotected boolean isEventThreadWaiting()
protected boolean isDrained()
protected boolean isStopped()
Copyright © 2008–2022 Apache Software Foundation. All rights reserved.