tigase.cluster
public class ClusterConnectionManager extends ConnectionManager<XMPPIOService<Object>> implements ClusteredComponentIfc, RepositoryChangeListenerIfc<ClusterRepoItem>
ConnectionManager.LIMIT_ACTION| Modifier and Type | Field and Description |
|---|---|
static String |
CLCON_REPO_CLASS_PROP_KEY
Field description
|
static String |
CLCON_REPO_CLASS_PROP_VAL
Field description
|
static String |
CLCON_REPO_CLASS_PROPERTY
Field description
|
static String |
CLUSTER_CONNECTIONS_PER_NODE_PAR
Field description
|
static String |
CLUSTER_CONNECTIONS_PER_NODE_PROP_KEY
Field description
|
static int |
CLUSTER_CONNECTIONS_PER_NODE_VAL
Field description
|
static String |
CLUSTER_CONTR_ID_PROP_KEY
Field description
|
static String |
COMPRESS_STREAM_PROP_KEY
Field description
|
static boolean |
COMPRESS_STREAM_PROP_VAL
Field description
|
static String |
CONNECT_ALL_PAR
Field description
|
static String |
CONNECT_ALL_PROP_KEY
Field description
|
static boolean |
CONNECT_ALL_PROP_VAL
Field description
|
static String |
IDENTITY_TYPE_KEY
Field description
|
static String |
IDENTITY_TYPE_VAL
Field description
|
String[] |
PORT_IFC_PROP_VAL
Field description
|
static String |
PORT_LOCAL_HOST_PROP_KEY
Field description
|
static String |
PORT_ROUTING_TABLE_PROP_KEY
Field description
|
static String |
RETURN_SERVICE_DISCO_KEY
Field description
|
static boolean |
RETURN_SERVICE_DISCO_VAL
Field description
|
static String |
SECRET_PROP_KEY
Field description
|
static String |
XMLNS
Field description
|
connectionDelay, HT_TRAFFIC_THROTTLING_PROP_KEY, HT_TRAFFIC_THROTTLING_PROP_VAL, LAST_MINUTE_BIN_LIMIT_PROP_VAL, LAST_MINUTE_PACKETS_LIMIT_PROP_VAL, MAX_INACTIVITY_TIME, MAX_RECONNECTS_PROP_KEY, net_buffer, NET_BUFFER_HT_PROP_KEY, NET_BUFFER_HT_PROP_VAL, NET_BUFFER_PROP_KEY, NET_BUFFER_ST_PROP_KEY, NET_BUFFER_ST_PROP_VAL, PORT_CLASS_PROP_KEY, PORT_IFC_PROP_KEY, PORT_KEY, PORT_REMOTE_HOST_PROP_KEY, PORT_REMOTE_HOST_PROP_VAL, PORT_SOCKET_PROP_KEY, PORT_TYPE_PROP_KEY, PORTS_PROP_KEY, PROP_KEY, ST_TRAFFIC_THROTTLING_PROP_KEY, ST_TRAFFIC_THROTTLING_PROP_VAL, TLS_PROP_KEY, TLS_REQUIRED_PROP_KEY, TLS_REQUIRED_PROP_VAL, TLS_USE_PROP_KEY, TLS_USE_PROP_VAL, TOTAL_BIN_LIMIT_PROP_VAL, TOTAL_PACKETS_LIMIT_PROP_VAL, TRAFFIC_THROTTLING_PROP_KEY, WHITE_CHAR_ACK_PROP_KEY, WHITE_CHAR_ACK_PROP_VAL, XMPP_ACK_PROP_KEY, XMPP_ACK_PROP_VALHOUR, 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, 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 |
|---|
ClusterConnectionManager() |
| Modifier and Type | Method and Description |
|---|---|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Method description
|
protected int[] |
getDefPlainPorts()
Method description
|
protected String |
getDefTrafficThrottling()
Method description
|
String |
getDiscoCategoryType()
Method description
|
String |
getDiscoDescription()
Method description
|
protected long |
getMaxInactiveTime()
Method
getMaxInactiveTime returns max keep-alive
time for inactive connection. |
protected Integer |
getMaxQueueSize(int def)
Method description
|
protected Map<String,Object> |
getParamsForPort(int port)
Method description
|
void |
getStatistics(StatisticsList list)
Method description
|
protected XMPPIOService<Object> |
getXMPPIOServiceInstance()
Method description
|
int |
hashCodeForPacket(Packet packet)
This method can be overwritten in extending classes to get a different
packets distribution to different threads.
|
void |
initBindings(Bindings binds)
Method description
|
protected boolean |
isHighThroughput()
Method description
|
void |
itemAdded(ClusterRepoItem repoItem)
Method description
|
void |
itemRemoved(ClusterRepoItem item)
Method description
|
void |
itemUpdated(ClusterRepoItem item)
Method description
|
void |
nodeConnected(String node)
Method description
|
void |
nodeDisconnected(String node)
Method description
|
int |
processingInThreads()
Method description
|
int |
processingOutThreads()
Method description
|
void |
processOutPacket(Packet packet)
Method description
|
void |
processPacket(Packet packet)
Method description
|
Queue<Packet> |
processSocketData(XMPPIOService<Object> serv)
Method description
|
void |
reconnectionFailed(Map<String,Object> port_props)
Method description
|
protected void |
serviceConnected(XMPPIOService<Object> serv)
Method description
|
void |
serviceStarted(XMPPIOService<Object> serv)
Method description
|
boolean |
serviceStopped(XMPPIOService<Object> service)
Method description
|
void |
setClusterController(ClusterControllerIfc cl_controller)
Method description
|
void |
setProperties(Map<String,Object> props)
Method description
|
void |
tlsHandshakeCompleted(XMPPIOService<Object> service)
Method description
|
void |
updateConnectionDetails(Map<String,Object> port_props)
Method description
|
protected boolean |
writePacketToSocket(Packet p)
Method description
|
void |
xmppStreamClosed(XMPPIOService<Object> serv)
Method description
|
String |
xmppStreamOpened(XMPPIOService<Object> service,
Map<String,String> attribs)
Method description
|
addWaitingTask, checkHighThroughputProperty, checkTrafficLimits, countIOServices, doForAllServices, everyMinute, getDefSSLPorts, getServiceId, getServiceId, getUniqueId, getXMPPIOService, getXMPPIOService, initializationCompleted, isTlsWantClientAuthEnabled, packetsReady, release, setName, stop, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writeRawDataaddOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, clearRegexRoutings, everyHour, everySecond, getRegexRoutings, isInRegexRoutings, newPacketId, processingThreads, processPacket, removeRegexRouting, schedulerThreads, setMaxQueueSize, setParent, startaddComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoInfo, getDiscoItems, getDiscoItems, getName, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItemclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetComponentId, getName, initializationCompleted, isInitializationComplete, processPacket, release, setNamegetDefHostNamepublic static final String CLCON_REPO_CLASS_PROP_KEY
public static final String CLCON_REPO_CLASS_PROP_VAL
public static final String CLCON_REPO_CLASS_PROPERTY
public static final String CLUSTER_CONNECTIONS_PER_NODE_PAR
public static final String CLUSTER_CONNECTIONS_PER_NODE_PROP_KEY
public static final int CLUSTER_CONNECTIONS_PER_NODE_VAL
public static final String CLUSTER_CONTR_ID_PROP_KEY
public static final String COMPRESS_STREAM_PROP_KEY
public static final String CONNECT_ALL_PAR
public static final String CONNECT_ALL_PROP_KEY
public static final String IDENTITY_TYPE_KEY
public static final String IDENTITY_TYPE_VAL
public static final String PORT_LOCAL_HOST_PROP_KEY
public static final String PORT_ROUTING_TABLE_PROP_KEY
public static final String RETURN_SERVICE_DISCO_KEY
public static final String SECRET_PROP_KEY
public static final String XMLNS
public static final boolean RETURN_SERVICE_DISCO_VAL
public static final boolean CONNECT_ALL_PROP_VAL
public static final boolean COMPRESS_STREAM_PROP_VAL
public String[] PORT_IFC_PROP_VAL
public Map<String,Object> getDefaults(Map<String,Object> params)
getDefaults in interface ConfigurablegetDefaults in class ConnectionManager<XMPPIOService<Object>>params - public String getDiscoCategoryType()
getDiscoCategoryType in class BasicComponentpublic String getDiscoDescription()
getDiscoDescription in class BasicComponentpublic void getStatistics(StatisticsList list)
getStatistics in interface StatisticsContainergetStatistics in class ConnectionManager<XMPPIOService<Object>>list - public int hashCodeForPacket(Packet packet)
hashCodeForPacket in class ConnectionManager<XMPPIOService<Object>>packet - public void initBindings(Bindings binds)
initBindings in class ConnectionManager<XMPPIOService<Object>>binds - public void nodeConnected(String node)
nodeConnected in interface ClusteredComponentIfcnode - public void nodeDisconnected(String node)
nodeDisconnected in interface ClusteredComponentIfcnode - public void processPacket(Packet packet)
processPacket in class ConnectionManager<XMPPIOService<Object>>packet - public Queue<Packet> processSocketData(XMPPIOService<Object> serv)
processSocketData in class ConnectionManager<XMPPIOService<Object>>serv - public void processOutPacket(Packet packet)
processOutPacket in class AbstractMessageReceiverpacket - public int processingInThreads()
ConnectionManagerprocessingInThreads in class ConnectionManager<XMPPIOService<Object>>public int processingOutThreads()
processingOutThreads in class ConnectionManager<XMPPIOService<Object>>public void reconnectionFailed(Map<String,Object> port_props)
reconnectionFailed in class ConnectionManager<XMPPIOService<Object>>port_props - public void serviceStarted(XMPPIOService<Object> serv)
serviceStarted in class ConnectionManager<XMPPIOService<Object>>serv - public boolean serviceStopped(XMPPIOService<Object> service)
serviceStopped in interface IOServiceListener<XMPPIOService<Object>>serviceStopped in class ConnectionManager<XMPPIOService<Object>>service - public void setClusterController(ClusterControllerIfc cl_controller)
setClusterController in interface ClusteredComponentIfccl_controller - public void setProperties(Map<String,Object> props)
setProperties in interface ConfigurablesetProperties in class ConnectionManager<XMPPIOService<Object>>props - public void tlsHandshakeCompleted(XMPPIOService<Object> service)
tlsHandshakeCompleted in interface IOServiceListener<XMPPIOService<Object>>service - public void xmppStreamClosed(XMPPIOService<Object> serv)
xmppStreamClosed in interface XMPPIOServiceListener<XMPPIOService<Object>>serv - public String xmppStreamOpened(XMPPIOService<Object> service, Map<String,String> attribs)
xmppStreamOpened in interface XMPPIOServiceListener<XMPPIOService<Object>>service - attribs - protected int[] getDefPlainPorts()
getDefPlainPorts in class ConnectionManager<XMPPIOService<Object>>protected long getMaxInactiveTime()
getMaxInactiveTime returns max keep-alive
time for inactive connection. we should not really close the
connection at all, so let's say something like: 1000 days...getMaxInactiveTime in class ConnectionManager<XMPPIOService<Object>>long valueprotected Integer getMaxQueueSize(int def)
getMaxQueueSize in class AbstractMessageReceiverdef - protected Map<String,Object> getParamsForPort(int port)
getParamsForPort in class ConnectionManager<XMPPIOService<Object>>port - protected XMPPIOService<Object> getXMPPIOServiceInstance()
getXMPPIOServiceInstance in class ConnectionManager<XMPPIOService<Object>>protected boolean isHighThroughput()
isHighThroughput in class ConnectionManager<XMPPIOService<Object>>protected void serviceConnected(XMPPIOService<Object> serv)
serv - protected boolean writePacketToSocket(Packet p)
writePacketToSocket in class ConnectionManager<XMPPIOService<Object>>p - protected String getDefTrafficThrottling()
getDefTrafficThrottling in class ConnectionManager<XMPPIOService<Object>>public void itemAdded(ClusterRepoItem repoItem)
itemAdded in interface RepositoryChangeListenerIfc<ClusterRepoItem>repoItem - public void updateConnectionDetails(Map<String,Object> port_props)
updateConnectionDetails in class ConnectionManager<XMPPIOService<Object>>port_props - public void itemUpdated(ClusterRepoItem item)
itemUpdated in interface RepositoryChangeListenerIfc<ClusterRepoItem>item - public void itemRemoved(ClusterRepoItem item)
itemRemoved in interface RepositoryChangeListenerIfc<ClusterRepoItem>item - Copyright © 2013 Tigase. All rights reserved.