Annotation Interface PluginInfo


@Retention(RUNTIME) @Target(TYPE) public @interface PluginInfo
Information about a Ghidra Plugin.

Example:

 @PluginInfo(
        status = PluginStatus.RELEASED,
        packageName = CorePluginPackage.NAME,
        category = PluginCategoryNames.COMMON,
        shortDescription = "Short description of plugin",
        description = "Longer description of plugin.",
        servicesProvided = { ServiceInterfaceThisPluginProvides.class }
        servicesRequired = { RequiredServiceInterface1.class, RequiredServiceInterface2.class },
        eventsConsumed = { SomePluginEvent.class },
        eventsProduced = { AnotherPluginEvent.class },
        isSlowInstallation = false
 )
 
  • Element Details

    • status

      PluginStatus status
      The PluginStatus of this plugin: STABLE , RELEASED, HIDDEN, UNSTABLE

      Returns:
      STABLE , RELEASED, HIDDEN, UNSTABLE, etc.
    • packageName

      String packageName
      The package name this plugin belongs in.

      Use XYZPluginPackage.NAME

      Returns:
      String package name
    • category

      String category
      See PluginCategoryNames

      • PluginCategoryNames.COMMON
      • PluginCategoryNames.SUPPORT
      • PluginCategoryNames.etc
      Returns:
      String category
    • shortDescription

      String shortDescription
      A brief description of what the plugin does.

      This string probably should not end with a "." character.

      Returns:
      String brief description of what the plugin does.
    • description

      String description
      The long description of what the plugin does.

      This string probably should end with a "." character.

      Returns:
      String description of what the plugin does
    • isSlowInstallation

      boolean isSlowInstallation
      Signals that this plugin loads slowly.
      Returns:
      boolean
      Default:
      false
    • eventsConsumed

      Class<? extends PluginEvent>[] eventsConsumed
      List of PluginEvents (classes) that this Plugin consumes.
      Returns:
      PluginEvent class list, defaults to empty.
      Default:
      {}
    • eventsProduced

      Class<? extends PluginEvent>[] eventsProduced
      List of PluginEvent (classes) that this Plugin produces.
      Returns:
      PluginEvent class list, defaults to empty.
      Default:
      {}
    • servicesRequired

      Class<?>[] servicesRequired
      List of service interface Classes that this Plugin requires (depends on).
      Returns:
      List of Classes, defaults to empty.
      Default:
      {}
    • servicesProvided

      Class<?>[] servicesProvided
      List of service interface Classes that this Plugin provides.
      Returns:
      List of Classes, defaults to empty.
      Default:
      {}