org.apache.lucene.store
Class ChecksumIndexOutput

java.lang.Object
  extended by org.apache.lucene.store.DataOutput
      extended by org.apache.lucene.store.IndexOutput
          extended by org.apache.lucene.store.ChecksumIndexOutput
All Implemented Interfaces:
Closeable

public class ChecksumIndexOutput
extends IndexOutput

Writes bytes through to a primary IndexOutput, computing checksum. Note that you cannot use seek().

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

Constructor Summary
ChecksumIndexOutput(IndexOutput main)
           
 
Method Summary
 void close()
          Closes this stream to further operations.
 void finishCommit()
          See prepareCommit()
 void flush()
          Forces any buffered output to be written.
 long getChecksum()
           
 long getFilePointer()
          Returns the current position in this file, where the next write will occur.
 long length()
          The number of bytes in the file.
 void prepareCommit()
          Starts but does not complete the commit of this file (= writing of the final checksum at the end).
 void seek(long pos)
          Sets current position in this file, where the next write will occur.
 void writeByte(byte b)
          Writes a single byte.
 void writeBytes(byte[] b, int offset, int length)
          Writes an array of bytes.
 
Methods inherited from class org.apache.lucene.store.IndexOutput
setLength
 
Methods inherited from class org.apache.lucene.store.DataOutput
copyBytes, writeBytes, writeChars, writeChars, writeInt, writeLong, writeShort, writeString, writeStringStringMap, writeVInt, writeVLong
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ChecksumIndexOutput

public ChecksumIndexOutput(IndexOutput main)
Method Detail

writeByte

public void writeByte(byte b)
               throws IOException
Description copied from class: DataOutput
Writes a single byte.

Specified by:
writeByte in class DataOutput
Throws:
IOException
See Also:
DataInput.readByte()

writeBytes

public void writeBytes(byte[] b,
                       int offset,
                       int length)
                throws IOException
Description copied from class: DataOutput
Writes an array of bytes.

Specified by:
writeBytes in class DataOutput
Parameters:
b - the bytes to write
offset - the offset in the byte array
length - the number of bytes to write
Throws:
IOException
See Also:
DataInput.readBytes(byte[],int,int)

getChecksum

public long getChecksum()

flush

public void flush()
           throws IOException
Description copied from class: IndexOutput
Forces any buffered output to be written.

Specified by:
flush in class IndexOutput
Throws:
IOException

close

public void close()
           throws IOException
Description copied from class: IndexOutput
Closes this stream to further operations.

Specified by:
close in interface Closeable
Specified by:
close in class IndexOutput
Throws:
IOException

getFilePointer

public long getFilePointer()
Description copied from class: IndexOutput
Returns the current position in this file, where the next write will occur.

Specified by:
getFilePointer in class IndexOutput
See Also:
IndexOutput.seek(long)

seek

public void seek(long pos)
Description copied from class: IndexOutput
Sets current position in this file, where the next write will occur.

Specified by:
seek in class IndexOutput
See Also:
IndexOutput.getFilePointer()

prepareCommit

public void prepareCommit()
                   throws IOException
Starts but does not complete the commit of this file (= writing of the final checksum at the end). After this is called must call finishCommit() and the close() to complete the commit.

Throws:
IOException

finishCommit

public void finishCommit()
                  throws IOException
See prepareCommit()

Throws:
IOException

length

public long length()
            throws IOException
Description copied from class: IndexOutput
The number of bytes in the file.

Specified by:
length in class IndexOutput
Throws:
IOException