public class ProcessFunction extends Object implements Function
Process with a single output to be called as a Function.
Since Function parameters are positional and Process parameters are named, the following strategy
is used to allow specifying named Process parameters as function inputs. All inputs to the
function must evaluate to MapNIL| Constructor and Description |
|---|
ProcessFunction(Name processName,
List<Expression> inputExpressions,
Map<String,Parameter<?>> parameters,
Process process,
Literal fallbackValue) |
| Modifier and Type | Method and Description |
|---|---|
Object |
accept(ExpressionVisitor visitor,
Object extraData)
Accepts a visitor.
|
boolean |
equals(Object obj) |
Object |
evaluate(Object object)
Evaluates the given expression based on the content of the given object.
|
<T> T |
evaluate(Object object,
Class<T> context)
Evaluates the given expressoin based on the content of the given object and the context type.
|
protected Map<String,Object> |
evaluateInputs(Object object)
Evaluates the process input expressions.
|
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()
Returns the name of the function to be called.
|
List<Expression> |
getParameters()
Returns the list subexpressions that will be evaluated to provide the parameters to the
function.
|
Name |
getProcessName() |
int |
hashCode() |
public Literal getFallbackValue()
FunctiongetFallbackValue in interface Functionpublic String getName()
Functioncos" or
"atan2".
You can use this name to look up the number of required parameters in a FilterCapabilities data structure. For the specific meaning of the required parameters you will need to consult the documentation.
public Name getProcessName()
public FunctionName getFunctionName()
FunctiongetFunctionName in interface Functionpublic List<Expression> getParameters()
FunctiongetParameters in interface Functionpublic Object accept(ExpressionVisitor visitor, Object extraData)
Expressionreturn visitor.visit(this, extraData);
accept in interface Expressionpublic <T> T evaluate(Object object, Class<T> context)
ExpressionThe context parameter is used to control the type of the result of the expression.
A particular expression may not be able to evaluate to an instance of context.
Therefore to be safe calling code should do a null check on the return value of this method,
and call Expression.evaluate(Object) if neccessary. Example:
Object input = ...;
String result = expression.evaluate( input, String.class );
if ( result == null ) {
result = expression.evalute( input ).toString();
}
...
Implementations that can not return a result as an instance of context should
return null.
evaluate in interface ExpressionT - The type of the returned object.object - The object to evaluate the expression against.context - The type of the resulting value of the expression.context.public Object evaluate(Object object)
Expressionevaluate in interface Expressionprotected Map<String,Object> evaluateInputs(Object object)
RenderingProcessFunction inversion methods).object - the object to evaluate the input expressions against.Copyright © 1996–2019 Geotools. All rights reserved.