Class PacketInputStream

java.lang.Object
java.io.InputStream
org.refcodes.serial.PacketInputStream
All Implemented Interfaces:
Closeable, AutoCloseable, org.refcodes.mixin.BlockSizeAccessor, org.refcodes.mixin.PacketSizeAccessor, org.refcodes.numerical.EndianessAccessor, PacketLengthWidthAccessor, PacketMagicBytesAccessor, PacketSegmentPackagerAccessor, SequenceNumberAccessor, SequenceNumberConcatenateModeAccessor, SequenceNumberInitValueAccessor, SequenceNumberWidthAccessor
Direct Known Subclasses:
StopAndWaitPacketInputStream

public class PacketInputStream extends InputStream implements PacketLengthWidthAccessor, org.refcodes.numerical.EndianessAccessor, org.refcodes.mixin.BlockSizeAccessor, SequenceNumberAccessor, SequenceNumberWidthAccessor, SequenceNumberInitValueAccessor, SequenceNumberConcatenateModeAccessor, org.refcodes.mixin.PacketSizeAccessor, PacketSegmentPackagerAccessor, PacketMagicBytesAccessor
The PacketInputStream wraps an InputStream and chunks any data to be written into packets with a sequence number and a block of data. An according PacketInputStream then reverts the packetised data stream while performing sequence number validation. A SegmentPackager can be used to add functionality such as CRC checksum support.