Module org.refcodes.serial
Package org.refcodes.serial
Class StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE extends Segment>
java.lang.Object
org.refcodes.serial.StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>
- Type Parameters:
DECORATEE
- The decoratee type describing the according subclass to be enriched.
- All Implemented Interfaces:
org.refcodes.mixin.BlockSizeAccessor.BlockSizeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,org.refcodes.mixin.ConcatenateModeAccessor.ConcatenateModeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,org.refcodes.mixin.DecorateeAccessor.DecorateeBuilder<DECORATEE,
,StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>> org.refcodes.numerical.ChecksumValidationModeAccessor.ChecksumValidationModeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,org.refcodes.numerical.CrcAlgorithmAccessor.CrcAlgorithmBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,org.refcodes.numerical.EndianessAccessor.EndianessBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,AcknowledgeRetryNumberAccessor.AcknowledgeRetryNumberBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,AcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,AcknowledgeTimeoutMillisAccessor.AcknowledgeTimeoutMillisBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,LengthWidthAccessor.LengthWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,PacketLengthWidthAccessor.PacketLengthWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,PacketMagicBytesAccessor.PacketMagicBytesBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,PacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,SequenceNumberInitValueAccessor.SequenceNumberInitValueBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,SequenceNumberWidthAccessor.SequenceNumberWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
- Enclosing class:
- StopAndWaitPacketStreamSegmentDecorator<DECORATEE extends Segment>
public static final class StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE extends Segment>
extends Object
implements AcknowledgeRetryNumberAccessor.AcknowledgeRetryNumberBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, AcknowledgeTimeoutMillisAccessor.AcknowledgeTimeoutMillisBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.mixin.DecorateeAccessor.DecorateeBuilder<DECORATEE,StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, SequenceNumberWidthAccessor.SequenceNumberWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, SequenceNumberInitValueAccessor.SequenceNumberInitValueBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.mixin.ConcatenateModeAccessor.ConcatenateModeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.numerical.ChecksumValidationModeAccessor.ChecksumValidationModeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.numerical.CrcAlgorithmAccessor.CrcAlgorithmBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.mixin.BlockSizeAccessor.BlockSizeBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, org.refcodes.numerical.EndianessAccessor.EndianessBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, AcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, PacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, LengthWidthAccessor.LengthWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, PacketMagicBytesAccessor.PacketMagicBytesBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>, PacketLengthWidthAccessor.PacketLengthWidthBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
Builder to build
StopAndWaitSegmentDecorator
instances.-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Returns theStopAndWaitSegmentDecorator
instance build according to theStopAndWaitPacketStreamSegmentDecorator.Builder
configuration.withAcknowledgeMagicBytes
(byte[] aAcknowledgeMagicBytes) Sets the magic bytes for the acknowledge magic bytes property.withAcknowledgeRetryNumber
(int aAcknowledgeRetryNumber) Sets the number of retries for the acknowledge retry number.withAcknowledgeSegmentPackager
(SegmentPackager aAcknowledgeSegmentPackager) Sets theSegmentPackager
ACK property.withAcknowledgeTimeoutMillis
(long aAckTimeoutInMs) Sets the number for the acknowledge timeout property.withBlockSize
(int aBlockSize) withChecksumValidationMode
(org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode) withConcatenateMode
(org.refcodes.mixin.ConcatenateMode aConcatenateMode) }withCrcAlgorithm
(org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm) withDecoratee
(DECORATEE aDecoratee) }withEndianess
(org.refcodes.numerical.Endianess aEndianess) withLengthWidth
(int aLengthWidth) Sets the length width (in bytes) for the length width (in bytes) property.withPacketLengthWidth
(int aPacketLengthWidth) Sets the packet length width (in bytes) for the packet length width (in bytes) property.withPacketMagicBytes
(byte[] aPacketMagicBytes) Sets the magic bytes for the packet magic bytes property.withPacketSegmentPackager
(SegmentPackager aPacketSegmentPackager) Sets theSegmentPackager
for the packetSegmentPackager
property.withSequenceNumberInitValue
(int aSequenceNumberInitValue) Sets the sequence number initial value for the sequence number initial value property.withSequenceNumberWidth
(int aSequenceNumberWidth) Sets the sequence number width (in bytes) for the sequence number width (in bytes) property.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.refcodes.serial.AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder
withAcknowledgeMagicBytes, withAcknowledgeMagicBytes
Methods inherited from interface org.refcodes.serial.PacketMagicBytesAccessor.PacketMagicBytesBuilder
withPacketMagicBytes, withPacketMagicBytes
-
Method Details
-
withAcknowledgeRetryNumber
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withAcknowledgeRetryNumber(int aAcknowledgeRetryNumber) Sets the number of retries for the acknowledge retry number. A acknowledge retry number is the overall number of retries to use when counting retries.}- Specified by:
withAcknowledgeRetryNumber
in interfaceAcknowledgeRetryNumberAccessor.AcknowledgeRetryNumberBuilder<DECORATEE extends Segment>
- Parameters:
aAcknowledgeRetryNumber
- The number of retries to be stored by the number of acknowledge retry number.- Returns:
- The builder for applying multiple build operations.
-
withAcknowledgeTimeoutMillis
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withAcknowledgeTimeoutMillis(long aAckTimeoutInMs) Sets the number for the acknowledge timeout property.}- Specified by:
withAcknowledgeTimeoutMillis
in interfaceAcknowledgeTimeoutMillisAccessor.AcknowledgeTimeoutMillisBuilder<DECORATEE extends Segment>
- Parameters:
aAckTimeoutInMs
- The acknowledge timeout in milliseconds to be stored by the acknowledge timeout property.- Returns:
- The builder for applying multiple build operations.
-
withDecoratee
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withDecoratee(DECORATEE aDecoratee) }- Specified by:
withDecoratee
in interfaceorg.refcodes.mixin.DecorateeAccessor.DecorateeBuilder<DECORATEE extends Segment,
StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE extends Segment>>
-
withAcknowledgeMagicBytes
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withAcknowledgeMagicBytes(byte[] aAcknowledgeMagicBytes) Sets the magic bytes for the acknowledge magic bytes property.}- Specified by:
withAcknowledgeMagicBytes
in interfaceAcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder<DECORATEE extends Segment>
- Parameters:
aAcknowledgeMagicBytes
- The magic bytes to be stored by the acknowledge magic bytes property.- Returns:
- The builder for applying multiple build operations.
-
withSequenceNumberWidth
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withSequenceNumberWidth(int aSequenceNumberWidth) Sets the sequence number width (in bytes) for the sequence number width (in bytes) property.}- Specified by:
withSequenceNumberWidth
in interfaceSequenceNumberWidthAccessor.SequenceNumberWidthBuilder<DECORATEE extends Segment>
- Parameters:
aSequenceNumberWidth
- The sequence number width (in bytes) to be stored by the sequence number width (in bytes) property.- Returns:
- The builder for applying multiple build operations.
-
withSequenceNumberInitValue
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withSequenceNumberInitValue(int aSequenceNumberInitValue) Sets the sequence number initial value for the sequence number initial value property.}- Specified by:
withSequenceNumberInitValue
in interfaceSequenceNumberInitValueAccessor.SequenceNumberInitValueBuilder<DECORATEE extends Segment>
- Parameters:
aSequenceNumberInitValue
- The sequence number initial value to be stored by the sequence number initial value property.- Returns:
- The builder for applying multiple build operations.
-
withConcatenateMode
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withConcatenateMode(org.refcodes.mixin.ConcatenateMode aConcatenateMode) } -
withCrcAlgorithm
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withCrcAlgorithm(org.refcodes.numerical.CrcAlgorithm aCrcAlgorithm) -
withChecksumValidationMode
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withChecksumValidationMode(org.refcodes.numerical.ChecksumValidationMode aChecksumValidationMode) -
withEndianess
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withEndianess(org.refcodes.numerical.Endianess aEndianess) -
withBlockSize
-
withAcknowledgeSegmentPackager
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withAcknowledgeSegmentPackager(SegmentPackager aAcknowledgeSegmentPackager) Sets theSegmentPackager
ACK property.- Specified by:
withAcknowledgeSegmentPackager
in interfaceAcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<DECORATEE extends Segment>
- Parameters:
aAcknowledgeSegmentPackager
- TheSegmentPackager
to be stored by theSegmentPackager
ACK property.- Returns:
- The builder for applying multiple build operations.
-
withPacketMagicBytes
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withPacketMagicBytes(byte[] aPacketMagicBytes) Sets the magic bytes for the packet magic bytes property.- Specified by:
withPacketMagicBytes
in interfacePacketMagicBytesAccessor.PacketMagicBytesBuilder<DECORATEE extends Segment>
- Parameters:
aPacketMagicBytes
- The magic bytes to be stored by the packet magic bytes property.- Returns:
- The builder for applying multiple build operations.
-
withLengthWidth
Sets the length width (in bytes) for the length width (in bytes) property.- Specified by:
withLengthWidth
in interfaceLengthWidthAccessor.LengthWidthBuilder<DECORATEE extends Segment>
- Parameters:
aLengthWidth
- The length width (in bytes) to be stored by the length width (in bytes) property.- Returns:
- The builder for applying multiple build operations.
-
withPacketSegmentPackager
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withPacketSegmentPackager(SegmentPackager aPacketSegmentPackager) Sets theSegmentPackager
for the packetSegmentPackager
property.- Specified by:
withPacketSegmentPackager
in interfacePacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<DECORATEE extends Segment>
- Parameters:
aPacketSegmentPackager
- TheSegmentPackager
to be stored by the packetSegmentPackager
property.- Returns:
- The builder for applying multiple build operations.
-
withPacketLengthWidth
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withPacketLengthWidth(int aPacketLengthWidth) Sets the packet length width (in bytes) for the packet length width (in bytes) property.- Specified by:
withPacketLengthWidth
in interfacePacketLengthWidthAccessor.PacketLengthWidthBuilder<DECORATEE extends Segment>
- Parameters:
aPacketLengthWidth
- The packet length width (in bytes) to be stored by the packet length width (in bytes) property.- Returns:
- The builder for applying multiple build operations.
-
build
Returns theStopAndWaitSegmentDecorator
instance build according to theStopAndWaitPacketStreamSegmentDecorator.Builder
configuration.- Returns:
- The accordingly configured
StopAndWaitSegmentDecorator
.
-