Module org.firebirdsql.jaybird
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 Object implements AuthenticationPluginSpi
Base class for SRP authentication plugin providers.

Since:
  4.0
Author:
  Mark Rotteveel

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`AbstractSrpAuthenticationPluginSpi(String pluginName, String clientProofHashAlgorithm)`
Initializes this Srp provider.

## Method Summary

Modifier and Type
Method
Description
`final AuthenticationPlugin`
`createPlugin()`
`final String`
`getPluginName()`

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

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

## Constructor Details

### AbstractSrpAuthenticationPluginSpi

protected AbstractSrpAuthenticationPluginSpi(String pluginName, String clientProofHashAlgorithm) throws SQLException
Initializes this Srp provider.

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

## Method Details

### getPluginName

public final 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