Package org.cometd.server
Class LocalSessionImpl
- java.lang.Object
-
- org.cometd.common.AbstractClientSession
-
- org.cometd.server.LocalSessionImpl
-
- All Implemented Interfaces:
org.cometd.bayeux.client.ClientSession
,org.cometd.bayeux.server.LocalSession
,org.cometd.bayeux.Session
,org.eclipse.jetty.util.component.Dumpable
public class LocalSessionImpl extends org.cometd.common.AbstractClientSession implements org.cometd.bayeux.server.LocalSession
A
LocalSession
implementation.This
LocalSession
implementation communicates with itsServerSession
counterpart without any serialization.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
LocalSessionImpl.LocalChannel
A channel scoped to this LocalSession.
-
Constructor Summary
Constructors Constructor Description LocalSessionImpl(BayeuxServerImpl bayeux, java.lang.String idHint)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
disconnect()
void
disconnect(org.cometd.bayeux.client.ClientSessionChannel.MessageListener callback)
protected void
doSend(ServerSessionImpl from, org.cometd.bayeux.server.ServerMessage.Mutable message)
Sends a message to the server.java.lang.String
getId()
org.cometd.bayeux.server.ServerSession
getServerSession()
void
handshake()
void
handshake(java.util.Map<java.lang.String,java.lang.Object> template)
void
handshake(java.util.Map<java.lang.String,java.lang.Object> template, org.cometd.bayeux.client.ClientSessionChannel.MessageListener callback)
boolean
isConnected()
boolean
isHandshook()
protected org.cometd.common.AbstractClientSession.AbstractSessionChannel
newChannel(org.cometd.bayeux.ChannelId channelId)
protected org.cometd.bayeux.ChannelId
newChannelId(java.lang.String channelId)
protected org.cometd.bayeux.server.ServerMessage.Mutable
newMessage()
void
receive(org.cometd.bayeux.Message.Mutable message)
protected void
send(org.cometd.bayeux.Message.Mutable message)
protected void
send(ServerSessionImpl session, org.cometd.bayeux.server.ServerMessage.Mutable message)
Enqueues or sends a message to the server.protected void
sendBatch()
java.lang.String
toString()
-
Methods inherited from class org.cometd.common.AbstractClientSession
addExtension, batch, dump, dump, endBatch, extendRcv, extendSend, getAttribute, getAttributeNames, getChannel, getChannel, getChannels, getExtensions, isBatching, newMessageId, notifyListener, notifyListeners, registerCallback, registerSubscriber, remoteCall, removeAttribute, removeExtension, resetSubscriptions, setAttribute, startBatch, unregisterCallback, unregisterSubscriber
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
LocalSessionImpl
public LocalSessionImpl(BayeuxServerImpl bayeux, java.lang.String idHint)
-
-
Method Detail
-
receive
public void receive(org.cometd.bayeux.Message.Mutable message)
- Overrides:
receive
in classorg.cometd.common.AbstractClientSession
-
newChannel
protected org.cometd.common.AbstractClientSession.AbstractSessionChannel newChannel(org.cometd.bayeux.ChannelId channelId)
- Specified by:
newChannel
in classorg.cometd.common.AbstractClientSession
-
newChannelId
protected org.cometd.bayeux.ChannelId newChannelId(java.lang.String channelId)
- Specified by:
newChannelId
in classorg.cometd.common.AbstractClientSession
-
sendBatch
protected void sendBatch()
- Specified by:
sendBatch
in classorg.cometd.common.AbstractClientSession
-
getServerSession
public org.cometd.bayeux.server.ServerSession getServerSession()
- Specified by:
getServerSession
in interfaceorg.cometd.bayeux.server.LocalSession
-
handshake
public void handshake()
- Specified by:
handshake
in interfaceorg.cometd.bayeux.client.ClientSession
-
handshake
public void handshake(java.util.Map<java.lang.String,java.lang.Object> template)
- Specified by:
handshake
in interfaceorg.cometd.bayeux.client.ClientSession
-
handshake
public void handshake(java.util.Map<java.lang.String,java.lang.Object> template, org.cometd.bayeux.client.ClientSessionChannel.MessageListener callback)
- Specified by:
handshake
in interfaceorg.cometd.bayeux.client.ClientSession
-
disconnect
public void disconnect()
- Specified by:
disconnect
in interfaceorg.cometd.bayeux.Session
-
disconnect
public void disconnect(org.cometd.bayeux.client.ClientSessionChannel.MessageListener callback)
- Specified by:
disconnect
in interfaceorg.cometd.bayeux.client.ClientSession
-
getId
public java.lang.String getId()
- Specified by:
getId
in interfaceorg.cometd.bayeux.Session
-
isConnected
public boolean isConnected()
- Specified by:
isConnected
in interfaceorg.cometd.bayeux.Session
-
isHandshook
public boolean isHandshook()
- Specified by:
isHandshook
in interfaceorg.cometd.bayeux.Session
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
send
protected void send(org.cometd.bayeux.Message.Mutable message)
- Specified by:
send
in classorg.cometd.common.AbstractClientSession
-
send
protected void send(ServerSessionImpl session, org.cometd.bayeux.server.ServerMessage.Mutable message)
Enqueues or sends a message to the server.
This method will either enqueue the message, if this session
is batching
, or perform the actual send by callingdoSend(ServerSessionImpl, ServerMessage.Mutable)
.- Parameters:
session
- The ServerSession to send as. This normally the current server session, but during handshake it is a proposed server session.message
- The message to send.
-
doSend
protected void doSend(ServerSessionImpl from, org.cometd.bayeux.server.ServerMessage.Mutable message)
Sends a message to the server.
- Parameters:
from
- The ServerSession to send as. This normally the current server session, but during handshake it is a proposed server session.message
- The message to send.
-
newMessage
protected org.cometd.bayeux.server.ServerMessage.Mutable newMessage()
- Overrides:
newMessage
in classorg.cometd.common.AbstractClientSession
-
-