Class AbstractBuildErrorResponseFromEvent<T extends ErrorResponse>

Type Parameters:
T - ErrorResponse implementation.
All Implemented Interfaces:
Component, DestructableComponent, InitializableComponent, ProfileAction, Aware, MessageSource, MessageSourceAware, Action
Direct Known Subclasses:
BuildJSONErrorResponseFromEvent

public abstract class AbstractBuildErrorResponseFromEvent<T extends ErrorResponse> extends AbstractProfileAction
This action is extended by error response actions. Action reads an event from the configured EventContext lookup strategy, constructs an OIDC error response message and attaches it as the outbound message, if outbound message context was found.
Since:
2.2.0
  • Field Details

    • DEFAULT_ERROR_CODE

      public static final String DEFAULT_ERROR_CODE
      Default value for the error code in the error response messages.
      See Also:
    • DEFAULT_HTTP_STATUS_CODE

      public static final int DEFAULT_HTTP_STATUS_CODE
      Default value for the HTTP response status code in the HTTP responses.
      See Also:
    • log

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

      @Nonnull private Function<ProfileRequestContext,EventContext> eventContextLookupStrategy
      Strategy function for access to EventContext to check.
    • mappedErrors

      private Map<String,ErrorObject> mappedErrors
      Map of eventIds to pre-configured error objects.
    • defaultStatusCode

      private int defaultStatusCode
      The status code for unmapped events.
    • defaultCode

      private String defaultCode
      The code for unmapped events.
  • Constructor Details

    • AbstractBuildErrorResponseFromEvent

      public AbstractBuildErrorResponseFromEvent()
      Constructor.
  • Method Details

    • setDefaultStatusCode

      public void setDefaultStatusCode(int code)
      Set the status code for unmapped events.
      Parameters:
      code - The default status code for unmapped events.
    • setDefaultCode

      public void setDefaultCode(@Nonnull String code)
      Set the code for unmapped events.
      Parameters:
      code - The default status code for unmapped events.
    • setEventContextLookupStrategy

      public void setEventContextLookupStrategy(@Nonnull Function<ProfileRequestContext,EventContext> strategy)
      Set lookup strategy for EventContext to check.
      Parameters:
      strategy - lookup strategy
    • setMappedErrors

      public void setMappedErrors(@Nonnull Map<String,ErrorObject> errors)
      Set map of eventIds to pre-configured error objects.
      Parameters:
      errors - map of eventIds to pre-configured error objects.
    • buildErrorResponse

      @Nullable protected abstract T buildErrorResponse(@Nonnull ErrorObject error, @Nonnull ProfileRequestContext profileRequestContext)
      Method implemented by the extending class to create ErrorResponse.
      Parameters:
      error - error object to build the response from.
      profileRequestContext - profile request context.
      Returns:
      ErrorResponse
    • doPreExecute

      protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)
      Overrides:
      doPreExecute in class AbstractConditionalProfileAction
    • doExecute

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