public class SessionManagerClustered extends SessionManager implements ClusteredComponentIfc, SessionManagerClusteredIfc
SessionManager.WriterQueue<E extends Packet>| Modifier and Type | Field and Description |
|---|---|
static String |
CLUSTER_STRATEGY_VAR
Field description
|
static String |
MY_DOMAIN_NAME_PROP_KEY
Field description
|
static String |
STRATEGY_CLASS_PROP_KEY
Field description
|
static String |
STRATEGY_CLASS_PROP_VAL
Field description
|
static String |
STRATEGY_CLASS_PROPERTY
Field description
|
static int |
SYNC_MAX_BATCH_SIZE
Field description
|
ADMIN_COMMAND_NODE, connectionsByFrom, packetWriterQueue, sessionsByNodeIdHOUR, 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, vHostManagerSESSION_FOUND_KEYCOMMIT_HANDLER_KEYADMINS_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_ACKCMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS| Constructor and Description |
|---|
SessionManagerClustered() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
closeSession(XMPPResourceConnection conn,
boolean closeOnly)
The method intercept user's disconnect event.
|
boolean |
containsJid(tigase.xmpp.BareJID jid)
The method checks whether the given JID is known to the installation,
either user connected to local machine or any of the cluster nodes.
|
boolean |
fastAddOutPacket(Packet packet)
Method description
|
ComponentInfo |
getComponentInfo()
Allows to obtain various informations about components
|
tigase.xmpp.JID[] |
getConnectionIdsForJid(tigase.xmpp.BareJID jid)
If the installation knows about user's JID, that he is connected to the
system, then this method returns all user's connection IDs.
|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Loads the component's default configuration to the configuration management
subsystem.
|
String |
getDiscoDescription()
Method description
|
void |
getStatistics(StatisticsList list)
Method generates and returns component's statistics.
|
ClusteringStrategyIfc |
getStrategy()
Returns active clustering strategy object.
|
XMPPResourceConnection |
getXMPPResourceConnection(Packet p)
Method description
|
ConcurrentHashMap<tigase.xmpp.JID,XMPPResourceConnection> |
getXMPPResourceConnections()
Method description
|
ConcurrentHashMap<tigase.xmpp.BareJID,XMPPSession> |
getXMPPSessions()
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 |
handleResourceBind(XMPPResourceConnection conn)
Method description
|
boolean |
hasCompleteJidsInfo()
Method checks whether the clustering strategy has a complete JIDs info.
|
void |
initBindings(Bindings binds)
Initialize a mapping of key/value pairs which can be used in scripts
loaded by the server
|
void |
nodeConnected(String node)
The method is called on cluster node connection event.
|
void |
nodeDisconnected(String node)
Method is called on cluster node disconnection event.
|
int |
processingInThreads()
Concurrency control method.
|
int |
processingOutThreads()
Concurrency control method.
|
void |
processPacket(Packet packet)
This is a standard component method for processing packets.
|
void |
processPacket(Packet packet,
XMPPResourceConnection conn)
Method description
|
void |
processPresenceUpdate(XMPPSession session,
tigase.xml.Element packet)
Method description
|
void |
setClusterController(ClusterControllerIfc cl_controller)
Set's the configures the cluster controller object for cluster
communication and API.
|
void |
setProperties(Map<String,Object> props)
Standard component's configuration method.
|
addOutPacket, addOutPackets, addPlugin, addTrusted, closeConnection, createUserSession, delTrusted, getDiscoCategoryType, getDiscoFeatures, getDiscoInfo, getMaxQueueSize, getResourceConnection, getSession, getXMPPResourceConnection, handlePresenceSet, handlesLocalDomains, isBrokenPacket, isLocalDomain, isTrusted, isTrusted, loginUserSession, processAdminsOrDomains, processCommand, registerNewSession, removePlugin, sendToAdmins, setName, skipPrivacyaddOutPacketNB, 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, 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, getName, initializationCompleted, isInitializationComplete, processPacket, release, setNamegetComponentId, handlePresenceSet, isLocalDomaingetDefHostNamepublic static final String CLUSTER_STRATEGY_VAR
public static final String MY_DOMAIN_NAME_PROP_KEY
public static final String STRATEGY_CLASS_PROP_KEY
public static final String STRATEGY_CLASS_PROP_VAL
public static final String STRATEGY_CLASS_PROPERTY
public static final int SYNC_MAX_BATCH_SIZE
public boolean containsJid(tigase.xmpp.BareJID jid)
containsJid in interface OnlineJidsReportercontainsJid in class SessionManagerjid - a user's JID for whom we query information.public boolean fastAddOutPacket(Packet packet)
fastAddOutPacket in interface SessionManagerClusteredIfcfastAddOutPacket in class SessionManagerpacket - booleanpublic void handleLocalPacket(Packet packet, XMPPResourceConnection conn)
handleLocalPacket in class SessionManagerpacket - conn - public void handleLogin(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
handleLogin in interface SessionManagerHandlerhandleLogin in class SessionManageruserId - conn - public void handleLogout(tigase.xmpp.BareJID userId,
XMPPResourceConnection conn)
SessionManagerhandleLogout in interface SessionManagerHandlerhandleLogout in class SessionManagerpublic void handleResourceBind(XMPPResourceConnection conn)
SessionManagerhandleResourceBind in interface SessionManagerHandlerhandleResourceBind in class SessionManagerpublic void initBindings(Bindings binds)
initBindings in class SessionManagerbinds - A mapping of key/value pairs, all of whose keys are Strings.public void nodeConnected(String node)
nodeConnected in interface ClusteredComponentIfcnode - is a hostname of a new cluster node connected to the system.public void nodeDisconnected(String node)
nodeDisconnected in interface ClusteredComponentIfcnode - is a hostname of a cluster node generating the event.public int processingInThreads()
processingInThreads in class SessionManagerpublic int processingOutThreads()
processingOutThreads in class SessionManagerpublic void processPacket(Packet packet)
processPacket in class SessionManagerpacket - public void processPacket(Packet packet, XMPPResourceConnection conn)
processPacket in interface SessionManagerClusteredIfcprocessPacket in class SessionManagerpacket - conn - public void processPresenceUpdate(XMPPSession session, tigase.xml.Element packet)
processPresenceUpdate in interface SessionManagerClusteredIfcprocessPresenceUpdate in class SessionManagersession - is a XMPPSessionpacket - is a Elementpublic ComponentInfo getComponentInfo()
getComponentInfo in interface ServerComponentgetComponentInfo in class BasicComponentpublic tigase.xmpp.JID[] getConnectionIdsForJid(tigase.xmpp.BareJID jid)
getConnectionIdsForJid in interface OnlineJidsReportergetConnectionIdsForJid in class SessionManagerjid - a user's JID for whom we query information.public Map<String,Object> getDefaults(Map<String,Object> params)
getDefaults in interface ConfigurablegetDefaults in class SessionManagerparams - is a Map with system-wide default settings found in
init.properties file or similar location.public String getDiscoDescription()
getDiscoDescription in class SessionManagerStringpublic void getStatistics(StatisticsList list)
getStatistics in interface StatisticsContainergetStatistics in class SessionManagerlist - is a collection with statistics to which this component can add
own metrics.public ClusteringStrategyIfc getStrategy()
public XMPPResourceConnection getXMPPResourceConnection(Packet p)
getXMPPResourceConnection in interface SessionManagerClusteredIfcgetXMPPResourceConnection in class SessionManagerp - XMPPResourceConnectionpublic ConcurrentHashMap<tigase.xmpp.JID,XMPPResourceConnection> getXMPPResourceConnections()
getXMPPResourceConnections in interface SessionManagerClusteredIfcConcurrentHashMappublic ConcurrentHashMap<tigase.xmpp.BareJID,XMPPSession> getXMPPSessions()
getXMPPSessions in interface SessionManagerClusteredIfcConcurrentHashMappublic boolean hasCompleteJidsInfo()
hasCompleteJidsInfo in interface OnlineJidsReporterhasCompleteJidsInfo in class SessionManagerpublic void setClusterController(ClusterControllerIfc cl_controller)
setClusterController in interface ClusteredComponentIfccl_controller - public void setProperties(Map<String,Object> props)
setProperties in interface ConfigurablesetProperties in class SessionManagerprops - protected void closeSession(XMPPResourceConnection conn, boolean closeOnly)
closeSession in class SessionManagerconn - closeOnly - SessionManager.closeSession(tigase.xmpp.XMPPResourceConnection, boolean)Copyright © 2014 "Tigase, Inc.". All rights reserved.