Package org.eclipse.mat.snapshot

## Class DominatorsSummary

- java.lang.Object
- - org.eclipse.mat.snapshot.DominatorsSummary

    public final class DominatorsSummary
    extends java.lang.Object

This class holds the data of a dominators summary (see ISnapshot.getDominatorsOf()). For a given list of objects the summary contains the dominators of the single objects grouped by class or by class loader.#

No Instantiate:

### Nested Class Summary

Nested Classes
`static class` `DominatorsSummary.ClassDominatorRecord` A record containing information for objects of one class dominating a set of other objects
`static class` `DominatorsSummary.ClassloaderDominatorRecord` A record containing information for objects loaded by one class loader dominating a set of other objects

### Field Summary

Fields
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATED` A comparator by number of dominated objects
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATED_HEAP_SIZE` A comparator by dominated heap size
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATED_RETAINED_HEAP_SIZE` A comparator by dominated objects' retained size
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATOR_HEAP_SIZE` A comparator by dominators heap size
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATOR_RETAINED_HEAP_SIZE` A comparator by dominators' retained size
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_DOMINATORS` A comparator by number of dominators
`static java.util.Comparator<java.lang.Object>` `COMPARE_BY_NAME` A comparator by name

### Constructor Summary

Constructors
`DominatorsSummary​(DominatorsSummary.ClassDominatorRecord[] classDominatorRecords, ISnapshot snapshot)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`DominatorsSummary.ClassDominatorRecord[]` `getClassDominatorRecords()` Get the dominators summary grouped by classes
`DominatorsSummary.ClassloaderDominatorRecord[]` `getClassloaderDominatorRecords()` Get the dominators summary grouped by class loaders
`<C extends DominatorsSummary.ClassloaderDominatorRecord> C[]` `getClassloaderDominatorRecords​(java.lang.Class<C> factoryClass)`
`java.lang.Object` `getData()` Returns data object attached to the summary.
`static java.util.Comparator<java.lang.Object>` `reverseComparator​(java.util.Comparator<java.lang.Object> comparator)` Reverse the sort order.
`void` `setData​(java.lang.Object data)` Attaches arbitrary data object to the summary.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### COMPARE_BY_NAME

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_NAME

A comparator by name

#### COMPARE_BY_DOMINATORS

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATORS

A comparator by number of dominators

#### COMPARE_BY_DOMINATED

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATED

A comparator by number of dominated objects

#### COMPARE_BY_DOMINATED_HEAP_SIZE

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATED_HEAP_SIZE

A comparator by dominated heap size

#### COMPARE_BY_DOMINATOR_HEAP_SIZE

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATOR_HEAP_SIZE

A comparator by dominators heap size

#### COMPARE_BY_DOMINATED_RETAINED_HEAP_SIZE

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATED_RETAINED_HEAP_SIZE

A comparator by dominated objects' retained size

#### COMPARE_BY_DOMINATOR_RETAINED_HEAP_SIZE

    public static final java.util.Comparator<java.lang.Object> COMPARE_BY_DOMINATOR_RETAINED_HEAP_SIZE

A comparator by dominators' retained size

### Constructor Detail

#### DominatorsSummary

    public DominatorsSummary​(DominatorsSummary.ClassDominatorRecord[] classDominatorRecords,
                             ISnapshot snapshot)

### Method Detail

#### getData

    public java.lang.Object getData()

Returns data object attached to the summary. Needed for UI elements to store context.

#### setData

    public void setData​(java.lang.Object data)

Attaches arbitrary data object to the summary. Needed for UI elements to store context.

#### getClassDominatorRecords

    public DominatorsSummary.ClassDominatorRecord[] getClassDominatorRecords()

Get the dominators summary grouped by classes

Returns:
  ClassDominatorRecord[] the array of ClassDominatorRecords

#### getClassloaderDominatorRecords

    public DominatorsSummary.ClassloaderDominatorRecord[] getClassloaderDominatorRecords()

Get the dominators summary grouped by class loaders

Returns:
  ClassloaderDominatorRecord[] the array of ClassloaderDominatorRecords

#### getClassloaderDominatorRecords

    public <C extends DominatorsSummary.ClassloaderDominatorRecord> C[] getClassloaderDominatorRecords​(java.lang.Class<C> factoryClass)

#### reverseComparator

    public static java.util.Comparator<java.lang.Object> reverseComparator​(java.util.Comparator<java.lang.Object> comparator)

Reverse the sort order.