Keeping Track of AtmosphereResource between reconnection using an AtmosphereSession - Atmosphere/atmosphere GitHub Wiki

Starting with Atmosphere 2.1, The AtmosphereSession class can be used when an application needs to retrieve the AtmosphereResource associated with a remote client's unique UUID. An AtmosphereResource is created when a connection is made to the server, and this object will stay valid until the connection is closed. If the connection gets closed, the AtmosphereResource will becomes invalid, hence an application refering this object will no longer be able to use it. Instead, it is recommended to use an AtmosphereSession and call the appropriate method to retrieve the AtmosphereResource. For example: as soon as the AtmosphereResource gets created, you create the AtmosphereSession

AtmosphereSession session = new AtmosphereSession(anAtmosphereResource);
// Store the session somewhere

Later, retrieve the same of newest AtmosphereResource representing the remote client

AtmosphereResource r = session.tryAcquire();

By default, the calling Thread will wait 30 seconds and then returns null in case the client hasn't connected. You can configure the timeout:

AtmosphereResource r = session.tryAcquire(5); // Wait 5 seconds, and return null in case no reconnect.