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.CrcAlgorithmAccessor.CrcAlgorithmBuilder<StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE>>
,org.refcodes.numerical.CrcChecksumValidationModeAccessor.CrcChecksumValidationModeBuilder<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>>
,AcknowledgeTimeoutInMsAccessor.AcknowledgeTimeoutInMsBuilder<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>>, AcknowledgeTimeoutInMsAccessor.AcknowledgeTimeoutInMsBuilder<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.CrcChecksumValidationModeAccessor.CrcChecksumValidationModeBuilder<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
.-
Method Summary
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.
-
withAcknowledgeTimeoutInMs
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withAcknowledgeTimeoutInMs(long aAckTimeoutInMs)Sets the number for the acknowledge timeout property.}- Specified by:
withAcknowledgeTimeoutInMs
in interfaceAcknowledgeTimeoutInMsAccessor.AcknowledgeTimeoutInMsBuilder<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) -
withCrcChecksumValidationMode
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withCrcChecksumValidationMode(org.refcodes.numerical.ChecksumValidationMode aCrcChecksumValidationMode) -
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
public StopAndWaitPacketStreamSegmentDecorator.Builder<DECORATEE> withLengthWidth(int aLengthWidth)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
.
-