Class AddStatusToResponse

    • Constructor Detail

      • AddStatusToResponse

        public AddStatusToResponse()
        Constructor.
    • Method Detail

      • setDetailedErrorsCondition

        public void setDetailedErrorsCondition​(@Nonnull
                                               Predicate<ProfileRequestContext> condition)
        Set the predicate used to determine the detailed errors condition.
        Parameters:
        condition - predicate for detailed errors condition
      • setStatusCodesLookupStrategy

        public void setStatusCodesLookupStrategy​(@Nullable
                                                 Function<ProfileRequestContext,​List<String>> strategy)
        Set the optional strategy used to obtain status codes to include.
        Parameters:
        strategy - strategy used to obtain status codes
      • setStatusMessageLookupStrategy

        public void setStatusMessageLookupStrategy​(@Nullable
                                                   Function<ProfileRequestContext,​String> strategy)
        Set the optional strategy used to obtain a status message to include.
        Parameters:
        strategy - strategy used to obtain a status message
      • setStatusCodes

        public void setStatusCodes​(@Nonnull @NonnullElements
                                   List<String> codes)
        Set the list of status code values to insert, ordered such that the top level code is first and every other code will be nested inside the previous one.
        Parameters:
        codes - list of status code values to insert
      • setStatusMessage

        public void setStatusMessage​(@Nullable
                                     String message)
        Set a default status message to use in the event that error detail is off, or no specific message is obtained.
        Parameters:
        message - default status message
      • doPreExecute

        protected boolean doPreExecute​(@Nonnull
                                       ProfileRequestContext profileRequestContext)
        Called prior to execution, actions may override this method to perform pre-processing for a request.

        If false is returned, execution will not proceed, and the action should attach an EventContext to the context tree to signal how to continue with overall workflow processing.

        If returning successfully, the last step should be to return the result of the superclass version of this method.

        Overrides:
        doPreExecute in class AbstractProfileAction
        Parameters:
        profileRequestContext - the current IdP profile request context
        Returns:
        true iff execution should proceed
      • doExecute

        protected void doExecute​(@Nonnull
                                 ProfileRequestContext profileRequestContext)
        Performs this action. Actions must override this method to perform their work.
        Overrides:
        doExecute in class AbstractProfileAction
        Parameters:
        profileRequestContext - the current IdP profile request context
      • buildStatusCode

        private void buildStatusCode​(@Nonnull
                                     Status status,
                                     @Nonnull @NonnullElements
                                     List<String> codes)
        Build and attach StatusCode element.
        Parameters:
        status - the element to attach to
        codes - the status codes to use
      • buildStatusMessage

        private void buildStatusMessage​(@Nonnull
                                        Status status,
                                        @Nonnull @NotEmpty
                                        String message)
        Build and attach StatusMessage element.
        Parameters:
        status - the element to attach to
        message - the message to set