Package com.iizix

Interface IPluginDescriptor<T extends PropCnr>

  • All Known Implementing Classes:
    Descriptor, Descriptor, Descriptor

    public interface IPluginDescriptor<T extends PropCnr>
    Plug-in descriptor used for the Server to load the plug-in's XML schema and get the appropriate class loader.
    Author:
    Christopher Mindus
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and TypeMethodDescription
      static java.util.List<java.net.URL>classpathEntriesFromClasses​(java.lang.Class<?>... classes)
      Default implementation of getClasspathEntries() that can be used, but should be cached into a variable to avoid calculation.
      java.lang.ClassLoadergetClassLoader()
      Gets the class loader to use for loading properties classes.
      java.util.List<java.net.URL>getClasspathEntries()
      Gets the URL's to the required classpath entries when running in the Server.
      java.lang.StringgetDescription()
      Gets the description of the plug-in.
      java.lang.StringgetID()
      Gets the ID of the plug-in, e.g.
      java.lang.StringgetModuleDirectory()
      Gets the directory name in Module projects.
      java.lang.StringgetModuleFileExtension()
      Gets the file extension.
      java.net.URLgetPropertiesURL()
      Gets the properties file URL for "properties.xml".
      java.lang.Class<T>getPropertyClass()
      Gets the property class for files.
      java.lang.Class<T>[]getPropertyClasses()
      Gets all the possible property class for files in case there is more than one.
      java.lang.StringgetServerID()
      Gets the ID of the plug-in, e.g.
    • Method Detail

      • getID

        java.lang.String getID()
        Gets the ID of the plug-in, e.g. "com.iizigo.db".
        Returns:
        Predefined descriptors such as Images, Panels, etc, return null.
      • getServerID

        java.lang.String getServerID()
        Gets the ID of the plug-in, e.g. "com.iizix.db".
        Returns:
        Predefined descriptors such as Images, Panels, etc, return null.
      • getDescription

        java.lang.String getDescription()
        Gets the description of the plug-in.
        Returns:
        The description.
      • getPropertiesURL

        java.net.URL getPropertiesURL()
        Gets the properties file URL for "properties.xml".
        Returns:
        The URL for the properties file.
      • getClassLoader

        java.lang.ClassLoader getClassLoader()
        Gets the class loader to use for loading properties classes.
        Returns:
        A class loader or null to use the default class loader.
      • getModuleDirectory

        java.lang.String getModuleDirectory()
        Gets the directory name in Module projects.
        Returns:
        The module directory name.
      • getModuleFileExtension

        java.lang.String getModuleFileExtension()
        Gets the file extension.
        Returns:
        The file extension used in Module projects, null for all.
      • getPropertyClass

        java.lang.Class<T> getPropertyClass()
        Gets the property class for files.
        Returns:
        The main property class used, null if there are multiple ones, in which case the getPropertyClasses() method must be used.
      • getPropertyClasses

        java.lang.Class<T>[] getPropertyClasses()
        Gets all the possible property class for files in case there is more than one.
        Returns:
        The main property class used.
      • getClasspathEntries

        java.util.List<java.net.URL> getClasspathEntries()
        Gets the URL's to the required classpath entries when running in the Server. This method is also called from the Designer, and the reply should include a representation of the same libraries or paths.
        Returns:
        A list of the classpath entries, or null for no special processing.
      • classpathEntriesFromClasses

        static java.util.List<java.net.URL> classpathEntriesFromClasses​(java.lang.Class<?>... classes)
        Default implementation of getClasspathEntries() that can be used, but should be cached into a variable to avoid calculation.
        Parameters:
        classes - A list of classes where to grab URL's and check the classpath. Use a class from every bundle or Jar to get all URL's.
        Returns:
        A list of URL's without duplicates, in the ordering of the classes.