Class ComparableMin<T,R>
- Type Parameters:
T- the type of the value to extract fromR- the type of the result
- All Implemented Interfaces:
com.tangosol.internal.net.ContinuousAggregationBound, ExternalizableLite, PortableObject, InvocableMap.EntryAggregator<Object,Object, R>, InvocableMap.StreamingAggregator<Object, Object, Object, R>, Serializable, Cloneable
Comparable such as String or
Date; a Comparator can also be supplied to
perform the comparisons.- Since:
- Coherence 3.2
- Author:
- gg 2006.02.13
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class ExternalizableHelper
ExternalizableHelper.DecoratedMultiBufferReadBuffer, ExternalizableHelper.DecorationAware, ExternalizableHelper.DefaultObjectStreamFactory, ExternalizableHelper.FormatAwareCompressor, ExternalizableHelper.IntDecoratedObject, ExternalizableHelper.Shielded, ExternalizableHelper.ShieldedDataOutputStream, ExternalizableHelper.ShieldedInputStream, ExternalizableHelper.ShieldedObjectOutputStream, ExternalizableHelper.ShieldedOutputStream, ExternalizableHelper.SimpleXmlBeanClassCache, ExternalizableHelper.Stats, ExternalizableHelper.XmlBeanClassCacheNested classes/interfaces inherited from class Base
Base.LoggingWriterNested classes/interfaces inherited from interface InvocableMap.StreamingAggregator
InvocableMap.StreamingAggregator.RetractionResult -
Field Summary
Fields inherited from class AbstractComparableAggregator
m_comparator, m_count, m_cSupport, m_oResultFields inherited from class AbstractAggregator
m_fParallelFields inherited from class ExternalizableHelper
BINARY_SIZE, CHUNK_SIZE, CHUNK_THRESHOLD, CONVERTER_FROM_BINARY, CONVERTER_STRIP_INTDECO, CONVERTER_TO_BINARY, DECO_APP_1, DECO_APP_2, DECO_APP_3, DECO_BACKUP, DECO_CUSTOM, DECO_EXPIRY, DECO_ID_MAX, DECO_ID_MIN, DECO_JCACHE, DECO_JCACHE_SYNTHETIC, DECO_MEMCACHED, DECO_PUSHREP, DECO_RSVD_1, DECO_STORE, DECO_TOPLINK, DECO_TX, DECO_VALUE, DECO_VECTOR, 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, LAMBDA_SERIALIZATION, MAX_DECO_HEADER_BYTES, MAX_MEMCACHED_PASS_THROUGH_FORMAT_DEPTH, PACKED_INT_SIZE, PACKED_LONG_SIZE, PROPERTY_CONFIG, s_streamfactory, s_tloInEHDeserialize, TRINT_DOMAIN_SPAN, TRINT_MAX_VALUE, TRINT_MAX_VARIANCE, USE_POF_STREAMS, USE_XMLBEAN_CLASS_CACHE, XMLBEAN_CLASS_CACHEFields inherited from class Base
DEFAULT_LOAD_FACTOR, LOG_ALWAYS, LOG_CONFIG, 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_USFields inherited from interface InvocableMap.StreamingAggregator
ALLOW_INCONSISTENCIES, BY_MEMBER, BY_PARTITION, CONTINUOUS, PARALLEL, PRESENT_ONLY, RETAINS_ENTRIES, SERIAL, STATE_CHECKPOINTABLE -
Constructor Summary
ConstructorsModifierConstructorDescriptionDefault constructor (necessary for the ExternalizableLite interface).<E extends Comparable<? super E>>ComparableMin(ValueExtractor<? super T, ? extends E> extractor) Construct a ComparableMin aggregator.ComparableMin(ValueExtractor<? super T, ? extends R> extractor, Comparator<? super R> comparator) Construct a ComparableMin aggregator.ComparableMin(String sMethod) Construct a ComparableMin aggregator. -
Method Summary
Modifier and TypeMethodDescriptionintA bit mask representing the set of characteristics of this aggregator.intcompareContinuousAggregationBounds(Object left, Object right) Compare two bounds in the order they should be considered.Return the retained bound in the aggregator's partial-result format.Return the current maintenance status of this aggregator.booleanisContinuousAggregationBoundDominated(Object bound, Object exactPartial) Return whether an exact partial result dominates the specified bound.protected voidIncorporate one aggregatable value into the result.Remove one extracted value from the aggregation result.supply()Create a new instance of this aggregator.Methods inherited from class AbstractComparableAggregator
equals, finalizeResult, getComparator, hashCode, init, readExternal, readExternal, restoreState, snapshotState, writeExternal, writeExternalMethods inherited from class AbstractAggregator
accumulate, accumulate, combine, ensureInitialized, finalizeResult, getPartialResult, getValueExtractor, isReplacementRequired, processEntry, replace, retract, toString, updateMethods inherited from class ExternalizableHelper
asBinary, calculatePackedLength, calculatePackedLength, checkObjectInputFilter, checkObjectInputFilter, checkObjectInputFilter, convertUTF, decodeExpiry, decorate, decorate, decorate, decorate, decorate, decorateBinary, encodeExpiry, ensureSerializer, extractIntDecoration, fromBinary, fromBinary, fromBinary, fromBinary, fromBinary, fromBinary, fromByteArray, fromByteArray, getClass, getConfigSerialFilter, getConfigSerialFilterFactory, getDecoration, getDecoration, getDecorations, getDeltaCompressor, getInputStream, getNewObjectInput, getObjectInput, getObjectInputFilter, getObjectOutput, getObjectStreamFactory, getOutputStream, getShieldedOutputStream, getStreamFormat, getUndecorated, getUndecorated, isDecorated, isDecorated, isIntDecorated, isIntDecorated, isPatchCompatible, isPatchCompatible, isResolving, isSerializable, isSerializerCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, loadClass, loadResource, main, makeTrint, newFilteredObjectInputStream, newFilteredObjectInputStream, readBigDecimal, readBigInteger, readBooleanArray, readBooleanArray, readByteArray, readCharArray, readCharArray, readCollection, readDate, readDoubleArray, readDoubleArray, readExternalizableLite, readExternalizableLite, readFloatArray, readFloatArray, readInt, readInt, readIntArray, readIntArray, readIntArray2d, readLargeBooleanArray, readLargeByteArray, readLargeCharArray, readLargeDoubleArray, readLargeFloatArray, readLargeIntArray, readLargeLongArray, readLargeObjectArray, readLargeStringArray, readLong, readLong, readLongArray, readLongArray, readMap, readMap, readObject, readObject, readObjectArray, readObjectArray, readSafeUTF, readSafeUTF, readSerializable, readSerializable, readStringArray, readStringArray, readTime, readTimestamp, readTrint, readUnsignedTrint, readUTF, readXmlBean, readXmlSerializable, readXmlSerializable, realize, removeIntDecoration, removeIntDecoration, replace, reportIncompatibleSerializers, reportIncompatibleSerializers, reportIncompatibleSerializers, reportIncompatibleSerializers, setObjectStreamFactory, toBinary, toBinary, toBinary, toByteArray, toByteArray, toByteArray, toLiteBinary, toLong, undecorate, undecorate, validateBufferSize, validateLoadArray, validateLoadClass, validateMemcachedPassThroughValue, validateMemcachedPassThroughValue, validateMemcachedPassThroughValue, validateMemcachedPassThroughValue, writeBigDecimal, writeBigInteger, writeBooleanArray, writeByteArray, writeCollection, writeDate, writeDoubleArray, writeExternalizableLite, writeFloatArray, writeInt, writeInt, writeIntArray, writeIntArray2d, writeLong, writeLong, writeLongArray, writeMap, writeObject, writeSafeUTF, writeSafeUTF, writeSerializable, writeStringArray, writeTime, writeTimestamp, writeTrint, writeTrint, writeUTF, writeXmlBean, writeXmlSerializableMethods inherited from class BitHelper
countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString, toBytes, toBytes, toBytes, toBytes, toInt, toInt, toLongMethods inherited from class Base
azzert, 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, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, newHashMap, newHashMap, newHashSet, newHashSet, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, 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, waitMethods inherited from interface InvocableMap.StreamingAggregator
aggregate, finalizeResult, isAllowInconsistencies, isByMember, isByPartition, isContinuous, isParallel, isPresentOnly, isRetainsEntries, isSerial, isStateCheckpointable
-
Constructor Details
-
ComparableMin
public ComparableMin()Default constructor (necessary for the ExternalizableLite interface). -
ComparableMin
public <E extends Comparable<? super E>> ComparableMin(ValueExtractor<? super T, ? extends E> extractor) Construct a ComparableMin aggregator.- Parameters:
extractor- the extractor that provides a value in the form of any object that implementsComparableinterface
-
ComparableMin
public ComparableMin(ValueExtractor<? super T, ? extends R> extractor, Comparator<? super R> comparator) Construct a ComparableMin aggregator.- Parameters:
extractor- the extractor that provides an object to be comparedcomparator- the comparator used to compare the extracted object
-
ComparableMin
Construct a ComparableMin aggregator.- Parameters:
sMethod- the name of the method that returns a value in the form of any object that implementsComparableinterface
-
-
Method Details
-
supply
Description copied from interface:InvocableMap.StreamingAggregatorCreate a new instance of this aggregator. -
characteristics
public int characteristics()Description copied from interface:InvocableMap.StreamingAggregatorA bit mask representing the set of characteristics of this aggregator.By default, characteristics are a combination of
InvocableMap.StreamingAggregator.PARALLELandInvocableMap.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).- Specified by:
characteristicsin interfaceInvocableMap.StreamingAggregator<Object,Object, Object, R> - Returns:
- a bit mask representing the set of characteristics of this aggregator
- See Also:
-
getMaintenanceStatus
Description copied from interface:InvocableMap.StreamingAggregatorReturn the current maintenance status of this aggregator.This method is evaluated after an update has been fully applied, so an aggregator may report
InvocableMap.StreamingAggregator.RetractionResult.STALE_BOUNDfromInvocableMap.StreamingAggregator.retract(Entry)and returnInvocableMap.StreamingAggregator.RetractionResult.UPDATEDhere if accumulating the replacement value restored an exact result.- Specified by:
getMaintenanceStatusin interfaceInvocableMap.StreamingAggregator<Object,Object, Object, R> - Returns:
- the current maintenance status
-
getContinuousAggregationBound
Description copied from interface:com.tangosol.internal.net.ContinuousAggregationBoundReturn the retained bound in the aggregator's partial-result format.- Specified by:
getContinuousAggregationBoundin interfacecom.tangosol.internal.net.ContinuousAggregationBound- Returns:
- the retained bound
-
compareContinuousAggregationBounds
Description copied from interface:com.tangosol.internal.net.ContinuousAggregationBoundCompare two bounds in the order they should be considered. A negative result means thatleftcan affect the result beforeright.- Specified by:
compareContinuousAggregationBoundsin interfacecom.tangosol.internal.net.ContinuousAggregationBound- Parameters:
left- the first boundright- the second bound- Returns:
- a negative, zero, or positive value
-
isContinuousAggregationBoundDominated
Description copied from interface:com.tangosol.internal.net.ContinuousAggregationBoundReturn whether an exact partial result dominates the specified bound.- Specified by:
isContinuousAggregationBoundDominatedin interfacecom.tangosol.internal.net.ContinuousAggregationBound- Parameters:
bound- the stale partition boundexactPartial- the exact partial result accumulated so far- Returns:
trueif the stale partition cannot change the result
-
process
Incorporate one aggregatable value into the result.If the fFinal parameter is true, the given object is a partial result (returned by an individual parallel aggregator) that should be incorporated into the final result; otherwise, the object is a value extracted from an
InvocableMap.Entry. -
remove
Description copied from class:AbstractAggregatorRemove one extracted value from the aggregation result.
-