public class ComponentConnectionManager extends ConnectionManager<XMPPIOService<Object>> implements XMPPService
ConnectionManager.LIMIT_ACTION, ConnectionManager.Watchdog, ConnectionManager.WATCHDOG_PING_TYPE| Modifier and Type | Field and Description |
|---|---|
static String |
IDENTITY_TYPE_KEY |
static String |
IDENTITY_TYPE_VAL |
static String |
PACK_ROUTED_KEY |
boolean |
PACK_ROUTED_VAL |
String |
PORT_LOCAL_HOST_PROP_VAL |
String |
PORT_REMOTE_HOST_PROP_VAL |
static String |
PORT_ROUTING_TABLE_PROP_KEY |
String[] |
PORT_ROUTING_TABLE_PROP_VAL |
SocketType |
PORT_SOCKET_PROP_VAL |
ConnectionType |
PORT_TYPE_PROP_VAL |
int[] |
PORTS |
static String |
RETURN_SERVICE_DISCO_KEY |
static boolean |
RETURN_SERVICE_DISCO_VAL |
static String |
SECRET_PROP_KEY |
String |
SECRET_PROP_VAL |
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_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, vHostManagerCMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNSADMINS_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_ACK| Constructor and Description |
|---|
ComponentConnectionManager() |
| Modifier and Type | Method and Description |
|---|---|
Map<String,Object> |
getDefaults(Map<String,Object> params)
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()
Method description
|
List<Element> |
getDiscoFeatures(JID from)
Returns features for top level disco info
|
Element |
getDiscoInfo(String node,
JID jid,
JID from)
Returns service discovery info for the component.
|
List<Element> |
getDiscoItems(String node,
JID jid,
JID from)
Returns service discovery items for the component.
|
protected long |
getMaxInactiveTime()
Method description
|
protected Map<String,Object> |
getParamsForPort(int port)
Method description
|
protected String |
getServiceId(Packet packet)
Method description
|
protected String |
getUniqueId(XMPPIOService<Object> serv)
Method description
|
protected XMPPIOService<Object> |
getXMPPIOServiceInstance()
Method description
|
void |
processPacket(Packet packet)
This is the main
Packet processing method. |
Queue<Packet> |
processSocketData(XMPPIOService<Object> serv) |
boolean |
processUndeliveredPacket(Packet packet,
Long stamp,
String errorMessage)
Processes undelivered packets
|
void |
reconnectionFailed(Map<String,Object> port_props) |
void |
serviceStarted(XMPPIOService<Object> serv) |
boolean |
serviceStopped(XMPPIOService<Object> service) |
void |
setProperties(Map<String,Object> props)
Sets all configuration properties for the object.
|
void |
tlsHandshakeCompleted(XMPPIOService<Object> service) |
void |
xmppStreamClosed(XMPPIOService<Object> serv) |
String[] |
xmppStreamOpened(XMPPIOService<Object> service,
Map<String,String> attribs) |
addWaitingTask, checkHighThroughputProperty, checkTrafficLimits, connectWaitingTasks, countIOServices, doForAllServices, everyMinute, getDefSSLPorts, getDefTrafficThrottling, getServiceId, getStatistics, getXMPPIOService, getXMPPIOService, hashCodeForPacket, initBindings, initializationCompleted, isHighThroughput, newWatchdog, packetsReady, processingInThreads, processingOutThreads, release, setName, setupWatchdogThread, socketAccepted, stop, updateConnectionDetails, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writePacketToSocket, writeRawData, xmppStreamErroraddOutPacket, addOutPacketNB, 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, getDiscoCategoryType, getDiscoDescription, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, 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, waitgetComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, release, setNamegetNamegetDefHostNamepublic static final String SECRET_PROP_KEY
public static final String PORT_ROUTING_TABLE_PROP_KEY
public static final String PACK_ROUTED_KEY
public static final String RETURN_SERVICE_DISCO_KEY
public static final boolean RETURN_SERVICE_DISCO_VAL
public static final String IDENTITY_TYPE_KEY
public static final String IDENTITY_TYPE_VAL
public int[] PORTS
public String PORT_LOCAL_HOST_PROP_VAL
public String PORT_REMOTE_HOST_PROP_VAL
public ConnectionType PORT_TYPE_PROP_VAL
public SocketType PORT_SOCKET_PROP_VAL
public String SECRET_PROP_VAL
public String[] PORT_ROUTING_TABLE_PROP_VAL
public boolean PACK_ROUTED_VAL
public 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 List<Element> getDiscoFeatures(JID from)
XMPPServicegetDiscoFeatures in interface XMPPServicegetDiscoFeatures in class BasicComponentfrom - a request sender address. Some service disco elements are meant
to be available only to system administrarors. The component is responsible to
check whether the sender is the component administrator and return results
appropriate.public Element getDiscoInfo(String node, JID jid, JID from)
XMPPServicegetDiscoInfo in interface XMPPServicegetDiscoInfo in class BasicComponentnode - is service discovery node for which the request is made. Is
normally null for the component top level request.jid - is the jid to which the request has been made.from - is the request sender address. Some service discovery information
is only meant for administrators.public List<Element> getDiscoItems(String node, JID jid, JID from)
XMPPServicegetDiscoItems in interface XMPPServicegetDiscoItems in class BasicComponentnode - is a service discovery node for which the request has been made.jid - is the jid to which the request has been made.from - is the request sender address. Some service discovery information
is only meant for administrators.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)
processSocketData in class ConnectionManager<XMPPIOService<Object>>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)
reconnectionFailed in class ConnectionManager<XMPPIOService<Object>>public void serviceStarted(XMPPIOService<Object> serv)
serviceStarted in class ConnectionManager<XMPPIOService<Object>>public boolean serviceStopped(XMPPIOService<Object> service)
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 xmppStreamClosed(XMPPIOService<Object> serv)
xmppStreamClosed in interface XMPPIOServiceListener<XMPPIOService<Object>>public String[] xmppStreamOpened(XMPPIOService<Object> service, Map<String,String> attribs)
xmppStreamOpened in interface XMPPIOServiceListener<XMPPIOService<Object>>protected int[] getDefPlainPorts()
ConnectionManagergetDefPlainPorts in class ConnectionManager<XMPPIOService<Object>>int[]protected long getMaxInactiveTime()
getMaxInactiveTime in class ConnectionManager<XMPPIOService<Object>>longprotected Map<String,Object> getParamsForPort(int port)
ConnectionManagergetParamsForPort in class ConnectionManager<XMPPIOService<Object>>Map<String,Object>protected String getServiceId(Packet packet)
ConnectionManagergetServiceId in class ConnectionManager<XMPPIOService<Object>>Stringprotected String getUniqueId(XMPPIOService<Object> serv)
ConnectionManagergetUniqueId in class ConnectionManager<XMPPIOService<Object>>Stringprotected XMPPIOService<Object> getXMPPIOServiceInstance()
ConnectionManagergetXMPPIOServiceInstance in class ConnectionManager<XMPPIOService<Object>>IOCopyright © 2018 "Tigase, Inc.". All rights reserved.