Example usage for org.springframework.web.servlet HandlerInterceptor HandlerInterceptor

List of usage examples for org.springframework.web.servlet HandlerInterceptor HandlerInterceptor

Introduction

In this page you can find the example usage for org.springframework.web.servlet HandlerInterceptor HandlerInterceptor.

Prototype

HandlerInterceptor

Source Link

Usage

From source file:com.nominanuda.springmvc.HandlerMatcherMapping.java

private HandlerInterceptor convert(final HandlerFilter f) {

    return new HandlerInterceptor() {
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
                throws Exception {
            HttpRequest req = servletHelper.getOrCreateRequest(request, true);
            DataStruct cmd = Check.ifNull(servletHelper.getCommand(request), DS.newObject());
            Object handlerOutput = f.before(req, cmd, handler);
            if (handlerOutput == null) {
                return true;
            } else {
                servletHelper.storeHandlerOutput(request, handlerOutput);
                getDispatcherServletHelper().renderHandlerOutput(request, response, handlerOutput);
                return false;
            }//from   w  w  w  . j av  a 2 s  .co  m
        }

        private DispatcherServletHelper getDispatcherServletHelper() {
            if (dispatcherServletHelper == null) {
                dispatcherServletHelper = new DispatcherServletHelper();
                dispatcherServletHelper.setApplicationContext(applicationContext);
                dispatcherServletHelper.init();
            }
            return dispatcherServletHelper;
        }

        public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
                ModelAndView modelAndView) throws Exception {
            f.after(servletHelper.getOrCreateRequest(request, true), servletHelper.getCommand(request), handler,
                    servletHelper.getHandlerOutput(request));
        }

        public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
                Exception ex) throws Exception {
            f.afterCompletion(servletHelper.getOrCreateRequest(request, true),
                    servletHelper.getResponse(request), handler, servletHelper.getHandlerOutput(request), ex);
        }
    };
}

From source file:org.jmxtrans.embedded.samples.cocktail.WebConfig.java

@Override
public void addInterceptors(InterceptorRegistry registry) {
    super.addInterceptors(registry);
    registry.addInterceptor(new HandlerInterceptor() {
        @Override//from   w  w w .  jav  a2  s. c o  m
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
                throws Exception {
            return true;
        }

        @Override
        public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
                ModelAndView modelAndView) throws Exception {
            ShoppingCart shoppingCart = shoppingCartRepository.getCurrentShoppingCart(request);
            request.setAttribute("shoppingCart", shoppingCart);
        }

        @Override
        public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
                Exception ex) throws Exception {
        }
    });
}