code: private static void setPrivateAttributes(HttpServletRequest req, String key, Object object) {
          HttpServletRequest sr = req;
          if (sr instanceof HttpServletRequestWrapper) {
              HttpServletRequestWrapper w = (HttpServletRequestWrapper) sr;
              // make sure we drill all the way down to an SRTServletRequest...there
              // may be multiple proxied objects
              sr = (HttpServletRequest) w.getRequest();
              while (sr != null && sr instanceof HttpServletRequestWrapper)
                  sr = (HttpServletRequest) ((HttpServletRequestWrapper) sr).getRequest();
          }
          if (sr != null && sr instanceof IPrivateRequestAttributes) {
              ((IPrivateRequestAttributes) sr).setPrivateAttribute(key, object);
          }
      }
docs: TODO find a good home somewhere