001package org.nuxeo.ecm.platform.web.common.requestcontroller.filter; 002 003import java.io.IOException; 004 005import javax.servlet.FilterChain; 006import javax.servlet.FilterConfig; 007import javax.servlet.ServletException; 008import javax.servlet.ServletRequest; 009import javax.servlet.ServletResponse; 010 011import org.nuxeo.runtime.trackers.concurrent.ThreadEvent; 012 013public class NuxeoThreadTrackerFilter implements javax.servlet.Filter { 014 015 @Override 016 public void init(FilterConfig filterConfig) throws ServletException { 017 } 018 019 @Override 020 public void destroy() { 021 } 022 023 @Override 024 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, 025 ServletException { 026 ThreadEvent.onEnter(this, false).send(); 027 try { 028 chain.doFilter(request, response); 029 } finally { 030 ThreadEvent.onLeave(this).send(); 031 } 032 } 033 034}