public class FunctionImpl extends ExpressionAbstract implements Function
| Modifier and Type | Field and Description |
|---|---|
protected FunctionName |
functionName
FunctionName description for FilterCapabilities, may be provided by subclass in constructor,
or will be lazily created based on name and number of arguments.
|
NIL| Constructor and Description |
|---|
FunctionImpl() |
| Modifier and Type | Method and Description |
|---|---|
Object |
accept(ExpressionVisitor visitor,
Object extraData)
Accepts a visitor.
|
protected LinkedHashMap<String,Object> |
dispatchArguments(Object obj)
Gathers up and groups the parameters to the function based on the declared parameters.
|
boolean |
equals(Object obj) |
Object |
evaluate(Object object)
Default implementation simply returns the fallbackValue.
|
protected static FunctionName |
functionName(String name,
String ret,
String... args)
Convenience method for creating a function name from a set of strings describing the return
and argument parameters of the function.
|
Literal |
getFallbackValue()
The value of the fallbackValue attribute is used as a default value, if the SE implementation
does not support the function.
|
FunctionName |
getFunctionName()
Access to the FunctionName description as used in a FilterCapabilities document.
|
String |
getName()
Gets the name of this function.
|
List<Expression> |
getParameters()
Returns the function parameters.
|
protected Object |
getParameterValue(Object object,
int argumentIndex)
Evaluates a specific argument against the context, checking for required values and proper
conversion.
|
protected Object |
getParameterValue(Object object,
int argumentIndex,
Object defaultValue)
Evaluates a specific argument against the context, checking for required values and proper
conversion.
|
int |
hashCode() |
void |
setFallbackValue(Literal fallbackValue) |
void |
setName(String name)
Sets the name of the function.
|
void |
setParameters(List<Expression> params)
Sets the function parameters.
|
String |
toString()
Creates a String representation of this Function with the function name and the arguments.
|
evaluateevaluateprotected FunctionName functionName
public String getName()
public FunctionName getFunctionName()
FunctiongetFunctionName in interface Functionpublic void setName(String name)
public List<Expression> getParameters()
getParameters in interface Functionpublic Object evaluate(Object object)
Please override this method to produce a value based on the provided arguments.
evaluate in interface Expressionevaluate in class ExpressionAbstractobject - Object being evaluated; often a Featurepublic void setParameters(List<Expression> params)
public void setFallbackValue(Literal fallbackValue)
public Literal getFallbackValue()
FunctiongetFallbackValue in interface Functionpublic Object accept(ExpressionVisitor visitor, Object extraData)
Expressionreturn visitor.visit(this, extraData);
accept in interface Expressionpublic String toString()
protected Object getParameterValue(Object object, int argumentIndex)
protected Object getParameterValue(Object object, int argumentIndex, Object defaultValue)
protected LinkedHashMap<String,Object> dispatchArguments(Object obj)
This method calls #validateArguments() which enforces java style argument
conventions for multi valued parameters. Basically enforcing that only teh last argument in a
function can be variable.
protected static FunctionName functionName(String name, String ret, String... args)
The value of ret and each value of args is a string of the following structure:
name[:type[:min,max]]Where:
name - The name of the functionret - The parameter specification of the return of the functionargs - The argument specifications of the function argumentsCopyright © 1996–2021 Geotools. All rights reserved.