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());
}
}
}