Class StopAndWaitPacketOutputStream

java.lang.Object
java.io.OutputStream
org.refcodes.serial.PacketOutputStream
org.refcodes.serial.StopAndWaitPacketOutputStream
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, org.refcodes.mixin.BlockSizeAccessor, org.refcodes.mixin.PacketSizeAccessor, org.refcodes.numerical.EndianessAccessor, AcknowledgeMagicBytesAccessor, AcknowledgeRetryNumberAccessor, AcknowledgeSegmentPackagerAccessor, AcknowledgeTimeoutMillisAccessor, PacketLengthWidthAccessor, PacketMagicBytesAccessor, PacketSegmentPackagerAccessor, SequenceNumberAccessor, SequenceNumberConcatenateModeAccessor, SequenceNumberInitValueAccessor, SequenceNumberWidthAccessor

The StopAndWaitPacketOutputStream wraps an OutputStream and chunks any data to be written into packets with a sequence number, a block of data and a CRC checksum. An according StopAndWaitPacketInputStream then reverts the packetised data stream while performing CRC checksum validation as well as sequence number validation.