public class MockIndexInputWrapper extends IndexInput
| Constructor and Description |
|---|
MockIndexInputWrapper(MockDirectoryWrapper dir,
String name,
IndexInput delegate)
Construct an empty output buffer.
|
| Modifier and Type | Method and Description |
|---|---|
Object |
clone()
Returns a clone of this stream.
|
void |
close()
Closes the stream to further operations.
|
void |
copyBytes(IndexOutput out,
long numBytes)
Copies
numBytes bytes to the given IndexOutput. |
long |
getFilePointer()
Returns the current position in this file, where the next read will
occur.
|
long |
length()
The number of bytes in the file.
|
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 |
readBytes(byte[] b,
int offset,
int len,
boolean useBuffer)
Reads a specified number of bytes into an array at the
specified offset with control over whether the read
should be buffered (callers who have their own buffer
should pass in "false" for useBuffer).
|
void |
readChars(char[] buffer,
int start,
int length)
Reads Lucene's old "modified UTF-8" encoded
characters into an array.
|
int |
readInt()
Reads four bytes and returns an int.
|
long |
readLong()
Reads eight bytes and returns a long.
|
String |
readString()
Reads a string.
|
Map<String,String> |
readStringStringMap() |
int |
readVInt()
Reads an int stored in variable-length format.
|
long |
readVLong()
Reads a long stored in variable-length format.
|
void |
seek(long pos)
Sets current position in this file, where the next read will occur.
|
void |
setModifiedUTF8StringsMode()
Call this if readString should read characters stored
in the old modified UTF8 format (length in java chars
and java's modified UTF8 encoding).
|
void |
skipChars(int length)
Expert
Similar to
DataInput.readChars(char[], int, int) but does not do any conversion operations on the bytes it is reading in. |
toStringpublic MockIndexInputWrapper(MockDirectoryWrapper dir, String name, IndexInput delegate)
public void close()
throws IOException
IndexInputclose in interface Closeableclose in class IndexInputIOExceptionpublic Object clone()
DataInputClones of a stream access the same data, and are positioned at the same point as the stream they were cloned from.
Expert: Subclasses must ensure that clones may be positioned at different points in the input from each other and from the stream they were cloned from.
public long getFilePointer()
IndexInputgetFilePointer in class IndexInputIndexInput.seek(long)public void seek(long pos)
throws IOException
IndexInputseek in class IndexInputIOExceptionIndexInput.getFilePointer()public long length()
IndexInputlength in class IndexInputpublic byte readByte()
throws IOException
DataInputreadByte in class DataInputIOExceptionDataOutput.writeByte(byte)public void readBytes(byte[] b,
int offset,
int len)
throws IOException
DataInputreadBytes in class DataInputb - the array to read bytes intooffset - the offset in the array to start storing byteslen - the number of bytes to readIOExceptionDataOutput.writeBytes(byte[],int)public void copyBytes(IndexOutput out, long numBytes) throws IOException
IndexInputnumBytes bytes to the given IndexOutput.
NOTE: this method uses an intermediate buffer to copy the bytes. Consider overriding it in your implementation, if you can make a better, optimized copy.
NOTE ensure that there are enough bytes in the input to copy to output. Otherwise, different exceptions may be thrown, depending on the implementation.
copyBytes in class IndexInputIOExceptionpublic void readBytes(byte[] b,
int offset,
int len,
boolean useBuffer)
throws IOException
DataInputBufferedIndexInput respects this parameter.readBytes in class DataInputb - the array to read bytes intooffset - the offset in the array to start storing byteslen - the number of bytes to readuseBuffer - set to false if the caller will handle
buffering.IOExceptionDataOutput.writeBytes(byte[],int)public int readInt()
throws IOException
DataInputreadInt in class DataInputIOExceptionDataOutput.writeInt(int)public int readVInt()
throws IOException
DataInputreadVInt in class DataInputIOExceptionDataOutput.writeVInt(int)public long readLong()
throws IOException
DataInputreadLong in class DataInputIOExceptionDataOutput.writeLong(long)public long readVLong()
throws IOException
DataInputreadVLong in class DataInputIOExceptionpublic String readString() throws IOException
DataInputreadString in class DataInputIOExceptionDataOutput.writeString(String)public Map<String,String> readStringStringMap() throws IOException
readStringStringMap in class DataInputIOExceptionpublic void setModifiedUTF8StringsMode()
DataInputsetModifiedUTF8StringsMode in class DataInputpublic void readChars(char[] buffer,
int start,
int length)
throws IOException
DataInputreadChars in class DataInputbuffer - the array to read characters intostart - the offset in the array to start storing characterslength - the number of characters to readIOExceptionDataOutput.writeChars(String,int,int)public void skipChars(int length)
throws IOException
IndexInputDataInput.readChars(char[], int, int) but does not do any conversion operations on the bytes it is reading in. It still
has to invoke DataInput.readByte() just as DataInput.readChars(char[], int, int) does, but it does not need a buffer to store anything
and it does not have to do any of the bitwise operations, since we don't actually care what is in the byte except to determine
how many more bytes to readskipChars in class IndexInputlength - The number of chars to readIOException