public class RequestImpl extends Object implements Request, org.atmosphere.cpr.AtmosphereResourceEventListener
Current implementation of Request wraps AtmosphereResource class.
Request connects to push session to have messages written to the client and provides MessageListener interfacefor that. Current implementation of Session connects provided MessageListener to JMS bus. Also request connection notifies session manager about session activity, so that it is marked active and disconnection sets session manager to start session expiration counter.
Constructor and Description |
---|
RequestImpl(org.atmosphere.cpr.Meteor meteor,
Session session) |
Modifier and Type | Method and Description |
---|---|
Session |
getSession()
Returns a user push session associated with this request
|
boolean |
isPolling()
Returns true if this request represents long-polling request
|
void |
onBroadcast(org.atmosphere.cpr.AtmosphereResourceEvent event)
This method is called once the broadcast event occurs.
|
void |
onClose(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent) |
void |
onDisconnect(org.atmosphere.cpr.AtmosphereResourceEvent event) |
void |
onHeartbeat(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent) |
void |
onPreSuspend(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent) |
void |
onResume(org.atmosphere.cpr.AtmosphereResourceEvent event) |
void |
onSuspend(org.atmosphere.cpr.AtmosphereResourceEvent event) |
void |
onThrowable(org.atmosphere.cpr.AtmosphereResourceEvent event) |
void |
postMessages()
Tries to push messages, when there are some in the session's queue.
|
void |
resume()
Resume the underlying response object
|
void |
suspend()
suspends an underlying response object
|
public RequestImpl(org.atmosphere.cpr.Meteor meteor, Session session)
public void suspend()
Request
public void resume()
Request
public boolean isPolling()
Request
public Session getSession()
Request
getSession
in interface Request
public void postMessages()
Tries to push messages, when there are some in the session's queue.
When detects that request is currently broadcasting, it ignores the call, since the sending of the messages will be
proceed later as stated by onBroadcast(AtmosphereResourceEvent)
method.
postMessages
in interface Request
public void onPreSuspend(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent)
onPreSuspend
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onClose(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent)
onClose
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onHeartbeat(org.atmosphere.cpr.AtmosphereResourceEvent atmosphereResourceEvent)
onHeartbeat
in interface org.atmosphere.cpr.AtmosphereResourceHeartbeatEventListener
public void onSuspend(org.atmosphere.cpr.AtmosphereResourceEvent event)
onSuspend
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onResume(org.atmosphere.cpr.AtmosphereResourceEvent event)
onResume
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onDisconnect(org.atmosphere.cpr.AtmosphereResourceEvent event)
onDisconnect
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onBroadcast(org.atmosphere.cpr.AtmosphereResourceEvent event)
This method is called once the broadcast event occurs.
Once this event occurs, he broadcasting is done, so we can clean up.
This method clears the broadcasted messages from session and then opens the request for further broadcasting.
In case this request is long-polling, the request is completed and client needs to start new request for receiving new messages.
In another case - the request is done by websocket - it tries to send messages which could be posted when broadcasting.
onBroadcast
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
public void onThrowable(org.atmosphere.cpr.AtmosphereResourceEvent event)
onThrowable
in interface org.atmosphere.cpr.AtmosphereResourceEventListener
Copyright © 2015 JBoss by Red Hat. All Rights Reserved.