de.jaetzold.art.platform
Class PacketInputStream
java.lang.Object
|
+--java.io.InputStream
|
+--java.io.FilterInputStream
|
+--de.jaetzold.art.platform.PacketInputStream
- Direct Known Subclasses:
- RCXPacketInputStream
- public class PacketInputStream
- extends FilterInputStream
Base Class for reading some kind of packets from an InputStream. Packets means a sequence of at least 1 bytes.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
packetHeaderChecker
protected PacketInputStream.PacketHeaderChecker packetHeaderChecker
packetDataFilter
protected PacketInputStream.PacketDataFilter packetDataFilter
packetTrailerChecker
protected PacketInputStream.PacketTrailerChecker packetTrailerChecker
defaultReadTimeout
protected int defaultReadTimeout
pollingPause
protected int pollingPause
PacketInputStream
public PacketInputStream(InputStream source)
PacketInputStream
public PacketInputStream(InputStream source,
byte[] header,
PacketInputStream.PacketDataFilter data,
PacketInputStream.PacketTrailerChecker trailer)
PacketInputStream
public PacketInputStream(InputStream source,
PacketInputStream.PacketHeaderChecker header,
PacketInputStream.PacketDataFilter data,
PacketInputStream.PacketTrailerChecker trailer)
flush
public boolean flush()
- Skip forward in the InputStream as far as possible until no bytes are available. This method will only return if a call to available() to the associated InputStream returns 0 or a value not less than the last time (to prevent this method from running forever). In the latter case the method returns false, true otherwise.
getPacketHeaderChecker
public PacketInputStream.PacketHeaderChecker getPacketHeaderChecker()
setPacketHeaderChecker
public void setPacketHeaderChecker(PacketInputStream.PacketHeaderChecker packetHeaderChecker)
getPacketDataFilter
public PacketInputStream.PacketDataFilter getPacketDataFilter()
setPacketDataFilter
public void setPacketDataFilter(PacketInputStream.PacketDataFilter packetDataFilter)
getPacketTrailerChecker
public PacketInputStream.PacketTrailerChecker getPacketTrailerChecker()
setPacketTrailerChecker
public void setPacketTrailerChecker(PacketInputStream.PacketTrailerChecker packetTrailerChecker)
getDefaultReadTimeout
public int getDefaultReadTimeout()
setDefaultReadTimeout
public void setDefaultReadTimeout(int defaultReadTimeout)
getPollingPause
public int getPollingPause()
setPollingPause
public void setPollingPause(int pollingPause)
readPacket
public byte[] readPacket()
throws IOException,
CorruptPacketException
readPacket
public byte[] readPacket(int timeout)
throws IOException,
CorruptPacketException
skip
public long skip(long n)
throws IOException
- Skips over n bytes in the input-buffer. If there are less than n bytes in the buffer, this method also calls skip(long) on the associated InputStream for the rest of the bytes. This Method is synchronized because of a global input-buffer.
- Overrides:
skip
in class FilterInputStream
- Returns:
- The total number of bytes skipped.
- Throws:
IOException,
- only when the call to skip(long) on the associated InputStream throws one.
available
public int available()
throws IOException
- Returns the number of bytes in the input-buffer added to the result of super.available().
- Overrides:
available
in class FilterInputStream