public interface ClientSession extends Session
This interface represents the client side Bayeux session.
In addition to the common Bayeux session, this
interface provides method to configure extension, access channels
and to initiate the communication with a Bayeux server(s).
| Modifier and Type | Interface and Description |
|---|---|
static interface |
ClientSession.Extension
Extension API for client session.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addExtension(ClientSession.Extension extension)
Adds an extension to this session.
|
ClientSessionChannel |
getChannel(String channelName)
Returns a client side channel scoped by this session.
|
List<ClientSession.Extension> |
getExtensions() |
void |
handshake()
Equivalent to
handshake(null). |
void |
handshake(Map<String,Object> template)
Initiates the bayeux protocol handshake with the server(s).
|
void |
removeExtension(ClientSession.Extension extension)
Removes an extension from this session.
|
batch, disconnect, endBatch, getAttribute, getAttributeNames, getId, isConnected, isHandshook, removeAttribute, setAttribute, startBatchvoid addExtension(ClientSession.Extension extension)
extension - the extension to addremoveExtension(Extension)void removeExtension(ClientSession.Extension extension)
extension - the extension to removeaddExtension(Extension)List<ClientSession.Extension> getExtensions()
addExtension(Extension)void handshake()
Equivalent to handshake(null).
void handshake(Map<String,Object> template)
Initiates the bayeux protocol handshake with the server(s).
The handshake initiated by this method is asynchronous and does not wait for the handshake response.
template - additional fields to add to the handshake message.ClientSessionChannel getChannel(String channelName)
Returns a client side channel scoped by this session.
The channel name may be for a specific channel (e.g. "/foo/bar") or for a wild channel (e.g. "/meta/**" or "/foo/*").
This method will always return a channel, even if the the channel has not been created on the server side. The server side channel is only involved once a publish or subscribe method is called on the channel returned by this method.
Typical usage examples are:
clientSession.getChannel("/foo/bar").subscribe(mySubscriptionListener);
clientSession.getChannel("/foo/bar").publish("Hello");
clientSession.getChannel("/meta/*").addListener(myMetaChannelListener);
channelName - specific or wild channel name.Copyright © 2008-2012 Dojo Foundation. All Rights Reserved.