Pair<StaticServerContext, Queue<ServerEvent>> state;
try {
state = contexts.getOrCreate(credentials.getLeft(), new IFactory1<Pair<StaticServerContext, Queue<ServerEvent>>, LoginException>(){
public Pair<StaticServerContext, Queue<ServerEvent>> create() throws LoginException {
ServerContext serverContext = cspokerServer.login(credentials.getLeft(), credentials.getRight());
final ConcurrentLinkedQueue<ServerEvent> eventQueue = new ConcurrentLinkedQueue<ServerEvent>();
StaticServerContext staticServerContext = new XmlServerContext(serverContext,
new UniversalServerListener(
new ServerEventListener(){