Documentation of 'weka.core.PluginManager' Java class
PluginManager
weka.core

Class PluginManager



  • public class PluginManager
    extends java.lang.Object
    Class that manages a global map of plugins. Provides static methods for registering and instantiating plugins. The package manager looks for, and processes, a PluginManager.props file in the top-level of a package.
    • Constructor Summary

      Constructors 
      Constructor and Description
      PluginManager() 
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static void addFromProperties(java.io.File propsFile)
      Add all key value pairs from the supplied property file
      static void addFromProperties(java.io.File propsFile, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied property file
      static void addFromProperties(java.io.InputStream propsStream)
      Add all key value pairs from the supplied properties stream
      static void addFromProperties(java.io.InputStream propsStream, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied properties stream
      static void addFromProperties(java.util.Properties props)
      Add all key value pairs from the supplied properties object
      static void addFromProperties(java.util.Properties props, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied properties object
      static void addFromProperties(java.lang.String packageName, java.io.File propsFile)
      Add all key value pairs from the supplied property file
      static void addFromProperties(java.lang.String packageName, java.io.File propsFile, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied property file
      static void addFromProperties(java.lang.String packageName, java.io.InputStream propsStream)
      Add all key value pairs from the supplied properties stream
      static void addFromProperties(java.lang.String packageName, java.io.InputStream propsStream, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied properties stream
      static void addFromProperties(java.lang.String packageName, java.util.Properties props)
      Add all key value pairs from the supplied properties object
      static void addFromProperties(java.lang.String packageName, java.util.Properties props, boolean maintainInsertionOrder)
      Add all key value pairs from the supplied properties object
      static void addPlugin(java.lang.String interfaceName, java.lang.String name, java.lang.String concreteType)
      Add a plugin.
      static void addPlugin(java.lang.String interfaceName, java.lang.String name, java.lang.String concreteType, boolean maintainInsertionOrder)
      Add a plugin.
      static void addPluginResource(java.lang.String resourceGroupID, java.lang.String resourceDescription, java.lang.String resourcePath)
      Add a resource.
      static void addPluginResource(java.lang.String packageName, java.lang.String resourceGroupID, java.lang.String resourceDescription, java.lang.String resourcePath)
      Add a resource.
      static void addPluginResourcesFromProperty(java.lang.String resourceList)
      Add resources from a list.
      static void addToDisabledList(java.util.List<java.lang.String> classnames)
      Add the supplied list of fully qualified class names to the disabled list
      static void addToDisabledList(java.lang.String classname)
      Add the supplied fully qualified class name to the list of disabled plugins
      static java.lang.Object getPluginInstance(java.lang.String interfaceType, java.lang.String name)
      Get an instance of a concrete implementation of a plugin type
      static java.util.Set<java.lang.String> getPluginNamesOfType(java.lang.String interfaceName)
      Get a set of names of plugins that implement the supplied interface.
      static java.util.List<java.lang.String> getPluginNamesOfTypeList(java.lang.String interfaceName)
      Get a sorted list of names of plugins that implement the supplied interface.
      static java.io.InputStream getPluginResourceAsStream(java.lang.String resourceGroupID, java.lang.String resourceDescription)
      Get an input stream for a named resource under a given resource group ID.
      static java.util.Map<java.lang.String,java.lang.String> getResourcesWithGroupID(java.lang.String resourceGroupID)
      Get a map of resources (description,path) registered under a given resource group ID.
      static boolean isInDisabledList(java.lang.String classname)
      Returns true if the supplied fully qualified class name is in the disabled list
      static int numResourcesForWithGroupID(java.lang.String resourceGroupID)
      Get the number of resources available under a given resource group ID.
      static boolean pluginRegistered(java.lang.String interfaceType, java.lang.String name)
      Checks if a named plugin exists in the map of registered plugins
      static void removeFromDisabledList(java.util.List<java.lang.String> classnames)
      Remove the supplied list of fully qualified class names to the disabled list
      static void removeFromDisabledList(java.lang.String classname)
      Remove the supplied fully qualified class name from the list of disabled plugins
      static void removePlugin(java.lang.String interfaceName, java.lang.String name)
      Remove a plugin.
      static void removePlugins(java.lang.String interfaceName, java.util.List<java.lang.String> names)
      Remove plugins of a specific type.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PluginManager

        public PluginManager()
    • Method Detail

      • addToDisabledList

        public static void addToDisabledList(java.util.List<java.lang.String> classnames)
        Add the supplied list of fully qualified class names to the disabled list
        Parameters:
        classnames - a list of class names to add
      • addToDisabledList

        public static void addToDisabledList(java.lang.String classname)
        Add the supplied fully qualified class name to the list of disabled plugins
        Parameters:
        classname - the fully qualified name of a class to add
      • removeFromDisabledList

        public static void removeFromDisabledList(java.util.List<java.lang.String> classnames)
        Remove the supplied list of fully qualified class names to the disabled list
        Parameters:
        classnames - a list of class names to remove
      • removeFromDisabledList

        public static void removeFromDisabledList(java.lang.String classname)
        Remove the supplied fully qualified class name from the list of disabled plugins
        Parameters:
        classname - the fully qualified name of a class to remove
      • isInDisabledList

        public static boolean isInDisabledList(java.lang.String classname)
        Returns true if the supplied fully qualified class name is in the disabled list
        Parameters:
        classname - the name of the class to check
        Returns:
        true if the supplied class name is in the disabled list
      • addFromProperties

        public static void addFromProperties(java.io.File propsFile)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied property file
        Parameters:
        propsFile - the properties file to add
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.io.File propsFile)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied property file
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        propsFile - the properties file to add
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.io.File propsFile,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied property file
        Parameters:
        propsFile - the properties file to add
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.io.File propsFile,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied property file
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        propsFile - the properties file to add
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.io.InputStream propsStream)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties stream
        Parameters:
        propsStream - an input stream to a properties file
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.io.InputStream propsStream)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties stream
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        propsStream - an input stream to a properties file
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.io.InputStream propsStream,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties stream
        Parameters:
        propsStream - an input stream to a properties file
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.io.InputStream propsStream,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties stream
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        propsStream - an input stream to a properties file
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.util.Properties props)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties object
        Parameters:
        props - a Properties object
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.util.Properties props)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties object
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        props - a Properties object
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.util.Properties props,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties object
        Parameters:
        props - a Properties object
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addFromProperties

        public static void addFromProperties(java.lang.String packageName,
                                             java.util.Properties props,
                                             boolean maintainInsertionOrder)
                                      throws java.lang.Exception
        Add all key value pairs from the supplied properties object
        Parameters:
        packageName - the name of the Weka package that owns this properties object. Can be null if not owned by a Weka package
        props - a Properties object
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
        Throws:
        java.lang.Exception - if a problem occurs
      • addPluginResourcesFromProperty

        public static void addPluginResourcesFromProperty(java.lang.String resourceList)
        Add resources from a list. String format for a list of resources (as might be supplied from a *resources* entry in an property file:

         [groupID|description|path],[groupID|description|path],...
         
        Parameters:
        resourceList - a list of resources to add
      • addPluginResource

        public static void addPluginResource(java.lang.String resourceGroupID,
                                             java.lang.String resourceDescription,
                                             java.lang.String resourcePath)
        Add a resource.
        Parameters:
        resourceGroupID - the ID of the group under which the resource should be stored
        resourceDescription - the description/ID of the resource
        resourcePath - the path to the resource
      • addPluginResource

        public static void addPluginResource(java.lang.String packageName,
                                             java.lang.String resourceGroupID,
                                             java.lang.String resourceDescription,
                                             java.lang.String resourcePath)
        Add a resource.
        Parameters:
        packageName - the name of the package that owns this resource. Can be null if not owned by a package, in which case the current classloader will be used to load the resource.
        resourceGroupID - the ID of the group under which the resource should be stored
        resourceDescription - the description/ID of the resource
        resourcePath - the path to the resource
      • getPluginResourceAsStream

        public static java.io.InputStream getPluginResourceAsStream(java.lang.String resourceGroupID,
                                                                    java.lang.String resourceDescription)
                                                             throws java.io.IOException
        Get an input stream for a named resource under a given resource group ID.
        Parameters:
        resourceGroupID - the group ID that the resource falls under
        resourceDescription - the description/ID of the resource
        Returns:
        an InputStream for the resource
        Throws:
        java.io.IOException - if the group ID or resource description/ID are not known to the PluginManager, or a problem occurs while trying to open an input stream
      • numResourcesForWithGroupID

        public static int numResourcesForWithGroupID(java.lang.String resourceGroupID)
        Get the number of resources available under a given resource group ID.
        Parameters:
        resourceGroupID - the group ID of the resources
        Returns:
        the number of resources registered under the supplied group ID
      • getResourcesWithGroupID

        public static java.util.Map<java.lang.String,java.lang.String> getResourcesWithGroupID(java.lang.String resourceGroupID)
        Get a map of resources (description,path) registered under a given resource group ID.
        Parameters:
        resourceGroupID - the group ID of the resources to get
        Returns:
        a map of resources registered under the supplied group ID, or null if the resourceGroupID is not known to the plugin manager
      • getPluginNamesOfType

        public static java.util.Set<java.lang.String> getPluginNamesOfType(java.lang.String interfaceName)
        Get a set of names of plugins that implement the supplied interface.
        Parameters:
        interfaceName - the fully qualified name of the interface to list plugins for
        Returns:
        a set of names of plugins
      • getPluginNamesOfTypeList

        public static java.util.List<java.lang.String> getPluginNamesOfTypeList(java.lang.String interfaceName)
        Get a sorted list of names of plugins that implement the supplied interface.
        Parameters:
        interfaceName - the fully qualified name of the interface to list plugins for
        Returns:
        a set of names of plugins
      • addPlugin

        public static void addPlugin(java.lang.String interfaceName,
                                     java.lang.String name,
                                     java.lang.String concreteType)
        Add a plugin.
        Parameters:
        interfaceName - the fully qualified interface name that the plugin implements
        name - the name/short description of the plugin
        concreteType - the fully qualified class name of the actual concrete implementation
      • addPlugin

        public static void addPlugin(java.lang.String interfaceName,
                                     java.lang.String name,
                                     java.lang.String concreteType,
                                     boolean maintainInsertionOrder)
        Add a plugin.
        Parameters:
        interfaceName - the fully qualified interface name that the plugin implements
        name - the name/short description of the plugin
        concreteType - the fully qualified class name of the actual concrete implementation
        maintainInsertionOrder - true if the order of insertion of implementations is to be preserved (rather than sorted order)
      • removePlugins

        public static void removePlugins(java.lang.String interfaceName,
                                         java.util.List<java.lang.String> names)
        Remove plugins of a specific type.
        Parameters:
        interfaceName - the fully qualified interface name that the plugins to be remove implement
        names - a list of named plugins to remove
      • removePlugin

        public static void removePlugin(java.lang.String interfaceName,
                                        java.lang.String name)
        Remove a plugin.
        Parameters:
        interfaceName - the fully qualified interface name that the plugin implements
        name - the name/short description of the plugin
      • pluginRegistered

        public static boolean pluginRegistered(java.lang.String interfaceType,
                                               java.lang.String name)
        Checks if a named plugin exists in the map of registered plugins
        Parameters:
        interfaceType - the fully qualified interface name of the plugin type
        name - the name/short description of the plugin to get
        Returns:
        true if the named plugin exists
      • getPluginInstance

        public static java.lang.Object getPluginInstance(java.lang.String interfaceType,
                                                         java.lang.String name)
                                                  throws java.lang.Exception
        Get an instance of a concrete implementation of a plugin type
        Parameters:
        interfaceType - the fully qualified interface name of the plugin type
        name - the name/short description of the plugin to get
        Returns:
        the concrete plugin or null if the plugin is disabled
        Throws:
        java.lang.Exception - if the plugin can't be found or instantiated

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.