ome.services.blitz.fire
Class SessionManagerI

java.lang.Object
  extended by Ice.ObjectImpl
      extended by Glacier2._SessionManagerDisp
          extended by ome.services.blitz.fire.SessionManagerI
All Implemented Interfaces:
Glacier2._SessionManagerOperations, Glacier2._SessionManagerOperationsNC, Glacier2.SessionManager, Ice.Object, Serializable, Cloneable, EventListener, org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationListener

public final class SessionManagerI
extends Glacier2._SessionManagerDisp
implements org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationListener

Central login logic for all OMERO.blitz clients. It is required to create a Session via the SessionManager in order to get through the firewall. The Session (here a ServiceFactoryI instance) also manages all servants created by the client.

Since:
3.0-Beta2
Author:
Josh Moore, josh at glencoesoftware.com
See Also:
Serialized Form

Field Summary
protected  Ice.ObjectAdapter adapter
           
protected  OmeroContext context
           
protected  Executor executor
           
protected  AtomicBoolean loaded
           
protected  Registry registry
           
protected  Ring ring
           
protected  SecuritySystem securitySystem
           
protected  SessionManager sessionManager
           
protected  Map<String,Set<String>> sessionToClientIds
          An internal mapping to all ServiceFactoryI instances for a given session since there is no method on ObjectAdapter to retrieve all servants.
protected  TopicManager topicManager
           
 
Fields inherited from class Glacier2._SessionManagerDisp
__ids
 
Constructor Summary
SessionManagerI(Ring ring, Ice.ObjectAdapter adapter, SecuritySystem secSys, SessionManager sessionManager, Executor executor, TopicManager topicManager, Registry reg)
           
 
Method Summary
 Glacier2.SessionPrx create(String userId, Glacier2.SessionControlPrx control, Ice.Current current)
           
protected  String getAgent(Ice.Current current)
           
protected  String getEvent(Ice.Current current)
           
protected  String getGroup(Ice.Current current)
           
protected  ServiceFactoryI getServiceFactory(Ice.Identity iid)
           
protected  ServiceFactoryI getServiceFactory(String clientId, String sessionId)
           
protected  Ice.Identity getServiceFactoryIdentity(Ice.Current curr)
           
 void onApplicationEvent(org.springframework.context.ApplicationEvent event)
           
 void reapSession(String sessionId)
          Destroys all the ServiceFactoryI instances based on the given sessionId.
 void requestHeartBeats()
          Destroys all the ServiceFactoryI instances based on the given sessionId.
 void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
           
 
Methods inherited from class Glacier2._SessionManagerDisp
___create, __dispatch, __read, __read, __write, __write, create, ice_copyStateFrom, ice_id, ice_id, ice_ids, ice_ids, ice_isA, ice_isA, ice_staticId
 
Methods inherited from class Ice.ObjectImpl
___ice_id, ___ice_ids, ___ice_isA, ___ice_ping, __checkMode, __collocDispatch, clone, ice_dispatch, ice_hash, ice_operationAttributes, ice_ping, ice_ping, ice_postUnmarshal, ice_preMarshal
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface Ice.Object
__collocDispatch, clone, equals, ice_dispatch, ice_hash, ice_operationAttributes, ice_ping, ice_ping, ice_postUnmarshal, ice_preMarshal
 

Field Detail

context

protected OmeroContext context

adapter

protected final Ice.ObjectAdapter adapter

securitySystem

protected final SecuritySystem securitySystem

sessionManager

protected final SessionManager sessionManager

executor

protected final Executor executor

ring

protected final Ring ring

registry

protected final Registry registry

topicManager

protected final TopicManager topicManager

loaded

protected final AtomicBoolean loaded

sessionToClientIds

protected final Map<String,Set<String>> sessionToClientIds
An internal mapping to all ServiceFactoryI instances for a given session since there is no method on ObjectAdapter to retrieve all servants.

Constructor Detail

SessionManagerI

public SessionManagerI(Ring ring,
                       Ice.ObjectAdapter adapter,
                       SecuritySystem secSys,
                       SessionManager sessionManager,
                       Executor executor,
                       TopicManager topicManager,
                       Registry reg)
Method Detail

setApplicationContext

public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
                           throws org.springframework.beans.BeansException
Specified by:
setApplicationContext in interface org.springframework.context.ApplicationContextAware
Throws:
org.springframework.beans.BeansException

create

public Glacier2.SessionPrx create(String userId,
                                  Glacier2.SessionControlPrx control,
                                  Ice.Current current)
                           throws Glacier2.CannotCreateSessionException
Specified by:
create in interface Glacier2._SessionManagerOperations
Throws:
Glacier2.CannotCreateSessionException

onApplicationEvent

public void onApplicationEvent(org.springframework.context.ApplicationEvent event)
Specified by:
onApplicationEvent in interface org.springframework.context.ApplicationListener

requestHeartBeats

public void requestHeartBeats()
Destroys all the ServiceFactoryI instances based on the given sessionId. Multiple clients can be attached to the same session, each with its own ServiceFactoryI


reapSession

public void reapSession(String sessionId)
Destroys all the ServiceFactoryI instances based on the given sessionId. Multiple clients can be attached to the same session, each with its own ServiceFactoryI


getServiceFactory

protected ServiceFactoryI getServiceFactory(String clientId,
                                            String sessionId)

getServiceFactory

protected ServiceFactoryI getServiceFactory(Ice.Identity iid)

getServiceFactoryIdentity

protected Ice.Identity getServiceFactoryIdentity(Ice.Current curr)

getGroup

protected String getGroup(Ice.Current current)

getAgent

protected String getAgent(Ice.Current current)

getEvent

protected String getEvent(Ice.Current current)


OmeroJava Api

Version: 4.3.4-dbcbce5a-b4

Copyright © 2009 The University of Dundee. All Rights Reserved.