package no.dusken.aranea.admin.listener; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationListener; import org.springframework.security.authentication.event.AuthenticationSuccessEvent; import org.springframework.security.core.userdetails.UserDetails; /** * @author Benjamin Bjørnseth <benjamin@underdusken.no> */ public class LoginListener implements ApplicationListener<AuthenticationSuccessEvent> { private final Logger logger = LoggerFactory.getLogger(LoginListener.class); @Override public void onApplicationEvent(AuthenticationSuccessEvent successEvent) { Object principal = successEvent.getAuthentication().getPrincipal(); if (principal instanceof UserDetails) { UserDetails details = (UserDetails)principal; logger.info(String.format("%s logged in", details.getUsername())); } else { logger.info(principal.toString()); } } }