@InterfaceAudience.Private public class ExecutorService extends Object
EventType
s can be submitted,
and a Runnable
that handles the object that is added to the queue.
In order to create a new service, create an instance of this class and
then do: instance.startExecutorService("myService");
. When done
call shutdown()
.
In order to use the service created above, call
submit(EventHandler)
. Register pre- and post- processing listeners
by registering your implementation of EventHandler.EventHandlerListener
with registerListener(EventType, EventHandler.EventHandlerListener)
. Be sure
to deregister your listener when done via unregisterListener(EventType)
.
Modifier and Type | Class and Description |
---|---|
static class |
ExecutorService.ExecutorStatus
A snapshot of the status of a particular executor.
|
static class |
ExecutorService.RunningEventStatus
The status of a particular event that is in the middle of being
handled by an executor.
|
Constructor and Description |
---|
ExecutorService(String servername)
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
Map<String,ExecutorService.ExecutorStatus> |
getAllExecutorStatuses() |
ThreadPoolExecutor |
getExecutorThreadPool(ExecutorType type) |
void |
registerListener(EventType type,
EventHandler.EventHandlerListener listener)
Subscribe to updates before and after processing instances of
EventType . |
void |
shutdown() |
void |
startExecutorService(ExecutorType type,
int maxThreads) |
void |
startExecutorService(String name,
int maxThreads)
Start an executor service with a given name.
|
void |
submit(EventHandler eh) |
EventHandler.EventHandlerListener |
unregisterListener(EventType type)
Stop receiving updates before and after processing instances of
EventType |
public ExecutorService(String servername)
servername
- Name of the hosting server.public void startExecutorService(String name, int maxThreads)
name
- Name of the service to start.public void shutdown()
public ThreadPoolExecutor getExecutorThreadPool(ExecutorType type)
public void startExecutorService(ExecutorType type, int maxThreads)
public void submit(EventHandler eh)
public void registerListener(EventType type, EventHandler.EventHandlerListener listener)
EventType
. Currently only one listener per
event type.type
- Type of event we're registering listener forlistener
- The listener to run.public EventHandler.EventHandlerListener unregisterListener(EventType type)
EventType
type
- Type of event we're registering listener forpublic Map<String,ExecutorService.ExecutorStatus> getAllExecutorStatuses()
Copyright © 2007–2019 The Apache Software Foundation. All rights reserved.