obtain the agent session by address . the current implementation is slow , but we expect it to only be used by the admin interface so overhead is not a concern . if this is used for the runtime behavior of the workgroup itself , the implementation must be changed . concode_field_sep Map<AgentSession,String> sessionList concode_elem_sep Queue<AgentSessionListener> listenerList concode_field_sep void removeAgentSession concode_elem_sep void addAgentSessionListener concode_elem_sep void addAgentSession concode_elem_sep Collection<AgentSession> getAgentSessions concode_elem_sep boolean containsAvailableAgents concode_elem_sep boolean isEmpty concode_elem_sep void broadcastQueueStatus concode_elem_sep int getAvailableAgentCount concode_elem_sep int getAgentSessionCount concode_elem_sep void removeAgentSessionListener
AgentSession function ( JID arg0 ) { AgentSession loc0 = null ; for ( AgentSession loc1 : sessionList . keySet ( ) ) { if ( loc1 . getJID ( ) . equals ( arg0 ) ) { loc0 = loc1 ; break ; } } if ( loc0 == null ) { throw new AgentNotFoundException ( arg0 . toString ( ) ) ; } return loc0 ; }