|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface MethodResolutionService
Service for resolving methods and aggregation functions, and for creating managing aggregation instances.
Method Summary | |
---|---|
void |
destroyedAgentInstance(int agentInstanceId)
|
java.lang.Class |
getAvgAggregatorType(java.lang.Class childType)
|
java.lang.Object |
getCriteriaKeyBinding(ExprEvaluator[] evaluators)
|
long |
getCurrentRowCount(AggregationMethod[] aggregators,
AggregationState[] states)
Returns the current row count of an aggregation, for use with resilience. |
EngineImportService |
getEngineImportService()
|
java.lang.Object |
getGroupKeyBinding(AggregationLocalGroupByPlan localGroupByPlan)
|
java.lang.Object |
getGroupKeyBinding(ExprNode[] groupKeyExpressions,
AggregationGroupByRollupDesc groupByRollupDesc)
|
java.lang.Class |
getSumAggregatorType(java.lang.Class inputValueType)
|
boolean |
isDuckType()
|
boolean |
isSortUsingCollator()
|
boolean |
isUdfCache()
Returns true to cache UDF results for constant parameter sets. |
AggregationState |
makeAccessAggLinearJoin(int agentInstanceId,
int groupId,
int aggregationId,
int streamNum)
|
AggregationState |
makeAccessAggLinearNonJoin(int agentInstanceId,
int groupId,
int aggregationId,
int streamNum)
|
AggregationState |
makeAccessAggMinMaxEver(int agentInstanceId,
int groupId,
int aggregationId,
AggregationStateMinMaxByEverSpec spec)
|
AggregationState |
makeAccessAggPlugin(int agentInstanceId,
int groupId,
int aggregationId,
boolean join,
PlugInAggregationMultiFunctionStateFactory providerFactory,
java.lang.Object groupKey)
|
AggregationState |
makeAccessAggSortedJoin(int agentInstanceId,
int groupId,
int aggregationId,
AggregationStateSortedSpec spec)
|
AggregationState |
makeAccessAggSortedNonJoin(int agentInstanceId,
int groupId,
int aggregationId,
AggregationStateSortedSpec spec)
|
AggregationMethod |
makeAvedevAggregator(int agentInstanceId,
int groupId,
int aggregationId,
boolean hasFilter)
Makes a new avedev-aggregator. |
AggregationMethod |
makeAvgAggregator(int agentInstanceId,
int groupId,
int aggregationId,
java.lang.Class type,
boolean hasFilter)
Makes a new avg-aggregator. |
AggregationMethod |
makeCountAggregator(int agentInstanceId,
int groupId,
int aggregationId,
boolean isIgnoreNull,
boolean hasFilter)
Makes a new count-aggregator. |
AggregationMethod |
makeCountEverValueAggregator(int agentInstanceId,
int groupId,
int aggregationId,
boolean hasFilter,
boolean ignoreNulls)
Makes a new countever-value aggregator. |
AggregationState |
makeCountMinSketch(int agentInstanceId,
int groupId,
int aggregationId,
CountMinSketchSpec specification)
|
AggregationMethod |
makeDistinctAggregator(int agentInstanceId,
int groupId,
int aggregationId,
AggregationMethod aggregationMethod,
java.lang.Class childType,
boolean hasFilter)
Makes a new distinct-value-aggregator. |
AggregationMethod |
makeFirstEverValueAggregator(int agentInstanceId,
int groupId,
int aggregationId,
java.lang.Class type,
boolean hasFilter)
Makes a new first-value aggregator. |
AggregationMethod |
makeLastEverValueAggregator(int agentInstanceId,
int groupId,
int aggregationId,
java.lang.Class type,
boolean hasFilter)
Makes a new last-value aggregator. |
AggregationMethod |
makeLeavingAggregator(int agentInstanceId,
int groupId,
int aggregationId)
Make leaving agg. |
AggregationMethod |
makeMedianAggregator(int agentInstanceId,
int groupId,
int aggregationId,
boolean hasFilter)
Makes a new median-aggregator. |
AggregationMethod |
makeMinMaxAggregator(int agentInstanceId,
int groupId,
int aggregationId,
MinMaxTypeEnum minMaxType,
java.lang.Class targetType,
boolean isHasDataWindows,
boolean hasFilter)
Makes a new min-max-aggregator. |
AggregationMethod |
makeNthAggregator(int agentInstanceId,
int groupId,
int aggregationId,
java.lang.Class returnType,
int size)
Makes a Nth element aggregator. |
AggregationMethod |
makeRateAggregator(int agentInstanceId,
int groupId,
int aggregationId)
Makes a new rate-aggregator. |
AggregationMethod |
makeRateEverAggregator(int agentInstanceId,
int groupId,
int aggregationId,
long interval)
Makes a new rate-aggregator. |
AggregationMethod |
makeStddevAggregator(int agentInstanceId,
int groupId,
int aggregationId,
boolean hasFilter)
Makes a new stddev-aggregator. |
AggregationMethod |
makeSumAggregator(int agentInstanceId,
int groupId,
int aggregationId,
java.lang.Class type,
boolean hasFilter)
Makes a new sum-aggregator. |
AggregationState[] |
newAccesses(int agentInstanceId,
boolean isJoin,
AggregationStateFactory[] accessAggSpecs)
|
AggregationState[] |
newAccesses(int agentInstanceId,
boolean isJoin,
AggregationStateFactory[] accessAggSpecs,
java.lang.Object groupKey,
java.lang.Object groupKeyBinding,
AggregationGroupByRollupLevel groupByRollupLevel)
|
AggregationMethod[] |
newAggregators(AggregationMethodFactory[] aggregators,
int agentInstanceId)
Returns a new set of aggregators given an existing prototype-set of aggregators for a given context partition (no groups). |
AggregationMethod[] |
newAggregators(AggregationMethodFactory[] prototypes,
int agentInstanceId,
java.lang.Object groupKey,
java.lang.Object groupKeyBinding,
AggregationGroupByRollupLevel groupByRollupLevel)
Returns a new set of aggregators given an existing prototype-set of aggregators for a given context partition and group key. |
void |
removeAggregators(int agentInstanceId,
java.lang.Object groupKey,
java.lang.Object groupKeyBinding,
AggregationGroupByRollupLevel level)
Opportunity to remove aggregations for a group. |
AggregationFunctionFactory |
resolveAggregationFactory(java.lang.String functionName)
Returns a plug-in aggregation function factory for a given configured aggregation function name. |
java.lang.Class |
resolveClass(java.lang.String className)
Resolves a given class name, either fully qualified and simple and imported to a class. |
java.lang.reflect.Constructor |
resolveCtor(java.lang.Class clazz,
java.lang.Class[] paramTypes)
Resolves matching available constructors to a list of parameter types to an instance or static method exposed by the given class. |
java.lang.reflect.Method |
resolveMethod(java.lang.Class clazz,
java.lang.String methodName,
java.lang.Class[] paramTypes,
boolean[] allowEventBeanType,
boolean[] allowEventBeanCollType)
Resolves a given method name and list of parameter types to an instance or static method exposed by the given class. |
java.lang.reflect.Method |
resolveMethod(java.lang.String className,
java.lang.String methodName)
Resolves a given class and method name to a static method, not allowing overloaded methods and expecting the method to be found exactly once with zero or more parameters. |
java.lang.reflect.Method |
resolveMethod(java.lang.String className,
java.lang.String methodName,
java.lang.Class[] paramTypes,
boolean[] allowEventBeanType,
boolean[] allowEventBeanCollType)
Resolves a given class, method and list of parameter types to a static method. |
java.lang.reflect.Method |
resolveNonStaticMethod(java.lang.Class clazz,
java.lang.String methodName)
Resolves a given class and method name to a non-static method, not allowing overloaded methods and expecting the method to be found exactly once with zero or more parameters. |
Pair<java.lang.Class,EngineImportSingleRowDesc> |
resolveSingleRow(java.lang.String functionName)
Used at statement compile-time to try and resolve a given function name into an single-row function. |
Method Detail |
---|
boolean isUdfCache()
boolean isDuckType()
boolean isSortUsingCollator()
java.lang.reflect.Method resolveMethod(java.lang.Class clazz, java.lang.String methodName, java.lang.Class[] paramTypes, boolean[] allowEventBeanType, boolean[] allowEventBeanCollType) throws EngineImportException
clazz
- is the class to look for a fitting methodmethodName
- is the method nameparamTypes
- is parameter types match expression sub-nodes
EngineImportException
- if the method cannot be resolved to a visible static or instance methodjava.lang.reflect.Constructor resolveCtor(java.lang.Class clazz, java.lang.Class[] paramTypes) throws EngineImportException
clazz
- is the class to look for a fitting methodparamTypes
- is parameter types match expression sub-nodes
EngineImportException
- if the method cannot be resolved to a visible static or instance methodjava.lang.reflect.Method resolveMethod(java.lang.String className, java.lang.String methodName, java.lang.Class[] paramTypes, boolean[] allowEventBeanType, boolean[] allowEventBeanCollType) throws EngineImportException
className
- is the class name to usemethodName
- is the method nameparamTypes
- is parameter types match expression sub-nodesallowEventBeanType
- allow event bean type footprint
EngineImportException
- if the method cannot be resolved to a visible static methodjava.lang.reflect.Method resolveMethod(java.lang.String className, java.lang.String methodName) throws EngineImportException
className
- is the class name to usemethodName
- is the method name
EngineImportException
- if the method cannot be resolved to a visible static method, or if the method exists more
then once with different parametersjava.lang.reflect.Method resolveNonStaticMethod(java.lang.Class clazz, java.lang.String methodName) throws EngineImportException
clazz
- is the clazz to usemethodName
- is the method name
EngineImportException
- if the method cannot be resolved to a visible static method, or if the method exists more
then once with different parametersjava.lang.Class resolveClass(java.lang.String className) throws EngineImportException
className
- is the class name to use
EngineImportException
- if there was an error resolving the classAggregationFunctionFactory resolveAggregationFactory(java.lang.String functionName) throws EngineImportUndefinedException, EngineImportException
functionName
- is the aggregation function name
EngineImportUndefinedException
- is the function name cannot be found
EngineImportException
- if there was an error resolving class informationPair<java.lang.Class,EngineImportSingleRowDesc> resolveSingleRow(java.lang.String functionName) throws EngineImportUndefinedException, EngineImportException
functionName
- is the function name
EngineImportUndefinedException
- if the function is not a configured single-row function
EngineImportException
- if the function providing class could not be loaded or doesn't matchAggregationMethod makeCountAggregator(int agentInstanceId, int groupId, int aggregationId, boolean isIgnoreNull, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- isIgnoreNull
- is true to ignore nulls, or false to count nulls @return aggregatorAggregationMethod makeFirstEverValueAggregator(int agentInstanceId, int groupId, int aggregationId, java.lang.Class type, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- type
- of value @return aggregatorAggregationMethod makeCountEverValueAggregator(int agentInstanceId, int groupId, int aggregationId, boolean hasFilter, boolean ignoreNulls)
agentInstanceId
- groupId
- aggregationId
- ignoreNulls
- AggregationMethod makeLastEverValueAggregator(int agentInstanceId, int groupId, int aggregationId, java.lang.Class type, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- type
- of value @return aggregatorAggregationMethod makeSumAggregator(int agentInstanceId, int groupId, int aggregationId, java.lang.Class type, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- type
- is the type to be summed up, i.e. float, long etc. @return aggregatorjava.lang.Class getSumAggregatorType(java.lang.Class inputValueType)
AggregationMethod makeDistinctAggregator(int agentInstanceId, int groupId, int aggregationId, AggregationMethod aggregationMethod, java.lang.Class childType, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- aggregationMethod
- is the inner aggregation methodchildType
- is the return type of the inner expression to aggregate, if any @return aggregatorAggregationMethod makeAvgAggregator(int agentInstanceId, int groupId, int aggregationId, java.lang.Class type, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- type
- the expression return type @return aggregatorjava.lang.Class getAvgAggregatorType(java.lang.Class childType)
AggregationMethod makeAvedevAggregator(int agentInstanceId, int groupId, int aggregationId, boolean hasFilter)
AggregationMethod makeMedianAggregator(int agentInstanceId, int groupId, int aggregationId, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- hasFilter
-
AggregationMethod makeMinMaxAggregator(int agentInstanceId, int groupId, int aggregationId, MinMaxTypeEnum minMaxType, java.lang.Class targetType, boolean isHasDataWindows, boolean hasFilter)
agentInstanceId
- groupId
- aggregationId
- minMaxType
- dedicates whether to do min or maxtargetType
- is the type to max or minisHasDataWindows
- true for has data windows @return aggregator to useAggregationMethod makeStddevAggregator(int agentInstanceId, int groupId, int aggregationId, boolean hasFilter)
AggregationMethod makeRateAggregator(int agentInstanceId, int groupId, int aggregationId)
agentInstanceId
- groupId
- aggregationId
-
AggregationMethod makeRateEverAggregator(int agentInstanceId, int groupId, int aggregationId, long interval)
interval
- seconds
AggregationMethod makeNthAggregator(int agentInstanceId, int groupId, int aggregationId, java.lang.Class returnType, int size)
agentInstanceId
- groupId
- aggregationId
- returnType
- of aggregationsize
- of elements @return aggregatorAggregationMethod makeLeavingAggregator(int agentInstanceId, int groupId, int aggregationId)
agentInstanceId
- groupId
- aggregationId
-
AggregationMethod[] newAggregators(AggregationMethodFactory[] prototypes, int agentInstanceId, java.lang.Object groupKey, java.lang.Object groupKeyBinding, AggregationGroupByRollupLevel groupByRollupLevel)
prototypes
- is the prototypesagentInstanceId
- context partitiongroupKey
- is the key to group-by forgroupByRollupLevel
-
AggregationMethod[] newAggregators(AggregationMethodFactory[] aggregators, int agentInstanceId)
agentInstanceId
- context partition
void removeAggregators(int agentInstanceId, java.lang.Object groupKey, java.lang.Object groupKeyBinding, AggregationGroupByRollupLevel level)
agentInstanceId
- groupKey
- that is no longer usedlevel
- long getCurrentRowCount(AggregationMethod[] aggregators, AggregationState[] states)
aggregators
- aggregators
void destroyedAgentInstance(int agentInstanceId)
EngineImportService getEngineImportService()
AggregationState[] newAccesses(int agentInstanceId, boolean isJoin, AggregationStateFactory[] accessAggSpecs)
AggregationState[] newAccesses(int agentInstanceId, boolean isJoin, AggregationStateFactory[] accessAggSpecs, java.lang.Object groupKey, java.lang.Object groupKeyBinding, AggregationGroupByRollupLevel groupByRollupLevel)
AggregationState makeAccessAggLinearNonJoin(int agentInstanceId, int groupId, int aggregationId, int streamNum)
AggregationState makeAccessAggLinearJoin(int agentInstanceId, int groupId, int aggregationId, int streamNum)
AggregationState makeAccessAggSortedNonJoin(int agentInstanceId, int groupId, int aggregationId, AggregationStateSortedSpec spec)
AggregationState makeAccessAggSortedJoin(int agentInstanceId, int groupId, int aggregationId, AggregationStateSortedSpec spec)
AggregationState makeAccessAggMinMaxEver(int agentInstanceId, int groupId, int aggregationId, AggregationStateMinMaxByEverSpec spec)
AggregationState makeAccessAggPlugin(int agentInstanceId, int groupId, int aggregationId, boolean join, PlugInAggregationMultiFunctionStateFactory providerFactory, java.lang.Object groupKey)
AggregationState makeCountMinSketch(int agentInstanceId, int groupId, int aggregationId, CountMinSketchSpec specification)
java.lang.Object getCriteriaKeyBinding(ExprEvaluator[] evaluators)
java.lang.Object getGroupKeyBinding(ExprNode[] groupKeyExpressions, AggregationGroupByRollupDesc groupByRollupDesc)
java.lang.Object getGroupKeyBinding(AggregationLocalGroupByPlan localGroupByPlan)
|
© 2006-2015 EsperTech Inc. All rights reserved. Visit us at espertech.com |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |