SimpleAuthConfigProvider (Apache Tomcat 10.1.57 API Documentation)
Description: declaration: package: org.apache.catalina.authenticator.jaspic, class: SimpleAuthConfigProvider

# Class SimpleAuthConfigProvider

java.lang.Object
org.apache.catalina.authenticator.jaspic.SimpleAuthConfigProvider

All Implemented Interfaces:
  `AuthConfigProvider`

public class SimpleAuthConfigProvider extends Object implements AuthConfigProvider
Basic implementation primarily intended for use when using third-party `ServerAuthModule` implementations that only provide the module.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SimpleAuthConfigProvider(Map<String,Object> properties, AuthConfigFactory factory)`
  Creates a new SimpleAuthConfigProvider.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected ServerAuthConfig`
  `createServerAuthConfig(String layer, String appContext, CallbackHandler handler, Map<String,Object> properties)`
  Creates the ServerAuthConfig.
  `ClientAuthConfig`
  `getClientAuthConfig(String layer, String appContext, CallbackHandler handler)`
  Returns the client-side authentication configuration for the specified layer and application context.
  `ServerAuthConfig`
  `getServerAuthConfig(String layer, String appContext, CallbackHandler handler)`
  Returns the server-side authentication configuration for the specified layer and application context.
  `void`
  `refresh()`
  Refreshes the configuration, reloading any changed settings from the underlying source.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### SimpleAuthConfigProvider

    public SimpleAuthConfigProvider(Map<String,Object> properties, AuthConfigFactory factory)
    Creates a new SimpleAuthConfigProvider.
    Parameters:
      `properties` - Properties to pass to the ServerAuthConfig
      `factory` - AuthConfigFactory to register this provider with, or `null`

- ## Method Details

  - ### getClientAuthConfig

    public ClientAuthConfig getClientAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
    Returns the client-side authentication configuration for the specified layer and application context.

    This implementation does not support client-side authentication and therefore always returns `null`.

    Specified by:
      `getClientAuthConfig` in interface `AuthConfigProvider`
    Parameters:
      `layer` - the message layer
      `appContext` - the application context
      `handler` - the callback handler for obtaining sensitive configuration data
    Returns:
      the ClientAuthConfig, or `null` if no configuration is available
    Throws:
      `AuthException` - if an error occurs while retrieving the configuration

  - ### getServerAuthConfig

    public ServerAuthConfig getServerAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
    Returns the server-side authentication configuration for the specified layer and application context.

    The returned ServerAuthConfig is created lazily and cached.

    Specified by:
      `getServerAuthConfig` in interface `AuthConfigProvider`
    Parameters:
      `layer` - the message layer
      `appContext` - the application context
      `handler` - the callback handler for obtaining sensitive configuration data
    Returns:
      the ServerAuthConfig, or `null` if no configuration is available
    Throws:
      `AuthException` - if an error occurs while retrieving the configuration

  - ### createServerAuthConfig

    protected ServerAuthConfig createServerAuthConfig(String layer, String appContext, CallbackHandler handler, Map<String,Object> properties)
    Creates the ServerAuthConfig. Can be overridden by subclasses to provide a custom implementation.
    Parameters:
      `layer` - Message layer
      `appContext` - Application context
      `handler` - Callback handler
      `properties` - Configuration properties
    Returns:
      The ServerAuthConfig instance

  - ### refresh

    public void refresh()
    Refreshes the configuration, reloading any changed settings from the underlying source.

    Delegates refresh to the cached ServerAuthConfig if one has been created.

    Specified by:
      `refresh` in interface `AuthConfigProvider`