Class ClientDynamicDispatchFunction
- java.lang.Object
-
- com.inductiveautomation.ignition.client.expressions.ClientDynamicDispatchFunction
-
- All Implemented Interfaces:
Function
public class ClientDynamicDispatchFunction extends java.lang.Object implements Function
In the client, functions are serialized into the bindings. If a function is provided by a module, and then the module is uninstalled, the windows or objects that use that function would be unable to deserialize. This class is used instead to store function references to module provided functions. It retrieves the actual function as necessary from the function factory, retrieved through the context provided in connect.
-
-
Constructor Summary
Constructors Constructor Description ClientDynamicDispatchFunction()ClientDynamicDispatchFunction(java.lang.String name, Function func)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconnect(CommonContext context, InteractionListener updateListener)Gives the function a chance to connect itself to things, if necessary.Functioncopy()Creates a copy of this function.voiddisconnect()Tells the function to disconnect from anything it was connected to.QualifiedValueexecute(Expression[] args)Execute this function, and return the function's qualified value.java.lang.StringgetArgDocString()Returns a string to be used in the auto-generated function documentation.java.lang.StringgetFunctionName()java.lang.Class<?>getType()Returns the type that this function will return upon executionvoidinitArgs(Expression[] args)Initialize this function with the given arguments.voidsetFunctionName(java.lang.String functionName)voidshutdown()Tells the function to shutdown any polling operations.voidstartup()Tells the function to startup any polling operations.
-
-
-
Constructor Detail
-
ClientDynamicDispatchFunction
public ClientDynamicDispatchFunction()
-
ClientDynamicDispatchFunction
public ClientDynamicDispatchFunction(java.lang.String name, Function func)
-
-
Method Detail
-
getFunctionName
public java.lang.String getFunctionName()
-
setFunctionName
public void setFunctionName(java.lang.String functionName)
-
execute
public QualifiedValue execute(Expression[] args) throws ExpressionException
Description copied from interface:FunctionExecute this function, and return the function's qualified value.- Specified by:
executein interfaceFunction- Throws:
ExpressionException
-
initArgs
public void initArgs(Expression[] args)
Description copied from interface:FunctionInitialize this function with the given arguments.
-
getType
public java.lang.Class<?> getType()
Description copied from interface:FunctionReturns the type that this function will return upon execution
-
getArgDocString
public java.lang.String getArgDocString()
Description copied from interface:FunctionReturns a string to be used in the auto-generated function documentation. The string should represent the arguments for the function, such as "string, count" for the "repeat" function.- Specified by:
getArgDocStringin interfaceFunction
-
copy
public Function copy()
Description copied from interface:FunctionCreates a copy of this function. Each FunctionExpression will always retrieve a copy of the function that it wants. It is up to the function whether or not a true copy is retrieved, or simply a reference to the main function object. If the function stores transient data during serialization, and thus cannot be shared between expressions, a copy must be made.
-
connect
public void connect(CommonContext context, InteractionListener updateListener)
Description copied from interface:FunctionGives the function a chance to connect itself to things, if necessary. Most functions do not have any connections. A function should notify the updateListener if they change. The implementation of InteractionListener should execute as quickly as possible, and should not block.
-
disconnect
public void disconnect()
Description copied from interface:FunctionTells the function to disconnect from anything it was connected to.- Specified by:
disconnectin interfaceFunction
-
startup
public void startup()
Description copied from interface:FunctionTells the function to startup any polling operations. Functions that use this can remember the updateListener from connect() to feed update notification to.
-
-