S2SConnectionManager, will be removed in 7.2.0@Deprecated public class ServerConnectionManager extends ConnectionManager<XMPPIOService<Object>> implements ConnectionHandlerIfc<XMPPIOService<Object>>
ConnectionManager.LIMIT_ACTION, ConnectionManager.Watchdog, ConnectionManager.WATCHDOG_PING_TYPE| Modifier and Type | Field and Description |
|---|---|
static String |
MAX_PACKET_WAITING_TIME_PROP_KEY
Deprecated.
Field description
|
static long |
MAX_PACKET_WAITING_TIME_PROP_VAL
Deprecated.
Field description
|
connectionDelay, delayPortListening, elements_number_limit, ELEMENTS_NUMBER_LIMIT_PROP_KEY, ELEMENTS_NUMBER_LIMIT_PROP_VAL, 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_LIMIT_HT_PROP_VAL, NET_BUFFER_LIMIT_PROP_KEY, NET_BUFFER_LIMIT_ST_PROP_VAL, NET_BUFFER_PROP_KEY, NET_BUFFER_ST_PROP_KEY, NET_BUFFER_ST_PROP_VAL, pingElement, PORT_CLASS_PROP_KEY, PORT_IFC_PROP_KEY, PORT_IFC_PROP_VAL, PORT_KEY, PORT_LISTENING_DELAY_DEF, PORT_LISTENING_DELAY_KEY, PORT_LOCAL_HOST_PROP_KEY, PORT_REMOTE_HOST_PROP_KEY, PORT_REMOTE_HOST_PROP_VAL, PORT_SOCKET_PROP_KEY, PORT_TYPE_PROP_KEY, PORTS_PROP_KEY, processors, 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, WATCHDOG_DELAY, WATCHDOG_PING_TYPE_KEY, WATCHDOG_TIMEOUT, watchdogDelay, watchdogPingType, watchdogTimeout, 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, maxQueueSize, MINUTE, OUTGOING_FILTERS_PROP_KEY, OUTGOING_FILTERS_PROP_VAL, PACKET_DELIVERY_RETRY_COUNT_PROP_KEY, SCHEDULER_THREADS_PROP_KEY, SECONDadmins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, trusted, vHostManagerADMINS_PROP_KEY, AMP_CLASS_NAME, AMP_CLUST_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_EVENTBUS_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, EVENTBUS_CLASS_NAME, 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 |
|---|
ServerConnectionManager()
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
addOutPacket(Packet packet)
Deprecated.
|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Deprecated.
Returns default configuration settings for the component as a
Map with keys as configuration property IDs and values as the
configuration property values. |
protected int[] |
getDefPlainPorts()
Deprecated.
Method description
|
String |
getDiscoCategoryType()
Deprecated.
Method description
|
String |
getDiscoDescription()
Deprecated.
Method description
|
protected String |
getLocalDBKey(CID cid,
String key,
String forkey_sessionId,
String asking_sessionId)
Deprecated.
|
protected long |
getMaxInactiveTime()
Deprecated.
Method description
|
protected ServerConnections |
getServerConnections(CID cid)
Deprecated.
|
void |
getStatistics(StatisticsList list)
Deprecated.
Method returns component statistics.
|
protected XMPPIOService<Object> |
getXMPPIOServiceInstance()
Deprecated.
Method description
|
boolean |
handlesNonLocalDomains()
Deprecated.
Indicates whether the component can handle all packets to
non-local domains.
|
int |
hashCodeForPacket(Packet packet)
Deprecated.
This method decides how incoming packets are distributed among processing
threads.
|
protected boolean |
isHighThroughput()
Deprecated.
Method description
|
boolean |
isIncomingValid(String session_id)
Deprecated.
Method description
|
void |
processDialback(Packet packet,
XMPPIOService<Object> serv)
Deprecated.
Method description
|
void |
processPacket(Packet packet)
Deprecated.
This is the main
Packet processing method. |
Queue<Packet> |
processSocketData(XMPPIOService<Object> serv)
Deprecated.
Method description
|
boolean |
processUndeliveredPacket(Packet packet,
Long stamp,
String errorMessage)
Deprecated.
Processes undelivered packets
|
void |
reconnectionFailed(Map<String,Object> port_props)
Deprecated.
Method description
|
protected ServerConnections |
removeServerConnections(CID cid)
Deprecated.
|
boolean |
sendToIncoming(String session_id,
Packet packet)
Deprecated.
Method description
|
protected void |
sendVerifyResult(String from,
String to,
String forkey_sessionId,
boolean valid,
ServerConnections serv_conns,
String asking_sessionId)
Deprecated.
|
void |
serviceStarted(XMPPIOService<Object> serv)
Deprecated.
Method description
|
boolean |
serviceStopped(XMPPIOService<Object> serv)
Deprecated.
|
void |
setProperties(Map<String,Object> props)
Deprecated.
Sets all configuration properties for the object.
|
void |
tlsHandshakeCompleted(XMPPIOService<Object> service)
Deprecated.
|
void |
validateIncoming(String session_id,
boolean valid)
Deprecated.
Method description
|
void |
xmppStreamClosed(XMPPIOService<Object> serv)
Deprecated.
|
String |
xmppStreamOpened(XMPPIOService<Object> serv,
Map<String,String> attribs)
Deprecated.
|
addWaitingTask, checkHighThroughputProperty, checkTrafficLimits, connectWaitingTasks, countIOServices, doForAllServices, everyMinute, getDefSSLPorts, getDefTrafficThrottling, getParamsForPort, getServiceId, getServiceId, getUniqueId, getXMPPIOService, getXMPPIOService, initBindings, initializationCompleted, newWatchdog, packetsReady, processingInThreads, processingOutThreads, release, setName, setupWatchdogThread, socketAccepted, stop, updateConnectionDetails, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writePacketToSocket, writeRawData, xmppStreamErroraddOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, clearRegexRoutings, everyHour, everySecond, getMaxQueueSize, getRegexRoutings, isInRegexRoutings, newPacketId, processingThreads, processOutPacket, processPacket, removeRegexRouting, schedulerThreads, setMaxQueueSize, setParent, startaddComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getComponentInfo, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoInfo, getDiscoItems, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, isTrusted, isTrusted, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setClusterController, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceEntityclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitwritePacketsToSocket, writePacketToSocketgetNamegetDefHostNamegetComponentId, getComponentInfo, getName, isInitializationCompletepublic static final String MAX_PACKET_WAITING_TIME_PROP_KEY
public static final long MAX_PACKET_WAITING_TIME_PROP_VAL
public boolean addOutPacket(Packet packet)
addOutPacket in class AbstractMessageReceiverpublic Map<String,Object> getDefaults(Map<String,Object> params)
AbstractMessageReceiverMap with keys as configuration property IDs and values as the
configuration property values. All the default parameters returned from
this method are later passed to the setProperties(...) method.
Some of them may have changed value if they have been overwritten in the
server configuration. The configuration property value can be of any of the
basic types: int, long, boolean,
String.getDefaults in interface ConfigurablegetDefaults in class ConnectionManager<XMPPIOService<Object>>params - is a Map with some initial properties set for the
starting up server. These parameters can be used as a hints to
generate component's default configuration.Map with the component default configuration.public String getDiscoCategoryType()
BasicComponentgetDiscoCategoryType in class BasicComponentStringpublic String getDiscoDescription()
BasicComponentgetDiscoDescription in class BasicComponentStringpublic void getStatistics(StatisticsList list)
AbstractMessageReceiverLevel.FINEST assigned and must be put inside the level guard
to prevent generating them by the system monitor. The system monitor does
not collect FINEST statistics.
if (list.checkLevel(Level.FINEST)) {
// Some CPU intensive calculations or lengthy operations
list.add(getName(), "Statistic description", stat_value, Level.FINEST);
}
This way you make sure your extensive operation is not executed every second by the
monitoring system and does not affect the server performance.getStatistics in interface StatisticsContainerIfcgetStatistics in class ConnectionManager<XMPPIOService<Object>>list - is a StatistcsList
where all statistics are stored.public boolean handlesNonLocalDomains()
VHostListenerhandlesNonLocalDomains in interface VHostListenerhandlesNonLocalDomains in class BasicComponentpublic int hashCodeForPacket(Packet packet)
AbstractMessageReceiverint threadNo = Math.abs(hashCodeForPacket(packet) % N);For a PubSub component, for example, a better packets distribution would be based on the PubSub channel name, for SM a better distribution is based on the destination address, etc....
hashCodeForPacket in class ConnectionManager<XMPPIOService<Object>>packet - is a Packet which needs to be processed by some
thread.public boolean isIncomingValid(String session_id)
session_id - public void processDialback(Packet packet, XMPPIOService<Object> serv)
packet - serv - public void processPacket(Packet packet)
AbstractMessageReceiverPacket processing method. It is called
concurrently from many threads so implementing it in thread save manner is
essential. The method is called for each packet addressed to the component.
Packet instance may be processed by different
parts of the server, different components or plugins at the same time.
Therefore this is very important to tread the Packet instance
as unmodifiable object.
addOutPacket(Packet) method.processPacket in class ConnectionManager<XMPPIOService<Object>>packet - is an instance of the Packet class passed for
processing.public Queue<Packet> processSocketData(XMPPIOService<Object> serv)
ConnectionManagerprocessSocketData in class ConnectionManager<XMPPIOService<Object>>Queue<Packet>public boolean processUndeliveredPacket(Packet packet, Long stamp, String errorMessage)
ConnectionManagerprocessUndeliveredPacket in class ConnectionManager<XMPPIOService<Object>>stamp - - timestamp when packet was received to be written to XMPPIOServicepublic void reconnectionFailed(Map<String,Object> port_props)
ConnectionManagerreconnectionFailed in class ConnectionManager<XMPPIOService<Object>>public boolean sendToIncoming(String session_id, Packet packet)
session_id - packet - public void serviceStarted(XMPPIOService<Object> serv)
ConnectionManagerserviceStarted in class ConnectionManager<XMPPIOService<Object>>public boolean serviceStopped(XMPPIOService<Object> serv)
serviceStopped in interface IOServiceListener<XMPPIOService<Object>>serviceStopped in class ConnectionManager<XMPPIOService<Object>>public void setProperties(Map<String,Object> props) throws ConfigurationException
ConfigurablesetProperties in interface ConfigurablesetProperties in class ConnectionManager<XMPPIOService<Object>>props - Map with the configurationConfigurationException - - if setting configuration will
fail which will make it unable
to workpublic void tlsHandshakeCompleted(XMPPIOService<Object> service)
tlsHandshakeCompleted in interface IOServiceListener<XMPPIOService<Object>>public void validateIncoming(String session_id, boolean valid)
session_id - valid - public void xmppStreamClosed(XMPPIOService<Object> serv)
xmppStreamClosed in interface XMPPIOServiceListener<XMPPIOService<Object>>public String xmppStreamOpened(XMPPIOService<Object> serv, Map<String,String> attribs)
xmppStreamOpened in interface XMPPIOServiceListener<XMPPIOService<Object>>protected int[] getDefPlainPorts()
ConnectionManagergetDefPlainPorts in class ConnectionManager<XMPPIOService<Object>>int[]protected String getLocalDBKey(CID cid, String key, String forkey_sessionId, String asking_sessionId)
protected long getMaxInactiveTime()
getMaxInactiveTime in class ConnectionManager<XMPPIOService<Object>>longprotected ServerConnections getServerConnections(CID cid)
protected XMPPIOService<Object> getXMPPIOServiceInstance()
ConnectionManagergetXMPPIOServiceInstance in class ConnectionManager<XMPPIOService<Object>>IOprotected boolean isHighThroughput()
ConnectionManagerisHighThroughput in class ConnectionManager<XMPPIOService<Object>>booleanprotected ServerConnections removeServerConnections(CID cid)
protected void sendVerifyResult(String from, String to, String forkey_sessionId, boolean valid, ServerConnections serv_conns, String asking_sessionId)
Copyright © 2017 "Tigase, Inc.". All rights reserved.