ehcache

net.sf.ehcache.pool.impl
Class DefaultSizeOfEngine

java.lang.Object
  extended by net.sf.ehcache.pool.impl.DefaultSizeOfEngine
All Implemented Interfaces:
SizeOfEngine

public class DefaultSizeOfEngine
extends Object
implements SizeOfEngine

Author:
Alex Snaps

Constructor Summary
DefaultSizeOfEngine(int maxDepth, boolean abortWhenMaxDepthExceeded)
          Creates a default size of engine using the best available sizing algorithm.
 
Method Summary
 SizeOfEngine copyWith(int maxDepth, boolean abortWhenMaxDepthExceeded)
          Make a copy of the SizeOf engine, preserving all of its internal state but overriding the specified parameters
 Size sizeOf(Object key, Object value, Object container)
          Size an element
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultSizeOfEngine

public DefaultSizeOfEngine(int maxDepth,
                           boolean abortWhenMaxDepthExceeded)
Creates a default size of engine using the best available sizing algorithm.

Parameters:
maxDepth - the max object graph that will be traversed.
abortWhenMaxDepthExceeded - true if the object traversal should be aborted when the max depth is exceeded
Method Detail

copyWith

public SizeOfEngine copyWith(int maxDepth,
                             boolean abortWhenMaxDepthExceeded)
Make a copy of the SizeOf engine, preserving all of its internal state but overriding the specified parameters

Specified by:
copyWith in interface SizeOfEngine
Parameters:
maxDepth - maximum depth of the object graph to traverse
abortWhenMaxDepthExceeded - true if the object traversal should be aborted when the max depth is exceeded
Returns:
a copy of the SizeOf engine using the specified parameters

sizeOf

public Size sizeOf(Object key,
                   Object value,
                   Object container)
Size an element

Specified by:
sizeOf in interface SizeOfEngine
Parameters:
key - the key of the element
value - the value of the element
container - the container of the element, ie: element object + eventual overhead
Returns:
the size of the element in bytes

ehcache

true