public abstract class JsonpBasedFunction
extends java.lang.Object
Function without changing the code much, it is recommended to use
 JacksonBasedFunction since it is faster.| Modifier and Type | Field and Description | 
|---|---|
| protected T | contractContext | 
| protected T | contractProperties | 
| Constructor and Description | 
|---|
| JsonpBasedFunction() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected T | getContractContext()Returns a contract context given from a contract that is executed together with the function. | 
| protected T | getContractProperties() | 
| abstract T | invoke(Database<G,S,P,D,R> database,
      T functionArgument,
      T contractArgument,
      T contractProperties)Invokes the function to  Databasewith the specified argument and the corresponding root
 contract argument and properties. | 
| protected T | invoke(java.lang.String functionId,
      Database<G,S,P,D,R> database,
      T functionArgument,
      T contractArgument) | 
| boolean | isRoot() | 
protected T contractProperties
protected T contractContext
@Nullable protected T getContractProperties()
public boolean isRoot()
@Nullable protected T getContractContext()
@Nullable public abstract T invoke(Database<G,S,P,D,R> database, @Nullable T functionArgument, T contractArgument, @Nullable T contractProperties)
Database with the specified argument and the corresponding root
 contract argument and properties. An implementation of the FunctionBase should throw
 ContractContextException if it faces application-level contextual error (such as lack
 of balance in payment application).database - mutable databasefunctionArgument - function argumentcontractArgument - the argument of the corresponding root contractcontractProperties - the pre-registered properties of the corresponding root contract@Nullable
protected final T invoke(java.lang.String functionId,
                                   Database<G,S,P,D,R> database,
                                   @Nullable
                                   T functionArgument,
                                   T contractArgument)