Top Description Fields Constructors Methods
io.vertx.core.eventbus.impl.clustered

public Class ClusteredEventBus

extends EventBusImpl
Class Inheritance
Imports
io.vertx.core.Handler, .MultiMap, .Promise, .VertxOptions, io.vertx.core.buffer.Buffer, io.vertx.core.eventbus.AddressHelper, .EventBusOptions, .MessageCodec, io.vertx.core.eventbus.impl.CodecManager, .EventBusImpl, .HandlerHolder, .HandlerRegistration, .MessageImpl, .OutboundDeliveryContext, io.vertx.core.impl.CloseFuture, .ContextInternal, .VertxInternal, io.vertx.core.impl.logging.Logger, .LoggerFactory, io.vertx.core.impl.utils.ConcurrentCyclicSequence, io.vertx.core.net.NetClient, .NetClientOptions, .NetServer, .NetServerOptions, .NetSocket, io.vertx.core.net.impl.NetClientBuilder, io.vertx.core.parsetools.RecordParser, io.vertx.core.spi.cluster.ClusterManager, .NodeInfo, .NodeSelector, .RegistrationInfo, io.vertx.core.spi.metrics.VertxMetrics, java.util.Iterator, .Objects, .UUID, java.util.concurrent.ConcurrentHashMap, .ConcurrentMap, java.util.concurrent.atomic.AtomicLong

An event bus implementation that clusters with other Vert.x nodes
Author
Tim Fox

Field Summary

Modifier and TypeField and Description
private final NetClient
private final CloseFuture
private final ClusterManager
private final ConcurrentMap<String, ConnectionHolder>
private final ContextInternal
private final AtomicLong
private static final Logger
private String
private NodeInfo
nodeInfo

References Deprecated NodeInfo is deprecated or references (maybe indirectly) at least one deprecated element.
private final NodeSelector
private final EventBusOptions
private static final Buffer
PONG

References Deprecated Buffer is deprecated or references (maybe indirectly) at least one deprecated element.
private NetServer
Inherited from io.vertx.core.eventbus.impl.EventBusImpl:
codecManagerhandlerMapmetricsstartedvertx

Constructor Summary

AccessConstructor and Description
public
ClusteredEventBus(VertxInternal vertx, VertxOptions options, ClusterManager clusterManager, NodeSelector nodeSelector)

Method Summary

Modifier and TypeMethod and Description
pack-priv NetClient
public void
close(Promise<Void> promise)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.close.

Implements io.vertx.core.eventbus.impl.EventBusInternal.close.

Close the event bus and release any resources held.

private <T> void
pack-priv ConcurrentMap<String, ConnectionHolder>
protected <T> HandlerHolder<T>
createHandlerHolder(HandlerRegistration<T> registration, boolean replyHandler, boolean localOnly, ContextInternal context)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.createHandlerHolder.

public MessageImpl<U, V>
createMessage(boolean send, boolean isLocal, String address, MultiMap headers, Object body, String codecName)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.createMessage.

private NetClient
createNetClient(VertxInternal vertx, NetClientOptions clientOptions, CloseFuture closeFuture)

protected String
private String
private int
private String
private int
getClusterPublicPort(int actualPort)

private Handler<NetSocket>
private NetServerOptions
protected boolean
protected HandlerHolder<T>
protected <T> void
protected <T> void
pack-priv EventBusOptions
protected <T> void
private void
private void
sendRemote(OutboundDeliveryContext<?> sendContext, String remoteNodeId, MessageImpl<U, V> message)

private <T> void
sendToNode(OutboundDeliveryContext<T> sendContext, String nodeId)

private <T> void
public void
pack-priv VertxInternal
Inherited from io.vertx.core.eventbus.impl.EventBusImpl:
addInboundInterceptoraddOutboundInterceptoraddRegistrationcallCompletionHandlerAsynccheckStartedclusterSerializableCheckercodecSelectorconsumerconsumerconsumerconsumerdeliverMessageLocallygetMetricsisMetricsEnabledlocalConsumerlocalConsumernewSendContextpublishpublishpublisherpublisherregisterCodecregisterDefaultCodecremoveInboundInterceptorremoveOutboundInterceptorremoveRegistrationrequestsendsendsendersendersendOrPubInternalsendOrPubInternalsendReplyserializableCheckerunregisterCodecunregisterDefaultCodec

Field Detail

