Package org.eclipse.mat.parser
Interface IObjectReader
-
- All Known Implementing Classes:
DTFJHeapObjectReader
,HprofHeapObjectReader
public interface IObjectReader
Part of the parser which retrieves detailed information about an object
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
tidy up when snapshot no longer required<A> A
getAddon(Class<A> addon)
Get additional information about the snapshotvoid
open(ISnapshot snapshot)
Open the dump file associated with the snapshotIObject
read(int objectId, ISnapshot snapshot)
Get detailed information about an objectlong[]
readObjectArrayContent(ObjectArrayImpl array, int offset, int length)
Get detailed information about a object arrayObject
readPrimitiveArrayContent(PrimitiveArrayImpl array, int offset, int length)
Get detailed information about a primitive array
-
-
-
Method Detail
-
open
void open(ISnapshot snapshot) throws SnapshotException, IOException
Open the dump file associated with the snapshot- Parameters:
snapshot
- the snapshot- Throws:
SnapshotException
- some other problemIOException
- an IO problem, or corrupt indexes or unexpected data in the dump
-
read
IObject read(int objectId, ISnapshot snapshot) throws SnapshotException, IOException
Get detailed information about an object- Parameters:
objectId
- the object idsnapshot
- the snapshot- Returns:
- an IObject such as
InstanceImpl
,ObjectArrayImpl
,PrimitiveArrayImpl
,ClassLoaderImpl
- Throws:
SnapshotException
- some other problem such as where the object is incompatible with the snapshotIOException
- an IO problem or unexpected data in the dump
-
readPrimitiveArrayContent
Object readPrimitiveArrayContent(PrimitiveArrayImpl array, int offset, int length) throws IOException, SnapshotException
Get detailed information about a primitive array- Parameters:
array
- the arrayoffset
- where in the array to startlength
- how much to read- Returns:
- a byte[], short[], int[], long[], boolean[], char[], float[], double[]
- Throws:
SnapshotException
- some other problem such as where the object is incompatible with the snapshotIOException
- an IO problem or unexpected data in the dump
-
readObjectArrayContent
long[] readObjectArrayContent(ObjectArrayImpl array, int offset, int length) throws IOException, SnapshotException
Get detailed information about a object array- Parameters:
array
- the arrayoffset
- where in the array to startlength
- how much to read- Returns:
- an array of object addresses, with 0 for nulls
- Throws:
SnapshotException
- some other problem such as where the object is incompatible with the snapshotIOException
- an IO problem or unexpected data in the dump
-
getAddon
<A> A getAddon(Class<A> addon) throws SnapshotException
Get additional information about the snapshot- Type Parameters:
A
- used to set the return type- Parameters:
addon
- type of the additional information- Returns:
- the additional information or null if none available
- Throws:
SnapshotException
- an IO problem or unexpected data in the dump
-
close
void close() throws IOException
tidy up when snapshot no longer required- Throws:
IOException
- should not normally occur
-
-