Class EntityInputStream
java.lang.Object
java.io.InputStream
org.glassfish.jersey.message.internal.EntityInputStream
- All Implemented Interfaces:
Closeable,AutoCloseable
Entity input stream customized for entity message processing:
- Author:
- Marek Potociar
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintvoidclose()static EntityInputStreamcreate(InputStream inputStream) Create an entity input stream instance wrapping the original input stream.voidCheck that the entity input stream has not been closed yet.final InputStreamGet the wrapped input stream instance.booleanisClosed()Get the closed status of this input stream.booleanisEmpty()Check if the underlying entity stream is empty.voidmark(int readLimit) booleanintread()intread(byte[] b) intread(byte[] b, int off, int len) voidreset()final voidsetWrappedStream(InputStream wrapped) Set the wrapped input stream instance.longskip(long n) Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Constructor Details
-
EntityInputStream
Extension constructor.- Parameters:
input- underlying wrapped input stream.
-
-
Method Details
-
create
Create an entity input stream instance wrapping the original input stream. In case the original entity stream is already of typeEntityInputStream, the stream is returned without wrapping.- Parameters:
inputStream- input stream.- Returns:
- entity input stream.
-
read
- Specified by:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
skip
- Overrides:
skipin classInputStream- Throws:
IOException
-
available
- Overrides:
availablein classInputStream- Throws:
IOException
-
mark
public void mark(int readLimit) - Overrides:
markin classInputStream
-
markSupported
public boolean markSupported()- Overrides:
markSupportedin classInputStream
-
reset
public void reset()The method is customized to not throw an
IOExceptionif the reset operation fails. Instead, a runtimeProcessingExceptionis thrown.- Overrides:
resetin classInputStream- Throws:
ProcessingException- in case the reset operation on the underlying entity input stream failed.
-
close
The method is customized to not throw an
IOExceptionif the close operation fails. Instead, a warning message is logged.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInputStream- Throws:
ProcessingException
-
isEmpty
public boolean isEmpty()Check if the underlying entity stream is empty.Note that the operation may need to block until a first byte (or EOF) is available in the stream.
- Returns:
trueif the entity stream is empty,falseotherwise.
-
ensureNotClosed
Check that the entity input stream has not been closed yet.- Throws:
IllegalStateException- in case the entity input stream has been closed.
-
isClosed
public boolean isClosed()Get the closed status of this input stream.- Returns:
trueif the stream has been closed,falseotherwise.
-
getWrappedStream
Get the wrapped input stream instance.- Returns:
- wrapped input stream instance.
-
setWrappedStream
Set the wrapped input stream instance.- Parameters:
wrapped- new input stream instance to be wrapped.
-