Class KnowledgeFlowApp

    • Field Detail

      • FILE_EXTENSION

        public static final String FILE_EXTENSION
        the extension for the serialized setups (Java serialization)
        See Also:
        Constant Field Values
      • FILE_EXTENSION_XML

        public static final String FILE_EXTENSION_XML
        the extension for the serialized setups (Java serialization)
        See Also:
        Constant Field Values
    • Constructor Detail

      • KnowledgeFlowApp

        public KnowledgeFlowApp​(boolean showFileMenu)
        Creates a new KnowledgeFlowApp instance.
    • Method Detail

      • addToPluginBeanProps

        public static void addToPluginBeanProps​(File beanPropsFile)
                                         throws Exception
        Add a plugin bean props file
        Parameters:
        beanPropsFile - the plugin properties to add
        Throws:
        Exception - if a problem occurs
      • removeFromPluginBeanProps

        public static void removeFromPluginBeanProps​(File beanPropsFile)
                                              throws Exception
        Remove a plugin bean props file
        Parameters:
        beanPropsFile - the plugin properties to remove
        Throws:
        Exception - if a problem occurs
      • loadProperties

        public static void loadProperties()
        Loads KnowledgeFlow properties and any plugins (adds jars to the classpath)
      • reInitialize

        public static void reInitialize()
      • setEnvironment

        public void setEnvironment​(Environment env)
        Set the environment variables to use. NOTE: loading a new layout resets back to the default set of variables
        Parameters:
        env -
      • getMainPerspective

        public KnowledgeFlowApp.MainKFPerspective getMainPerspective()
        Gets the main knowledge flow perspective
        Returns:
        the main knowledge flow perspective
      • closeAllTabs

        public void closeAllTabs()
      • clearLayout

        public void clearLayout()
      • setModifiedStatus

        public void setModifiedStatus​(Object source,
                                      boolean modified)
        Tells us about the modified status of a particular object - typically a customizer that is editing a flow component. Allows us to set the modified flag for the current flow.
        Specified by:
        setModifiedStatus in interface BeanCustomizer.ModifyListener
        Parameters:
        source - the source object
        modified - true if the source object has been modified
      • setPasteBuffer

        public void setPasteBuffer​(StringBuffer b)
        Set the contents of the "paste" buffer and enable the paste from cliboard toolbar button
        Parameters:
        b - the buffer to use
      • getPasteBuffer

        public StringBuffer getPasteBuffer()
        Get the contents of the paste buffer
        Returns:
        the contents of the paste buffer
      • copyToBuffer

        public StringBuffer copyToBuffer​(Vector<Object> selectedBeans)
                                  throws Exception
        Utility routine that serializes the supplied Vector of BeanInstances to XML
        Parameters:
        selectedBeans - the vector of BeanInstances to serialize
        Returns:
        a StringBuffer containing the serialized vector
        Throws:
        Exception - if a problem occurs
      • loadLayout

        public void loadLayout​(File oFile,
                               boolean newTab)
        Load a layout from a file. Supports loading binary and XML serialized flow files
        Parameters:
        oFile - the file to load from
        newTab - true if the loaded layout should be displayed in a new tab
      • loadLayout

        public void loadLayout​(InputStream is,
                               boolean newTab,
                               String flowName)
                        throws Exception
        Load a flow file from an input stream. Only supports XML serialized flows.
        Parameters:
        is - the input stream to laod from
        newTab - whether to open a new tab in the UI for the flow
        flowName - the name of the flow
        Throws:
        Exception - if a problem occurs during de-serialization
      • loadLayout

        public void loadLayout​(Reader reader,
                               boolean newTab,
                               String flowName)
                        throws Exception
        Load a flow file from a reader. Only supports XML serialized flows.
        Parameters:
        reader - the reader to load from
        newTab - whether to open a new tab in the UI for the flow
        flowName - the name of the flow
        Throws:
        Exception - if a problem occurs during de-serialization
      • setFlow

        public void setFlow​(Vector<Vector<?>> v)
                     throws Exception
        Set the flow for the KnowledgeFlow to edit. Assumes that client has loaded a Vector of beans and a Vector of connections. the supplied beans and connections are deep-copied via serialization before being set in the layout. The beans get added to the flow at position 0.
        Parameters:
        v - a Vector containing a Vector of beans and a Vector of connections
        Throws:
        Exception - if something goes wrong
      • getFlow

        public Vector<Vector<?>> getFlow()
                                  throws Exception
        Gets the current flow being edited. The flow is returned as a single Vector containing two other Vectors: the beans and the connections. These two vectors are deep-copied via serialization before being returned.
        Returns:
        the current flow being edited
        Throws:
        Exception - if a problem occurs
      • getFlowXML

        public String getFlowXML()
                          throws Exception
        Returns the current flow being edited in XML format.
        Returns:
        the current flow as an XML string
        Throws:
        Exception - if a problem occurs
      • saveLayout

        public void saveLayout​(File toFile,
                               int tabIndex)
      • saveLayout

        public void saveLayout​(OutputStream out,
                               int tabIndex)
        Save the knowledge flow into the OutputStream passed at input. Only supports saving the layout data (no trained models) to XML.
        Parameters:
        out - the output stream to save the layout in
      • getGlobalInfo

        public static String getGlobalInfo​(Object tempBean)
        Utility method for grabbing the global info help (if it exists) from an arbitrary object
        Parameters:
        tempBean - the object to grab global info from
        Returns:
        the global help info or null if global info does not exist
      • createSingleton

        public static void createSingleton​(String[] args)
        Create the singleton instance of the KnowledgeFlow
        Parameters:
        args - can contain a file argument for loading a flow layout (format: "file=[path to layout file]") Modified by Zerbetto: you can specify the path of a knowledge flow layout file at input
      • disposeSingleton

        public static void disposeSingleton()
      • getSingleton

        public static KnowledgeFlowApp getSingleton()
        Return the singleton instance of the KnowledgeFlow
        Returns:
        the singleton instance
      • addStartupListener

        public static void addStartupListener​(StartUpListener s)
        Add a listener to be notified when startup is complete
        Parameters:
        s - a listener to add
      • setAllowMultipleTabs

        public void setAllowMultipleTabs​(boolean multiple)
      • getAllowMultipleTabs

        public boolean getAllowMultipleTabs()
      • main

        public static void main​(String[] args)
        Main method.
        Parameters:
        args - a String[] value