code: private void delegate(RequestDelegationService service, HttpServletRequest request, HttpServletResponse response,
          FilterChain filterChain) {
          try {
              service.delegate(request, response, filterChain);
          } catch (Exception e) {
              throw new RequestDelegationException(
                  String.format("The request processing delegation failed: %s", e.getCause()), e);
          }
      }
docs: Delegates given request and response to be processed by given service.
  
  @throws RequestDelegationException in case the delegated request processing fails