Basic Steps

Developing an Isight component is a fairly straightforward process once you understand the sequence of steps to follow and are familiar with the Isight API classes and methods available to you.

The basic steps to follow are outlined below.

  1. Understand your tool/application enough to know:

    1. What information must be provided by a user.
    2. How to invoke and communicate with the application (input/output files, API calls, command line arguments).
    3. What information output from the tool should be provided to the user or other components in a process model.

  2. Decide what properties and parameters should be defined for your component to represent the information determined in step 1.

  3. Develop an Editor (Java class) for the user to interact with when configuring this component for use.

  4. Develop a Handler (Java class) if appropriate/desired to allow instances of the component to be validated for proper configuration and to react to model changes if necessary.

  5. Develop an Executor (Java class) to provide the functionality of the component when it executes.

  6. Develop a PostProcessor (Java class) if appropriate/desired to provide functionality for postprocessing results for custom graphs/tables or to provide a summary of the execution.

  7. Develop an API (Java class) if desired to provide a way for application developers to configure the component in an intuitive and stable manner.

  8. Use the Isight SDK Generator to provide all appropriate information to create the Component Descriptor, to package the component into a jar file, and to test the component (to a limited degree). You might choose to publish the component to your Isight Library directly from this tool.

You can create the Descriptor, package the jar file, and publish manually if desired, as described later in this document.

The remainder of this section discusses step 3 through step 8 in more detail, with particular emphasis on the Java classes that must be written as the adapters between Isight and your application. Code examples are provided so that you can see some of the most commonly used Isight APIs. However, the full Isight API is not provided in this document. Once you get to the point of writing the necessary classes and needing to use the Isight API, refer to the javadocs found in your Isight installation to access a full HTML representation of the Isight API.

All the Java interfaces and utility classes necessary for developing the wrapper classes for your component are available in the SMAFIPsdk.jar and SMAFIPdesktopSDK.jar files provided in the <Isight_install_directory>/<operating_system>/docs/java/ directory of your Isight installation. To compile the Java code that you write, you must have the Java Development Kit (JDK) installed.

Note: JDK 7 is the supported version.

Assuming that you have the JDK installed and it is on your system path, run the following from a command prompt to compile the code you write:

javac -classpath <isight_install_dir>/<os_dir>/docs/java/SMAFIPsdk.jar
 MyWrapper.java

where MyWrapper.java is replaced with your specific wrapper file name.