Class MeasurableLinkedHashMap<K,​V extends Measurable>

  • All Implemented Interfaces:
    Measurable, java.io.Serializable, java.lang.Cloneable, java.util.Map<K,​V>

    public class MeasurableLinkedHashMap<K,​V extends Measurable>
    extends java.util.LinkedHashMap<K,​V>
    implements Measurable
    A subclass of LinkedHashMap which does a best-effort attempt at guessing its size on heap + the size of its values. Several assumptions are made which could make this imprecise in some contexts. See the usage in PubSubMessageHeaders for the usage it was originally intended for...
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.util.AbstractMap

        java.util.AbstractMap.SimpleEntry<K extends java.lang.Object,​V extends java.lang.Object>, java.util.AbstractMap.SimpleImmutableEntry<K extends java.lang.Object,​V extends java.lang.Object>
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getHeapSize()  
      • Methods inherited from class java.util.LinkedHashMap

        clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, removeEldestEntry, replaceAll, values
      • Methods inherited from class java.util.HashMap

        clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
      • Methods inherited from class java.util.AbstractMap

        equals, hashCode, toString
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Map

        compute, computeIfAbsent, computeIfPresent, containsKey, equals, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
    • Constructor Detail

      • MeasurableLinkedHashMap

        public MeasurableLinkedHashMap()