Main Page   Packages   Class Hierarchy   Compound List   File List   Compound Members  

SessionIdentifier Interface Reference

Inheritance diagram for SessionIdentifier:

Inheritance graph
[legend]
List of all members.

Public Methods

Protocol getProtocol ()
void unexport ()
Session_High bind (Session_Low hls) throws BindException, JonathanException

Detailed Description

A session identifier represents an exported session. In other words, it is a name, managed by a specific context of type Protocol, and representing a session.

The internal structure of a session identifier is protocol specific: each protocol may define its own SessionIdentifier type so that it can contain protocol specific information: host name, port...

Session identifiers are created when "server" objects are exported, and can typically be encoded in identifiers. On the "client" side, they can be decoded and used to establish communication channels.

See also:
Protocol

Definition at line 50 of file SessionIdentifier.java.


Member Function Documentation

Session_High SessionIdentifier::bind ( Session_Low hls )
 

Returns a local session representing the session designated by the provided lower session interface.

This operation is used by a protocol to establish a communication channel to the session specified by the target session identifier. The provided lower session interface is used to receive messages using the opened channel.

Parameters:
hls   a session to receive messages on the opened communication channel;
Returns:
a session to send messages to the remote session.
Exceptions:
BindException   if the bind process fails.
JonathanException   if something else goes wrong.
See also:
org.objectweb.jonathan.model.binderbind(org.objectweb.jonathan.model.name)

Reimplemented in GIOPProtocol::GIOPSrvSessionIdentifier, GIOPProtocol::GIOPCltSessionIdentifier, MulticastIpProtocol::MulticastIpSessionIdentifier, RTPProtocol::RTPSessionIdentifier, TcpIpProtocol::CltSessionIdentifier, and TcpIpProtocol::SrvSessionId.

Referenced by RTPProtocol::RTPSessionIdentifier::bind(), GIOPProtocol::GIOPCltSessionIdentifier::bind(), RefImpl::invoke(), JStubFactory::ClientDelegate::invoke(), OneWayRefImpl::invoke(), RefImpl::prepareInvocation(), and JStubFactory::ClientDelegate::request().

Protocol SessionIdentifier::getProtocol ( )
 

Returns the protocol that created this session identifier.

Returns:
the protocol that created this session identifier.

Reimplemented in GIOPProtocol::GIOPSrvSessionIdentifier, MulticastIpProtocol::MulticastIpSessionIdentifier, RTPProtocol::RTPSessionIdentifier, TcpIpProtocol::CltSessionIdentifier, and TcpIpProtocol::SrvSessionId.

void SessionIdentifier::unexport ( )
 

Unexporting a session identifier means that the target session identifier no longer designates the session it was created for. A session identifier must no longer be used after it has been "unexported".

Reimplemented in GIOPProtocol::GIOPSrvSessionIdentifier, GIOPProtocol::GIOPCltSessionIdentifier, MulticastIpProtocol::MulticastIpSessionIdentifier, RTPProtocol::RTPSessionIdentifier, TcpIpProtocol::CltSessionIdentifier, and TcpIpProtocol::SrvSessionId.

Referenced by RTPProtocol::RTPSessionIdentifier::unexport(), and GIOPProtocol::GIOPSrvSessionIdentifier::unexport().


The documentation for this interface was generated from the following file:
Generated at Fri May 31 19:25:21 2002 for Jonathan by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001