Class PluginDescriptor

java.lang.Object
com.iizigo.plugin.PluginDescriptor
All Implemented Interfaces:
IModuleDisposeListener, IModulePerspective, IProjectListener, IServerApplicationSetupProvider

public final class PluginDescriptor extends Object implements IModulePerspective, IProjectListener, IModuleDisposeListener, IServerApplicationSetupProvider
The plug-in descriptor for an iiziGo Designer plug-in.
Author:
Christopher Mindus
  • Field Details

    • pluginTitle

      public final String pluginTitle
      The plug-in title.
    • pluginDescription

      public final String pluginDescription
      The plug-in description.
    • serverPluginDescriptor

      public final IPluginDescriptor<?> serverPluginDescriptor
      The Server plug-in descriptor.
    • propertiesSchema

      public final String propertiesSchema
      The file name for properties (on the class path of the bundle). Set to null if none is required.
    • propertyClass

      public final Class<? extends PropCnr> propertyClass
      The class for the property containers for the files or the UI component.
    • fileExtension

      public final String fileExtension
      The file name extension for new files, includes the ".".

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • fileImageDescriptor

      public final ImageDescriptor fileImageDescriptor
      The image for files in the directory.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • fileTitle

      public final String fileTitle
      The file title.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • directory

      public final String directory
      The directory name for files.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • directoryImageDescriptor

      public final ImageDescriptor directoryImageDescriptor
      The image for the directory.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • directoryTitle

      public final String directoryTitle
      The Title for the directory.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • directoryDescription

      public final String directoryDescription
      The directory description.

      This member is only filled in by data connector plug-in's, otherwise it is null.

    • symbolicName

      public final String symbolicName
      The symbolic name of the plug-in.
  • Constructor Details

    • PluginDescriptor

      public PluginDescriptor(AbstractUIPlugin instance, IPluginInitialize callback, String pluginTitle, String pluginDescription, IPluginDescriptor<?> serverPluginDescriptor, String propertiesSchema, Class<? extends PropCnr> propertyClass)
      Constructor for data connector plug-in's.
      Parameters:
      instance - The plug-in instance.
      callback - The initialize plug-in callback.
      pluginTitle - The plug-in title.
      pluginDescription - The plug-in description.
      serverPluginDescriptor - The Server plug-in descriptor.
      propertiesSchema - The file name for properties (on the class path of the bundle).
      propertyClass - The class for the property containers for the files.
    • PluginDescriptor

      public PluginDescriptor(AbstractUIPlugin instance, IPluginInitialize callback, String pluginTitle, String pluginDescription, IPluginDescriptor<?> serverPluginDescriptor, String propertiesSchema, Class<? extends PropCnr> propertyClass, String fileExtension, ImageDescriptor fileImageDescriptor, String fileTitle, String directory, ImageDescriptor directoryImageDescriptor, String directoryTitle, String directoryDescription)
      Constructor for data connector plug-in's.
      Parameters:
      instance - The plug-in instance.
      callback - The initialize plug-in callback.
      pluginTitle - The plug-in title.
      pluginDescription - The plug-in description.
      serverPluginDescriptor - The Server plug-in descriptor.
      propertiesSchema - The file name for properties (on the class path of the bundle).
      propertyClass - The class for the property containers for the files.
      fileExtension - The file name extension for new files, includes the ".".
      fileImageDescriptor - The image for files in the directory.
      fileTitle - The file title.
      directory - The directory name for files.
      directoryImageDescriptor - The image for the directory.
      directoryTitle - The Title for the directory.
      directoryDescription - The directory description.
  • Method Details

    • getInstance

      public AbstractUIPlugin getInstance()
      Gets the plug-in instance.
    • isLoaded

      public boolean isLoaded()
      Checks if this plug-in's data has been loaded with an error or not.
    • initializeModule

      public final void initializeModule(ModuleModel model) throws CoreException
      Initializes the plug-in after the Module project has been loaded.
      Parameters:
      model - The Module project.
      Throws:
      CoreException - For initialization failures.
    • onInitialLayout

      public final void onInitialLayout(IPageLayout layout, IFolderLayout folder, IFolderLayout outlineFolder, IFolderLayout outputFolder)
      Called when the Module perspective has completed initializing itself with IIZI related items. Once the plug-ins complete their processing, additional Java and Java-EE items are added.
      Specified by:
      onInitialLayout in interface IModulePerspective
      Parameters:
      layout - The page layout.
      folder - The folder area, left side.
      outlineFolder - The outline folder on the right side, perhaps null (be careful!).
      outputFolder - The output folder area, bottom placement.
    • onProjectChanged

      public final void onProjectChanged(IResourceDelta delta)
      Called during workspace change to inform the plug-in of a project change.
      Specified by:
      onProjectChanged in interface IProjectListener
      Parameters:
      delta - The resource delta.
    • onModuleProjectDisposed

      public final void onModuleProjectDisposed(ModuleModel model)
      Called when a Module project is disposed of.
      Specified by:
      onModuleProjectDisposed in interface IModuleDisposeListener
    • onModuleProjectDeconfigured

      public final void onModuleProjectDeconfigured(ModuleModel model)
      Called when a Module project is de-configured from this plug-in.
      Specified by:
      onModuleProjectDeconfigured in interface IModuleDisposeListener
    • registerActionActorProvider

      public void registerActionActorProvider(IEditorActionActorProvider provider)
      Registers a new Action Actor provider.
    • getActionActorProviders

      public List<IEditorActionActorProvider> getActionActorProviders()
      Gets the list of Action Actors providers for the plug-in.
      Returns:
      The list of Action Actors providers.
    • getServerApplicationSetupInstances

      public IServerApplicationSetup[] getServerApplicationSetupInstances(PropCnr moduleRoot)
      Queries for instances of the IServerApplicationSetup required. This call makes it possible to redirect the query to other properties. Most plug-ins would have a single instance.
      Specified by:
      getServerApplicationSetupInstances in interface IServerApplicationSetupProvider
      Parameters:
      moduleRoot - The root of the Module application.
      Returns:
      The IServerApplicationSetup instances that is participating in the setup.
    • getDesignerClasspathEntries

      public List<URL> getDesignerClasspathEntries()
      Gets the list of classpath URL's used for the designer.
      Returns:
      The classpath entries required for the plugin when in designer mode, as an unmodifiable list.
    • equals

      public boolean equals(Object o)
      Checks for two plug-in descriptors for equality.
      Overrides:
      equals in class Object
      Parameters:
      o - The other plug-in descriptor.
      Returns:
      true if the plug-in descriptor ID's match.
    • hashCode

      public int hashCode()
      The hash code.
      Overrides:
      hashCode in class Object
      Returns:
      The hash code of the symbolic name of the plugin.