tigase.server.xmppcomponent
Class ComponentConnectionManager

java.lang.Object
  extended by tigase.server.BasicComponent
      extended by tigase.server.AbstractMessageReceiver
          extended by tigase.server.ConnectionManager<XMPPIOService<Object>>
              extended by tigase.server.xmppcomponent.ComponentConnectionManager
All Implemented Interfaces:
Configurable, XMPPService, IOServiceListener<XMPPIOService<Object>>, MessageReceiver, ServerComponent, StatisticsContainer, VHostListener, XMPPIOServiceListener<XMPPIOService<Object>>

public class ComponentConnectionManager
extends ConnectionManager<XMPPIOService<Object>>
implements XMPPService

Class ComponentConnectionManager Created: Tue Nov 22 07:07:11 2005

Version:
$Rev$
Author:
Artur Hefczyc

Nested Class Summary
 
Nested classes/interfaces inherited from class tigase.server.ConnectionManager
ConnectionManager.LIMIT_ACTION
 
Field Summary
static String IDENTITY_TYPE_KEY
          Field description
static String IDENTITY_TYPE_VAL
          Field description
static String PACK_ROUTED_KEY
          Field description
 boolean PACK_ROUTED_VAL
          Field description
 String PORT_LOCAL_HOST_PROP_VAL
          Field description
 String PORT_REMOTE_HOST_PROP_VAL
          Field description
static String PORT_ROUTING_TABLE_PROP_KEY
          Field description
 String[] PORT_ROUTING_TABLE_PROP_VAL
          Field description
 SocketType PORT_SOCKET_PROP_VAL
          Field description
 ConnectionType PORT_TYPE_PROP_VAL
          Field description
 int[] PORTS
          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
 String SECRET_PROP_VAL
          Field description
 
Fields inherited from class tigase.server.ConnectionManager
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_IFC_PROP_VAL, PORT_KEY, PORT_LOCAL_HOST_PROP_KEY, PORT_REMOTE_HOST_PROP_KEY, 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_VAL
 
Fields inherited from class tigase.server.AbstractMessageReceiver
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, SECOND
 
Fields inherited from class tigase.server.BasicComponent
admins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, vHostManager
 
Fields inherited from interface tigase.disco.XMPPService
CMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS
 
Fields inherited from interface tigase.conf.Configurable
ADMINS_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_ACK
 
Constructor Summary
ComponentConnectionManager()
           
 
Method Summary
 Map<String,Object> getDefaults(Map<String,Object> params)
          Method description
protected  int[] getDefPlainPorts()
          Method description
 List<tigase.xml.Element> getDiscoFeatures(tigase.xmpp.JID from)
          Method description
 tigase.xml.Element getDiscoInfo(String node, tigase.xmpp.JID jid, tigase.xmpp.JID from)
          Method description
 List<tigase.xml.Element> getDiscoItems(String node, tigase.xmpp.JID jid, tigase.xmpp.JID from)
          Method description
protected  long getMaxInactiveTime()
          Method getMaxInactiveTime returns max keep-alive time for inactive connection.
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)
          Method description
 Queue<Packet> processSocketData(XMPPIOService<Object> serv)
          Method description
 void reconnectionFailed(Map<String,Object> port_props)
          Method description
 void serviceStarted(XMPPIOService<Object> serv)
          Method description
 boolean serviceStopped(XMPPIOService<Object> service)
          Method description
 void setProperties(Map<String,Object> props)
          Method description
 void tlsHandshakeCompleted(XMPPIOService<Object> service)
          Method description
 void xmppStreamClosed(XMPPIOService<Object> serv)
          Method description
 String xmppStreamOpened(XMPPIOService<Object> service, Map<String,String> attribs)
          Method description
 
Methods inherited from class tigase.server.ConnectionManager
addWaitingTask, checkHighThroughputProperty, checkTrafficLimits, countIOServices, doForAllServices, everyMinute, getDefSSLPorts, getDefTrafficThrottling, getServiceId, getStatistics, getXMPPIOService, getXMPPIOService, hashCodeForPacket, initBindings, initializationCompleted, isHighThroughput, isTlsWantClientAuthEnabled, packetsReady, processingInThreads, processingOutThreads, release, setName, stop, updateConnectionDetails, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writePacketToSocket, writeRawData
 
Methods inherited from class tigase.server.AbstractMessageReceiver
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, start
 
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, checkCommandAcl, getComponentId, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoCategoryType, getDiscoDescription, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, processScriptCommand, removeComponentDomain, removeServiceDiscoveryItem, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface tigase.server.ServerComponent
getComponentId, getName, initializationCompleted, isInitializationComplete, processPacket, release, setName
 
Methods inherited from interface tigase.server.MessageReceiver
getDefHostName
 

Field Detail

SECRET_PROP_KEY

public static final String SECRET_PROP_KEY
Field description

See Also:
Constant Field Values

PORT_ROUTING_TABLE_PROP_KEY

public static final String PORT_ROUTING_TABLE_PROP_KEY
Field description

See Also:
Constant Field Values

PACK_ROUTED_KEY

public static final String PACK_ROUTED_KEY
Field description

See Also:
Constant Field Values

RETURN_SERVICE_DISCO_KEY

public static final String RETURN_SERVICE_DISCO_KEY
Field description

See Also:
Constant Field Values

RETURN_SERVICE_DISCO_VAL

public static final boolean RETURN_SERVICE_DISCO_VAL
Field description

See Also:
Constant Field Values

IDENTITY_TYPE_KEY

public static final String IDENTITY_TYPE_KEY
Field description

See Also:
Constant Field Values

IDENTITY_TYPE_VAL

public static final String IDENTITY_TYPE_VAL
Field description

See Also:
Constant Field Values

PORTS

