Class MultiplePathsFromGCRootsComputerImpl
java.lang.Object
org.eclipse.mat.parser.internal.snapshot.MultiplePathsFromGCRootsComputerImpl
- All Implemented Interfaces:
IMultiplePathsFromGCRootsComputer
public class MultiplePathsFromGCRootsComputerImpl
extends Object
implements IMultiplePathsFromGCRootsComputer
-
Constructor Summary
ConstructorDescriptionMultiplePathsFromGCRootsComputerImpl
(int[] objectIds, Map<IClass, Set<String>> excludeMap, SnapshotImpl snapshot) -
Method Summary
Modifier and TypeMethodDescriptionObject[]
getAllPaths
(IProgressListener progressListener) Calculates (if not yet calculated) and returns all the paths.getPathsByGCRoot
(IProgressListener progressListener) Calculates (if not yet calculated) and returns all the paths.getPathsGroupedByClass
(boolean startFromTheGCRoots, IProgressListener progressListener)
-
Constructor Details
-
MultiplePathsFromGCRootsComputerImpl
public MultiplePathsFromGCRootsComputerImpl(int[] objectIds, Map<IClass, Set<String>> excludeMap, SnapshotImpl snapshot) throws SnapshotException- Throws:
SnapshotException
-
-
Method Details
-
getPathsByGCRoot
public MultiplePathsFromGCRootsRecord[] getPathsByGCRoot(IProgressListener progressListener) throws SnapshotException Description copied from interface:IMultiplePathsFromGCRootsComputer
Calculates (if not yet calculated) and returns all the paths. The paths are grouped by the GC root object, i.e. all paths starting from one and the same GC root will be packed in one MultiplePathsFromGCRootsRecord. This record can be used to get the objects at the next level in the path, etc...- Specified by:
getPathsByGCRoot
in interfaceIMultiplePathsFromGCRootsComputer
- Parameters:
progressListener
- - used to track the progress of the computation- Returns:
- MultiplePathsFromGCRootsRecord[] one record for each group of paths starting from the same GC root
- Throws:
SnapshotException
-
getAllPaths
Description copied from interface:IMultiplePathsFromGCRootsComputer
Calculates (if not yet calculated) and returns all the paths. Each element in the Object[] is an int[] representing the path. The first element in the int[] is the specified object, and the last is the GC root object- Specified by:
getAllPaths
in interfaceIMultiplePathsFromGCRootsComputer
- Parameters:
progressListener
- - used to track the progress of the computation- Returns:
- Object[] - each element in the array is an int[] representing a path
- Throws:
SnapshotException
-
getPathsGroupedByClass
public MultiplePathsFromGCRootsClassRecord[] getPathsGroupedByClass(boolean startFromTheGCRoots, IProgressListener progressListener) throws SnapshotException - Throws:
SnapshotException
-