Skip navigation links

Overview | Package | Class | Tree | Index | Help
| Oracle® Coherence Java API Reference Release 3.6.0.0 E15725-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.tangosol.util.aggregator
Class CompositeAggregator

`java.lang.Object
com.tangosol.util.Base
com.tangosol.util.BitHelper
com.tangosol.util.ExternalizableHelper
com.tangosol.util.aggregator.CompositeAggregator`

All Implemented Interfaces:
  ExternalizableLite, PortableObject, InvocableMap.EntryAggregator, Serializable

Direct Known Subclasses:
  CompositeAggregator.Parallel

      public class CompositeAggregator

extends ExternalizableHelper
implements InvocableMap.EntryAggregator, ExternalizableLite, PortableObject

CompositeAggregator provides an ability to execute a collection of aggregators against the same subset of the entries in an InvocableMap, resulting in a list of corresponding aggregation results. The size of the returned list will always be equal to the length of the aggregators' array. <p/> Note: Unlike many other concrete EntryAggregator implementations that are constructed directly, instances of CompositeAggregator should only be created using the factory method `createInstance`.

Since:
  Coherence 3.2
Author:
  gg 2006.02.08

Nested Class Summary
`static class` | `CompositeAggregator.Parallel` Parallel implementation of the CompositeAggregator.

Field Summary
`protected InvocableMap.EntryAggregator[]` | `m_aAggregator` The underlying EntryAggregator array.

Constructor Summary
`` | `CompositeAggregator()` Default constructor (necessary for the ExternalizableLite interface).
`protected` | `CompositeAggregator(InvocableMap.EntryAggregator[] aAggregator)` Construct a CompositeAggregator based on a specified EntryAggregator array.

Method Summary
`Object` | `aggregate(Set setEntries)` Process a set of InvocableMap Entry objects using each of the underlying agregators in order to produce an array of aggregated results.
`static CompositeAggregator` | `createInstance(InvocableMap.EntryAggregator[] aAggregator)` Create an instance of CompositeAggregator based on a specified `EntryAggregator` array.
`boolean` | `equals(Object o)` Compare the CompositeAggregator with another object to determine equality.
`InvocableMap.EntryAggregator[]` | `getAggregators()` Obtain the EntryAggregator array.
`int` | `hashCode()` Determine a hash value for the MultiExtractor object according to the general `Object.hashCode()` contract.
`void` | `readExternal(DataInput in)` Restore the contents of this object by loading the object's state from the passed DataInput object.
`void` | `readExternal(PofReader in)` Restore the contents of a user type instance by reading its state using the specified PofReader object.
`String` | `toString()` Return a human-readable description for this ValueExtractor.
`void` | `writeExternal(DataOutput out)` Save the contents of this object by storing the object's state into the passed DataOutput object.
`void` | `writeExternal(PofWriter out)` Save the contents of a POF user type instance by writing its state using the specified PofWriter object.

Methods inherited from class com.tangosol.util.BitHelper
`countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString`

Field Detail

### m_aAggregator

    protected InvocableMap.EntryAggregator[] m_aAggregator

  The underlying EntryAggregator array.

Constructor Detail

### CompositeAggregator

    public CompositeAggregator()

  Default constructor (necessary for the ExternalizableLite interface).

### CompositeAggregator

    protected CompositeAggregator(InvocableMap.EntryAggregator[] aAggregator)

  Construct a CompositeAggregator based on a specified EntryAggregator array.
  Parameters:
    `aAggregator` - an array of EntryAggregator objects; may not be null

Method Detail

### aggregate

    public Object aggregate(Set setEntries)

  Process a set of InvocableMap Entry objects using each of the underlying agregators in order to produce an array of aggregated results.
  Specified by:
    `aggregate` in interface `InvocableMap.EntryAggregator`
  Parameters:
    `setEntries` - a Set of read-only InvocableMap Entry objects to aggregate
  Returns:
    a List of aggregated results from processing the entries by the corresponding underlying aggregators

### readExternal

    public void readExternal(DataInput in)
                      throws IOException

  Restore the contents of this object by loading the object's state from the passed DataInput object.
  Specified by:
    `readExternal` in interface `ExternalizableLite`
  Parameters:
    `in` - the DataInput stream to read data from in order to restore the state of this object
  Throws:
    `IOException` - if an I/O exception occurs
    `NotActiveException` - if the object is not in its initial state, and therefore cannot be deserialized into

### writeExternal

    public void writeExternal(DataOutput out)
                       throws IOException

  Save the contents of this object by storing the object's state into the passed DataOutput object.
  Specified by:
    `writeExternal` in interface `ExternalizableLite`
  Parameters:
    `out` - the DataOutput stream to write the state of this object to
  Throws:
    `IOException` - if an I/O exception occurs

### readExternal

    public void readExternal(PofReader in)
                      throws IOException

  Restore the contents of a user type instance by reading its state using the specified PofReader object.
  Specified by:
    `readExternal` in interface `PortableObject`
  Parameters:
    `in` - the PofReader from which to read the object's state
  Throws:
    `IOException` - if an I/O error occurs

### writeExternal

    public void writeExternal(PofWriter out)
                       throws IOException

  Save the contents of a POF user type instance by writing its state using the specified PofWriter object.
  Specified by:
    `writeExternal` in interface `PortableObject`
  Parameters:
    `out` - the PofWriter to which to write the object's state
  Throws:
    `IOException` - if an I/O error occurs

### getAggregators

    public InvocableMap.EntryAggregator[] getAggregators()

  Obtain the EntryAggregator array.
  Returns:
    the EntryAggregator array

### equals

    public boolean equals(Object o)

  Compare the CompositeAggregator with another object to determine equality.
  Returns:
    true iff this CompositeAggregator and the passed object are equivalent

### hashCode

    public int hashCode()

  Determine a hash value for the MultiExtractor object according to the general `Object.hashCode()` contract.
  Returns:
    an integer hash value for this ValueExtractor object

### toString

    public String toString()

  Return a human-readable description for this ValueExtractor.
  Returns:
    a String description of the ValueExtractor

### createInstance

    public static CompositeAggregator createInstance(InvocableMap.EntryAggregator[] aAggregator)

  Create an instance of CompositeAggregator based on a specified `EntryAggregator` array. If all the aggregators in the specified array are instances of `ParallelAwareAggregator`, then a parallel-aware instance of the CompositeAggregator will be created.
  If at least one of the specified aggregator is not parallel-aware, then the resulting CompositeAggregator will not be parallel-aware and could be ill-suited for aggregations run against large partitioned caches.
  Parameters:
    `aAggregator` - an array of EntryAggregator objects; must contain not less than two aggregators

Skip navigation links

Overview | Package | Class | Tree | Index | Help
| Oracle® Coherence Java API Reference Release 3.6.0.0 E15725-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2010, Oracle and/or its affiliates. All rights reserved.