Class IndexReader.SizeIndexReader

java.lang.Object
org.eclipse.mat.parser.index.IndexReader.SizeIndexReader
All Implemented Interfaces:
IIndexReader, IIndexReader.IOne2OneIndex, IIndexReader.IOne2SizeIndex
Enclosing class:
IndexReader

public static class IndexReader.SizeIndexReader extends Object implements IIndexReader.IOne2SizeIndex
Creates a index reader for array sizes, presuming the sizes are stored as ints and get expanded in the reverse of the compression.
Since:
1.0
  • Constructor Details

    • SizeIndexReader

      public SizeIndexReader(File indexFile) throws IOException
      Constructor used when reopening a dump
      Parameters:
      indexFile - the file holding the index
      Throws:
      IOException - if there was a problem reading the file
    • SizeIndexReader

      public SizeIndexReader(IIndexReader.IOne2OneIndex idx)
      Construct a size index reader based on a int index holding the compressed data
      Parameters:
      idx - the source index
  • Method Details

    • getSize

      public long getSize(int index)
      Expand the compressed size.
      Specified by:
      getSize in interface IIndexReader.IOne2SizeIndex
      Parameters:
      index - the encoded compressed size
      Returns:
      the actual size in bytes
    • get

      public int get(int index)
      Get the (compressed) size. Delegate to the int index.
      Specified by:
      get in interface IIndexReader.IOne2OneIndex
      Parameters:
      index - the index of the object
      Returns:
      the encoded compressed size
    • getAll

      public int[] getAll(int[] index)
      Delegate to the int index. Gets the encoded sizes for a list of object IDs
      Specified by:
      getAll in interface IIndexReader.IOne2OneIndex
      Parameters:
      index - an array of items to look up
      Returns:
      an array of the result items
    • getNext

      public int[] getNext(int index, int length)
      Delegate to the int index. Gets the encoded sizes for a consecutive list of object IDs
      Specified by:
      getNext in interface IIndexReader.IOne2OneIndex
      Parameters:
      index - the starting index
      length - the number to read
      Returns:
      an array of compressed sizes
    • close

      public void close() throws IOException
      Delegate to the int index.
      Specified by:
      close in interface IIndexReader
      Throws:
      IOException
    • delete

      public void delete()
      Delegate to the int index.
      Specified by:
      delete in interface IIndexReader
    • size

      public int size()
      Delegate to the int index.
      Specified by:
      size in interface IIndexReader
      Returns:
      the number of entries
    • unload

      public void unload() throws IOException
      Delegate to the int index.
      Specified by:
      unload in interface IIndexReader
      Throws:
      IOException