- java.lang.Object
-
- org.refcodes.io.PrefetchInputStreamByteReceiver
-
- All Implemented Interfaces:
org.refcodes.component.Closable
,org.refcodes.component.Closable.CloseAutomaton
,org.refcodes.component.ClosedAccessor
,org.refcodes.component.ConnectableComponent
,org.refcodes.component.ConnectableComponent.ConnectableAutomaton
,org.refcodes.component.ConnectionStatusAccessor
,org.refcodes.component.OpenedAccessor
,Availability
,ByteDestination
,ByteReceiver
,BytesDestination
,BytesReceiver
,Receivable
,Skippable
,TimeoutInputStreamAccessor
,org.refcodes.mixin.InputStreamAccessor
public class PrefetchInputStreamByteReceiver extends Object implements BytesReceiver
The Class PrefetchInputStreamByteReceiver.- Author:
- steiner
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.io.BytesReceiver
BytesReceiver.ReceiverInputStream
-
Nested classes/interfaces inherited from interface org.refcodes.component.Closable
org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.ClosedAccessor
org.refcodes.component.ClosedAccessor.ClosedMutator, org.refcodes.component.ClosedAccessor.ClosedProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectableComponent
org.refcodes.component.ConnectableComponent.ConnectableAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionStatusAccessor
org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusMutator, org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusProperty
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.InputStreamAccessor
org.refcodes.mixin.InputStreamAccessor.InputStreamBuilder<B extends org.refcodes.mixin.InputStreamAccessor.InputStreamBuilder<?>>, org.refcodes.mixin.InputStreamAccessor.InputStreamMutator, org.refcodes.mixin.InputStreamAccessor.InputStreamProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.OpenedAccessor
org.refcodes.component.OpenedAccessor.OpenedMutator, org.refcodes.component.OpenedAccessor.OpenedProperty
-
Nested classes/interfaces inherited from interface org.refcodes.io.TimeoutInputStreamAccessor
TimeoutInputStreamAccessor.TimeoutInputStreamBuilder<B extends TimeoutInputStreamAccessor.TimeoutInputStreamBuilder<?>>, TimeoutInputStreamAccessor.TimeoutInputStreamMutator, TimeoutInputStreamAccessor.TimeoutInputStreamProperty
-
-
Constructor Summary
Constructors Constructor Description PrefetchInputStreamByteReceiver(InputStream aInputStream)
Instantiates a new prefetch input stream byte receiver impl.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
available()
Determines the number of available datagram from aDatagramTransmitter
.void
close()
org.refcodes.component.ConnectionStatus
getConnectionStatus()
boolean
isClosable()
boolean
isClosed()
boolean
isOpened()
byte[]
receiveAllBytes()
Reads (receives) the all currently available data.byte
receiveByte()
Reads (receives) the next byte, in case none byte is available, then this method blocks until one is available.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.refcodes.io.Availability
hasAvailable
-
Methods inherited from interface org.refcodes.io.BytesDestination
receiveBytes
-
Methods inherited from interface org.refcodes.io.BytesReceiver
getInputStream, getInputStream, receiveBytes, receiveBytesWithin, receiveBytesWithin, receiveByteWithin, skip
-
Methods inherited from interface org.refcodes.component.Closable
closeIn, closeQuietly, closeUnchecked
-
Methods inherited from interface org.refcodes.io.Skippable
skipAvailable, skipAvailableExcept, skipAvailableTill, skipAvailableTillSilenceFor, skipAvailableTillSilenceFor, skipAvailableWithin, skipAvailableWithin, skipAvailableWithin
-
-
-
-
Constructor Detail
-
PrefetchInputStreamByteReceiver
public PrefetchInputStreamByteReceiver(InputStream aInputStream) throws IOException
Instantiates a new prefetch input stream byte receiver impl.- Parameters:
aInputStream
- the input stream- Throws:
IOException
- the open exception
-
-
Method Detail
-
isClosed
public boolean isClosed()
- Specified by:
isClosed
in interfaceorg.refcodes.component.ClosedAccessor
-
isOpened
public boolean isOpened()
- Specified by:
isOpened
in interfaceorg.refcodes.component.ConnectionStatusAccessor
- Specified by:
isOpened
in interfaceorg.refcodes.component.OpenedAccessor
-
available
public int available() throws IOException
Determines the number of available datagram from aDatagramTransmitter
. Use theDatagramDestination
extenison'sDatagramDestination.receive()
method for retrieving available datagrams.- Specified by:
available
in interfaceAvailability
- Specified by:
available
in interfaceSkippable
- Returns:
- The number of datagrams ready to be retrieved .
- Throws:
IOException
- Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
-
receiveAllBytes
public byte[] receiveAllBytes() throws IOException
Reads (receives) the all currently available data.- Specified by:
receiveAllBytes
in interfaceBytesDestination
- Specified by:
receiveAllBytes
in interfaceBytesReceiver
- Returns:
- The according data.
- Throws:
IOException
- Thrown in case opening or accessing an open line (connection, junction, link) caused problems.EOFException
- Signals that an end of file or end of stream has been reached unexpectedly during input.
-
getConnectionStatus
public org.refcodes.component.ConnectionStatus getConnectionStatus()
- Specified by:
getConnectionStatus
in interfaceorg.refcodes.component.ConnectionStatusAccessor
-
close
public void close() throws IOException
- Specified by:
close
in interfaceorg.refcodes.component.Closable
- Throws:
IOException
-
receiveByte
public byte receiveByte() throws IOException
Reads (receives) the next byte, in case none byte is available, then this method blocks until one is available.- Specified by:
receiveByte
in interfaceByteDestination
- Specified by:
receiveByte
in interfaceBytesDestination
- Returns:
- The next byte available .
- Throws:
IOException
- Thrown in case opening or accessing an open line (connection, junction, link) caused problems.EOFException
- Signals that an end of file or end of stream has been reached unexpectedly during input.
-
isClosable
public boolean isClosable()
- Specified by:
isClosable
in interfaceorg.refcodes.component.Closable.CloseAutomaton
-
-