The main requirement that must be adhered to is that your Handler must ultimately implement Isight-provided interfaces com.engineous.sdk.component.ComponentHandler and com.engineous.sdk.model.SystemExtension. However, the Isight SDK also provides an abstract class, com.engineous.sdk.component.DefaultComponentHandler, that extends both of these interfaces, which allows you to implement only the methods you need. A component handler must not call native (non-Java) code, nor cause the loading of any native code library into the JVM (e.g., it must not call System.loadLibrary()). For more information on using native code in components, see Non-Java Code Considerations. The optional methods available to implement are:
Note:
DefaultComponentHandler provides a default
implementation of this method that compares parameters, control/data
flow, approximations, and a number of general properties. If you extend
this class and implement this method, it is very important that you call
super.diff (<args>) to retain this general comparison
before performing other component-specific comparisons. Alternatively,
you can implement the protected diffConfiguration method
supplied by the DefaultComponentHandler , which is called
from the general diff method. See DefaultComponentHandler
in the javadoc for more information.A Handler template that includes stubs for function calls that you might need to make is provided in ComponentHandler.java. |