Annotation Interface DeprecatedPluginName


@Retention(RUNTIME) @Target(TYPE) public @interface DeprecatedPluginName

Annotates a @Plugin implementation class whose fully-qualified type name has been changed and whose old name should no longer be used to refer to it.

Plugin implementations should ideally have a single, canonical name (the fully-qualified class name), so this annotation is not intended to provide a general purpose plugin aliasing facility. Instead, it is provided as a way of "renaming a plugin" while maintaining backwards compatibility with configuration files that continue to use the old implementation class name. When a plugin implementation is instantiated using the old name a warning will be logged prompting the end user to update their configuration to use the new name.

If a plugin implementation class itself is deprecated then the @Deprecated annotation should be used on that class instead.

  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The fully qualified class name by which this plugin was previously known.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Returns the version in which the name became deprecated.
  • Element Details

    • oldName

      String oldName
      The fully qualified class name by which this plugin was previously known.
    • since

      String since
      Returns the version in which the name became deprecated.
      Default:
      ""