public class CompositeAggregator<K,V> extends ExternalizableHelper implements InvocableMap.StreamingAggregator<K,V,Object,List>, ExternalizableLite, PortableObject
| Modifier and Type | Class and Description |
|---|---|
static class |
CompositeAggregator.Parallel
Deprecated.
As of Coherence 12.2.1. Use CompositeAggregator instead.
|
ExternalizableHelper.DecoratedMultiBufferReadBuffer, ExternalizableHelper.DefaultObjectStreamFactory, ExternalizableHelper.FormatAwareCompressor, ExternalizableHelper.IntDecoratedObject, ExternalizableHelper.Shielded, ExternalizableHelper.ShieldedDataOutputStream, ExternalizableHelper.ShieldedInputStream, ExternalizableHelper.ShieldedObjectOutputStream, ExternalizableHelper.ShieldedOutputStream, ExternalizableHelper.SimpleXmlBeanClassCache, ExternalizableHelper.Stats, ExternalizableHelper.XmlBeanClassCacheBase.LoggingWriter, Base.StackFrame| Modifier and Type | Field and Description |
|---|---|
protected InvocableMap.EntryAggregator[] |
m_aAggregator
The underlying EntryAggregator array.
|
protected List[] |
m_aParallelResults
An array of partial results for each aggregator.
|
protected boolean |
m_fInit
Flag specifying whether this aggregator has been initialized.
|
protected boolean |
m_fParallel
Flag specifying whether parallel optimizations can be used.
|
protected boolean |
m_fStreaming
Flag specifying whether streaming optimizations can be used.
|
protected Set |
m_setEntries
A set of accumulated entries to aggregate.
|
CONVERTER_FROM_BINARY, CONVERTER_STRIP_INTDECO, CONVERTER_TO_BINARY, DECO_APP_1, DECO_APP_2, DECO_APP_3, DECO_CUSTOM, DECO_EXPIRY, DECO_ID_MAX, DECO_ID_MIN, DECO_JCACHE, DECO_JCACHE_SYNTHETIC, DECO_MEMCACHED, DECO_PUSHREP, DECO_QUEUE_METADATA, DECO_RSVD_1, DECO_RSVD_2, DECO_STORE, DECO_TOPLINK, DECO_TX, DECO_VALUE, DECO_WLS, EMPTY_BINARY_ARRAY, FMT_B_ARRAY, FMT_BIN_DECO, FMT_BIN_EXT_DECO, FMT_BINARY, FMT_BOOLEAN, FMT_BYTE, FMT_DECIMAL, FMT_DOUBLE, FMT_EXT, FMT_FLOAT, FMT_IDO, FMT_INT, FMT_INTEGER, FMT_LONG, FMT_NONE, FMT_NULL, FMT_OBJ_EXT, FMT_OBJ_SER, FMT_OPT, FMT_OPT_DOUBLE, FMT_OPT_INT, FMT_OPT_LONG, FMT_SHORT, FMT_STRING, FMT_UNKNOWN, FMT_XML_BEAN, FMT_XML_SER, FORCE_RESOLVING_STREAMS, MAX_DECO_HEADER_BYTES, PROPERTY_CONFIG, s_streamfactory, TRINT_DOMAIN_SPAN, TRINT_MAX_VALUE, TRINT_MAX_VARIANCE, USE_POF_STREAMS, USE_XMLBEAN_CLASS_CACHE, XMLBEAN_CLASS_CACHELOG_ALWAYS, LOG_DEBUG, LOG_ERR, LOG_INFO, LOG_MAX, LOG_MIN, LOG_QUIET, LOG_WARN, POWER_0, POWER_G, POWER_K, POWER_M, POWER_T, UNIT_D, UNIT_H, UNIT_M, UNIT_MS, UNIT_NS, UNIT_S, UNIT_USBY_MEMBER, BY_PARTITION, PARALLEL, PRESENT_ONLY, RETAINS_ENTRIES, SERIAL| Constructor and Description |
|---|
CompositeAggregator()
Default constructor (necessary for the ExternalizableLite interface).
|
CompositeAggregator(InvocableMap.EntryAggregator[] aAggregator)
Construct a CompositeAggregator based on a specified EntryAggregator array.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
accumulate(InvocableMap.Entry entry)
Accumulate one entry into the result.
|
List |
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.
|
int |
characteristics()
A bit mask representing the set of characteristics of this aggregator.
|
boolean |
combine(Object oResultPart)
Merge another partial result into the result.
|
static CompositeAggregator |
createInstance(InvocableMap.EntryAggregator[] aAggregator)
Create an instance of CompositeAggregator based on a specified
EntryAggregator array. |
protected void |
ensureInitialized()
Ensure that this aggregator is initialized.
|
boolean |
equals(Object o)
Compare the CompositeAggregator with another object to determine equality.
|
List |
finalizeResult()
Return the final result of the aggregation.
|
InvocableMap.EntryAggregator[] |
getAggregators()
Obtain the EntryAggregator array.
|
Object |
getPartialResult()
Return the partial result of the aggregation.
|
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.
|
InvocableMap.StreamingAggregator<K,V,Object,List> |
supply()
Create a new instance of this aggregator.
|
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.
|
asBinary, calculatePackedLength, calculatePackedLength, convertUTF, decodeExpiry, decorate, decorate, decorate, decorate, decorate, decorateBinary, encodeExpiry, ensureSerializer, extractIntDecoration, fromBinary, fromBinary, fromBinary, fromByteArray, fromByteArray, getDecoration, getDecoration, getDecorations, getDeltaCompressor, getInputStream, getNewObjectInput, getObjectInput, getObjectOutput, getObjectStreamFactory, getOutputStream, getShieldedOutputStream, getStreamFormat, getUndecorated, getUndecorated, isDecorated, isDecorated, isIntDecorated, isIntDecorated, isResolving, isSerializable, isSerializerCompatible, isVersionCompatible, isVersionCompatible, loadClass, loadResource, main, makeTrint, readBigDecimal, readBigInteger, readBooleanArray, readByteArray, readCollection, readDate, readDoubleArray, readExternalizableLite, readExternalizableLite, readFloatArray, readInt, readInt, readIntArray2d, readLong, readLong, readMap, readMap, readObject, readObject, readSafeUTF, readSafeUTF, readSerializable, readSerializable, readStringArray, readTime, readTimestamp, readTrint, readUnsignedTrint, readUTF, readXmlBean, readXmlSerializable, readXmlSerializable, realize, removeIntDecoration, removeIntDecoration, replace, reportIncompatibleSerializers, setObjectStreamFactory, toBinary, toBinary, toByteArray, toByteArray, toByteArray, toLiteBinary, toLong, undecorate, undecorate, validateBufferSize, writeBigDecimal, writeBigInteger, writeBooleanArray, writeByteArray, writeCollection, writeDate, writeDoubleArray, writeExternalizableLite, writeFloatArray, writeInt, writeInt, writeIntArray2d, writeLong, writeLong, writeMap, writeObject, writeSafeUTF, writeSafeUTF, writeSerializable, writeStringArray, writeTime, writeTimestamp, writeTrint, writeTrint, writeUTF, writeXmlBean, writeXmlSerializablecountBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString, toBytes, toBytes, toBytes, toBytes, toInt, toInt, toLongazzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, waitclone, finalize, getClass, notify, notifyAll, wait, wait, waitaccumulate, isByMember, isByPartition, isParallel, isPresentOnly, isRetainsEntries, isSerialprotected InvocableMap.EntryAggregator[] m_aAggregator
protected transient boolean m_fInit
protected transient boolean m_fStreaming
protected transient boolean m_fParallel
protected transient Set m_setEntries
protected transient List[] m_aParallelResults
public CompositeAggregator()
public CompositeAggregator(InvocableMap.EntryAggregator[] aAggregator)
aAggregator - an array of EntryAggregator objects; may not be nullpublic List aggregate(Set setEntries)
aggregate in interface InvocableMap.EntryAggregator<K,V,List>aggregate in interface InvocableMap.StreamingAggregator<K,V,Object,List>setEntries - a Set of read-only InvocableMap Entry objects to aggregatepublic InvocableMap.StreamingAggregator<K,V,Object,List> supply()
InvocableMap.StreamingAggregatorpublic boolean accumulate(InvocableMap.Entry entry)
InvocableMap.StreamingAggregatoraccumulate in interface InvocableMap.StreamingAggregator<K,V,Object,List>entry - the entry to accumulate into the aggregation resultpublic boolean combine(Object oResultPart)
InvocableMap.StreamingAggregatorpublic Object getPartialResult()
InvocableMap.StreamingAggregatorgetPartialResult in interface InvocableMap.StreamingAggregator<K,V,Object,List>public List finalizeResult()
InvocableMap.StreamingAggregatorfinalizeResult in interface InvocableMap.StreamingAggregator<K,V,Object,List>public int characteristics()
InvocableMap.StreamingAggregatorBe default, characteristics are a combination of InvocableMap.StreamingAggregator.PARALLEL and InvocableMap.StreamingAggregator.RETAINS_ENTRIES, which is sub-optimal and should be overridden by the aggregator implementation if the aggregator does not need to retain entries (which is often the case).
characteristics in interface InvocableMap.StreamingAggregator<K,V,Object,List>InvocableMap.StreamingAggregator.PARALLEL, InvocableMap.StreamingAggregator.SERIAL, InvocableMap.StreamingAggregator.BY_MEMBER, InvocableMap.StreamingAggregator.BY_PARTITION, InvocableMap.StreamingAggregator.RETAINS_ENTRIES, InvocableMap.StreamingAggregator.PRESENT_ONLYprotected void ensureInitialized()
public void readExternal(DataInput in) throws IOException
readExternal in interface ExternalizableLitein - the DataInput stream to read data from in order to restore the state of this objectIOException - if an I/O exception occursNotActiveException - if the object is not in its initial state, and therefore cannot be deserialized intopublic void writeExternal(DataOutput out) throws IOException
writeExternal in interface ExternalizableLiteout - the DataOutput stream to write the state of this object toIOException - if an I/O exception occurspublic void readExternal(PofReader in) throws IOException
readExternal in interface PortableObjectin - the PofReader from which to read the object's stateIOException - if an I/O error occurspublic void writeExternal(PofWriter out) throws IOException
writeExternal in interface PortableObjectout - the PofWriter to which to write the object's stateIOException - if an I/O error occurspublic InvocableMap.EntryAggregator[] getAggregators()
public boolean equals(Object o)
public int hashCode()
Object.hashCode() contract.public String toString()
public static CompositeAggregator createInstance(InvocableMap.EntryAggregator[] aAggregator)
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.aAggregator - an array of EntryAggregator objects; must contain not less than two aggregators