| Class | Description |
|---|---|
| EAbstractList<E extends EMessageObject> |
Base class for
EFieldList and EMessageList
classes, implementing the read-only functionality. |
| EField |
All application classes intended for use as an eBus messages
field must extend
EField. |
| EField.Builder<M extends EField,B extends EField.Builder<M,?>> | |
| EFieldList<E extends EField> | |
| EMessage |
EMessage is the base class for all eBus messages and
contains the message subject and timestamp. |
| EMessage.Builder<M extends EMessage,B extends EMessage.Builder<M,?>> |
Base class for all
EMessage builders. |
| EMessageHeader |
Contains the
EMessage header information. |
| EMessageKey |
Provides an immutable key based on the message class and
subject.
|
| EMessageList<E extends EMessage> |
This
message field type allows multiple
messages to be transported within another
eBus message. |
| EMessageObject | |
| EMessageObject.Builder<M extends EMessageObject,B extends EMessageObject.Builder<M,?>> |
Base class for all
EMessageObject builders. |
| ENotificationMessage |
Required base class for all application publish/subscribe
notification messages.
|
| ENotificationMessage.Builder<M extends ENotificationMessage,B extends ENotificationMessage.Builder<M,?>> |
Base class for all
ENotificationMessage builders. |
| EReplyMessage |
Required base class for all application request messages.
|
| EReplyMessage.Builder<M extends EReplyMessage,B extends EReplyMessage.Builder<M,?>> |
Base class for all
EReplyMessage builders. |
| EReplyMessage.ConcreteBuilder |
Since
EReplyMessage is not abstract and may be
instantiated as a concrete message, this builder is used
to create an EReplyMessage instance. |
| ERequestMessage |
Required base class for all application request messages.
|
| ERequestMessage.Builder<M extends ERequestMessage,B extends ERequestMessage.Builder<M,?>> | |
| ESystemMessage |
Required base class for all system messages.
|
| ESystemMessage.Builder<M extends ESystemMessage,B extends ESystemMessage.Builder<M,?>> |
Base class for all
ESystemMessage builders. |
| Enum | Description |
|---|---|
| EMessage.MessageType |
Messages are divided into four types: notification,
request, reply and system.
|
| EReplyMessage.ReplyStatus |
An eBus reply is limited to either OK (success) or
ERROR (failure).
|
| Exception | Description |
|---|---|
| InvalidMessageException |
InvalidMessageException is thrown when a message
class has an invalid layout. |
| UnknownFieldException |
This exception is thrown when an unknown message field is
referenced.
|
| UnknownMessageException |
This exception is thrown when an unknown message identifier
is referenced.
|
| ValidationException |
This exception is thrown when message build fails due to an
incorrectly configured message.
|
| Annotation Type | Description |
|---|---|
| EFieldInfo | Deprecated
this annotation is no longer used by eBus and
ignored if it appears in a class declaration.
|
| ELocalOnly | |
| EReplyInfo |
This class-level annotation is required for all classes
extending
ERequestMessage. |
| EStringInfo |
This field-level, run-time annotation is used to define the
Charset used to serialize/de-serialize the associated
String field. |
| Optional | Deprecated
Use
Nullable instead. |
net.sf.eBus.client
API is about sending and receiving messages. This package
defines the eBus classes used to implement messages. This
includes the abstract
EMessageObject,
EMessageHeader,
EMessage, and
EField
classes combined with the
EReplyInfo annotation used to
define messages allowed to reply to a request message..
EMessage is the abstract
base class for all actual messages. eBus messages are defined
by:
ENotifyMessage, ERequestMessage,
or EReplyMessage
public final data
members,
boolean/Boolean, char
Character, int/Integer, etc.),
supported Java classes (String,
Date, BigDecimal, etc.) or
a class which extends the
EField class.
All user-defined message and EField subclasses must
provide a builder inner class. This builder is used to
re-create the message from its serialized format. See
EMessageObject for detailed
examples explaining this "de-serialization" builder.
User-defined fields are classes which extend
EField class. Fields have
the same requirements as an eBus message: public final
fields with an eBus-supported data type, and a
public static de-serialization inner class.
Copyright © 2019. All rights reserved.