org.eclipse.mat.snapshot

## Interface SnapshotFactory.Implementation

All Known Implementing Classes:
  SnapshotFactoryImpl

Enclosing class:
  SnapshotFactory

    public static interface SnapshotFactory.Implementation

Describes the snapshot factory implementation. Implemented in the parser plugin. Implementations of this interface need to be registered using the `org.eclipse.mat.api.factory` extension point.

No Implement:

### Method Summary

All Methods Instance Methods Abstract Methods
`IOQLQuery` `createQuery(String queryString)` Run an OQL query
`void` `dispose(ISnapshot snapshot)` Free resources when the snapshot is no longer needed.
`List<SnapshotFormat>` `getSupportedFormats()` Show which parsers the factory handles
`ISnapshot` `openSnapshot(File file, Map<String,String> arguments, IProgressListener listener)` Opens a snapshot

### Method Detail

#### openSnapshot

    ISnapshot openSnapshot(File file,
                           Map<String,String> arguments,
                           IProgressListener listener)
                    throws SnapshotException

Opens a snapshot

Parameters:
  `file` - the dump file
  `arguments` - extra arguments to change the indexing of the dump
  `listener` - to show progress and errors
Returns:
  the snapshot
Throws:
  `SnapshotException`

#### dispose

    void dispose(ISnapshot snapshot)

Free resources when the snapshot is no longer needed.

Parameters:
  `snapshot` -

#### createQuery

    IOQLQuery createQuery(String queryString)
                   throws OQLParseException,
                          SnapshotException

Run an OQL query

Parameters:
  `queryString` - the OQL query
Returns:
  the result
Throws:
  `OQLParseException`
  `SnapshotException`

#### getSupportedFormats

    List<SnapshotFormat> getSupportedFormats()

Show which parsers the factory handles

Returns:
  a list of snapshot types