Package org.apache.storm.messaging
Interface IContext
-
public interface IContext
This interface needs to be implemented for messaging plugin.Messaging plugin is specified via Storm config parameter, storm.messaging.transport.
A messaging plugin should have a default constructor and implements IContext interface. Upon construction, we will invoke IContext::prepare(topoConf) to enable context to be configured according to storm configuration.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description IConnection
bind(String stormId, int port, IConnectionCallback cb, Supplier<Object> newConnectionResponse)
This method establishes a server side connection.IConnection
connect(String stormId, String host, int port, AtomicBoolean[] remoteBpStatus)
This method establish a client side connection to a remote server implementation should return a new connection every call.void
prepare(Map<String,Object> topoConf)
Deprecated.default void
prepare(Map<String,Object> topoConf, StormMetricRegistry metricRegistry)
This method is invoked at the startup of messaging plugin.void
term()
This method is invoked when a worker is unloading a messaging plugin.
-
-
-
Method Detail
-
prepare
@Deprecated void prepare(Map<String,Object> topoConf)
Deprecated.This method is invoked at the startup of messaging plugin.- Parameters:
topoConf
- storm configuration
-
prepare
default void prepare(Map<String,Object> topoConf, StormMetricRegistry metricRegistry)
This method is invoked at the startup of messaging plugin.- Parameters:
topoConf
- storm configurationmetricRegistry
- storm metric registry
-
term
void term()
This method is invoked when a worker is unloading a messaging plugin.
-
bind
IConnection bind(String stormId, int port, IConnectionCallback cb, Supplier<Object> newConnectionResponse)
This method establishes a server side connection.- Parameters:
stormId
- topology IDport
- port #cb
- The callback to deliver received messages tonewConnectionResponse
- Supplier of the initial message to send to new client connections. If authentication is required, the message will be sent after authentication is complete.- Returns:
- server side connection
-
connect
IConnection connect(String stormId, String host, int port, AtomicBoolean[] remoteBpStatus)
This method establish a client side connection to a remote server implementation should return a new connection every call.- Parameters:
stormId
- topology IDhost
- remote hostport
- remote portremoteBpStatus
- array of booleans reflecting Back Pressure status of remote tasks.- Returns:
- client side connection
-
-