Class AbstractStopAndWaitTransmissionDecorator<DECORATEE extends Transmission>

java.lang.Object
org.refcodes.serial.AbstractErrorCorrectionTransmissionDecorator<DECORATEE>
org.refcodes.serial.AbstractStopAndWaitTransmissionDecorator<DECORATEE>
Type Parameters:
DECORATEE - The decoratee type describing the according subclass to be enriched.
All Implemented Interfaces:
Serializable, org.refcodes.mixin.DecorateeAccessor<DECORATEE>, org.refcodes.mixin.LengthAccessor, org.refcodes.mixin.Schemable<SerialSchema>, org.refcodes.numerical.EndianessAccessor, AcknowledgeMagicBytesAccessor, AcknowledgeRetryNumberAccessor, AcknowledgeSegmentPackagerAccessor, AcknowledgeTimeoutMillisAccessor, ErrorCorrectionTransmission, SequenceNumberAccessor, StopAndWaitTransmission, Transmission, Transmission.TransmissionMixin
Direct Known Subclasses:
StopAndWaitSectionDecorator, StopAndWaitSegmentDecorator

public abstract class AbstractStopAndWaitTransmissionDecorator<DECORATEE extends Transmission> extends AbstractErrorCorrectionTransmissionDecorator<DECORATEE> implements StopAndWaitTransmission, Transmission.TransmissionMixin, org.refcodes.numerical.EndianessAccessor, SequenceNumberAccessor
The AbstractStopAndWaitTransmissionDecorator class implements a decorator providing StopAndWaitTransmission functionality for a Transmission.
See Also:
  • Field Details

    • ACK_MAGIC_BYTES

      public static final String ACK_MAGIC_BYTES
      See Also:
    • _acknowledgeMagicBytes

      protected byte[] _acknowledgeMagicBytes
    • _sequenceNumber

      protected int _sequenceNumber
    • _sequenceNumberWidth

      protected int _sequenceNumberWidth
    • _sequenceNumberInitValue

      protected int _sequenceNumberInitValue
    • _sequenceNumberConcatenateMode

      protected org.refcodes.mixin.ConcatenateMode _sequenceNumberConcatenateMode
    • _endianess

      protected org.refcodes.numerical.Endianess _endianess
    • _acknowledgeSegmentPackager

      protected SegmentPackager _acknowledgeSegmentPackager
    • _acknowledgeSegment

      protected Segment _acknowledgeSegment
    • _acknowledgeSequenceNumberSegment

      protected NumberSegment _acknowledgeSequenceNumberSegment
    • _acknowledgeMagicBytesSegment

      protected MagicBytesSegment _acknowledgeMagicBytesSegment
  • Constructor Details

    • AbstractStopAndWaitTransmissionDecorator

      protected AbstractStopAndWaitTransmissionDecorator()
      Instantiates a new abstract stop and wait transmission decorator.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, TransmissionMetrics aTransmissionMetrics)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee. The configuration attributes are taken from the TransmissionMetrics configuration object, though only those attributes are supported which are also supported by the other constructors!
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aTransmissionMetrics - The TransmissionMetrics to be used for configuring this instance.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, SegmentPackager aAckSegmentPackager)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAckSegmentPackager - The ACK SegmentPackager for packaging ACK responses.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, SegmentPackager aAckSegmentPackager, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aAckSegmentPackager - The ACK SegmentPackager for packaging ACK responses.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, SegmentPackager aAckSegmentPackager, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aAckSegmentPackager - The ACK SegmentPackager for packaging ACK responses.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aChecksumValidationMode - The mode of operation when validating provided CRC checksums against calculated ones.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aChecksumValidationMode - The mode of operation when validating provided CRC checksums against calculated ones.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aChecksumValidationMode - The mode of operation when validating provided CRC checksums against calculated ones.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm, org.refcodes.mixin.ConcatenateMode aCrcChecksumConcatenateMode, org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aCrcAlgorithm - The CrcAlgorithm to be used for CRC checksum calculation.
      aCrcChecksumConcatenateMode - The mode of concatenation to use when concatenating the CRC checksum with the transmission's Sequence.
      aChecksumValidationMode - The mode of operation when validating provided CRC checksums against calculated ones.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
    • AbstractStopAndWaitTransmissionDecorator

      public AbstractStopAndWaitTransmissionDecorator(DECORATEE aDecoratee, int aSequenceNumberInitValue, int aSequenceNumberWidth, org.refcodes.mixin.ConcatenateMode aSequenceNumberConcatenateMode, byte[] aAcknowledgeMagicBytes, int aAckRetryNumber, long aAckTimeoutInMs, SegmentPackager aAckSegmentPackager, org.refcodes.numerical.Endianess aEndianess)
      Constructs an according stop-and-wait decorator instance wrapping the given decoratee.
      Parameters:
      aDecoratee - The decoratee to be wrapped by the stop-and-wait decorator.
      aSequenceNumberInitValue - The initial sequence number from where to start counting the blocks.
      aSequenceNumberWidth - The width (in bytes) to be used for sequence number values.
      aSequenceNumberConcatenateMode - The mode of concatenation to use when creating a Sequence from this Transmission and the decorated Transmission.
      aAcknowledgeMagicBytes - The ACK character(s) to be used by the return channel to transmit an ACK (acknowledge) response after successful receiving a transmission.
      aAckRetryNumber - The number of retries waiting for an ACK from the return channel.
      aAckTimeoutInMs - The timeout in milliseconds to pend till the next retry.
      aAckSegmentPackager - The ACK SegmentPackager for packaging ACK responses.
      aEndianess - The Endianess to use for integer (double) numbers and the like.
  • Method Details