Class AddMetadataStatementToClientMetadata

All Implemented Interfaces:
Component, DestructableComponent, InitializableComponent, ProfileAction, org.springframework.beans.factory.Aware, org.springframework.context.MessageSource, org.springframework.context.MessageSourceAware, org.springframework.webflow.execution.Action

public class AddMetadataStatementToClientMetadata extends AbstractOIDCClientMetadataPopulationAction
An action that adds the trusted metadata_statement chain (containing OP's signed key) to the metadata_statement claim in the response metadata. If the incoming message didn't contain metadata_statement, nothing will be done. If it contained only metadata_statements that are not trusted, an error event is raised. Otherwise, one matching federation is picked by random to the response metadata.
  • Field Details

    • log

      @Nonnull private final org.slf4j.Logger log
      Class logger.
    • statements

      private Map<String,String> statements
      The map of static metadata_statements, key for FO, value for the statement.
    • statementsLookupFunction

      private Function<ProfileRequestContext,Map<String,String>> statementsLookupFunction
      The lookup function for obtaining incoming metadata statements.
  • Constructor Details

    • AddMetadataStatementToClientMetadata

      public AddMetadataStatementToClientMetadata()
      Constructor.
  • Method Details

    • setMetadataStatements

      public void setMetadataStatements(Map<String,String> metadataStatements)
      Set the map of static metadata_statements, key for FO, value for the statement.
      Parameters:
      metadataStatements - The map of static metadata_statements, key for FO, value for the statement.
    • setStatementsLookupFunction

      public void setStatementsLookupFunction(Function<ProfileRequestContext,Map<String,String>> function)
      Set the lookup function for obtaining incoming metadata statements.
      Parameters:
      function - The lookup function for obtaining incoming metadata statements.
    • doExecute

      protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)
      Overrides:
      doExecute in class AbstractProfileAction