See: Description
Interface | Description |
---|---|
IMessageCompiler |
Classes responsible for generating message serialization/
de-serialization code implement this interface.
|
Class | Description |
---|---|
AbstractMessageType |
This non-abstract class is used for
abstract EMessageObject classes. |
ArrayType |
Provides binary serialization/de-serialization of an object
collection.
|
BigDecimalType |
Used to explicitly serialize and de-serialize a
BigDecimal instance using the long value and
int scale. |
BigIntegerType |
Used to serialize and de-serialize a
BigInteger
instance using the byte[] returned by
BigInteger.toByteArray() . |
BooleanType |
Provides binary serialization/de-serialization of boolean
values.
|
ByteType |
Provides binary serialization/de-serialization of 1-byte
integer values.
|
CharType |
Provides binary serialization/de-serialization of 2-byte
character values.
|
ClassType |
This class is able to serialize and de-serialize a
class instance so that it may be sent
via an eBus message . |
ConcreteMessageType |
Base class for concrete message types.
|
DataType |
All message fields have an associated
DataType
subclass which is responsible for serializing and
de-serializing field values. |
DateType |
Provides binary serialization/de-serialization of
java.util.Date values. |
Decimal4jType |
Used to explicitly serialize and de-serialize a
Decimal -type instance using the long unscaled
value and int scale. |
DoubleType |
Provides binary serialization/de-serialization of 8-byte
decimal values.
|
DurationType |
Provides binary serialization/de-serialization of
java.time.Duration values. |
EnumType |
Provides binary serialization/de-serialization of
java.lang.Enum instances. |
FieldListType |
Provides binary serialization/de-serialization for
EFieldList . |
FileType |
This class is able to serialize and de-serialize a
file instance so that it may be sent
via an eBus message . |
FloatType |
Provides binary serialization/de-serialization of 4-byte
decimal values.
|
InetAddressType |
This class is able to serialize and de-serialize an
InetAddress which may be either an
IPv4 or
IPv6 address. |
InetSocketAddressType |
This class serializes and de-serializes an
InetSocketAddress which may contain either an
IPv4 or
IPv6 address. |
InstantType |
Provides binary serialization/de-serialization of
java.time.Instant values. |
IntType |
Provides binary serialization/de-serialization of 4-byte
integer values.
|
InvokeMessageCompiler | |
InvokeMessageType |
This message type serializes and de-serializes an given eBus
message class instance using
java.lang.invoke.MethodHandle to access message fields
(when serializing) and message builder methods (when
de-serializing). |
JavaMessageCompiler |
Generates a
ConcreteMessageType -subclass overriding
MessageType.serializeFields(Object, java.nio.ByteBuffer)
and
MessageType.deserializeFields(int, String, java.nio.ByteBuffer)
methods used to serialize/de-serialize instances of a given
eBus message or field class. |
LocalDateTimeType |
Provides binary serialization/de-serialization of
java.time.LocalDateTime values. |
LocalDateType |
Provides binary serialization/de-serialization of
java.time.LocalDate values. |
LocalMessageType |
This type defines
EMessageObject
sub-classes which are annotated with
ELocalOnly . |
LocalTimeType |
Provides binary serialization/de-serialization of
java.time.LocalTime values. |
LongType |
Provides binary serialization/de-serialization of 8-byte
integer values.
|
MessageKeyType |
This class serializes/de-serializes a
EMessageKey so
that it may be sent via an EMessage . |
MessageListType |
Provides binary serialization/de-serialization for
EMessageList . |
MessageType |
This class provides binary serialization/de-serialization for
a unique
EMessageObject sub-class. |
MessageType.MessageField |
Stores a field index, field name, class field, eBus data
type.
|
MessageType.MessageFieldBuilder |
Builder for a
MessageField instance. |
MonthDayType |
Provides binary serialization/de-serialization of
java.time.MonthDay values. |
OffsetDateTimeType |
Provides binary serialization/de-serialization of
java.time.OffsetDateTime values. |
OffsetTimeType |
Provides binary serialization/de-serialization of
java.time.OffsetTime values. |
PeriodType |
Provides binary serialization/de-serialization of
java.time.Period values. |
ShortType |
Provides binary serialization/de-serialization of 2-byte
integer values.
|
StringType |
Provides binary serialization/de-serialization of
java.lang.String objects. |
UriType |
Provides binary serialization of a
URI
instance. |
UUIDType |
Provides binary serialization of a
UUID instance. |
YearMonthType |
Provides binary serialization/de-serialization of
java.time.YearMonth values. |
YearType |
Provides binary serialization/de-serialization of
java.time.Year values. |
ZonedDateTimeType |
Provides binary serialization/de-serialization of
java.time.ZonedDateTime values. |
ZoneIdType | |
ZoneOffsetType |
Provides binary serialization/de-serialization of
java.time.ZoneOffset values. |
Exception | Description |
---|---|
DeserializeException |
This exception is thrown when
DataType.deserialize(net.sf.eBus.messages.type.MessageType.MessageField, java.nio.ByteBuffer)
fails to extract an object from the buffer due to the buffer
containing corrupted contents. |
MessageCompileException |
This exception is thrown by
IMessageCompiler.compile(ConcreteMessageType)
indicating that a DataType for the given eBus message
object cannot be generated due to an underlying problem. |
The DataType
class
maintains a mapping from Java class type to the DataType
subclass responsible for the class serialization. Thus only
one instance type instance exists for each serialized class
type.
User-defined classes used as message fields must extend the
EField
class.
MessageType
tracks the
EField
sub-class layout and performs the
serialization/de-serialization. There is one
MessageType
instance for each
EField
sub-class and these MessageType
instances are created only as needed.
Copyright © 2001 - 2024. Charles W. Rapp. All rights reserved.