public class SessionManager extends AbstractMessageReceiver implements Configurable, SessionManagerHandler, OnlineJidsReporter
| Modifier and Type | Class and Description |
|---|---|
protected class |
SessionManager.WriterQueue<E extends Packet>
Class description
|
| Modifier and Type | Field and Description |
|---|---|
protected static String |
ADMIN_COMMAND_NODE
Field description
|
protected ConcurrentHashMap<tigase.xmpp.JID,XMPPResourceConnection> |
connectionsByFrom
A Map with connectionID as a key and an object with all the user connection
data as a value
|
protected Queue<Packet> |
packetWriterQueue
Field description
|
protected ConcurrentHashMap<tigase.xmpp.BareJID,XMPPSession> |
sessionsByNodeId
A Map with bare user JID as a key and a user session object as a value.
|
HOUR, INCOMING_FILTERS_PROP_KEY, INCOMING_FILTERS_PROP_VAL, MAX_QUEUE_SIZE_PROP_KEY, MAX_QUEUE_SIZE_PROP_VAL, maxInQueueSize, maxOutQueueSize, MINUTE, OUTGOING_FILTERS_PROP_KEY, OUTGOING_FILTERS_PROP_VAL, SCHEDULER_THREADS_PROP_KEY, SECONDadmins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, vHostManagerADMINS_PROP_KEY, AMP_CLASS_NAME, AUTH_DOMAIN_POOL_CLASS, AUTH_REPO_DOMAINS_PROP_KEY, AUTH_REPO_PARAMS_NODE, AUTH_REPO_POOL_CLASS, AUTH_REPO_URL_PROP_KEY, BOSH_CLUST_COMP_CLASS_NAME, BOSH_COMP_CLASS_NAME, C2S_CLUST_COMP_CLASS_NAME, C2S_COMP_CLASS_NAME, CL_COMP_CLASS_NAME, CLUSTER_CONECT, CLUSTER_CONTR_CLASS_NAME, CLUSTER_LISTEN, CLUSTER_MODE, CLUSTER_NODES, CLUSTER_NODES_PROP_KEY, COMP_PROT_CLASS_NAME, COMPONENT_ID_PROP_KEY, DEF_AMP_NAME, DEF_BOSH_NAME, DEF_C2S_NAME, DEF_CL_COMP_NAME, DEF_CLUST_CONTR_NAME, DEF_COMP_PROT_NAME, DEF_EXT_COMP_NAME, DEF_HOSTNAME_PROP_KEY, DEF_MONITOR_NAME, DEF_S2S_NAME, DEF_SM_NAME, DEF_SRECV_NAME, DEF_SSEND_NAME, DEF_STATS_NAME, DEF_VHOST_MAN_NAME, DEF_WS2S_NAME, DERBY_REPO_CLASS_PROP_VAL, DERBY_REPO_URL_PROP_VAL, DRUPAL_REPO_URL_PROP_VAL, DRUPALWP_REPO_CLASS_PROP_VAL, DUMMY_REPO_CLASS_PROP_VAL, EXT_COMP_CLASS_NAME, GEN_ADMINS, GEN_AUTH_DB, GEN_AUTH_DB_URI, GEN_COMP_CLASS, GEN_COMP_NAME, GEN_CONF, GEN_CONFIG, GEN_CONFIG_ALL, GEN_CONFIG_COMP, GEN_CONFIG_CS, GEN_CONFIG_DEF, GEN_CONFIG_SM, GEN_DEBUG, GEN_DEBUG_PACKAGES, GEN_EXT_COMP, GEN_MAX_QUEUE_SIZE, GEN_SCRIPT_DIR, GEN_SM_PLUGINS, GEN_SREC_ADMINS, GEN_SREC_DB, GEN_SREC_DB_URI, GEN_TEST, GEN_TRUSTED, GEN_USER_DB, GEN_USER_DB_URI, GEN_USER_DB_URI_PROP_KEY, GEN_VIRT_HOSTS, HOSTNAMES_PROP_KEY, LIBRESOURCE_REPO_CLASS_PROP_VAL, LIBRESOURCE_REPO_URL_PROP_VAL, MONITOR_CLASS_NAME, MONITOR_CLUST_CLASS_NAME, MONITORING, MYSQL_REPO_CLASS_PROP_VAL, MYSQL_REPO_URL_PROP_VAL, PGSQL_REPO_CLASS_PROP_VAL, PGSQL_REPO_URL_PROP_VAL, ROUTER_COMP_CLASS_NAME, S2S_CLUST_COMP_CLASS_NAME, S2S_COMP_CLASS_NAME, SHARED_AUTH_REPO_PARAMS_PROP_KEY, SHARED_AUTH_REPO_PROP_KEY, SHARED_USER_REPO_PARAMS_PROP_KEY, SHARED_USER_REPO_PROP_KEY, SM_CLUST_COMP_CLASS_NAME, SM_COMP_CLASS_NAME, SRECV_COMP_CLASS_NAME, SSEND_COMP_CLASS_NAME, STANZA_WHITE_CHAR_ACK, STANZA_XMPP_ACK, STATS_CLASS_NAME, STRINGPREP_PROCESSOR, TIGASE_AUTH_REPO_CLASS_PROP_VAL, TIGASE_AUTH_REPO_URL_PROP_VAL, TIGASE_CUSTOM_AUTH_REPO_CLASS_PROP_VAL, TRUSTED_PROP_KEY, USER_DOMAIN_POOL_CLASS, USER_REPO_DOMAINS_PROP_KEY, USER_REPO_PARAMS_NODE, USER_REPO_POOL_CLASS, USER_REPO_POOL_SIZE, USER_REPO_POOL_SIZE_PROP_KEY, USER_REPO_URL_PROP_KEY, VHOST_MAN_CLASS_NAME, VHOST_MAN_CLUST_CLASS_NAME, WS2S_CLASS_NAME, WS2S_CLUST_CLASS_NAME, XML_REPO_CLASS_PROP_VAL, XML_REPO_URL_PROP_VAL, XMPP_STANZA_ACKCOMMIT_HANDLER_KEYCMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS| Constructor and Description |
|---|
SessionManager() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addOutPacket(Packet packet)
Method description
|
protected void |
addOutPackets(Packet packet,
XMPPResourceConnection conn,
Queue<Packet> results)
Method description
|
XMPPImplIfc |
addPlugin(String plug_id,
Integer conc)
Method description
|
protected boolean |
addTrusted(tigase.xmpp.JID jid)
Method description
|
protected void |
closeConnection(tigase.xmpp.JID connectionId,
String userId,
boolean closeOnly)
Method description
|
protected void |
closeSession(XMPPResourceConnection conn,
boolean closeOnly)
Method description
|
boolean |
containsJid(tigase.xmpp.BareJID jid)
Method description
|
protected XMPPResourceConnection |
createUserSession(tigase.xmpp.JID conn_id,
String domain)
Method description
|
protected boolean |
delTrusted(tigase.xmpp.JID jid)
Method description
|
protected boolean |
fastAddOutPacket(Packet packet)
Method description
|
tigase.xmpp.JID[] |
getConnectionIdsForJid(tigase.xmpp.BareJID jid)
Method description
|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Method description
|
String |
getDiscoCategoryType()
Method description
|
String |
getDiscoDescription()
Method description
|
List<tigase.xml.Element> |
getDiscoFeatures(tigase.xmpp.JID from)
Method description
|
tigase.xml.Element |
getDiscoInfo(String node,
tigase.xmpp.JID jid,
tigase.xmpp.JID from)
Method description
|
protected Integer |
getMaxQueueSize(int def)
Method description
|
XMPPResourceConnection |
getResourceConnection(tigase.xmpp.JID jid)
Method description
|
protected XMPPSession |
getSession(tigase.xmpp.BareJID jid)
Method description
|
void |
getStatistics(StatisticsList list)
Method description
|
protected XMPPResourceConnection |
getXMPPResourceConnection(tigase.xmpp.JID connId)
Method description
|
protected XMPPResourceConnection |
getXMPPResourceConnection(Packet p)
Method description
|
void |
handleLocalPacket(Packet packet,
XMPPResourceConnection conn)
Method description
|
void |
handleLogin(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
Method description
|
void |
handleLogout(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
Method description
|
void |
handlePresenceSet(XMPPResourceConnection conn)
Method description
|
void |
handleResourceBind(XMPPResourceConnection conn)
Method description
|
boolean |
handlesLocalDomains()
Method description
|
boolean |
hasCompleteJidsInfo()
Method description
|
void |
initBindings(Bindings binds)
Initialize a mapping of key/value pairs which can be used in scripts
loaded by the server
|
protected boolean |
isBrokenPacket(Packet p)
Method description
|
boolean |
isLocalDomain(String domain,
boolean includeComponents)
Method description
|
protected boolean |
isTrusted(tigase.xmpp.JID jid)
Method description
|
protected boolean |
isTrusted(String jid)
Method description
|
protected XMPPResourceConnection |
loginUserSession(tigase.xmpp.JID conn_id,
String domain,
tigase.xmpp.BareJID user_id,
String resource,
String xmpp_sessionId,
boolean tmpSession)
Method description
|
protected boolean |
processAdminsOrDomains(Packet packet)
Method description
|
protected boolean |
processCommand(Packet pc)
Method description
|
int |
processingInThreads()
Method description
|
int |
processingOutThreads()
Method description
|
void |
processPacket(Packet packet)
Method description
|
protected void |
processPacket(Packet packet,
XMPPResourceConnection conn)
Method description
|
protected void |
processPresenceUpdate(XMPPSession session,
tigase.xml.Element packet)
Method description
|
protected void |
registerNewSession(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
Method description
|
void |
removePlugin(String plug_id)
Method description
|
protected void |
sendToAdmins(Packet packet)
Method description
|
void |
setName(String name)
Method description
|
void |
setProperties(Map<String,Object> props)
Method description
|
boolean |
skipPrivacy()
Method description
|
addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, clearRegexRoutings, everyHour, everyMinute, everySecond, getRegexRoutings, hashCodeForPacket, isInRegexRoutings, newPacketId, processingThreads, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setMaxQueueSize, setParent, start, stopaddComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getComponentInfo, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoFeatures, getDiscoInfo, getDiscoItems, getDiscoItems, getName, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesNameSubdomains, handlesNonLocalDomains, initializationCompleted, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceEntityclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, releasegetComponentIdgetDefHostNameprotected static final String ADMIN_COMMAND_NODE
protected ConcurrentHashMap<tigase.xmpp.BareJID,XMPPSession> sessionsByNodeId
protected ConcurrentHashMap<tigase.xmpp.JID,XMPPResourceConnection> connectionsByFrom
public boolean addOutPacket(Packet packet)
addOutPacket in class AbstractMessageReceiverpacket - booleanpublic XMPPImplIfc addPlugin(String plug_id, Integer conc) throws ClassNotFoundException, InstantiationException, IllegalAccessException
plug_id - conc - XMPPImplIfcClassNotFoundExceptionIllegalAccessExceptionInstantiationExceptionpublic boolean containsJid(tigase.xmpp.BareJID jid)
containsJid in interface OnlineJidsReporterjid - booleanpublic void handleLocalPacket(Packet packet, XMPPResourceConnection conn)
packet - conn - public void handleLogin(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
handleLogin in interface SessionManagerHandleruserId - conn - public void handleLogout(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
handleLogout in interface SessionManagerHandleruserId - conn - public void handlePresenceSet(XMPPResourceConnection conn)
handlePresenceSet in interface SessionManagerHandlerconn - public void handleResourceBind(XMPPResourceConnection conn)
handleResourceBind in interface SessionManagerHandlerconn - public boolean handlesLocalDomains()
handlesLocalDomains in interface VHostListenerhandlesLocalDomains in class BasicComponentbooleanpublic void initBindings(Bindings binds)
initBindings in class BasicComponentbinds - A mapping of key/value pairs, all of whose keys are Strings.public int processingInThreads()
processingInThreads in class AbstractMessageReceiverintpublic int processingOutThreads()
processingOutThreads in class AbstractMessageReceiverintpublic void processPacket(Packet packet)
processPacket in class AbstractMessageReceiverpacket - public void removePlugin(String plug_id)
plug_id - public boolean skipPrivacy()
booleanpublic tigase.xmpp.JID[] getConnectionIdsForJid(tigase.xmpp.BareJID jid)
getConnectionIdsForJid in interface OnlineJidsReporterjid - JID[]public Map<String,Object> getDefaults(Map<String,Object> params)
getDefaults in interface ConfigurablegetDefaults in class AbstractMessageReceiverparams - Mappublic String getDiscoCategoryType()
getDiscoCategoryType in class BasicComponentStringpublic String getDiscoDescription()
getDiscoDescription in class BasicComponentStringpublic List<tigase.xml.Element> getDiscoFeatures(tigase.xmpp.JID from)
getDiscoFeatures in interface XMPPServicegetDiscoFeatures in class BasicComponentfrom - Listpublic tigase.xml.Element getDiscoInfo(String node, tigase.xmpp.JID jid, tigase.xmpp.JID from)
getDiscoInfo in interface XMPPServicegetDiscoInfo in class BasicComponentnode - jid - from - Elementpublic XMPPResourceConnection getResourceConnection(tigase.xmpp.JID jid)
jid - XMPPResourceConnectionpublic void getStatistics(StatisticsList list)
getStatistics in interface StatisticsContainergetStatistics in class AbstractMessageReceiverlist - public boolean hasCompleteJidsInfo()
hasCompleteJidsInfo in interface OnlineJidsReporterbooleanpublic boolean isLocalDomain(String domain, boolean includeComponents)
isLocalDomain in interface SessionManagerHandlerdomain - includeComponents - booleanpublic void setName(String name)
setName in interface ServerComponentsetName in class AbstractMessageReceivername - public void setProperties(Map<String,Object> props)
setProperties in interface ConfigurablesetProperties in class AbstractMessageReceiverprops - protected void addOutPackets(Packet packet, XMPPResourceConnection conn, Queue<Packet> results)
packet - conn - results - protected boolean addTrusted(tigase.xmpp.JID jid)
jid - booleanprotected void closeConnection(tigase.xmpp.JID connectionId,
String userId,
boolean closeOnly)
connectionId - userId - closeOnly - protected void closeSession(XMPPResourceConnection conn, boolean closeOnly)
conn - closeOnly - protected XMPPResourceConnection createUserSession(tigase.xmpp.JID conn_id, String domain) throws tigase.util.TigaseStringprepException
conn_id - domain - XMPPResourceConnectiontigase.util.TigaseStringprepExceptionprotected boolean delTrusted(tigase.xmpp.JID jid)
jid - booleanprotected boolean fastAddOutPacket(Packet packet)
packet - booleanprotected XMPPResourceConnection loginUserSession(tigase.xmpp.JID conn_id, String domain, tigase.xmpp.BareJID user_id, String resource, String xmpp_sessionId, boolean tmpSession)
conn_id - domain - user_id - resource - xmpp_sessionId - tmpSession - is a booleanXMPPResourceConnectionprotected boolean processAdminsOrDomains(Packet packet)
packet - booleanprotected boolean processCommand(Packet pc)
pc - booleanprotected void processPacket(Packet packet, XMPPResourceConnection conn)
packet - conn - protected void processPresenceUpdate(XMPPSession session, tigase.xml.Element packet)
session - is a XMPPSessionpacket - is a Elementprotected void registerNewSession(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
userId - conn - protected void sendToAdmins(Packet packet)
packet - protected Integer getMaxQueueSize(int def)
getMaxQueueSize in class AbstractMessageReceiverdef - Integerprotected XMPPSession getSession(tigase.xmpp.BareJID jid)
jid - XMPPSessionprotected XMPPResourceConnection getXMPPResourceConnection(tigase.xmpp.JID connId)
connId - XMPPResourceConnectionprotected XMPPResourceConnection getXMPPResourceConnection(Packet p)
p - XMPPResourceConnectionprotected boolean isBrokenPacket(Packet p)
p - booleanprotected boolean isTrusted(tigase.xmpp.JID jid)
jid - booleanprotected boolean isTrusted(String jid)
jid - booleanCopyright © 2014 "Tigase, Inc.". All rights reserved.