org.eclipse.mat.internal.collectionextract

## Class ConcurrentSkipListCollectionExtractor

- java.lang.Object
- - org.eclipse.mat.internal.collectionextract.MapCollectionExtractorBase
  - - org.eclipse.mat.internal.collectionextract.HashedMapCollectionExtractorBase
    - - org.eclipse.mat.internal.collectionextract.ConcurrentSkipListCollectionExtractor

All Implemented Interfaces:
  ICollectionExtractor, IMapExtractor

Direct Known Subclasses:
  ConcurrentSkipListSetCollectionExtractor

    public class ConcurrentSkipListCollectionExtractor
    extends HashedMapCollectionExtractorBase

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.eclipse.mat.inspections.collectionextract.IMapExtractor

`IMapExtractor.EntryObject`

### Constructor Summary

Constructors
Constructor and Description
`ConcurrentSkipListCollectionExtractor(String arrayField, String keyField, String valueField)`

### Method Summary

All Methods Instance Methods Concrete Methods
`IObjectArray` `extractEntries(IObject coll)` Extracts the array containing the collection content
`int[]` `extractEntryIds(IObject coll)` Returns the object ids (int) for all objects which are contained in the collection
`Integer` `getCapacity(IObject coll)` Return the capacity of the collection, if applicable
`Double` `getCollisionRatio(IObject coll)` Calculates the collision ratio in the collection
`Double` `getFillRatio(IObject coll)` Calculate the fill ration of a collection
`Integer` `getNumberOfNotNullElements(IObject coll)` Returns the number of non-null elements in the collection.
`Integer` `getSize(IObject coll)` Extract the size of the collection
`boolean` `hasCapacity()` Check if the collection has capacity, e.g.
`boolean` `hasExtractableArray()` Return true if the collection array based and the array can be extracted from the heap dump
`boolean` `hasExtractableContents()` Check if the collection has extractable contents
`boolean` `hasFillRatio()` Check if fill ratio for the collection can be calculated, i.e.
`boolean` `hasSize()` Check if the size of the collection can be extracted

### Methods inherited from class org.eclipse.mat.internal.collectionextract.HashedMapCollectionExtractorBase

`hasCollisionRatio`

### Methods inherited from class org.eclipse.mat.internal.collectionextract.MapCollectionExtractorBase

`extractMapEntries`

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

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

### Constructor Detail

#### ConcurrentSkipListCollectionExtractor

    public ConcurrentSkipListCollectionExtractor(String arrayField,
                                                 String keyField,
                                                 String valueField)

### Method Detail

#### hasExtractableContents

    public boolean hasExtractableContents()

Description copied from interface: `ICollectionExtractor`
Check if the collection has extractable contents

Returns:

#### hasExtractableArray

    public boolean hasExtractableArray()

Description copied from interface: `ICollectionExtractor`
Return true if the collection array based and the array can be extracted from the heap dump

Returns:

#### extractEntries

    public IObjectArray extractEntries(IObject coll)
                                throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Extracts the array containing the collection content

Returns:
Throws:
  `SnapshotException`

#### extractEntryIds

    public int[] extractEntryIds(IObject coll)
                          throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Returns the object ids (int) for all objects which are contained in the collection

Returns:
Throws:
  `SnapshotException`

#### getNumberOfNotNullElements

    public Integer getNumberOfNotNullElements(IObject coll)
                                       throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Returns the number of non-null elements in the collection. Requires hasExtractableContents or hasExtractableArray

Returns:
Throws:
  `SnapshotException`

#### hasCapacity

    public boolean hasCapacity()

Description copied from interface: `ICollectionExtractor`
Check if the collection has capacity, e.g. ArrayList

Specified by:
  `hasCapacity` in interface `ICollectionExtractor`
Overrides:
  `hasCapacity` in class `MapCollectionExtractorBase`
Returns:

#### getCapacity

    public Integer getCapacity(IObject coll)
                        throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Return the capacity of the collection, if applicable

Specified by:
  `getCapacity` in interface `ICollectionExtractor`
Overrides:
  `getCapacity` in class `MapCollectionExtractorBase`
Returns:
Throws:
  `SnapshotException`

#### hasSize

    public boolean hasSize()

Description copied from interface: `ICollectionExtractor`
Check if the size of the collection can be extracted

Returns:

#### getSize

    public Integer getSize(IObject coll)
                    throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Extract the size of the collection

Returns:
Throws:
  `SnapshotException`

#### hasFillRatio

    public boolean hasFillRatio()

Description copied from interface: `ICollectionExtractor`
Check if fill ratio for the collection can be calculated, i.e. if it has some predefined capacity and actual size

Specified by:
  `hasFillRatio` in interface `ICollectionExtractor`
Overrides:
  `hasFillRatio` in class `HashedMapCollectionExtractorBase`
Returns:

#### getFillRatio

    public Double getFillRatio(IObject coll)
                        throws SnapshotException

Description copied from interface: `ICollectionExtractor`
Calculate the fill ration of a collection

Specified by:
  `getFillRatio` in interface `ICollectionExtractor`
Overrides:
  `getFillRatio` in class `HashedMapCollectionExtractorBase`
Returns:
Throws:
  `SnapshotException`

#### getCollisionRatio

    public Double getCollisionRatio(IObject coll)
                             throws SnapshotException

Description copied from interface: `IMapExtractor`
Calculates the collision ratio in the collection

Specified by:
  `getCollisionRatio` in interface `IMapExtractor`
Overrides:
  `getCollisionRatio` in class `HashedMapCollectionExtractorBase`
Returns:
  Double number of elements with colliding keys / size
Throws:
  `SnapshotException`