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 theStopAndWaitSegmentDecoratorinstance build according to theStopAndWaitPacketStreamSegmentDecorator.Builderconfiguration.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 theSegmentPackagerACK 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 theSegmentPackagerfor the packetSegmentPackagerproperty.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, waitMethods inherited from interface org.refcodes.serial.AcknowledgeMagicBytesAccessor.AcknowledgeMagicBytesBuilder
withAcknowledgeMagicBytes, withAcknowledgeMagicBytesMethods 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:
withAcknowledgeRetryNumberin 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:
withAcknowledgeTimeoutMillisin 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:
withDecorateein 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:
withAcknowledgeMagicBytesin 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:
withSequenceNumberWidthin 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:
withSequenceNumberInitValuein 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 theSegmentPackagerACK property.- Specified by:
withAcknowledgeSegmentPackagerin interfaceAcknowledgeSegmentPackagerAccessor.AcknowledgeSegmentPackagerBuilder<DECORATEE extends Segment>- Parameters:
aAcknowledgeSegmentPackager- TheSegmentPackagerto be stored by theSegmentPackagerACK 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:
withPacketMagicBytesin 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:
withLengthWidthin 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 theSegmentPackagerfor the packetSegmentPackagerproperty.- Specified by:
withPacketSegmentPackagerin interfacePacketSegmentPackagerAccessor.PacketSegmentPackagerBuilder<DECORATEE extends Segment>- Parameters:
aPacketSegmentPackager- TheSegmentPackagerto be stored by the packetSegmentPackagerproperty.- 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:
withPacketLengthWidthin 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 theStopAndWaitSegmentDecoratorinstance build according to theStopAndWaitPacketStreamSegmentDecorator.Builderconfiguration.- Returns:
- The accordingly configured
StopAndWaitSegmentDecorator.
-