public class JavaFunDef extends FunDefBase
Modifier and Type | Class and Description |
---|---|
static interface |
JavaFunDef.Description
Annotation which allows you to tag a Java method with the description
of the MDX function it implements.
|
static interface |
JavaFunDef.FunctionName
Annotation which allows you to tag a Java method with the name of the
MDX function it implements.
|
static interface |
JavaFunDef.Signature
Annotation which allows you to tag a Java method with the signature of
the MDX function it implements.
|
static interface |
JavaFunDef.SyntaxDef
Annotation which allows you to tag a Java method with the syntax of the
MDX function it implements.
|
FunUtil.DescendingValueComparator, FunUtil.ObjIntPair<T>, FunUtil.OrderKey
Util.AbstractFlatList<T>, Util.ByteMatcher, Util.ErrorCellValue, Util.Flat2List<T>, Util.Flat3List<T>, Util.Functor1<RT,PT>, Util.GcIterator<T>, Util.MemoryInfo, Util.PropertyList, Util.SqlNullSafeComparator
flags, parameterCategories, returnCategory
BooleanNull, DoubleEmpty, DoubleNull, IntegerNull, NullMember
DEBUG, EmptyValue, IBM_JVM, JdbcVersion, JVM_INSTANCE_UUID, nl, nullValue, Retrowoven
Constructor and Description |
---|
JavaFunDef(String name,
String desc,
Syntax syntax,
int returnCategory,
int[] paramCategories,
Method method)
Creates a JavaFunDef.
|
Modifier and Type | Method and Description |
---|---|
Calc |
compileCall(ResolvedFunCall call,
ExpCompiler compiler)
Converts a call to this function into executable objects.
|
static List<FunDef> |
scan(Class clazz)
Scans a java class and returns a list of function definitions, one for
each static method which is suitable to become an MDX function.
|
createCall, getDescription, getName, getParameterCategories, getResultType, getReturnCategory, getSignature, getSyntax, unparse, validateArg
avg, box, box, checkIterListResultStyles, checkListResultStyles, compareHierarchically, compareSiblingMembers, compareValues, compareValues, count, decodeCategory, decodeParameterCategories, decodeReturnCategory, decodeSyntacticType, getDimensionDefaultHierarchy, getNonEmptyMemberChildren, getNonEmptyMemberChildrenWithDetails, hierarchizeMemberList, hierarchizeTupleList, makeNullTuple, max, min, newEvalException, newEvalException, newEvalException, partiallySortMembers, partiallySortTuples, quartile, resolveFunArgs, sortTuples, stablePartialSort, stablePartialSort, stablePartialSortArray, stablePartialSortJulian, stablePartialSortMarc, stablePartialSortPedro, sum, sumDouble, sumDouble, tupleContainsNullMember, tupleContainsNullMember, worthCaching
addDatabaseTime, addLevelCalculatedMembers, append, appendArrays, areOccurencesEqual, assertPostcondition, assertPostcondition, assertPrecondition, assertPrecondition, assertTrue, assertTrue, badValue, binarySearch, bitSetBetween, camelToUpper, canCast, cancelStatement, caseSensitiveCompareName, cast, cast, castToIterable, checkCJResultLimit, close, commaList, compare, compareIntegers, compareKey, compareName, compileScript, convert, convert, convertOlap4jConnectStringToNativeMondrian, convertStackToString, copyOf, copyOf, copyOf, copyOf, copyOf, createExpr, createRandom, createRootRole, createSimpleValidator, createUdf, dbTimeMillis, deprecated, deprecated, digestMd5, digestSha256, equal, equalName, equals, equals, falseFunctor, filter, flatList, flatList, flatListCopy, generateUuidString, genericArray, getAnnotation, getClosestResource, getDimensionCube, getErrorMessage, getErrorMessage, getExecutorService, getFirstDescendantOnLevel, getMatchingCause, getMemberOrdinalInParent, getMembersToHierarchyMap, getMemoryInfo, getScheduledExecutorService, hash, hash, hashArray, identityFunctor, implode, intersect, isBlank, isEmpty, isNull, isSorted, isValidProperty, last, lookup, lookup, lookup, lookup, lookup, lookupCompound, lookupCompound, lookupHierarchyLevel, lookupHierarchyRootMember, lookupHierarchyRootMember, lookupProperty, makeBigDecimalFromDouble, makeFqName, makeFqName, makeFqName, matches, matches, mdxEncodeString, needToImplement, newElementNotFoundException, newError, newError, newIdentityHashSet, newIdentityHashSetFake, newInternal, newInternal, newTimer, nonDbTimeMillis, normalizeName, only, parseCommaList, parseConnectString, parseIdentifier, parseInterval, parseLocale, printMemory, printMemory, quoteForMdx, quoteForMdx, quoteJavaString, quoteMdxIdentifier, quoteMdxIdentifier, quoteMdxIdentifier, quoteMdxIdentifier, quotePattern, readFully, readFully, readURL, readURL, readURL, readVirtualFile, readVirtualFileAsString, replace, replace, replaceProperties, safeGet, singleQuoteString, singleQuoteString, sort, sort, threadLocalRemove, toMap, toNullValuesMap, toOlap4j, toOlap4j, toOlap4j, toURL, trueFunctor, unexpected, uniquify, unparse, unparse, wildcardToRegexp
addChild, addChild, addChildren, addElement, concatenate, createDefaultParser, discard, discard, discard, discard, discard, discard, discard, discard, discard, getFirstInstance, wrapperToXml
public JavaFunDef(String name, String desc, Syntax syntax, int returnCategory, int[] paramCategories, Method method)
name
- Namedesc
- Descriptionsyntax
- SyntaxreturnCategory
- Return typeparamCategories
- Parameter typesmethod
- Java method which implements this functionpublic Calc compileCall(ResolvedFunCall call, ExpCompiler compiler)
FunDef
The result must implement the appropriate interface for the result
type. For example, a function which returns an integer must return
an object which implements IntegerCalc
.
compileCall
in interface FunDef
compileCall
in class FunDefBase
Copyright © 2019 Hitachi Vantara. All rights reserved.