Class CacheEntrySizeCalculator<K,V>

java.lang.Object
org.infinispan.commons.util.AbstractEntrySizeCalculatorHelper<K,InternalCacheEntry<K,V>>
org.infinispan.container.entries.CacheEntrySizeCalculator<K,V>
Type Parameters:
K - The type of the key
V - The type of the value
All Implemented Interfaces:
EntrySizeCalculator<K,InternalCacheEntry<K,V>>, KeyValueMetadataSizeCalculator<K,V>

public class CacheEntrySizeCalculator<K,V> extends AbstractEntrySizeCalculatorHelper<K,InternalCacheEntry<K,V>> implements KeyValueMetadataSizeCalculator<K,V>
Implementation of a size calculator that calculates only the size of the value assuming it is an InternalCacheEntry. This delegates the calculation of the key and the value contained within the InternalCacheEntry to the provided SizeCalculator.
Since:
8.0
Author:
William Burns
  • Constructor Details

    • CacheEntrySizeCalculator

      public CacheEntrySizeCalculator(EntrySizeCalculator<? super K,? super V> calculator)
  • Method Details

    • calculateSize

      public long calculateSize(K key, InternalCacheEntry<K,V> ice)
      Description copied from interface: EntrySizeCalculator
      Method used to calculate how much memory in size the key and value use.
      Specified by:
      calculateSize in interface EntrySizeCalculator<K,V>
      Parameters:
      key - The key for this entry to be used in size calculation
      ice - The value for this entry to be used in size calculation
      Returns:
      The size approximately in memory the key and value use
    • calculateSize

      public long calculateSize(K key, V value, Metadata metadata, PrivateMetadata pvtMetadata)
      Description copied from interface: KeyValueMetadataSizeCalculator
      Method used to calculate how much memory in size the key, value and metadata use.
      Specified by:
      calculateSize in interface KeyValueMetadataSizeCalculator<K,V>
      Parameters:
      key - The key for this entry to be used in size calculation
      value - The value for this entry to be used in size calculation
      metadata - The metadata for this entry to be used in size calculation
      pvtMetadata - The internal metadata for this entry to be used in size calculation
      Returns:
      The size approximately in memory the key, value and metadata use.