com.sun.im.service
Interface CollaborationSessionProvider


public interface CollaborationSessionProvider

Interface defining a Collaboratio Session Provider. implementations of this interface are loaded by CollaborationSessionFactory.


Method Summary
 void close()
          tells the provider to release any resources.
 ApplicationInfo getApplicationInfo()
           
 CollaborationSession getSession(java.security.Principal principal, CollaborationSessionListener listener)
          creates a client session.
 CollaborationSession getSession(java.lang.String uid, CollaborationSessionListener listener)
          creates a client session.
 CollaborationSession getSession(java.lang.String serviceUrl, java.lang.String loginName, java.lang.String password, CollaborationSessionListener listener)
          creates a collaboration session.
 void register(java.lang.String serviceURL, RegistrationListener listener)
          registers the user with the server
 void setApplicationInfo(ApplicationInfo appinfo)
           
 

Method Detail

getSession

public CollaborationSession getSession(java.lang.String serviceUrl,
                                       java.lang.String loginName,
                                       java.lang.String password,
                                       CollaborationSessionListener listener)
                                throws CollaborationException
creates a collaboration session.

Parameters:
serviceUrl - URL for the authentication service (hostname and port).
loginName - login name
password - user password
listener - session listener to convey asynchronous errors and events.
Returns:
an authenticated collaboration services session.
Throws:
CollaborationException

getSession

public CollaborationSession getSession(java.security.Principal principal,
                                       CollaborationSessionListener listener)
                                throws CollaborationException
creates a client session. This method is used in cases where the iCAPI implementation does not perform authentication directly. It allows an authenticated user session to be used to create a collaboration session.

Parameters:
principal - authenticated client
listener - session listener to convey asynchronous errors and events.
Returns:
a collaboration services session.
Throws:
CollaborationException

getSession

public CollaborationSession getSession(java.lang.String uid,
                                       CollaborationSessionListener listener)
                                throws CollaborationException
creates a client session. This method is used in cases where the iCAPI implementation does not need to perform or leverage any authentication in order to create a session object.

Parameters:
uid - fully-qualified user id
listener - session listener to convey asynchronous errors and events.
Returns:
a collaboration services session.
Throws:
CollaborationException

register

public void register(java.lang.String serviceURL,
                     RegistrationListener listener)
              throws CollaborationException
registers the user with the server

Parameters:
serviceURL - hostname of the IM server
listener - registration listener to convey asynchronous registration events.
Returns:
true if registration is successful
Throws:
CollaborationException

setApplicationInfo

public void setApplicationInfo(ApplicationInfo appinfo)
                        throws CollaborationException
Throws:
CollaborationException

getApplicationInfo

public ApplicationInfo getApplicationInfo()
                                   throws CollaborationException
Throws:
CollaborationException

close

public void close()
tells the provider to release any resources.