public interface EngineImportService
Modifier and Type | Field and Description |
---|---|
static String |
EXT_SINGLEROW_FUNCTION_TRANSPOSE |
Modifier and Type | Method and Description |
---|---|
void |
addAggregation(String functionName,
ConfigurationPlugInAggregationFunction aggregationDesc)
Add an aggregation function.
|
void |
addAggregationMultiFunction(ConfigurationPlugInAggregationMultiFunction desc) |
void |
addAnnotationImport(String importName)
Add an import for annotation-only use, such as "com.mypackage.*" or "com.mypackage.MyClass".
|
void |
addImport(String importName)
Add an import, such as "com.mypackage.*" or "com.mypackage.MyClass".
|
void |
addSingleRow(String functionName,
String singleRowFuncClass,
String methodName,
ConfigurationPlugInSingleRowFunction.ValueCache valueCache,
ConfigurationPlugInSingleRowFunction.FilterOptimizable filterOptimizable,
boolean rethrowExceptions,
String optionalEventTypeName)
Add an single-row function.
|
AggregationFactoryFactory |
getAggregationFactoryFactory() |
ClassForNameProvider |
getClassForNameProvider() |
ClassLoader |
getClassLoader() |
ConfigurationMethodRef |
getConfigurationMethodRef(String className)
Returns the method invocation caches for the from-clause for a class.
|
MathContext |
getDefaultMathContext() |
ClassLoader |
getFastClassClassLoader(Class clazz) |
ConfigurationEngineDefaults.ThreadingProfile |
getThreadingProfile() |
TimeAbacus |
getTimeAbacus() |
TimeZone |
getTimeZone() |
boolean |
isDuckType() |
boolean |
isSortUsingCollator() |
boolean |
isUdfCache() |
ExprNode |
resolveAggExtendedBuiltin(String name,
boolean isDistinct)
Resolve an extended (non-SQL std) builtin aggregation.
|
AggregationFunctionFactory |
resolveAggregationFactory(String functionName)
Used at statement compile-time to try and resolve a given function name into an
aggregation method.
|
ConfigurationPlugInAggregationMultiFunction |
resolveAggregationMultiFunction(String name) |
Class |
resolveAnnotation(String className)
Resolves a given class name, either fully qualified and simple and imported to a annotation.
|
Class |
resolveClass(String className,
boolean forAnnotation)
Resolves a given class name, either fully qualified and simple and imported to a class.
|
Constructor |
resolveCtor(Class clazz,
Class[] paramTypes)
Resolves a constructor matching list of parameter types.
|
Method |
resolveMethod(Class clazz,
String methodName,
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.
|
Method |
resolveMethodOverloadChecked(Class clazz,
String methodName) |
Method |
resolveMethodOverloadChecked(String className,
String methodName)
Resolves a given class and method name to a static method, expecting the method to exist
exactly once and not be overloaded, with any parameters.
|
Method |
resolveMethodOverloadChecked(String className,
String methodName,
Class[] paramTypes,
boolean[] allowEventBeanType,
boolean[] allowEventBeanCollType)
Resolves a given class, method and list of parameter types to a static method.
|
Method |
resolveNonStaticMethodOverloadChecked(Class clazz,
String methodName)
Resolves a given class and method name to a non-static method, expecting the method to exist
exactly once and not be overloaded, with any parameters.
|
Pair<Class,EngineImportSingleRowDesc> |
resolveSingleRow(String functionName)
Used at statement compile-time to try and resolve a given function name into an
single-row function.
|
ExprNode |
resolveSingleRowExtendedBuiltin(String name)
Resolve an extended (non-SQL std) single-row function.
|
static final String EXT_SINGLEROW_FUNCTION_TRANSPOSE
ConfigurationMethodRef getConfigurationMethodRef(String className)
className
- the class name providing the methodvoid addImport(String importName) throws EngineImportException
importName
- is the import to addEngineImportException
- if the information or format is invalidvoid addAnnotationImport(String importName) throws EngineImportException
importName
- is the import to addEngineImportException
- if the information or format is invalidvoid addAggregation(String functionName, ConfigurationPlugInAggregationFunction aggregationDesc) throws EngineImportException
functionName
- is the name of the function to make known.aggregationDesc
- is the descriptor for the aggregation functionEngineImportException
- throw if format or information is invalidvoid addSingleRow(String functionName, String singleRowFuncClass, String methodName, ConfigurationPlugInSingleRowFunction.ValueCache valueCache, ConfigurationPlugInSingleRowFunction.FilterOptimizable filterOptimizable, boolean rethrowExceptions, String optionalEventTypeName) throws EngineImportException
functionName
- is the name of the function to make known.singleRowFuncClass
- is the class that provides the single row functionmethodName
- is the name of the public static method provided by the class that provides the single row functionvalueCache
- setting to control value cache behavior which may cache a result value when constant parameters are passedfilterOptimizable
- filter behavior settingrethrowExceptions
- for whether to rethrowoptionalEventTypeName
- event type name when providedEngineImportException
- throw if format or information is invalidAggregationFunctionFactory resolveAggregationFactory(String functionName) throws EngineImportUndefinedException, EngineImportException
functionName
- is the function nameEngineImportUndefinedException
- if the function is not a configured aggregation functionEngineImportException
- if the aggregation providing class could not be loaded or doesn't matchConfigurationPlugInAggregationMultiFunction resolveAggregationMultiFunction(String name)
Pair<Class,EngineImportSingleRowDesc> resolveSingleRow(String functionName) throws EngineImportUndefinedException, EngineImportException
functionName
- is the function nameEngineImportUndefinedException
- if the function is not a configured single-row functionEngineImportException
- if the function providing class could not be loaded or doesn't matchMethod resolveMethodOverloadChecked(String className, String methodName, 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
- flag for whether event bean is allowedallowEventBeanCollType
- flag for whether event bean array is allowedEngineImportException
- if the method cannot be resolved to a visible static methodMethod resolveMethodOverloadChecked(Class clazz, String methodName) throws EngineImportException
EngineImportException
Constructor resolveCtor(Class clazz, Class[] paramTypes) throws EngineImportException
clazz
- is the class to useparamTypes
- is parameter types match expression sub-nodesEngineImportException
- if the ctor cannot be resolvedClass resolveClass(String className, boolean forAnnotation) throws EngineImportException
className
- is the class name to useforAnnotation
- whether we are resolving an annotationEngineImportException
- if there was an error resolving the classClass resolveAnnotation(String className) throws EngineImportException
className
- is the class name to useEngineImportException
- if there was an error resolving the classMethod resolveMethodOverloadChecked(String className, String methodName) throws EngineImportException
className
- is the class name to usemethodName
- is the method nameEngineImportException
- if the method cannot be resolved to a visible static method, or
if the method is overloadedMethod resolveNonStaticMethodOverloadChecked(Class clazz, String methodName) throws EngineImportException
clazz
- is the classmethodName
- is the method nameEngineImportException
- if the method cannot be resolved to a visible static method, or
if the method is overloadedMethod resolveMethod(Class clazz, String methodName, 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-nodesallowEventBeanType
- whether EventBean footprint is allowedallowEventBeanCollType
- whether EventBean array footprint is allowedEngineImportException
- if the method cannot be resolved to a visible static or instance methodExprNode resolveAggExtendedBuiltin(String name, boolean isDistinct)
name
- of funcisDistinct
- indicatorExprNode resolveSingleRowExtendedBuiltin(String name)
name
- of funcboolean isDuckType()
boolean isUdfCache()
boolean isSortUsingCollator()
void addAggregationMultiFunction(ConfigurationPlugInAggregationMultiFunction desc) throws EngineImportException
EngineImportException
MathContext getDefaultMathContext()
TimeZone getTimeZone()
TimeAbacus getTimeAbacus()
ConfigurationEngineDefaults.ThreadingProfile getThreadingProfile()
AggregationFactoryFactory getAggregationFactoryFactory()
ClassForNameProvider getClassForNameProvider()
ClassLoader getFastClassClassLoader(Class clazz)
ClassLoader getClassLoader()