tigase.server
IO - public abstract class ConnectionManager<IO extends XMPPIOService<?>> extends AbstractMessageReceiver implements XMPPIOServiceListener<IO>
| Modifier and Type | Class and Description |
|---|---|
static class |
ConnectionManager.LIMIT_ACTION
Describe class
LIMIT_ACTION here. |
| Modifier and Type | Field and Description |
|---|---|
protected long |
connectionDelay
Field description
|
static String |
HT_TRAFFIC_THROTTLING_PROP_KEY
Field description
|
static String |
HT_TRAFFIC_THROTTLING_PROP_VAL
Field description
|
protected static long |
LAST_MINUTE_BIN_LIMIT_PROP_VAL
Field description
|
protected static long |
LAST_MINUTE_PACKETS_LIMIT_PROP_VAL
Field description
|
protected static String |
MAX_INACTIVITY_TIME
Field description
|
protected static String |
MAX_RECONNECTS_PROP_KEY
Field description
|
protected int |
net_buffer
Field description
|
static String |
NET_BUFFER_HT_PROP_KEY
Field description.
|
protected static int |
NET_BUFFER_HT_PROP_VAL
Field description
|
protected static String |
NET_BUFFER_PROP_KEY
Field description
|
static String |
NET_BUFFER_ST_PROP_KEY
Field description.
|
protected static int |
NET_BUFFER_ST_PROP_VAL
Field description
|
protected static String |
PORT_CLASS_PROP_KEY
Field description
|
protected static String |
PORT_IFC_PROP_KEY
Field description
|
String[] |
PORT_IFC_PROP_VAL
Field description.
|
protected static String |
PORT_KEY
Field description
|
static String |
PORT_LOCAL_HOST_PROP_KEY
Field description.
|
protected static String |
PORT_REMOTE_HOST_PROP_KEY
Field description
|
protected static String |
PORT_REMOTE_HOST_PROP_VAL
Field description
|
protected static String |
PORT_SOCKET_PROP_KEY
Field description
|
protected static String |
PORT_TYPE_PROP_KEY
Field description
|
protected static String |
PORTS_PROP_KEY
Field description
|
protected static String |
PROP_KEY
Field description
|
static String |
ST_TRAFFIC_THROTTLING_PROP_KEY
Field description
|
static String |
ST_TRAFFIC_THROTTLING_PROP_VAL
Field description
|
protected static String |
TLS_PROP_KEY
Field description
|
protected static String |
TLS_REQUIRED_PROP_KEY
Field description
|
protected static boolean |
TLS_REQUIRED_PROP_VAL
Field description
|
protected static String |
TLS_USE_PROP_KEY
Field description
|
protected static boolean |
TLS_USE_PROP_VAL
Field description
|
protected static long |
TOTAL_BIN_LIMIT_PROP_VAL
Field description
|
protected static long |
TOTAL_PACKETS_LIMIT_PROP_VAL
Field description
|
static String |
TRAFFIC_THROTTLING_PROP_KEY
Field description
|
protected static String |
WHITE_CHAR_ACK_PROP_KEY
Field description
|
protected static boolean |
WHITE_CHAR_ACK_PROP_VAL
Field description
|
protected static String |
XMPP_ACK_PROP_KEY
Field description
|
protected static boolean |
XMPP_ACK_PROP_VAL
Field description
|
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, 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 |
|---|
ConnectionManager() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addWaitingTask(Map<String,Object> conn)
Method description
|
protected <T> void |
checkHighThroughputProperty(String ht_def_key,
T ht_dev_val,
String st_def_key,
T st_def_val,
String prop_key,
Class<T> prop_val_class,
Map<String,Object> params,
Map<String,Object> props)
Method description
|
boolean |
checkTrafficLimits(IO serv)
Method description
|
protected int |
countIOServices()
Returns number of active network connections (IOServices).
|
protected void |
doForAllServices(ServiceChecker<IO> checker)
Perform a given action defined by ServiceChecker for all active IOService
objects (active network connections).
|
void |
everyMinute()
Method description
|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Method description
|
protected int[] |
getDefPlainPorts()
Method description
|
protected int[] |
getDefSSLPorts()
Method description
|
protected String |
getDefTrafficThrottling()
Method description
|
protected abstract long |
getMaxInactiveTime()
Method description
|
protected Map<String,Object> |
getParamsForPort(int port)
Method description
|
protected String |
getServiceId(tigase.xmpp.JID jid)
Method description
|
protected String |
getServiceId(Packet packet)
Method description
|
void |
getStatistics(StatisticsList list)
Generates the component statistics.
|
protected String |
getUniqueId(IO serv)
Method description
|
protected IO |
getXMPPIOService(Packet p)
Method description
|
IO |
getXMPPIOService(String serviceId)
Method description
|
protected abstract IO |
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
|
void |
initializationCompleted()
Method description
|
protected boolean |
isHighThroughput()
Method description
|
protected boolean |
isTlsWantClientAuthEnabled() |
void |
packetsReady(IO serv)
Method description
|
int |
processingInThreads()
Method description
|
int |
processingOutThreads()
Method description
|
void |
processPacket(Packet packet)
Method description
|
abstract Queue<Packet> |
processSocketData(IO serv)
Method description
|
abstract void |
reconnectionFailed(Map<String,Object> port_props)
Method description
|
void |
release()
Method description
|
void |
serviceStarted(IO service)
Method description
|
boolean |
serviceStopped(IO service) |
void |
setName(String name)
Method description
|
void |
setProperties(Map<String,Object> props)
Method description
|
void |
stop()
Method description
|
void |
updateConnectionDetails(Map<String,Object> port_props)
Method description
|
void |
writePacketsToSocket(IO serv,
Queue<Packet> packets)
Method description
|
boolean |
writePacketToSocket(IO ios,
Packet p)
Method description
|
protected boolean |
writePacketToSocket(Packet p) |
protected boolean |
writePacketToSocket(Packet p,
String serviceId)
Method description
|
protected void |
writeRawData(IO ios,
String data)
Method description
|
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, clearRegexRoutings, everyHour, everySecond, getMaxQueueSize, getRegexRoutings, isInRegexRoutings, newPacketId, processingThreads, processOutPacket, processPacket, removeRegexRouting, schedulerThreads, setMaxQueueSize, setParent, startaddComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoCategoryType, getDiscoDescription, 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, waitxmppStreamClosed, xmppStreamOpenedtlsHandshakeCompletedgetDefHostNamegetComponentId, getName, isInitializationCompletepublic static final String HT_TRAFFIC_THROTTLING_PROP_KEY
public static final String HT_TRAFFIC_THROTTLING_PROP_VAL
public static final String NET_BUFFER_HT_PROP_KEY
public static final String NET_BUFFER_ST_PROP_KEY
public static final String PORT_LOCAL_HOST_PROP_KEY
public static final String ST_TRAFFIC_THROTTLING_PROP_KEY
public static final String ST_TRAFFIC_THROTTLING_PROP_VAL
public static final String TRAFFIC_THROTTLING_PROP_KEY
protected static final long LAST_MINUTE_BIN_LIMIT_PROP_VAL
protected static final long LAST_MINUTE_PACKETS_LIMIT_PROP_VAL
protected static final String MAX_INACTIVITY_TIME
protected static final String MAX_RECONNECTS_PROP_KEY
protected static final int NET_BUFFER_HT_PROP_VAL
protected static final String NET_BUFFER_PROP_KEY
protected static final int NET_BUFFER_ST_PROP_VAL
protected static final String PORT_CLASS_PROP_KEY
protected static final String PORT_IFC_PROP_KEY
protected static final String PORT_KEY
protected static final String PORT_REMOTE_HOST_PROP_KEY
protected static final String PORT_REMOTE_HOST_PROP_VAL
protected static final String PORT_SOCKET_PROP_KEY
protected static final String PORT_TYPE_PROP_KEY
protected static final String PROP_KEY
protected static final long TOTAL_BIN_LIMIT_PROP_VAL
protected static final long TOTAL_PACKETS_LIMIT_PROP_VAL
protected static final String WHITE_CHAR_ACK_PROP_KEY
protected static final String XMPP_ACK_PROP_KEY
protected static final boolean XMPP_ACK_PROP_VAL
protected static final boolean WHITE_CHAR_ACK_PROP_VAL
protected static final String PORTS_PROP_KEY
protected static final boolean TLS_USE_PROP_VAL
protected static final String TLS_PROP_KEY
protected static final String TLS_USE_PROP_KEY
protected static final boolean TLS_REQUIRED_PROP_VAL
protected static final String TLS_REQUIRED_PROP_KEY
public String[] PORT_IFC_PROP_VAL
protected int net_buffer
protected long connectionDelay
public boolean checkTrafficLimits(IO serv)
serv - public void everyMinute()
everyMinute in class AbstractMessageReceiverpublic int hashCodeForPacket(Packet packet)
hashCodeForPacket in class AbstractMessageReceiverpacket - public void initBindings(Bindings binds)
initBindings in class BasicComponentbinds - public void initializationCompleted()
initializationCompleted in interface ServerComponentinitializationCompleted in class BasicComponentpublic void packetsReady(IO serv) throws IOException
packetsReady in interface IOServiceListener<IO extends XMPPIOService<?>>serv - IOExceptionpublic int processingInThreads()
processingInThreads in class AbstractMessageReceiverpublic int processingOutThreads()
processingOutThreads in class AbstractMessageReceiverpublic void processPacket(Packet packet)
processPacket in class AbstractMessageReceiverpacket - public abstract Queue<Packet> processSocketData(IO serv)
serv - public abstract void reconnectionFailed(Map<String,Object> port_props)
port_props - public void release()
release in interface ServerComponentrelease in class AbstractMessageReceiver@TODO(note="Do something if service with the same unique ID is already started, possibly kill the old one...") public void serviceStarted(IO service)
service - public boolean serviceStopped(IO service)
serviceStopped in interface IOServiceListener<IO extends XMPPIOService<?>>service - public void stop()
stop in class AbstractMessageReceiverpublic void updateConnectionDetails(Map<String,Object> port_props)
port_props - public void writePacketsToSocket(IO serv, Queue<Packet> packets)
serv - packets - public boolean writePacketToSocket(IO ios, Packet p)
ios - p - public Map<String,Object> getDefaults(Map<String,Object> params)
getDefaults in interface ConfigurablegetDefaults in class AbstractMessageReceiverparams - public void getStatistics(StatisticsList list)
getStatistics in interface StatisticsContainergetStatistics in class AbstractMessageReceiverlist - is a collection to put the component statistics in.public 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 addWaitingTask(Map<String,Object> conn)
conn - protected <T> void checkHighThroughputProperty(String ht_def_key, T ht_dev_val, String st_def_key, T st_def_val, String prop_key, Class<T> prop_val_class, Map<String,Object> params, Map<String,Object> props)
T - ht_def_key - ht_dev_val - st_def_key - st_def_val - prop_key - prop_val_class - params - props - protected int countIOServices()
protected void doForAllServices(ServiceChecker<IO> checker)
checker - is a ServiceChecker instance defining an action to
perform for all IOService objects.protected boolean writePacketToSocket(Packet p)
p - protected boolean writePacketToSocket(Packet p, String serviceId)
p - serviceId - protected void writeRawData(IO ios, String data)
ios - data - protected int[] getDefPlainPorts()
protected int[] getDefSSLPorts()
protected String getDefTrafficThrottling()
protected abstract long getMaxInactiveTime()
protected Map<String,Object> getParamsForPort(int port)
port - protected String getServiceId(Packet packet)
packet - protected String getServiceId(tigase.xmpp.JID jid)
jid - public IO getXMPPIOService(String serviceId)
serviceId - protected abstract IO getXMPPIOServiceInstance()
protected boolean isHighThroughput()
protected boolean isTlsWantClientAuthEnabled()
Copyright © 2013 Tigase. All rights reserved.