Package org.eclipse.mat.parser

# Interface IIndexBuilder

All Known Implementing Classes:
  `DTFJIndexBuilder`, `HprofIndexBuilder`

public interface IIndexBuilder
Part of the parser which builds the indexes

## Method Summary

Modifier and Type
Method
Description
`void`
`cancel()`
called in case of error to delete any files / close any file handles
`void`
`clean(int[] purgedMapping, IProgressListener listener)`
Memory Analyzer has discarded unreachable objects, so the parser may need to know the discarded objects.
`void`
`fill(IPreliminaryIndex index, IProgressListener listener)`
Pass1 and pass2 parsing.
`void`
`init(File file, String prefix)`
Initialize with file and prefix (needed for naming conventions).

## Method Details

### init

void init(File file, String prefix) throws SnapshotException, IOException
Initialize with file and prefix (needed for naming conventions).

Parameters:
  `file` - the dump file
  `prefix` - used to build index files
Throws:
  `SnapshotException` - for example, some problem with the dump file
  `IOException` - for example, problem reading the dump file

### fill

void fill(IPreliminaryIndex index, IProgressListener listener) throws SnapshotException, IOException
Pass1 and pass2 parsing.

Parameters:
  `index` -
  `listener` - for progress and error reporting
Throws:
  `SnapshotException` - major problem parsing the dump
  `IOException` - for example, problem reading the dump file or wrong file type

### clean

void clean(int[] purgedMapping, IProgressListener listener) throws IOException
Memory Analyzer has discarded unreachable objects, so the parser may need to know the discarded objects.

Parameters:
  `purgedMapping` - mapping from old id to new id, -1 indicates object has been discarded
  `listener` - for progress and error reporting
Throws:
  `IOException` - for example, problem writing a new index

### cancel

void cancel()
called in case of error to delete any files / close any file handles