A self hosted chat application with end-to-end encrypted messaging.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
880 B

  1. package org.ros.chatto.logged;
  2. import java.io.IOException;
  3. import javax.servlet.ServletException;
  4. import javax.servlet.http.HttpServletRequest;
  5. import javax.servlet.http.HttpServletResponse;
  6. import javax.servlet.http.HttpSession;
  7. import org.springframework.security.core.Authentication;
  8. import org.springframework.security.web.authentication.logout.LogoutSuccessHandler;
  9. import org.springframework.stereotype.Component;
  10. @Component("myLogoutSuccessHandler")
  11. public class UserSessionLoggingLogoutSuccessHandler
  12. implements LogoutSuccessHandler {
  13. @Override
  14. public void onLogoutSuccess(HttpServletRequest request,
  15. HttpServletResponse response, Authentication authentication)
  16. throws IOException, ServletException {
  17. HttpSession session = request.getSession();
  18. if (session != null) {
  19. session.removeAttribute("user");
  20. }
  21. response.sendRedirect("/login?logout");
  22. }
  23. }