Module org.refcodes.serial
Package org.refcodes.serial
package org.refcodes.serial
-
ClassDescriptionAbstractArrayTransmission<ARRAY extends Transmission>An
AbstractArrayTransmission
is aTransmission
consisting ofTransmission
elements (an array of elements).AbstractCipherTransmissionDecorator<DECORATEE extends Transmission>An abstract implementation of bijective and inverse functions applied to the decoratee's transmitting and receiving methods.AbstractCrcTransmissionDecorator<DECORATEE extends Transmission>AAbstractCrcTransmissionDecorator
wraps aTransmission
instance and enriches theTransmission
with a CRC checksum.AbstractErrorCorrectionTransmissionDecorator<DECORATEE extends Transmission>TheAbstractErrorCorrectionTransmissionDecorator
class implements a decorator providing base functionality for an error correctionTransmission
.AbstractInvertibleTransmissionDecorator<DECORATEE extends Transmission>An abstract implementation of bijective and inverse functions applied to the decoratee's transmitting and receiving methods.AbstractLengthDecoratorSegment<DECORATEE extends Transmission>TheAbstractLengthDecoratorSegment
decorates a decoratee with a length prefix.Magic bytes are usually found (somewhere) at the beginning of a file or a stream.AbstractMagicBytesTransmissionDecorator<DECORATEE extends Transmission>Magic bytes are usually found (somewhere) at the beginning of a file or a stream.AbstractMagicBytesTransmissionMultiplexer<CHILD extends Transmission>TheAbstractMagicBytesTransmissionMultiplexer
dispatches a transmission to one of the aggregatedTransmission
instances depending on the magic number provided by the transmission.An abstract implementation of aSection
with payload.An abstract implementation of aSegment
with payload.AbstractPort<PM extends PortMetrics>AAbstractPort
is a basePort
implementationAbstractPortDecorator<PM extends PortMetrics>AbstractReadyToReceiveTransmissionDecorator<DECORATEE extends Transmission>TheAbstractReadyToReceiveTransmissionDecorator
class implements a decorator providingReadyToReceiveTransmission
functionality for aTransmission
.AbstractReadyToSendTransmissionDecorator<DECORATEE extends Transmission>TheAbstractReadyToSendTransmissionDecorator
class implements a decorator providingReadyToSendTransmission
functionality for aTransmission
.AbstractReferenceeLengthSegment<REFERENCEE extends Transmission>TheAbstractReferenceeLengthSegment
represents a allocated length value as of the referencedTransmission
element's length.AbstractSectionDecorator<SECTION extends Section>Convenience class for easily decorating aSection
.AbstractSegmentDecorator<SEGMENT extends Segment>Convenience class for easily decorating aSegment
.AbstractStopAndWaitPacketStreamTransmissionDecorator<DECORATEE extends Transmission>AAbstractStopAndWaitPacketStreamTransmissionDecorator
wraps aTransmission
instance and enriches theTransmission
with packet-stream functionality.AbstractStopAndWaitTransmissionDecorator<DECORATEE extends Transmission>TheAbstractStopAndWaitTransmissionDecorator
class implements a decorator providingStopAndWaitTransmission
functionality for aTransmission
.AbstractTransmissionComposite<CHILD extends Transmission>AAbstractTransmissionComposite
is aTransmission
consisting ofTransmission
elements with each element.AbstractTransmissionDecorator<DECORATEE extends Transmission>An abstract implementation of aTransmission
decorating anotherTransmission
.Provides an accessor for a acknowledge magic bytes property.AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder<B extends AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder<B>>Provides a builder method for a acknowledge magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a acknowledge magic bytes property.Provides a acknowledge magic bytes property.Provides an accessor for a acknowledge retry number.AcknowledgeRetryNumberAccessor.AcknowledgeRetryNumberBuilder<B extends AcknowledgeRetryNumberAccessor.AcknowledgeRetryNumberBuilder<B>>Provides a builder method for a acknowledge retry number returning the builder for applying multiple build operations.Provides a mutator for a acknowledge retry number.Provides a acknowledge retry number.A acknowledge retry number is the overall number of retries to use when counting retries.Provides an accessor for aSegmentPackager
ACK property.AcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<B extends AcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<B>>Provides a builder method for aSegmentPackager
ACK property returning the builder for applying multiple build operations.Provides a mutator for aSegmentPackager
ACK property.Provides aSegmentPackager
ACK property.Provides an accessor for a acknowledge timeout in milliseconds property.AcknowledgeTimeoutInMsAccessor.AcknowledgeTimeoutInMsBuilder<B extends AcknowledgeTimeoutInMsAccessor.AcknowledgeTimeoutInMsBuilder<B>>Provides a builder method for the acknowledge timeout property returning the builder for applying multiple build operations.Provides a mutator for a acknowledge timeout in milliseconds property.Provides a acknowledge timeout in milliseconds property.Provides an accessor for a allocation length property.Provides a builder method for a allocation length property returning the builder for applying multiple build operations.Provides a mutator for a allocation length property.Provides a allocation length property.AllocSectionDecoratorSegment<DECORATEE extends Section>AnAllocSectionDecoratorSegment
enriches anSection
with an allocation declaration being prefixed to the enrichedSection
.AllocSegmentBody<DECORATEE extends Section>AnAllocSegmentBody
provides anSegment
with an allocation length.AnAllocSegmentHead
provides the allocation length for aAllocSegmentBody
.ArraySection<ARRAY extends Transmission>ArraySegment<SEGMENT extends Segment>ArrayTransmission<ARRAY extends Transmission>TheAsciizSegment
is an implementation of aSegment
carrying an ASCII encodedString
as payload, terminated by a 0 ("zero") indicating its end.AssertMagicBytesSectionDecorator<DECORATEE extends Section>TheAssertMagicBytesSectionDecorator
extends theMagicBytesSectionDecorator
and enforces the configured magic bytes to match the received magic bytes (as ofAssertMagicBytesSectionDecorator.fromTransmission(Sequence, int, int)
andAssertMagicBytesSectionDecorator.receiveFrom(java.io.InputStream, int, java.io.OutputStream)
or the like).TheAssertMagicBytesSegment
extends theMagicBytesSegment
and enforces the configured magic bytes to match the received magic bytes (as ofSegment.fromTransmission(Sequence)
andSegment.SegmentMixin.receiveFrom(java.io.InputStream, java.io.OutputStream)
or the like).AssertMagicBytesSegmentDecorator<DECORATEE extends Segment>TheAssertMagicBytesSegmentDecorator
extends theMagicBytesSegmentDecorator
and enforces the configured magic bytes to match the received magic bytes (as ofSegment.fromTransmission(Sequence)
andAssertMagicBytesSegmentDecorator.receiveFrom(java.io.InputStream, java.io.OutputStream)
or the like).Thrown in case a transmission's CRC checksum did not match the according calculated CRC checksum.Thrown in case aSequence
CRC checksum did not match the according calculated CRC checksum.ABadMagicBytesException
denotes bad (unexpected) magic bytes encountered while processing a transmission.ABadMagicBytesSequenceException
denotes bad (unexpected) magic bytes encountered while processing a transmissionSequence
.TheBooleanArraySection
is an implementation of aSection
carrying a boolean array as payload.TheBooleanSegment
is an implementation of aSegment
carrying in boolean value as value.TheBoundedSequenceDecorator
decorates aSequence
whilst bounding its size to a given maximum size (to be set viaBoundedSequenceDecorator.setLength(int)
) .BreakerSectionDecorator<DECORATEE extends Section>TheBreakerSectionDecorator
is aDecoratorSection
build to test error detection and error correctionTransmission
implementations such as theCrcSectionDecorator
or theStopAndWaitSectionDecorator
.BreakerSegmentDecorator<DECORATEE extends Segment>TheBreakerSegmentDecorator
is aDecoratorSegment
build to test error detection and error correctionTransmission
implementations such as theCrcSegmentDecorator
or theStopAndWaitSegmentDecorator
.TheByteArraySection
is an implementation of aSection
carrying a byte array as payload.AByteArraySequence
implements theSequence
interface by using chunks of byte arrays, therewith reducing array copy operations when working with byte fields.TheByteSegment
is an implementation of aSegment
carrying in byte value as payload.TheCharArraySection
is an implementation of aPayloadSection
carrying a char array as payload.TheCharSection
is an implementation of aSection
carrying a char value as payload.CipherSectionDecorator<DECORATEE extends Section>ACipherSectionDecorator
is a transmission applying anInvertible
on outgoing bytes (as ofTransmission.transmitTo(java.io.OutputStream)
or the like) and the inverse function on any incoming bytes.CipherSegmentDecorator<DECORATEE extends Segment>ACipherSegmentDecorator
is a transmission applying anInvertible
on outgoing bytes (as ofTransmission.transmitTo(java.io.OutputStream)
or the like) and the inverse function on any incoming bytes.Provides an accessor for a CTS ("clear-to-send") magic bytes property.ClearToSendMagicBytesAccessor.ClearToSendMagicBytesBuilder<B extends ClearToSendMagicBytesAccessor.ClearToSendMagicBytesBuilder<B>>Provides a builder method for a CTS ("clear-to-send") magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a CTS ("clear-to-send") magic bytes property.Provides a CTS ("clear-to-send") magic bytes property.Provides an accessor for a CTS ("clear-to-send") retry number.ClearToSendRetryNumberAccessor.ClearToSendRetryNumberBuilder<B extends ClearToSendRetryNumberAccessor.ClearToSendRetryNumberBuilder<B>>Provides a builder method for a CTS ("clear-to-send") retry number returning the builder for applying multiple build operations.Provides a mutator for a CTS ("clear-to-send") retry number.Provides a CTS ("clear-to-send") retry number.A CTS ( "clear-to-send") retry number is the overall number of retries to use when counting retries.Provides an accessor for aSegmentPackager
CTS ("clear-to-send") property.ClearToSendSegmentPackagerAccessor.ClearToSendSegmentPackagerBuilder<B extends ClearToSendSegmentPackagerAccessor.ClearToSendSegmentPackagerBuilder<B>>Provides a builder method for aSegmentPackager
CTS ("clear-to-send") property returning the builder for applying multiple build operations.Provides a mutator for aSegmentPackager
CTS ("clear-to-send") property.Provides aSegmentPackager
CTS ("clear-to-send") property.Provides an accessor for a CTS ("clear-to-send") timeout in milliseconds property.ClearToSendTimeoutInMsAccessor.ClearToSendTimeoutInMsBuilder<B extends ClearToSendTimeoutInMsAccessor.ClearToSendTimeoutInMsBuilder<B>>Provides a builder method for a the CTS ("clear-to-send") timeout property returning the builder for applying multiple build operations.Provides a mutator for a CTS ("clear-to-send") timeout in milliseconds property.Provides a CTS ("clear-to-send") timeout in milliseconds property.AComplexTypeSegment
takes a POJO (a data structure) and creates from its content aSegment
representing the POJO's structure.CrcSectionDecorator<DECORATEE extends Section>CrcSegmentDecorator<DECORATEE extends Segment>ACrcSegmentPackager
enriches aSegment
with a CRC checksum.TheCrossoverLoopbackPort
is an in-memory implementation of aPort
which loops its output directly to the "connected"LoopbackPort
counterpart ("other end of the wire").ACrossoverLoopbackPortHub
is an in-memory implementation of aPortHub
which'sPort
instances loop their output directly to the "connected"LoopbackPortHub
counterpartPort
instances ("other end of the wire").DecoratorSection<DECORATEE extends Transmission>TheDecoratorSection
interface provided means to access a decoratedTransmission
with the means of aSection
.DecoratorSegment<DECORATEE extends Transmission>TheDecoratorSegment
interface provided means to access a decoratedTransmission
with the means of aSegment
.TheDoubleArraySection
is an implementation of aSection
carrying a double array as payload.TheDoubleSegment
is an implementation of aSegment
carrying in double value as payload.TheDynamicTypeSection
represents aSection
which's internal raw data is created from provided types at runtime and which's internal raw data is used to create provided types at runtime.TheDynamicTypeSegment
represents aSegment
which's internal raw data is created from provided types at runtime and which's internal raw data is used to create provided types at runtime.heDynamicTypeTransmission
represents aTransmission
which's internal raw data is created from provided types at runtime and which's internal raw data is used to create provided types at runtime.Provides an accessor for a end of string byte property.EndOfStringByteAccessor.EndOfStringByteBuilder<B extends EndOfStringByteAccessor.EndOfStringByteBuilder<B>>Provides a builder method for a end of string byte property returning the builder for applying multiple build operations.Provides a mutator for a end of string byte property.Provides a end of string byte property.Provides an accessor for a ENQ ("enquiry") timeout in milliseconds property.EnquiryStandbyTimeInMsAccessor.EnquiryStandbyTimeInMsBuilder<B extends EnquiryStandbyTimeInMsAccessor.EnquiryStandbyTimeInMsBuilder<B>>Provides a builder method for a the ENQ ("enquiry") timeout property returning the builder for applying multiple build operations.Provides a mutator for a ENQ ("enquiry") timeout in milliseconds property.Provides a ENQ ("enquiry") timeout in milliseconds property.EnumSegment<E extends Enum<E>>TheEnumSegment
is an implementation of aSegment
carrying an enumeration value as payload.TheErrorCorrectionTransmission
represents the base error correction transmission definition.AFileSection
represents aFile
on the file system and can be used to receive or to transmit aFile
.TheFixedLengthSequenceSegment
is aSegment
representing aSequence
of a fixed length (as of the arguments passed to one of its constructors).FixedSegmentArraySection<ARRAY extends Segment>AFixedSegmentArraySection
is aSection
consisting ofSegment
elements with each element of the same (uniform) length (in contrast to theSegmentArraySection
).TheFloatArraySection
is an implementation of aSection
carrying a float array as payload.TheFloatSegment
is an implementation of aSegment
carrying in float value as payload.Thrown in case a flow control failed.Thrown in case a flow control failed due t a timeout.Thrown in case a flow control failed due t a timeout.Defines the type of flow control.Provides an accessor for a handshake magic bytes property.HandshakeMagicBytesAccessor.HandshakeMagicBytesBuilder<B extends HandshakeMagicBytesAccessor.HandshakeMagicBytesBuilder<B>>Provides a builder method for a handshake magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a handshake magic bytes property.Provides a handshake magic bytes property.Enumeration with the various protocol settings when receiving a transmission.Provides an accessor for an input return stream property.InputReturnStreamAccessor.InputReturnStreamBuilder<B extends InputReturnStreamAccessor.InputReturnStreamBuilder<?>>Provides a mutator for an input return stream property.Provides a mutator for an input return stream property.Provides an input return stream property.TheIntArraySection
is an implementation of aSection
carrying an integer array as payload.TheIntSegment
is an implementation of aSegment
carrying an integer value as payload.InvertibleSectionDecorator<DECORATEE extends Section>AInvertibleSectionDecorator
is a transmission applying anInvertible
on outgoing bytes (as ofTransmission.transmitTo(java.io.OutputStream)
or the like) and the inverse function on any incoming bytes.InvertibleSegmentDecorator<DECORATEE extends Segment>AInvertibleSegmentDecorator
is a transmission applying anInvertible
on outgoing bytes (as ofTransmission.transmitTo(java.io.OutputStream)
or the like) and the inverse function on any incoming bytes.Provides an accessor for a IO heuristics TTL (time to live) in milliseconds property.IoHeuristicsTimeToLiveInMsAccessor.IoHeuristicsTimeToLiveInMsBuilder<B extends IoHeuristicsTimeToLiveInMsAccessor.IoHeuristicsTimeToLiveInMsBuilder<B>>Provides a builder method for the IO heuristics TTL (time to live) property returning the builder for applying multiple build operations.Provides a mutator for a IO heuristics TTL (time to live) in milliseconds property.Provides a IO heuristics TTL (time to live) in milliseconds property.LengthSegment<REFERENCEE extends Transmission>AnLengthSegment
enriches aSegment
with an allocation declaration computed from the referencedTransmission
.LengthSegmentDecoratorSegment<DECORATEE extends Segment>AnLengthSegmentDecoratorSegment
enriches aSegment
with an allocation declaration being prefixed to the enrichedSegment
.Provides an accessor for a length width (in bytes) property.Provides a builder method for a length width (in bytes) property returning the builder for applying multiple build operations.Provides a mutator for a length width (in bytes) property.Provides a length width (in bytes) property.TheLongArraySection
is an implementation of aSection
carrying a long array as payload.TheLongSegment
is an implementation of aSegment
carrying in long value as payload.TheLoopbackPort
is an in-memory implementation of aPort
which loops its output directly back to its input.TheLoopbackPortHub
is a plain implementation of aPortHub
serving an infinite number ofLoopbackPort
instances: When callingLoopbackPortHub.toPort(String)
and the such port is unknown, then it is created (and from then on known).TheMagicBytes
enumeration provides various predefined magic bytes for common use cases.Provides an accessor for a magic byte array property.Provides a builder method for a magic byte array property returning the builder for applying multiple build operations.Provides a mutator for a magic byte array property.Provides a magic byte array property.Provides an accessor for a magic bytes length property.MagicBytesLengthAccessor.MagicBytesLengthBuilder<B extends MagicBytesLengthAccessor.MagicBytesLengthBuilder<B>>Provides a builder method for a magic bytes length property returning the builder for applying multiple build operations.Provides a mutator for a magic bytes length property.Provides a magic bytes length property.MagicBytesSectionDecorator<DECORATEE extends Section>Magic bytes are usually found (somewhere) at the beginning of a file or a stream.THeMagicBytesSectionMultiplexer
dispatches a transmission to one of the aggregatedSection
instances depending on the magic number provided by the transmission.Magic bytes are usually found (somewhere) at the beginning of a file or a stream.MagicBytesSegmentDecorator<DECORATEE extends Segment>Magic bytes are usually found (somewhere) at the beginning of a file or a stream.THeMagicBytesSegmentMultiplexer
dispatches a transmission to one of the aggregatedSegment
instances depending on the magic number provided by the transmission.Thrown in case there is no such port found.TheNumberSegment
is an implementation of aSegment
carrying in long an integer value with a configurable width (in bytes) as payload.Provides an accessor for an output return stream property.OutputReturnStreamAccessor.OutputReturnStreamBuilder<B extends OutputReturnStreamAccessor.OutputReturnStreamBuilder<?>>Provides a mutator for an output return stream property.Provides a mutator for an output return stream property.Provides an output return stream property.ThePacketInputStream
wraps anInputStream
and chunks any data to be written into packets with a sequence number and a block of data.Builder to buildPacketInputStream
instances.Provides an accessor for a packet length width (in bytes) property.PacketLengthWidthAccessor.PacketLengthWidthBuilder<B extends PacketLengthWidthAccessor.PacketLengthWidthBuilder<B>>Provides a builder method for a packet length width (in bytes) property returning the builder for applying multiple build operations.Provides a mutator for a packet length width (in bytes) property.Provides a packet length width (in bytes) property.Provides an accessor for a packet magic bytes property.PacketMagicBytesAccessor.PacketMagicBytesBuilder<B extends PacketMagicBytesAccessor.PacketMagicBytesBuilder<B>>Provides a builder method for a packet magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a packet magic bytes property.Provides a packet magic bytes property.ThePacketOutputStream
wraps anOutputStream
and chunks any data to be written into packets with a sequence number, a block of data and a CRC checksum.Builder to buildStopAndWaitPacketInputStream
instances.Provides an accessor for a packetSegmentPackager
property.PacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<B extends PacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<B>>Provides a builder method for a packetSegmentPackager
property returning the builder for applying multiple build operations.Provides a mutator for a packetSegmentPackager
property.Provides a packetSegmentPackager
property.ThePayloadSection
interfaces defines aSection
with a payload.ThePayloadSegment
interfaces defines aSegment
with a payload.APayloadTransmission
represents aTransmission
carrying a payload (value)Provides an accessor for a ping magic bytes property.PingMagicBytesAccessor.PingMagicBytesBuilder<B extends PingMagicBytesAccessor.PingMagicBytesBuilder<B>>Provides a builder method for a ping magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a ping magic bytes property.Provides a ping magic bytes property.Provides an accessor for a ping retry number.PingRetryNumberAccessor.PingRetryNumberBuilder<B extends PingRetryNumberAccessor.PingRetryNumberBuilder<B>>Provides a builder method for a ping retry number returning the builder for applying multiple build operations.Provides a mutator for a ping retry number.Provides a ping retry number.A ping retry number is the overall number of retries to use when counting retries.Provides an accessor for a ping timeout in milliseconds property.PingTimeoutInMsAccessor.PingTimeoutInMsBuilder<B extends PingTimeoutInMsAccessor.PingTimeoutInMsBuilder<B>>Provides a builder method for the ping timeout property returning the builder for applying multiple build operations.Provides a mutator for a ping timeout in milliseconds property.Provides a ping timeout in milliseconds property.Provides an accessor for a pong magic bytes property.PongMagicBytesAccessor.PongMagicBytesBuilder<B extends PongMagicBytesAccessor.PongMagicBytesBuilder<B>>Provides a builder method for a pong magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a pong magic bytes property.Provides a pong magic bytes property.Port<PM extends PortMetrics>APort
enriches aSerialTransceiver
withPortMetrics
describing theSerialTransceiver
's physical properties.ThePortMetrics
describe aPort
's properties.PortMetricsAccessor<PM extends PortMetrics>Provides an accessor for aPortMetrics
property.PortMetricsAccessor.PortMetricsBuilder<PM extends PortMetrics,B extends PortMetricsAccessor.PortMetricsBuilder<PM, B>> Provides a builder method for aPortMetrics
property returning the builder for applying multiple build operations.PortMetricsAccessor.PortMetricsMutator<PM extends PortMetrics>Provides a mutator for aPortMetrics
property.PortMetricsAccessor.PortMetricsProperty<PM extends PortMetrics>Provides aPortMetrics
property.Provides an accessor for a RTR ("ready-to-receive") magic bytes property.ReadyToReceiveMagicBytesAccessor.ReadyToReceiveMagicBytesBuilder<B extends ReadyToReceiveMagicBytesAccessor.ReadyToReceiveMagicBytesBuilder<B>>Provides a builder method for a RTR ("ready-to-receive") magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a RTR ("ready-to-receive") magic bytes property.Provides a RTR ("ready-to-receive") magic bytes property.Provides an accessor for a RTR ("ready-to-receive") retry number.ReadyToReceiveRetryNumberAccessor.ReadyToReceiveRetryNumberBuilder<B extends ReadyToReceiveRetryNumberAccessor.ReadyToReceiveRetryNumberBuilder<B>>Provides a builder method for a RTR ("ready-to-receive") retry number returning the builder for applying multiple build operations.Provides a mutator for a RTR ("ready-to-receive") retry number.Provides a RTR ("ready-to-receive") retry number.A RTR ( "ready-to-receive") retry number is the overall number of retries to use when counting retries.ReadyToReceiveSectionDecorator<DECORATEE extends Section>TheReadyToReceiveSectionDecorator
class implements a decorator providingReadyToReceiveTransmission
functionality for aSegment
.ReadyToReceiveSectionDecorator.Builder<DECORATEE extends Section>Builder to buildReadyToReceiveSectionDecorator
.ReadyToReceiveSegmentDecorator<DECORATEE extends Segment>TheReadyToReceiveSegmentDecorator
class implements a decorator providingReadyToReceiveTransmission
functionality for aSegment
.ReadyToReceiveSegmentDecorator.Builder<DECORATEE extends Segment>Builder to buildReadyToReceiveSegmentDecorator
.Provides an accessor for aSegmentPackager
RTR ("ready-to-receive") property.ReadyToReceiveSegmentPackagerAccessor.ReadyToReceiveSegmentPackagerBuilder<B extends ReadyToReceiveSegmentPackagerAccessor.ReadyToReceiveSegmentPackagerBuilder<B>>Provides a builder method for aSegmentPackager
RTR ("ready-to-receive") property returning the builder for applying multiple build operations.Provides a mutator for aSegmentPackager
RTR ("ready-to-receive") property.Provides aSegmentPackager
RTR ("ready-to-receive") property.Provides an accessor for a RTR ("ready-to-receive") timeout in milliseconds property.ReadyToReceiveTimeoutInMsAccessor.ReadyToReceiveTimeoutInMsBuilder<B extends ReadyToReceiveTimeoutInMsAccessor.ReadyToReceiveTimeoutInMsBuilder<B>>Provides a builder method for a the RTR ("ready-to-receive") timeout property returning the builder for applying multiple build operations.Provides a mutator for a RTR ("ready-to-receive") timeout in milliseconds property.Provides a RTR ("ready-to-receive") timeout in milliseconds property.TheReadyToReceiveTransmission
interface defines functionality for achieving a RTR "software" handshake between a receiver having the active RTR ("ready-to-receive") role and a transmitter being CTS ("clear-to-send") where the transmitter waits for a RTR signal from the receiver (the receiver signals to be ready for receiving data by issuing an RTR signal to the transmitter):TRANSMITTER RECEIVER | | Wait till enquiry-timeout | | Send RTR magic-bytes for RTR magic-bytes |←-----RTR------| Try RTR retry-number of times | | Wait till RTR retry-timeout/retry Send payload upon RTR | | magic-bytes or break-out |----PAYLOAD---→| Receive payload upon enquiry-timeout | |
Handshake specific signals are only transmitted through the return channel, the data channel is only used indirectly for handshaking by transporting the payload data in response to the return channel signals.Provides an accessor for a RTS ("ready-to-send") magic bytes property.ReadyToSendMagicBytesAccessor.ReadyToSendMagicBytesBuilder<B extends ReadyToSendMagicBytesAccessor.ReadyToSendMagicBytesBuilder<B>>Provides a builder method for a RTS ("ready-to-send") magic bytes property returning the builder for applying multiple build operations.Provides a mutator for a RTS ("ready-to-send") magic bytes property.Provides a RTS ("ready-to-send") magic bytes property.Provides an accessor for a RTS ("ready-to-send") retry number.ReadyToSendRetryNumberAccessor.ReadyToSendRetryNumberBuilder<B extends ReadyToSendRetryNumberAccessor.ReadyToSendRetryNumberBuilder<B>>Provides a builder method for a RTS ("ready-to-send") retry number returning the builder for applying multiple build operations.Provides a mutator for a RTS ("ready-to-send") retry number.Provides a RTS ("ready-to-send") retry number.A RTS ( "ready-to-send") retry number is the overall number of retries to use when counting retries.ReadyToSendSectionDecorator<DECORATEE extends Section>TheReadyToSendSectionDecorator
class implements a decorator providingReadyToSendTransmission
functionality for aSegment
.ReadyToSendSectionDecorator.Builder<DECORATEE extends Section>Builder to buildReadyToSendSectionDecorator
.ReadyToSendSegmentDecorator<DECORATEE extends Segment>TheReadyToSendSegmentDecorator
class implements a decorator providingReadyToSendTransmission
functionality for aSegment
.ReadyToSendSegmentDecorator.Builder<DECORATEE extends Segment>Builder to buildReadyToSendSegmentDecorator
.Provides an accessor for aSegmentPackager
RTS ("ready-to-send") property.ReadyToSendSegmentPackagerAccessor.ReadyToSendSegmentPackagerBuilder<B extends ReadyToSendSegmentPackagerAccessor.ReadyToSendSegmentPackagerBuilder<B>>Provides a builder method for aSegmentPackager
RTS ("ready-to-send") property returning the builder for applying multiple build operations.Provides a mutator for aSegmentPackager
RTS ("ready-to-send") property.Provides aSegmentPackager
RTS ("ready-to-send") property.Provides an accessor for a RTS ("ready-to-send") timeout in milliseconds property.ReadyToSendTimeoutInMsAccessor.ReadyToSendTimeoutInMsBuilder<B extends ReadyToSendTimeoutInMsAccessor.ReadyToSendTimeoutInMsBuilder<B>>Provides a builder method for a the RTS ("ready-to-send") timeout property returning the builder for applying multiple build operations.Provides a mutator for a RTS ("ready-to-send") timeout in milliseconds property.Provides a RTS ("ready-to-send") timeout in milliseconds property.TheReadyToSendTransmission
interface defines functionality for achieving an RTS "software" handshake between a transmitter having the active RTS ("ready-to-send") role and a receiver confirming being CTS ("clear-to-send") where the receiver waits for a RTS signal from the transmitter (the transmitter signals to be ready for sending data by issuing an RTS signal to the receiver).ReceiveSegmentConsumerDaemon<SEGMENT extends Segment>A daemon handlingSegmentReceiver.onReceiveSegment(Segment, SegmentConsumer)
asynchronous calls.ReceiveSegmentResultDaemon<SEGMENT extends Segment>A daemon handlingSegmentReceiver.onReceiveSegment(Segment)
asynchronous calls.TheSection
interface enables an implementing type to provide aSequence
representation of itself or to transmit itsSequence
representation through anOutputStream
(with an optional feedbackInputStream
) as ofTransmission.transmitTo(OutputStream, InputStream)
and to initialize with aSequence
representation for itself or to receive aSequence
representation for itself through anInputStream
(with an optional feedbackOutputStream
) as ofSection.receiveFrom(InputStream, int, OutputStream)
.Default implementation of theSection
interface providing an implementation of theSection.SectionMixin.receiveFrom(InputStream, int, OutputStream)
method using theSection.fromTransmission(Sequence, int)
method or theSection.fromTransmission(Sequence, int, int)
method..ASectionComposite
is aSection
consisting ofSection
elements of a variable length each: EachSection
element in the composite need not be of the same size.TheSegment
interface enables an implementing type to provide aSequence
representation of itself or to transmit itsSequence
representation through anOutputStream
(with an optional feedbackInputStream
) as ofTransmission.transmitTo(OutputStream, InputStream)
and to initialize with aSequence
representation for itself or to receive aSequence
representation for itself through anInputStream
(with an optional feedbackOutputStream
) as ofSegment.receiveFrom(InputStream, OutputStream)
.Default implementation of theSegment
interface providing an implementation of theSegment.SegmentMixin.receiveFrom(InputStream, OutputStream)
method using theSegment.fromTransmission(Sequence)
method or theSegment.fromTransmission(Sequence, int)
method.SegmentArraySection<ARRAY extends Segment>ASegmentArraySection
is aSegment
consisting ofSegment
elements with each element of presumably different lengths ( in contrast to theFixedSegmentArraySection
).SegmentComposite<CHILD extends Segment>SegmentConsumer<SEGMENT extends Segment>ASegmentConsumer
consumes aSegment
and is used to create lambda expressions used for asynchronous callback.TheSegmentDestination
is used to receiveSegment
instances in a unified way.TheSegmentPackager
interface defines methods to package (wrap) aSegment
e.g. with aCrcSegmentDecorator
.Dummy implementation of aSegmentPackager
just passing through providedSegment
instances.TheSegmentReceiver
is used to receiveSegment
instances in a unified way.SegmentResult<SEGMENT extends Segment>ASegmentResult
instance is issued by theSerialReceiver
to receive aTransmission
's data asynchronously.TheSegmentSource
is used to sendSegment
instances in a unified way.Combines theSegmentTransmitter
andSegmentReceiver
functionality in a single interface to be implemented by a single class so thatSegmentTransmitter
andSegmentReceiver
functionality can be provided by a single instance.TheSegmentTransmitter
is used to transmitSegment
instances in a unified way.ASequence
abstracts a byte field providing means to applying complex operations on that byte field.Provides an accessor for aSequence
property.Provides a builder method for a segment property returning the builder for applying multiple build operations.Provides a mutator for a segment property.Provides a segment property.ASequenceConsumer
consumes aSequence
and is used to create lambda expressions used for asynchronous callback.Provides an accessor for a sequence number property.SequenceNumberAccessor.SequenceNumberBuilder<B extends SequenceNumberAccessor.SequenceNumberBuilder<B>>Provides a builder method for a sequence number property returning the builder for applying multiple build operations.Provides a mutator for a sequence number property.Provides a sequence number property.Provides an accessor for aConcatenateMode
property.SequenceNumberConcatenateModeAccessor.SequenceNumberConcatenateModeBuilder<B extends SequenceNumberConcatenateModeAccessor.SequenceNumberConcatenateModeBuilder<B>>Provides a builder method for a sequence numberConcatenateMode
property returning the builder for applying multiple build operations.Provides a mutator for a sequence numberConcatenateMode
property.Provides a sequence numberConcatenateMode
property.Provides an accessor for a sequence number initial value property.SequenceNumberInitValueAccessor.SequenceNumberInitValueBuilder<B extends SequenceNumberInitValueAccessor.SequenceNumberInitValueBuilder<B>>Provides a builder method for a sequence number initial value property returning the builder for applying multiple build operations.Provides a mutator for a sequence number initial value property.Provides a sequence number initial value property.Convenience class for theNumberSegment
usingTransmissionMetrics
sequence number related properties to configure theSequenceNumberSegment
(being an accordingly configuredNumberSegment
).Provides an accessor for a sequence number width (in bytes) property.SequenceNumberWidthAccessor.SequenceNumberWidthBuilder<B extends SequenceNumberWidthAccessor.SequenceNumberWidthBuilder<B>>Provides a builder method for a sequence number width (in bytes) property returning the builder for applying multiple build operations.Provides a mutator for a sequence number width (in bytes) property.Provides a sequence number width (in bytes) property.Base exception for this package.ASerialReceiver
is used to read data from a serial port or the like.Base runtime exception for this package.The purpose of aSerialSchema
is automatically generate documentation of serial data.ASerialTransmitter
is used to write data to a serial port or the like.TheShortArraySection
is an implementation of aSection
carrying a short array as payload.TheShortSegment
is an implementation of aSegment
carrying in short value as payload.TheStopAndWaitPacketInputStream
wraps anInputStream
and chunks any data to be written into packets with a sequence number and a block of data.Builder to buildStopAndWaitPacketInputStream
instances.TheStopAndWaitPacketOutputStream
wraps anOutputStream
and chunks any data to be written into packets with a sequence number, a block of data and a CRC checksum.Builder to buildStopAndWaitPacketInputStream
instances.StopAndWaitPacketStreamSectionDecorator<DECORATEE extends Section>AStopAndWaitPacketStreamSectionDecorator
chunks any outgoing stream (OutputStream
) into blocks of definite length and reassembles any incoming streams (InputStream
) from blocks of definite size into a contiguous stream.StopAndWaitPacketStreamSectionDecorator.Builder<DECORATEE extends Section>Builder to buildStopAndWaitSegmentDecorator
.StopAndWaitPacketStreamSegmentDecorator<DECORATEE extends Segment>AStopAndWaitPacketStreamSegmentDecorator
chunks any outgoing stream (OutputStream
) into blocks of definite length and reassembles any incoming streams (InputStream
) from blocks of definite size into a contiguous stream.StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE extends Segment>Builder to buildStopAndWaitSegmentDecorator
.TheStopAndWaitPacketStreamTransmission
interface defines the base functionality required by aTransmission
instance for providing block stream functionality.StopAndWaitSectionDecorator<DECORATEE extends Section>TheStopAndWaitSectionDecorator
class implements a decorator providingStopAndWaitTransmission
functionality for aSection
.StopAndWaitSectionDecorator.Builder<DECORATEE extends Section>Builder to buildStopAndWaitSegmentDecorator
.StopAndWaitSegmentDecorator<DECORATEE extends Segment>TheStopAndWaitSegmentDecorator
class implements a decorator providingStopAndWaitTransmission
functionality for aSegment
.StopAndWaitSegmentDecorator.Builder<DECORATEE extends Segment>Builder to buildStopAndWaitSegmentDecorator
.TheStopAndWaitTransmission
is the most simple implementation of the ARQ (Automatic repeat request) protocol.Builder to buildStringSegment
.TheTransmission
interface enables an implementing type to provide aSequence
representation of itself or to transmit itsSequence
representation through anOutputStream
(with an optional feedbackInputStream
) as ofTransmission.transmitTo(OutputStream, InputStream)
.Default implementation of theTransmission
interface providing an implementation of theTransmission.TransmissionMixin.transmitTo(OutputStream, InputStream)
method using theTransmission.toSequence()
method.TransmissionAccessor<T extends Transmission>Provides an accessor for aTransmission
property (as of the decorator pattern).Provides a builder method for aTransmission
property returning the builder for applying multiple build operations.Provides a mutator for aTransmission
property.Provides aTransmission
property.TransmissionComposite<CHILD extends Transmission>Thrown in case a givenTransmission
cannot be processed.TheTransmissionMetrics
interface represents common parameters required when configuring a transmission.Builder to buildTransmissionMetrics
.Provides an accessor for aTransmissionMetrics
property.TransmissionMetricsAccessor.TransmissionMetricsBuilder<B extends TransmissionMetricsAccessor.TransmissionMetricsBuilder<B>>Provides a builder method for aTransmissionMetrics
property returning the builder for applying multiple build operations.Provides a mutator for aTransmissionMetrics
property.Provides aTransmissionMetrics
property.Provides an accessor for a transmission retry number.TransmissionRetryNumberAccessor.TransmissionRetryNumberBuilder<B extends TransmissionRetryNumberAccessor.TransmissionRetryNumberBuilder<B>>Provides a builder method for a transmission retry number returning the builder for applying multiple build operations.Provides a mutator for a transmission retry number.Provides a transmission retry number.A transmission retry number is the overall number of retries to use when counting retries.Thrown in case a givenSequence
cannot be processed.Provides an accessor for a transmission timeout in milliseconds property.TransmissionTimeoutInMsAccessor.TransmissionTimeoutInMsBuilder<B extends TransmissionTimeoutInMsAccessor.TransmissionTimeoutInMsBuilder<B>>Provides a builder method for the transmission timeout property returning the builder for applying multiple build operations.Provides a mutator for a transmission timeout in milliseconds property.Provides a transmission timeout in milliseconds property.TransmitSegmentConsumerDaemon<SEGMENT extends Segment>A daemon handlingSegmentTransmitter.doTransmitSegment(Segment, SegmentConsumer)
asynchronous calls.TransmitSegmentResultDaemon<SEGMENT extends Segment>A daemon handlingSegmentTransmitter.doTransmitSegment(Segment)
asynchronous calls.