Package org.eclipse.mat.parser.index

# Class IndexWriter.InboundWriter

java.lang.Object
org.eclipse.mat.parser.index.IndexWriter.InboundWriter

Enclosing class:
  `IndexWriter`

public static class IndexWriter.InboundWriter extends Object
A writer for inbound references. The object and the inbound reference are stored in a segment based on the object ID. Later the segments are sorted by object ID and then by reference ID before being written out.

## Constructor Summary

Constructors
Constructor
Description
`InboundWriter(int size, File indexFile)`
Construct an inbound writer.

## Method Summary

Modifier and Type
Method
Description
`void`
`cancel()`
Terminate the InboundWriter and delete any files which have been written so far.
`void`
`close()`
`IIndexReader.IOne2ManyObjectsIndex`
`flush(IProgressListener monitor, IndexWriter.KeyWriter keyWriter)`
Write out all the data as one big file.
`File`
`getIndexFile()`
`void`
`log(int objectIndex, int refIndex, boolean isPseudo)`
Record an inbound reference.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### InboundWriter

public InboundWriter(int size, File indexFile) throws IOException
Construct an inbound writer.

Parameters:
  `size` - the number of entries
  `indexFile` - the index file to be written to
Throws:
  `IOException` - if there is a problem writing the file

## Method Details

### log

public void log(int objectIndex, int refIndex, boolean isPseudo) throws IOException
Record an inbound reference.

Parameters:
  `objectIndex` - the object has a reference from ref
  `refIndex` - the reference
  `isPseudo` - is this a pseudo reference, first entry of the outbounds (e.g. class ID)
Throws:
  `IOException` - if there is a problem with the write

### flush

public IIndexReader.IOne2ManyObjectsIndex flush(IProgressListener monitor, IndexWriter.KeyWriter keyWriter) throws IOException
Write out all the data as one big file.

Parameters:
  `monitor` - to show progress, report errors
  `keyWriter` - to write out the keys
Returns:
  a reader
Throws:
  `IOException` - if there is a problem reading or writing files

### cancel

public void cancel()
Terminate the InboundWriter and delete any files which have been written so far. Use to cancel part way through.

### close

public void close() throws IOException

Throws:
  `IOException`

### getIndexFile

public File getIndexFile()