public final class SessionManagerI
extends Glacier2._SessionManagerDisp
implements org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationListener<ome.util.messages.InternalMessage>
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.Modifier and Type | Field and Description |
---|---|
protected Ice.ObjectAdapter |
adapter |
protected ome.system.OmeroContext |
context |
protected ome.services.util.Executor |
executor |
protected java.util.concurrent.atomic.AtomicBoolean |
loaded |
protected Registry |
registry |
protected Ring |
ring |
protected ome.security.SecuritySystem |
securitySystem |
protected int |
servantsPerSession |
protected ome.services.sessions.SessionManager |
sessionManager |
protected com.google.common.cache.Cache<java.lang.String,ServantHolder> |
sessionToHolder
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 |
Constructor and Description |
---|
SessionManagerI(Ring ring,
Ice.ObjectAdapter adapter,
ome.security.SecuritySystem secSys,
ome.services.sessions.SessionManager sessionManager,
ome.services.util.Executor executor,
TopicManager topicManager,
Registry reg,
int servantsPerSession) |
Modifier and Type | Method and Description |
---|---|
Glacier2.SessionPrx |
create(java.lang.String userId,
Glacier2.SessionControlPrx control,
Ice.Current current) |
protected java.lang.String |
getAgent(Ice.Current current) |
protected java.lang.String |
getEvent(Ice.Current current) |
protected java.lang.String |
getGroup(Ice.Current current) |
protected java.lang.String |
getIP(Ice.Current current) |
protected ServiceFactoryI |
getServiceFactory(Ice.Identity iid) |
protected ServiceFactoryI |
getServiceFactory(java.lang.String clientId,
java.lang.String sessionId) |
protected Ice.Identity |
getServiceFactoryIdentity(Ice.Current curr) |
void |
onApplicationEvent(ome.util.messages.InternalMessage event) |
void |
reapSession(java.lang.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) |
___create, __dispatch, __readImpl, __writeImpl, create, ice_copyStateFrom, ice_id, ice_id, ice_ids, ice_ids, ice_isA, ice_isA, ice_staticId
___ice_id, ___ice_ids, ___ice_isA, ___ice_ping, __checkMode, __read, __read, __readImpl, __write, __write, __writeImpl, clone, ice_dispatch, ice_dispatch, ice_operationAttributes, ice_ping, ice_ping, ice_postUnmarshal, ice_preMarshal
protected ome.system.OmeroContext context
protected final Ice.ObjectAdapter adapter
protected final ome.security.SecuritySystem securitySystem
protected final ome.services.sessions.SessionManager sessionManager
protected final ome.services.util.Executor executor
protected final Ring ring
protected final Registry registry
protected final TopicManager topicManager
protected final java.util.concurrent.atomic.AtomicBoolean loaded
protected final int servantsPerSession
protected final com.google.common.cache.Cache<java.lang.String,ServantHolder> sessionToHolder
ServiceFactoryI
instances for a given
session since there is no method on ObjectAdapter
to retrieve
all servants.public SessionManagerI(Ring ring, Ice.ObjectAdapter adapter, ome.security.SecuritySystem secSys, ome.services.sessions.SessionManager sessionManager, ome.services.util.Executor executor, TopicManager topicManager, Registry reg, int servantsPerSession)
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException
setApplicationContext
in interface org.springframework.context.ApplicationContextAware
org.springframework.beans.BeansException
public Glacier2.SessionPrx create(java.lang.String userId, Glacier2.SessionControlPrx control, Ice.Current current) throws Glacier2.CannotCreateSessionException
create
in interface Glacier2._SessionManagerOperations
Glacier2.CannotCreateSessionException
public void onApplicationEvent(ome.util.messages.InternalMessage event)
onApplicationEvent
in interface org.springframework.context.ApplicationListener<ome.util.messages.InternalMessage>
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
public void reapSession(java.lang.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
protected ServiceFactoryI getServiceFactory(java.lang.String clientId, java.lang.String sessionId)
protected ServiceFactoryI getServiceFactory(Ice.Identity iid)
protected Ice.Identity getServiceFactoryIdentity(Ice.Current curr)
protected java.lang.String getGroup(Ice.Current current)
protected java.lang.String getAgent(Ice.Current current)
protected java.lang.String getIP(Ice.Current current)
protected java.lang.String getEvent(Ice.Current current)