org.keycloak.services.clientpolicy.executor

## Interface ClientPolicyExecutorProvider<CONFIG extends ClientPolicyExecutorConfiguration>

- All Superinterfaces:
    Provider
  All Known Implementing Classes:
    ConfidentialClientAcceptExecutor, ConsentRequiredExecutor, HolderOfKeyEnforceExecutor, PKCEEnforceExecutor, SecureClientAuthEnforceExecutor, SecureRedirectUriEnforceExecutor, SecureRequestObjectExecutor, SecureResponseTypeExecutor, SecureSessionEnforceExecutor, SecureSigningAlgorithmEnforceExecutor, SecureSigningAlgorithmForSignedJwtEnforceExecutor

      public interface ClientPolicyExecutorProvider<CONFIG extends ClientPolicyExecutorConfiguration>
      extends Provider

  This executor specifies what action is executed on the client to which a client policy is adopted. The executor can be executed on the events defined in `ClientPolicyEvent`. It is sufficient for the implementer of this executor to implement methods in which they are interested and `isEvaluatedOnEvent` method.
  Author:
    Takashi Norimatsu

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default void` | `close()`
    `default void` | `executeOnEvent(ClientPolicyContext context)` execute actions against the client on the event defined in `ClientPolicyEvent`.
    `default Class<CONFIG>` | `getExecutorConfigurationClass()`
    `default String` | `getName()`
    `String` | `getProviderId()`
    `default void` | `setupConfiguration(CONFIG config)` setup this executor's configuration.

- - ### Method Detail

    - #### close

          default void close()

      Specified by:
        `close` in interface `Provider`

    - #### setupConfiguration

          default void setupConfiguration(CONFIG config)

      setup this executor's configuration.
      Parameters:
        `config` -

    - #### getExecutorConfigurationClass

          default Class<CONFIG> getExecutorConfigurationClass()

      Returns:
        Class, which should match the "config" argument of the `setupConfiguration(ClientPolicyExecutorConfiguration)`

    - #### executeOnEvent

          default void executeOnEvent(ClientPolicyContext context)
                               throws ClientPolicyException

      execute actions against the client on the event defined in `ClientPolicyEvent`.
      Parameters:
        `context` - - the context of the event.
      Throws:
        `{@link` - ClientPolicyException} - if something wrong happens when execution actions.
        `ClientPolicyException`

    - #### getName

          default String getName()

    - #### getProviderId

          String getProviderId()

Copyright © 2021 JBoss by Red Hat. All rights reserved.