W
- type of module specific state or meta-data, use Void
if none is usedpublic abstract class AbstractMessageDispatcherFactory<W> extends Object implements MessageDispatcherFactory
Constructor and Description |
---|
AbstractMessageDispatcherFactory() |
Modifier and Type | Method and Description |
---|---|
<S extends Message,T extends Message> |
createAsyncDispatcher(SinkModule<S,T> module)
Creates a new dispatcher used to send messages asynchronously.
|
protected <S extends Message,T extends Message> |
createSyncDispatcher(DispatcherState<W,S,T> state) |
<S extends Message,T extends Message> |
createSyncDispatcher(SinkModule<S,T> module)
Creates a new synchronous dispatcher that will lock the calling thread when
dispatching messages.
|
abstract <S extends Message,T extends Message> |
dispatch(SinkModule<S,T> module,
W metadata,
T message) |
protected com.codahale.metrics.MetricRegistry |
getMetrics() |
<S extends Message,T extends Message> |
getModuleMetadata(SinkModule<S,T> module)
Optionally build meta-data or state information for the module which will
be passed on all the calls to
dispatch(org.opennms.core.ipc.sink.api.SinkModule<S, T>, W, T) . |
public abstract <S extends Message,T extends Message> void dispatch(SinkModule<S,T> module, W metadata, T message)
public <S extends Message,T extends Message> W getModuleMetadata(SinkModule<S,T> module)
dispatch(org.opennms.core.ipc.sink.api.SinkModule<S, T>, W, T)
.
This is useful for calculating things like message headers which are
re-used on every dispatch.module
- public <S extends Message,T extends Message> SyncDispatcher<S> createSyncDispatcher(SinkModule<S,T> module)
MessageDispatcherFactory
createSyncDispatcher
in interface MessageDispatcherFactory
public <S extends Message,T extends Message> AsyncDispatcher<S> createAsyncDispatcher(SinkModule<S,T> module)
MessageDispatcherFactory
AsyncPolicy
.createAsyncDispatcher
in interface MessageDispatcherFactory
protected <S extends Message,T extends Message> SyncDispatcher<S> createSyncDispatcher(DispatcherState<W,S,T> state)
protected com.codahale.metrics.MetricRegistry getMetrics()
Copyright © 2018. All rights reserved.