To implement a Workspace plugin, you implement the Java interface com.treestar.lib.core.WorkspacePluginInterface. Note, the name of this interface was derived by its original purpose of interacting with a FlowJoEnterprise server, but is intended to be used for general purposes. This interface defines methods that are invoked when a FlowJo workspace is opened or saved, and when your FlowJo session is about to end, as well as methods used by the plugin framework to save the reference to your plugin in a FlowJo workspace. Note, that there is no visible representation of your workspace plugin in the FlowJo user interface. Once your plugin is added to a FlowJo workspace, its methods will automatically be invoked at the appropriate times. FlowJo will create a single instance of your plugin class when the workspace is opened, and manage the plugin object for the lifetime of the session. The class that implements WorkspacePluginInterface can be instantiated by FlowJo with one of two constructors. If your plugin defines a constructor with the single argument of type SElement, that will be used to instantiate your plugin object. Otherwise, FlowJo will use a zero-argument constructor to create your plugin object.
Workspace Plugin Interface Methods
boolean openWorkspace(SElement workspaceElement) void saveWorkspace(SElement workspaceElement) void endSession() String getServerUrl() SElement getElement() String getVersion()