|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.lucene.store.IndexInput
public abstract class IndexInput
Abstract base class for input from a file in a Directory
. A
random-access input stream. Used for all Lucene index input operations.
Directory
Field Summary | |
---|---|
protected byte[] |
copyBuf
|
Constructor Summary | |
---|---|
IndexInput()
|
Method Summary | |
---|---|
Object |
clone()
Returns a clone of this stream. |
abstract void |
close()
Closes the stream to further operations. |
void |
copyBytes(IndexOutput out,
long numBytes)
Copies numBytes bytes to the given IndexOutput . |
abstract long |
getFilePointer()
Returns the current position in this file, where the next read will occur. |
abstract long |
length()
The number of bytes in the file. |
abstract byte |
readByte()
Reads and returns a single byte. |
abstract 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)
Deprecated. -- please use readString or readBytes instead, and construct the string from those utf8 bytes |
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. |
abstract 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)
Deprecated. this method operates on old "modified utf8" encoded strings |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected byte[] copyBuf
Constructor Detail |
---|
public IndexInput()
Method Detail |
---|
public abstract byte readByte() throws IOException
IOException
IndexOutput.writeByte(byte)
public abstract void readBytes(byte[] b, int offset, int len) throws IOException
b
- the array to read bytes intooffset
- the offset in the array to start storing byteslen
- the number of bytes to read
IOException
IndexOutput.writeBytes(byte[],int)
public void readBytes(byte[] b, int offset, int len, boolean useBuffer) throws IOException
BufferedIndexInput
respects this parameter.
b
- 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.
IOException
IndexOutput.writeBytes(byte[],int)
public int readInt() throws IOException
IOException
IndexOutput.writeInt(int)
public int readVInt() throws IOException
IOException
IndexOutput.writeVInt(int)
public long readLong() throws IOException
IOException
IndexOutput.writeLong(long)
public long readVLong() throws IOException
IOException
public void setModifiedUTF8StringsMode()
public String readString() throws IOException
IOException
IndexOutput.writeString(String)
@Deprecated public void readChars(char[] buffer, int start, int length) throws IOException
buffer
- the array to read characters intostart
- the offset in the array to start storing characterslength
- the number of characters to read
IOException
IndexOutput.writeChars(String,int,int)
@Deprecated public void skipChars(int length) throws IOException
readChars(char[], int, int)
but does not do any conversion operations on the bytes it is reading in. It still
has to invoke readByte()
just as 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 read
length
- The number of chars to read
IOException
public abstract void close() throws IOException
close
in interface Closeable
IOException
public abstract long getFilePointer()
seek(long)
public abstract void seek(long pos) throws IOException
IOException
getFilePointer()
public abstract long length()
public Object clone()
Clones 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.
clone
in class Object
public Map<String,String> readStringStringMap() throws IOException
IOException
public void copyBytes(IndexOutput out, long numBytes) throws IOException
numBytes
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.
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |