org.infinispan.lucene
Class SingleChunkIndexInput

java.lang.Object
  extended by org.apache.lucene.store.IndexInput
      extended by org.infinispan.lucene.SingleChunkIndexInput
All Implemented Interfaces:
Cloneable

public class SingleChunkIndexInput
extends org.apache.lucene.store.IndexInput

SingleChunkIndexInput can be used instead of InfinispanIndexInput to read a segment when it has a size small enough to fit in a single chunk. In this quite common case for some segment types we don't need the readLock to span multiple chunks, the pointer to the buffer is safe enough. This leads to an extreme simple implementation.

Since:
4.0
Author:
Sanne Grinovero

Constructor Summary
SingleChunkIndexInput(AdvancedCache cache, FileCacheKey fileKey, FileMetadata fileMetadata)
           
 
Method Summary
 void close()
           
 long getFilePointer()
           
 long length()
           
 byte readByte()
           
 void readBytes(byte[] b, int offset, int len)
           
 void seek(long pos)
           
 
Methods inherited from class org.apache.lucene.store.IndexInput
clone, readBytes, readChars, readInt, readLong, readString, readStringStringMap, readVInt, readVLong, setModifiedUTF8StringsMode, skipChars
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingleChunkIndexInput

public SingleChunkIndexInput(AdvancedCache cache,
                             FileCacheKey fileKey,
                             FileMetadata fileMetadata)
                      throws FileNotFoundException
Throws:
FileNotFoundException
Method Detail

close

public void close()
           throws IOException
Specified by:
close in class org.apache.lucene.store.IndexInput
Throws:
IOException

getFilePointer

public long getFilePointer()
Specified by:
getFilePointer in class org.apache.lucene.store.IndexInput

length

public long length()
Specified by:
length in class org.apache.lucene.store.IndexInput

readByte

public byte readByte()
              throws IOException
Specified by:
readByte in class org.apache.lucene.store.IndexInput
Throws:
IOException

readBytes

public void readBytes(byte[] b,
                      int offset,
                      int len)
               throws IOException
Specified by:
readBytes in class org.apache.lucene.store.IndexInput
Throws:
IOException

seek

public void seek(long pos)
          throws IOException
Specified by:
seek in class org.apache.lucene.store.IndexInput
Throws:
IOException

Google Analytics

Copyright © 2010 JBoss, a division of Red Hat. All Rights Reserved.