Class AddStatusToResponse

    • Field Detail

      • log

        @Nonnull
        private org.slf4j.Logger log
        Class logger.
      • detailedErrorsCondition

        @Nonnull
        private Predicate<ProfileRequestContext> detailedErrorsCondition
        Predicate determining whether detailed error information is permitted.
      • defaultStatusCodes

        @Nonnull
        @NonnullElements
        private List<QName> defaultStatusCodes
        One or more default status codes to insert.
      • statusMessage

        @Nullable
        private String statusMessage
        A default status message to include.
      • detailedErrors

        private boolean detailedErrors
        Whether to include detailed status information.
      • response

        @Nullable
        private Response response
        Response to modify.
    • 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<QName>> 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
      • setResponseLookupStrategy

        public void setResponseLookupStrategy​(@Nonnull
                                              Function<ProfileRequestContext,​Response> strategy)
        Set the strategy used to locate the Response to operate on.
        Parameters:
        strategy - strategy used to locate the Response to operate on
      • setStatusCodes

        public void setStatusCodes​(@Nonnull @NonnullElements
                                   List<QName> codes)
        Set the default 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
      • buildStatusCode

        private void buildStatusCode​(@Nonnull
                                     Status status,
                                     @Nonnull @NonnullElements
                                     List<QName> 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