org.eclipse.mat.inspections.collectionextract
Interface IMapExtractor

All Superinterfaces:
ICollectionExtractor
All Known Implementing Classes:
ConcurrentHashMapCollectionExtractor, ConcurrentSkipListCollectionExtractor, EmptyMapExtractor, HashedMapCollectionExtractorBase, HashMapCollectionExtractor, HashSetCollectionExtractor, IdentityHashMapCollectionExtractor, MapCollectionExtractorBase, SingletonMapExtractor, TreeMapCollectionExtractor, WrapperMapExtractor

public interface IMapExtractor
extends ICollectionExtractor

MapExtractors are used to extract from the heap dump the contents of an object which represents a map of a certain type. It knows the internal details of how the map contents are stored and if the collection has certain properties or not

Since:
1.5

Nested Class Summary
static class IMapExtractor.EntryObject
           
 
Method Summary
 Iterator<Map.Entry<IObject,IObject>> extractMapEntries(IObject collection)
          Extracts the contents of a map (i.e.
 Double getCollisionRatio(IObject collection)
          Calculates the collision ratio in the collection
 boolean hasCollisionRatio()
          Check if the extractor can calculate collision ratio
 
Methods inherited from interface org.eclipse.mat.inspections.collectionextract.ICollectionExtractor
extractEntries, extractEntryIds, getCapacity, getFillRatio, getNumberOfNotNullElements, getSize, hasCapacity, hasExtractableArray, hasExtractableContents, hasFillRatio, hasSize
 

Method Detail

hasCollisionRatio

boolean hasCollisionRatio()
Check if the extractor can calculate collision ratio

Returns:

getCollisionRatio

Double getCollisionRatio(IObject collection)
                         throws SnapshotException
Calculates the collision ratio in the collection

Parameters:
collection -
Returns:
Double number of elements with colliding keys / size
Throws:
SnapshotException

extractMapEntries

Iterator<Map.Entry<IObject,IObject>> extractMapEntries(IObject collection)
                                                       throws SnapshotException
Extracts the contents of a map (i.e. an IObject representing a Map) and provides an Iterator over them

Parameters:
collection - - the map to extract contents from
Returns:
an Iterator over the entries. If the original Map had an Entry object, the content of the iterator would usually be EntryObject
Throws:
SnapshotException