Class AbstractEntryBundler.Bundle

Enclosing class:
AbstractEntryBundler

protected class AbstractEntryBundler.Bundle extends AbstractBundler.Bundle
  • Constructor Details

    • Bundle

      protected Bundle()
      Default constructor.
  • Method Details

    • add

      protected boolean add(Object oKey, Object oValue)
      Add the specified entry to the Bundle.

      Note: a call to this method must be externally synchronized for this Bundle object.

      Parameters:
      oKey - the entry key
      oValue - the entry value
      Returns:
      true if this Bundle was empty prior to this call
    • addAll

      protected boolean addAll(Map map)
      Add the specified collection of entries to the Bundle.

      Note: a call to this method must be externally synchronized for this Bundle object.

      Parameters:
      map - the collection of entries
      Returns:
      true if this Bundle was empty prior to this call
    • process

      protected void process(boolean fBurst, Object oKey, Object oValue)
      Process the specified entry according to this Bundle state.
      Parameters:
      fBurst - true if this thread is supposed to perform an actual bundled operation (burst); false otherwise
      oKey - the entry key
      oValue - the entry value
    • processAll

      protected void processAll(boolean fBurst, Map map)
      Process the specified collection of entries according to this Bundle state.
      Parameters:
      fBurst - true if this thread is supposed to perform an actual bundled operation (burst); false otherwise
      map - the collection of entries
    • getBundleSize

      protected int getBundleSize()
      Obtain this bundle size. The return value should be expressed in the same units as the value returned by the getSizeThreshold method.
      Overrides:
      getBundleSize in class AbstractBundler.Bundle
      Returns:
      the bundle size
    • ensureResults

      protected void ensureResults()
      Obtain results of the bundled requests. This method should be implemented by concrete Bundle implementations using the most efficient mechanism.
      Specified by:
      ensureResults in class AbstractBundler.Bundle
    • releaseThread

      protected boolean releaseThread()
      Release all bundle resources associated with the current thread.
      Overrides:
      releaseThread in class AbstractBundler.Bundle
      Returns:
      true iff all entered threads have released