Class InputStreamStreamInput
java.lang.Object
java.io.InputStream
org.elasticsearch.common.io.stream.StreamInput
org.elasticsearch.common.io.stream.InputStreamStreamInput
- All Implemented Interfaces:
Closeable
,AutoCloseable
-
Constructor Summary
ConstructorDescriptionCreates a new InputStreamStreamInput with unlimited sizeInputStreamStreamInput(InputStream is, long sizeLimit)
Creates a new InputStreamStreamInput with a size limit -
Method Summary
Modifier and TypeMethodDescriptionint
void
close()
Closes the stream to further operations.protected void
ensureCanReadBytes(int length)
This method throws anEOFException
if the given number of bytes can not be read from the this stream.void
mark(int readlimit)
boolean
int
read()
int
read(byte[] b)
int
read(byte[] b, int off, int len)
byte
readByte()
Reads and returns a single byte.void
readBytes(byte[] b, int offset, int len)
Reads a specified number of bytes into an array at the specified offset.void
reset()
long
skip(long n)
Methods inherited from class org.elasticsearch.common.io.stream.StreamInput
getVersion, namedWriteableRegistry, readArray, readArraySize, readBigInteger, readBoolean, readByteArray, readBytesRef, readBytesRef, readBytesReference, readBytesReference, readDouble, readDoubleArray, readEnum, readEnumSet, readException, readFloat, readFloatArray, readFully, readGenericValue, readGeoPoint, readImmutableMap, readInstant, readInt, readIntArray, readList, readLong, readLongArray, readMap, readMap, readMapOfLists, readNamedWriteable, readNamedWriteable, readNamedWriteableList, readOptionalArray, readOptionalBoolean, readOptionalBytesReference, readOptionalDouble, readOptionalEnum, readOptionalFloat, readOptionalInstant, readOptionalInt, readOptionalLong, readOptionalNamedWriteable, readOptionalSecureString, readOptionalString, readOptionalStringArray, readOptionalStringList, readOptionalText, readOptionalTimeValue, readOptionalTimeZone, readOptionalVInt, readOptionalVLong, readOptionalWriteable, readOptionalZoneId, readOrderedMap, readReleasableBytesReference, readSecureString, readSet, readShort, readString, readStringArray, readStringList, readText, readTimeValue, readTimeZone, readVInt, readVIntArray, readVIntSlow, readVLong, readVLongArray, readVLongSlow, readZLong, readZoneId, setVersion, throwOnBrokenVInt, throwOnBrokenVLong, wrap, wrap
Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Constructor Details
-
InputStreamStreamInput
Creates a new InputStreamStreamInput with unlimited size- Parameters:
is
- the input stream to wrap
-
InputStreamStreamInput
Creates a new InputStreamStreamInput with a size limit- Parameters:
is
- the input stream to wrapsizeLimit
- a hard limit of the number of bytes in the given input stream. This is used for internal input validation
-
-
Method Details
-
readByte
Description copied from class:StreamInput
Reads and returns a single byte.- Specified by:
readByte
in classStreamInput
- Throws:
IOException
-
readBytes
Description copied from class:StreamInput
Reads a specified number of bytes into an array at the specified offset.- Specified by:
readBytes
in classStreamInput
- Parameters:
b
- the array to read bytes intooffset
- the offset in the array to start storing byteslen
- the number of bytes to read- Throws:
IOException
-
reset
- Overrides:
reset
in classInputStream
- Throws:
IOException
-
markSupported
public boolean markSupported()- Overrides:
markSupported
in classInputStream
-
mark
public void mark(int readlimit)- Overrides:
mark
in classInputStream
-
close
Description copied from class:StreamInput
Closes the stream to further operations.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classStreamInput
- Throws:
IOException
-
available
- Specified by:
available
in classStreamInput
- Throws:
IOException
-
read
- Specified by:
read
in classInputStream
- Throws:
IOException
-
read
- Overrides:
read
in classInputStream
- Throws:
IOException
-
read
- Overrides:
read
in classInputStream
- Throws:
IOException
-
skip
- Overrides:
skip
in classInputStream
- Throws:
IOException
-
ensureCanReadBytes
Description copied from class:StreamInput
This method throws anEOFException
if the given number of bytes can not be read from the this stream. This method might be a no-op depending on the underlying implementation if the information of the remaining bytes is not present.- Specified by:
ensureCanReadBytes
in classStreamInput
- Throws:
EOFException
-