com.mckoi.database
Interface FunctionInfo

All Known Implementing Classes:
FunctionFactory.FF_FunctionInfo

public interface FunctionInfo

Meta information about a function. Used to compile information about a particular function.

Author:
Tobias Downer

Field Summary
static int AGGREGATE
          A type that represents an aggregate function.
static int STATE_BASED
          A function that is non-aggregate but whose return value is not guarenteed to be the same given the identical parameters over subsequent calls.
static int STATIC
          A type that represents a static function.
 
Method Summary
 java.lang.String getFunctionFactoryName()
          The name of the function factory class that this function is handled by.
 java.lang.String getName()
          The name of the function as used by the SQL grammar to reference it.
 int getType()
          The type of function, either STATIC, AGGREGATE or STATE_BASED (eg.
 

Field Detail

STATIC

static final int STATIC
A type that represents a static function. A static function is not an aggregate therefore does not require a GroupResolver. The result of a static function is guarenteed the same given identical parameters over subsequent calls.

See Also:
Constant Field Values

AGGREGATE

static final int AGGREGATE
A type that represents an aggregate function. An aggregate function requires the GroupResolver variable to be present in able to resolve the function over some set. The result of an aggregate function is guarenteed the same given the same set and identical parameters.

See Also:
Constant Field Values

STATE_BASED

static final int STATE_BASED
A function that is non-aggregate but whose return value is not guarenteed to be the same given the identical parameters over subsequent calls. This would include functions such as RANDOM and UNIQUEKEY. The result is dependant on some other state (a random seed and a sequence value).

See Also:
Constant Field Values
Method Detail

getName

java.lang.String getName()
The name of the function as used by the SQL grammar to reference it.


getType

int getType()
The type of function, either STATIC, AGGREGATE or STATE_BASED (eg. result is not dependant entirely from input but from another state for example RANDOM and UNIQUEKEY functions).


getFunctionFactoryName

java.lang.String getFunctionFactoryName()
The name of the function factory class that this function is handled by. For example, "com.mckoi.database.InternalFunctionFactory".