
public class ODatabaseFunction extends Object implements OSQLFunction
| Constructor and Description |
|---|
ODatabaseFunction(OFunction f) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
aggregateResults()
A function can make calculation on several records before returning a result.
|
void |
config(Object[] configuredParameters)
Configure the function.
|
Object |
execute(Object iThis,
OIdentifiable iCurrentRecord,
Object iCurrentResult,
Object[] iFuncParams,
OCommandContext iContext)
Process a record.
|
boolean |
filterResult()
A function can act both as transformation or filtering records.
|
int |
getMaxParams()
Maximum number of parameter this function can handle.
|
int |
getMinParams()
Minimum number of parameter this function must have.
|
String |
getName()
Function name, the name is used by the sql parser to identify a call this function.
|
Object |
getResult()
Only called when function aggregates results after all records have been passed to the function.
|
String |
getSyntax()
Returns a convinient SQL String representation of the function.
|
Object |
mergeDistributedResult(List<Object> resultsToMerge)
This method correspond to distributed query execution
|
void |
setResult(Object iResult)
Called by OCommandExecutor, given parameter is the number of results.
|
boolean |
shouldMergeDistributedResult()
This method correspond to distributed query execution
|
public ODatabaseFunction(OFunction f)
public Object execute(Object iThis, OIdentifiable iCurrentRecord, Object iCurrentResult, Object[] iFuncParams, OCommandContext iContext)
OSQLFunctionexecute in interface OSQLFunctioniCurrentRecord - : current recordiCurrentResult - TODOiFuncParams - : function parameters, number is ensured to be within minParams and maxParams.iContext - : object calling this functionpublic boolean aggregateResults()
OSQLFunctionExample of such function : sum, count, max, min ...
The final result of the aggregation is obtain by calling OSQLFunction.getResult()
aggregateResults in interface OSQLFunctionpublic boolean filterResult()
OSQLFunctionFunction should return null for the execute method if the record must be excluded.
filterResult in interface OSQLFunctionpublic String getName()
OSQLFunctiongetName in interface OSQLFunctionpublic int getMinParams()
OSQLFunctiongetMinParams in interface OSQLFunctionpublic int getMaxParams()
OSQLFunctiongetMaxParams in interface OSQLFunctionpublic String getSyntax()
OSQLFunctionExample :
myFunction( param1, param2, [optionalParam3])This text will be used in exception messages.
getSyntax in interface OSQLFunctionpublic Object getResult()
OSQLFunctiongetResult in interface OSQLFunctionpublic void setResult(Object iResult)
OSQLFunctionsetResult in interface OSQLFunctionpublic void config(Object[] configuredParameters)
OSQLFunctionconfig in interface OSQLFunctionpublic boolean shouldMergeDistributedResult()
OSQLFunctionshouldMergeDistributedResult in interface OSQLFunctiontrue if results that comes from different nodes need to be merged to obtain valid one, false otherwisepublic Object mergeDistributedResult(List<Object> resultsToMerge)
OSQLFunctionmergeDistributedResult in interface OSQLFunctionresultsToMerge - is the results that comes from different nodesCopyright © 2009–2025 OrientDB. All rights reserved.