org.apache.mina.filter.executor
Class DefaultIoEventSizeEstimator

java.lang.Object
  extended by org.apache.mina.filter.executor.DefaultIoEventSizeEstimator
All Implemented Interfaces:
IoEventSizeEstimator

public class DefaultIoEventSizeEstimator
extends Object
implements IoEventSizeEstimator

A default IoEventSizeEstimator implementation.

Martin's Java Notes was used for estimation. For unknown types, it inspects declaring fields of the class of the specified event and the parameter of the event. The size of unknown declaring fields are approximated to the specified averageSizePerField (default: 64).

All the estimated sizes of classes are cached for performance improvement.

Author:
Apache MINA Project

Constructor Summary
DefaultIoEventSizeEstimator()
          Create a new instance of this class, injecting the known size of basic java types.
 
Method Summary
 int estimateSize(IoEvent event)
          Estimate the IoEvent size in numberof bytes
 int estimateSize(Object message)
          Estimate the size of an Objecr in number of bytes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultIoEventSizeEstimator

public DefaultIoEventSizeEstimator()
Create a new instance of this class, injecting the known size of basic java types.

Method Detail

estimateSize

public int estimateSize(IoEvent event)
Estimate the IoEvent size in numberof bytes

Specified by:
estimateSize in interface IoEventSizeEstimator
Parameters:
event - The event we want to estimate the size of
Returns:
The estimated size of this event

estimateSize

public int estimateSize(Object message)
Estimate the size of an Objecr in number of bytes

Parameters:
message - The object to estimate
Returns:
The estimated size of the object


Copyright © 2004-2011 Apache MINA Project. All Rights Reserved.