public int[] PORTS
Field description


PORT_LOCAL_HOST_PROP_VAL

public String PORT_LOCAL_HOST_PROP_VAL
Field description


PORT_REMOTE_HOST_PROP_VAL

public String PORT_REMOTE_HOST_PROP_VAL
Field description


PORT_TYPE_PROP_VAL

public ConnectionType PORT_TYPE_PROP_VAL
Field description


PORT_SOCKET_PROP_VAL

public SocketType PORT_SOCKET_PROP_VAL
Field description


SECRET_PROP_VAL

public String SECRET_PROP_VAL
Field description


PORT_ROUTING_TABLE_PROP_VAL

public String[] PORT_ROUTING_TABLE_PROP_VAL
Field description


PACK_ROUTED_VAL

public boolean PACK_ROUTED_VAL
Field description

Constructor Detail

ComponentConnectionManager

public ComponentConnectionManager()
Method Detail

getDefaults

public Map<String,Object> getDefaults(Map<String,Object> params)
Method description

Specified by:
getDefaults in interface Configurable
Overrides:
getDefaults in class ConnectionManager<XMPPIOService<Object>>
Parameters:
params -
Returns:

getDiscoFeatures

public List<tigase.xml.Element> getDiscoFeatures(tigase.xmpp.JID from)
Method description

Specified by:
getDiscoFeatures in interface XMPPService
Overrides:
getDiscoFeatures in class BasicComponent
Parameters:
from -
Returns:

getDiscoInfo

public tigase.xml.Element getDiscoInfo(String node,
                                       tigase.xmpp.JID jid,
                                       tigase.xmpp.JID from)
Method description

Specified by:
getDiscoInfo in interface XMPPService
Overrides:
getDiscoInfo in class BasicComponent
Parameters:
node -
jid -
from -
Returns:

getDiscoItems

public List<tigase.xml.Element> getDiscoItems(String node,
                                              tigase.xmpp.JID jid,
                                              tigase.xmpp.JID from)
Method description

Specified by:
getDiscoItems in interface XMPPService
Overrides:
getDiscoItems in class BasicComponent
Parameters:
node -
jid -
from -
Returns:

processPacket

public void processPacket(Packet packet)
Method description

Overrides:
processPacket in class ConnectionManager<XMPPIOService<Object>>
Parameters:
packet -

processSocketData

public Queue<Packet> processSocketData(XMPPIOService<Object> serv)
Method description

Specified by:
processSocketData in class ConnectionManager<XMPPIOService<Object>>
Parameters:
serv -
Returns:

reconnectionFailed

public void reconnectionFailed(Map<String,Object> port_props)
Method description

Specified by:
reconnectionFailed in class ConnectionManager<XMPPIOService<Object>>
Parameters:
port_props -

serviceStarted

public void serviceStarted(XMPPIOService<Object> serv)
Method description

Overrides:
serviceStarted in class ConnectionManager<XMPPIOService<Object>>
Parameters:
serv -

serviceStopped

public boolean serviceStopped(XMPPIOService<Object> service)
Method description

Specified by:
serviceStopped in interface IOServiceListener<XMPPIOService<Object>>
Overrides:
serviceStopped in class ConnectionManager<XMPPIOService<Object>>
Parameters:
service -
Returns:

setProperties

public void setProperties(Map<String,Object> props)
Method description

Specified by:
setProperties in interface Configurable
Overrides:
setProperties in class ConnectionManager<XMPPIOService<Object>>
Parameters:
props -

tlsHandshakeCompleted

public void tlsHandshakeCompleted(XMPPIOService<Object> service)
Method description

Specified by:
tlsHandshakeCompleted in interface IOServiceListener<XMPPIOService<Object>>
Parameters:
service -

xmppStreamClosed

public void xmppStreamClosed(XMPPIOService<Object> serv)
Method description

Specified by:
xmppStreamClosed in interface XMPPIOServiceListener<XMPPIOService<Object>>
Parameters:
serv -

xmppStreamOpened

public String xmppStreamOpened(XMPPIOService<Object> service,
                               Map<String,String> attribs)
Method description

Specified by:
xmppStreamOpened in interface XMPPIOServiceListener<XMPPIOService<Object>>
Parameters:
service -
attribs -
Returns:

getDefPlainPorts

protected int[] getDefPlainPorts()
Description copied from class: ConnectionManager
Method description

Overrides:
getDefPlainPorts in class ConnectionManager<XMPPIOService<Object>>
Returns:

getMaxInactiveTime

protected long getMaxInactiveTime()
Method getMaxInactiveTime returns max keep-alive time for inactive connection. we shoulnd not really close external component connection at all, so let's say something like: 1000 days...

Specified by:
getMaxInactiveTime in class ConnectionManager<XMPPIOService<Object>>
Returns:
a long value

getParamsForPort

protected Map<String,Object> getParamsForPort(int port)
Description copied from class: ConnectionManager
Method description

Overrides:
getParamsForPort in class ConnectionManager<XMPPIOService<Object>>
Returns:

getServiceId

protected String getServiceId(Packet packet)
Description copied from class: ConnectionManager
Method description

Overrides:
getServiceId in class ConnectionManager<XMPPIOService<Object>>
Returns:

getUniqueId

protected String getUniqueId(XMPPIOService<Object> serv)
Description copied from class: ConnectionManager
Method description

Overrides:
getUniqueId in class ConnectionManager<XMPPIOService<Object>>
Returns:

getXMPPIOServiceInstance

protected XMPPIOService<Object> getXMPPIOServiceInstance()
Description copied from class: ConnectionManager
Method description

Specified by:
getXMPPIOServiceInstance in class ConnectionManager<XMPPIOService<Object>>
Returns:


Copyright © 2013 Tigase. All rights reserved.