Interface IdPPlugin

All Known Implementing Classes:
AbstractIdPPlugin, FirstPartyIdPPlugin, PropertyDrivenIdPPlugin

public interface IdPPlugin
This interface is exported (via the service API) by every IdP plugin.
Since:
4.1.0
  • Method Details

    • getPluginId

      @Nonnull @NotEmpty String getPluginId()
      Return the unique identifier for the plugin. This name MUST be
      • renderable in all file systems (for instance alphanumerics, '-' and '.' only)
      • unique. This is best done using java module guidance
      For instance org.example.plugins.myplugin
      Returns:
      The id of this plugin.
    • getUpdateURLs

      @Nonnull @NonnullElements @Unmodifiable @NotLive List<URL> getUpdateURLs() throws IOException
      Return the places to look for information for this plugin package. The format of the (property) file at this location is fixed.
      Returns:
      Zero or more URLs
      Throws:
      IOException - if the resource construction failed.
    • getMajorVersion

      @Nonnegative int getMajorVersion()
      Return the major version, (as defined by the Java Product Version Policy.
      Returns:
      The major version.
    • getMinorVersion

      @Nonnegative int getMinorVersion()
      Return the minor version, (as defined by the Java Product Version Policy.
      Returns:
      The minor version.
    • getPatchVersion

      @Nonnegative int getPatchVersion()
      Return The patch version, (as defined by the Java Product Version Policy.
      Returns:
      The patch version.
    • getLicenseFileLocation

      @Nullable String getLicenseFileLocation()
      Return the classpath location of the license file to emit when --license is specified.
      Returns:
      the location
    • getRequiredModules

      @Nonnull @NonnullElements @Unmodifiable @NotLive Set<String> getRequiredModules()
      Get the IDs of any IdPModules required for installation of this plugin.
      Returns:
      module IDs that are required
    • getEnableOnInstall

      @Nonnull @NonnullElements @Unmodifiable @NotLive Set<IdPModule> getEnableOnInstall()
      Get the modules to enable after plugin installation or upgrade.
      Returns:
      modules to enable
    • getDisableOnRemoval

      @Nonnull @NonnullElements @Unmodifiable @NotLive Set<IdPModule> getDisableOnRemoval()
      Get the modules to disable after plugin removal.
      Returns:
      modules to disable