package br.gov.serpro.treino.web; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.log4j.Logger; import br.gov.serpro.treino.config.TreinoConfig; import br.gov.serpro.treino.constant.Navigation; public class AuthenticationFilter implements Filter { private static Logger log = Logger.getLogger(AuthenticationFilter.class); public void init(FilterConfig arg0) throws ServletException { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) { try { int sleep = (TreinoConfig.getDelay() * 1000)/2; Thread.sleep(sleep); log.debug("sleep:" + sleep); log.debug(request); HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletResponse httpResponse = (HttpServletResponse) response; HttpSession session = httpRequest.getSession(); String username = (String) session.getAttribute("username"); log.debug("user: " + username); if (username != null && !username.equals("")) { chain.doFilter(request, response); } else { log.debug("redirect login"); httpResponse.sendRedirect(httpRequest.getContextPath() + Navigation.LOGIN); } } catch (Exception e) { } } public void destroy() { } }