All Classes and Interfaces
Class
Description
This is an implementation of the
ThrottlePolicy
that passes all requests (no real throttling).This class holds the specifications of an application running message bus services.
An wrapper around a stack of frame objects that is aware of the message that owns it.
This class implements subscription to message bus config.
This class declares those methods required to be a handler for an instance of the
ConfigAgent
class.Something which can be connected to a network when ready to receive incoming requests.
A session supporting receiving and replying to messages.
To facilitate several configuration parameters to the
MessageBus.createDestinationSession(DestinationSessionParams)
,
all parameters are held by this class.This is an implementation of the
ThrottlePolicy
that offers dynamic limits to the number of pending messages a
SourceSession
is allowed to have.The empty reply is the only concrete implementation of a message that is offered by the MessageBus.
This class implements the pair (code, message) that is used in Reply to hold errors.
This interface contains the reserved error codes that are used for errors that occur within the messagebus.
This class represents an error directive within a
Hop
's selector.Hops are the components of routes.
A hop blueprint is a stored prototype of a hop that has been created from a
HopSpec
object.This class is the base class for the primitives that make up a
Hop
's selector.Along with the
RoutingSpec
, RoutingTableSpec
and RouteSpec
, this holds the routing
specifications for all protocols.This class encapsulates the identity of the application that uses this instance of message bus.
A session which supports receiving, forwarding and acknowledging messages.
To facilitate several configuration parameters to the
MessageBus.createIntermediateSession(IntermediateSessionParams)
,
all parameters are held by this class.A message is a child of Routable, it is not a reply, and it has a sequencing identifier.
A message bus contains the factory for creating sessions to send, receive
and forward messages.
This class represents the root node of messagebus
Copyright Yahoo.
This class represents messagebus.routingtable[]
This class represents messagebus.routingtable[].hop[]
This class represents messagebus.routingtable[].route[]
To facilitate several configuration parameters to the
MessageBus
constructor, all parameters are held by this
class.All classes that wants to handle messages that move through the messagebus need to implement this interface.
This class implements a single thread that is able to process arbitrary
tasks.
Defines the required interface for tasks to be posted to this
worker.
This interface separates the low-level network implementation from the rest of messagebus.
The combination of a messagebus and a network over which it may send data.
A bridge between the reusable, singleton RPC network, and the generational message bus which uses this.
A network owner is the object that instantiates and uses a network.
This class represents a policy directive within a
Hop
's selector.Interface implemented by the concrete application message protocol.
Implements a thread-safe repository for protocols and their routing policies.
Throttling policy that throttles sending based on a desired rate.
A reply is a response to a message that has been sent throught the messagebus.
All classes that wants to handle replies that move through the messagebus need to implement this interface.
The resender handles scheduling and execution of sending instances of
RoutingNode
.Information on the outcome of initiating a send or forward on a session.
When a
Reply
containing errors is returned to a MessageBus
,
an object implementing this interface is consulted on whether or not to resend the corresponding Message
.Implements a retry policy that allows resending of any error that is not fatal.
Superclass for objects that can be either explicitly (Message) or implicitly (Reply) routed.
A route is a list of
hops
that are resolved from first to last
as a routable moves from source to destination.This class represents a route directive within a
Hop
's selector.This replaces the incredibly slow javacc RouteParser.jj.
Along with the
RoutingSpec
, RoutingTableSpec
and HopSpec
, this holds the routing
specifications for all protocols.This context object is what is seen by
RoutingPolicy
when doing
both select() and merge().This class represents a node in the routing tree that is created when a route is resolved.
Implements an iterator for routing nodes.
Decides how to choose between candidate recipients of a hop template point.
Along with the
RoutingTableSpec
, RouteSpec
and HopSpec
, this holds the routing specifications
for all protocols.At any time there may only ever be zero or one routing table registered in message bus for each protocol.
Implements an iterator for the hops of this.
Implements an iterator for the routes of this.
Along with the
RoutingSpec
, RouteSpec
and HopSpec
, this holds the routing specifications for
all protocols.The RPCMessageBus class wraps a MessageBus with an RPCNetwork and handles reconfiguration.
An RPC implementation of the Network interface.
To facilitate several configuration parameters to the
RPCNetwork
constructor, all parameters are held by this
class.Implements the request adapter for method "mbus.send1/mbus.slime".
This interface defines the necessary methods to process incoming and send outgoing RPC requests.
Implements the request adapter for method "mbus.slime".
An RPCService represents a set of remote sessions matching a service pattern.
Implements the
ServiceAddress
interface for the RPC network.Class used to reuse services for the same address when sending messages over the rpc network.
Implements a target object that encapsulates the JRT connection
target.
Declares a version handler used when resolving the version of a
target.
Class used to reuse targets for the same address when sending messages over the rpc network.
This class owns a message that is being sent by message bus.
Sequencing is implemented as a message handler that is configured in a source session in that session's chain of
linked message handlers.
This interface represents an abstract network service; i.e.
Defines a policy factory interface that tests can use to register arbitrary policies with this protocol.
This class implements subscription to slobrok config.
A session supporting sending new messages.
To facilitate several configuration parameters to the
MessageBus.createSourceSession(ReplyHandler, SourceSessionParams)
, all parameters are held by this class.This is an implementation of the
ThrottlePolicy
that offers static limits to the amount of pending data a
SourceSession
is allowed to have.This class represents a tcp directive within a
Hop
's selector.A simple test server implementation.
An implementation of this interface is used by
SourceSession
to throttle output.A Trace object contains ad-hoc string notes organized in a strict-loose tree.
This class defines the
Trace
levels used by message bus.This class contains the actual trace information of a
Trace
object.This class represents a verbatim match within a
Hop
's selector.