clientback to summary
private final NetClient client
closeFutureback to summary
private final CloseFuture closeFuture
clusterManagerback to summary
private final ClusterManager clusterManager
connectionsback to summary
private final ConcurrentMap<String, ConnectionHolder> connections
ebContextback to summary
private final ContextInternal ebContext
handlerSequenceback to summary
private final AtomicLong handlerSequence
logback to summary
private static final Logger log
nodeIdback to summary
private String nodeId
nodeInfoback to summary
private NodeInfo nodeInfo

References Deprecated

NodeInfo is deprecated or references (maybe indirectly) at least one deprecated element.

See corresponding docs for further information.

nodeSelectorback to summary
private final NodeSelector nodeSelector
optionsback to summary
private final EventBusOptions options
PONGback to summary
private static final Buffer PONG

References Deprecated

Buffer is deprecated or references (maybe indirectly) at least one deprecated element.

See corresponding docs for further information.

serverback to summary
private NetServer server

Constructor Detail

ClusteredEventBusback to summary
public ClusteredEventBus(VertxInternal vertx, VertxOptions options, ClusterManager clusterManager, NodeSelector nodeSelector)

Method Detail

clientback to summary
pack-priv NetClient client()
closeback to summary
public void close(Promise<Void> promise)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.close.

Implements io.vertx.core.eventbus.impl.EventBusInternal.close.

Doc from io.vertx.core.eventbus.impl.EventBusInternal.close.

Close the event bus and release any resources held.

Annotations
@Override
clusteredSendReplyback to summary
private <T> void clusteredSendReply(String replyDest, OutboundDeliveryContext<T> sendContext)
connectionsback to summary
pack-priv ConcurrentMap<String, ConnectionHolder> connections()
createHandlerHolderback to summary
protected <T> HandlerHolder<T> createHandlerHolder(HandlerRegistration<T> registration, boolean replyHandler, boolean localOnly, ContextInternal context)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.createHandlerHolder.

Annotations
@Override
createMessageback to summary
public MessageImpl<U, V> createMessage(boolean send, boolean isLocal, String address, MultiMap headers, Object body, String codecName)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.createMessage.

Annotations
@Override
createNetClientback to summary
private NetClient createNetClient(VertxInternal vertx, NetClientOptions clientOptions, CloseFuture closeFuture)
generateReplyAddressback to summary
protected String generateReplyAddress()

Overrides io.vertx.core.eventbus.impl.EventBusImpl.generateReplyAddress.

Annotations
@Override
getClusterHostback to summary
private String getClusterHost()
getClusterPortback to summary
private int getClusterPort()
getClusterPublicHostback to summary
private String getClusterPublicHost(String host)
getClusterPublicPortback to summary
private int getClusterPublicPort(int actualPort)
getServerHandlerback to summary
private Handler<NetSocket> getServerHandler()
getServerOptionsback to summary
private NetServerOptions getServerOptions()
isMessageLocalback to summary
protected boolean isMessageLocal(MessageImpl<U, V> msg)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.isMessageLocal.

Annotations
@Override
nextHandlerback to summary
protected HandlerHolder<T> nextHandler(ConcurrentCyclicSequence<HandlerHolder<T>> handlers, boolean messageLocal)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.nextHandler.

Annotations
@Override
onLocalRegistrationback to summary
protected <T> void onLocalRegistration(HandlerHolder<T> handlerHolder, Promise<Void> promise)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.onLocalRegistration.

Annotations
@Override
onLocalUnregistrationback to summary
protected <T> void onLocalUnregistration(HandlerHolder<T> handlerHolder, Promise<Void> completionHandler)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.onLocalUnregistration.

Annotations
@Override
optionsback to summary
pack-priv EventBusOptions options()
sendOrPubback to summary
protected <T> void sendOrPub(OutboundDeliveryContext<T> sendContext)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.sendOrPub.

Annotations
@Override
sendOrPublishFailedback to summary
private void sendOrPublishFailed(OutboundDeliveryContext<?> sendContext, Throwable cause)
sendRemoteback to summary
private void sendRemote(OutboundDeliveryContext<?> sendContext, String remoteNodeId, MessageImpl<U, V> message)
sendToNodeback to summary
private <T> void sendToNode(OutboundDeliveryContext<T> sendContext, String nodeId)
sendToNodesback to summary
private <T> void sendToNodes(OutboundDeliveryContext<T> sendContext, Iterable<String> nodeIds)
startback to summary
public void start(Promise<Void> promise)

Overrides io.vertx.core.eventbus.impl.EventBusImpl.start.

Implements io.vertx.core.eventbus.impl.EventBusInternal.start.

Doc from io.vertx.core.eventbus.impl.EventBusInternal.start.

Start the event bus.

Annotations
@Override
vertxback to summary
pack-priv VertxInternal vertx()