Package org.firebirdsql.gds.ng.wire.auth.srp

## Class AbstractSrpAuthenticationPluginSpi

- java.lang.Object
- - org.firebirdsql.gds.ng.wire.auth.srp.AbstractSrpAuthenticationPluginSpi

- All Implemented Interfaces:
    `AuthenticationPluginSpi`
  Direct Known Subclasses:
    `Srp224AuthenticationPluginSpi`, `Srp256AuthenticationPluginSpi`, `Srp384AuthenticationPluginSpi`, `Srp512AuthenticationPluginSpi`, `SrpAuthenticationPluginSpi`

      public abstract class AbstractSrpAuthenticationPluginSpi
      extends java.lang.Object
      implements AuthenticationPluginSpi

  Base class for SRP authentication plugin providers.
  Since:
    4.0
  Author:
    Mark Rotteveel

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `AbstractSrpAuthenticationPluginSpi​(java.lang.String pluginName, java.lang.String clientProofHashAlgorithm)` | Initializes this Srp provider.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `AuthenticationPlugin` | `createPlugin()` |
    `java.lang.String` | `getPluginName()` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AbstractSrpAuthenticationPluginSpi

          protected AbstractSrpAuthenticationPluginSpi​(java.lang.String pluginName,
                                                       java.lang.String clientProofHashAlgorithm)
                                                throws java.sql.SQLException

      Initializes this Srp provider.
      Parameters:
        `pluginName` - Firebird name of the authentication plugin
        `clientProofHashAlgorithm` - Client proof hash algorithm
      Throws:
        `java.sql.SQLException` - If the `clientProofHashAlgorithm` is not supported by the JVM.

  - ### Method Detail

    - #### getPluginName

          public final java.lang.String getPluginName()

      Specified by:
        `getPluginName` in interface `AuthenticationPluginSpi`
      Returns:
        Name of the plugin as used by Firebird

    - #### createPlugin

          public final AuthenticationPlugin createPlugin()

      Specified by:
        `createPlugin` in interface `AuthenticationPluginSpi`
      Returns:
        Plugin instance