org.eclipse.mat.snapshot
Class ClassLoaderHistogramRecord

java.lang.Object
  extended by org.eclipse.mat.snapshot.HistogramRecord
      extended by org.eclipse.mat.snapshot.ClassLoaderHistogramRecord
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
XClassLoaderHistogramRecord

public class ClassLoaderHistogramRecord
extends HistogramRecord

This class holds the histogram data on the objects found in the object set for which a histogram was computed (aggregated per class loader).

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.eclipse.mat.snapshot.HistogramRecord
COMPARATOR_FOR_LABEL, COMPARATOR_FOR_NUMBEROFOBJECTS, COMPARATOR_FOR_RETAINEDHEAPSIZE, COMPARATOR_FOR_USEDHEAPSIZE
 
Constructor Summary
ClassLoaderHistogramRecord(String label, int classLoaderId, ArrayList<ClassHistogramRecord> classHistogramRecords, long numberOfObjects, long usedHeapSize, long retainedHeapSize)
          Details of a class loader
 
Method Summary
 long calculateRetainedSize(ISnapshot snapshot, boolean calculateIfNotAvailable, boolean approximation, IProgressListener listener)
          Find out the retained size
 Collection<ClassHistogramRecord> getClassHistogramRecords()
          Get collection of the class histogram records this class loader histogram record stands for.
 int getClassLoaderId()
          Get id of the class loader this class loader histogram record stands for.
 int[] getObjectIds()
          Get ids of the objects this class loader histogram record stands for.
 String toString()
           
 
Methods inherited from class org.eclipse.mat.snapshot.HistogramRecord
getLabel, getNumberOfObjects, getRetainedHeapSize, getUsedHeapSize, incNumberOfObjects, incNumberOfObjects, incRetainedHeapSize, incUsedHeapSize, reverseComparator, setLabel, setNumberOfObjects, setRetainedHeapSize, setUsedHeapSize
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ClassLoaderHistogramRecord

public ClassLoaderHistogramRecord(String label,
                                  int classLoaderId,
                                  ArrayList<ClassHistogramRecord> classHistogramRecords,
                                  long numberOfObjects,
                                  long usedHeapSize,
                                  long retainedHeapSize)
Details of a class loader

Parameters:
label - the name of the loader
classLoaderId - the id of the class loader object
classHistogramRecords - the histogram details of all the classes loaded by this loader
numberOfObjects -
usedHeapSize -
retainedHeapSize -
Method Detail

getClassLoaderId

public int getClassLoaderId()
Get id of the class loader this class loader histogram record stands for.

Returns:
id of the class loader this class loader histogram record stands for

getClassHistogramRecords

public Collection<ClassHistogramRecord> getClassHistogramRecords()
Get collection of the class histogram records this class loader histogram record stands for.

Returns:
collection of the class histogram records this class loader histogram record stands for

getObjectIds

public int[] getObjectIds()
                   throws SnapshotException
Get ids of the objects this class loader histogram record stands for.

Returns:
ids of the objects this class loader histogram record stands for
Throws:
SnapshotException

calculateRetainedSize

public long calculateRetainedSize(ISnapshot snapshot,
                                  boolean calculateIfNotAvailable,
                                  boolean approximation,
                                  IProgressListener listener)
                           throws SnapshotException
Find out the retained size

Parameters:
snapshot - the snapshot
calculateIfNotAvailable - whether to calculate the size if not already available
approximation - whether to use an approximation to the retained size (sum of the individual retained sizes)
listener - to report progress and errors
Returns:
the retained size, negated if approximate, and 0 if unavailable
Throws:
SnapshotException

toString

public String toString()
Overrides:
toString in class Object