Introducing Spring Security
SwitchUserFilter
Adding Guava
Handling X-Switch-User-Once header
Inserting user name in every log statement
Make sure only supervisor can switch users
Moving to separate package
Listening to switch user events
Avoid downcasting