Package com.adobe.internal.io
Interface ByteReader
-
- All Known Subinterfaces:
ByteWriter
- All Known Implementing Classes:
ByteArrayByteReader
,ByteArrayByteWriter
,ByteBufferByteReader
,ByteBufferByteWriter
,FilterByteReader
,FilterByteWriter
,InputStreamByteReader
,InputStreamByteWriter
,LazyRandomAccessFileByteReader
,LazyRandomAccessFileByteWriter
,MemoryMappedByteWriter
,NonCachedRandomAccessFileByteReader
,NonCachedRandomAccessFileByteWriter
,RandomAccessFileByteReader
,RandomAccessFileByteWriter
,RangedByteWriter
public interface ByteReader
The
ByteReader
provides an abstraction to a linear, zero-based, semi-infinite array of bytes that can be read from at any point. The actual repository can store these bytes in any manner that best fits the storage medium but the view on them provided by this interface must be as above.
-
-
Field Summary
Fields Modifier and Type Field Description static int
EOF
The value returned when reads occur outside of the legal range.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
Closes thisByteReader
and releases any system resources associated with this stream.long
length()
Returns the number of total bytes in the repository that are visible through this API.int
read(long position)
Read a single byte from the underlying bytes at the given position.int
read(long position, byte[] b, int offset, int length)
Transfers bytes from the underlying repository into the given destination array.
-
-
-
Field Detail
-
EOF
static final int EOF
The value returned when reads occur outside of the legal range.- See Also:
- Constant Field Values
-
-
Method Detail
-
read
int read(long position) throws java.io.IOException
Read a single byte from the underlying bytes at the given position.- Parameters:
position
- the position to read the byte from.- Returns:
- the byte at the postion or EOF if the position is outside of the legal range.
- Throws:
java.io.IOException
- if an error occurs during the read operation
-
read
int read(long position, byte[] b, int offset, int length) throws java.io.IOException
Transfers bytes from the underlying repository into the given destination array. Copy up tolength
bytes from the repository starting at the postion given into the given array starting at the given offset.- Parameters:
position
- the position to read the byte from.b
- the array to write the bytes into.offset
- the offset in the array at which the first byte is written.length
- the maximum number of bytes to write into the array.- Returns:
- the number of bytes actually written to the array.
- Throws:
java.io.IOException
- if an error occurs during the read operation
-
length
long length() throws java.io.IOException
Returns the number of total bytes in the repository that are visible through this API.- Returns:
- the number of bytes in the repository.
- Throws:
java.io.IOException
- if an error occurs while trying to determine the length
-
close
void close() throws java.io.IOException
Closes thisByteReader
and releases any system resources associated with this stream.- Throws:
java.io.IOException
- if an error occurs while trying to close
-
-