Package tigase.cluster
Class ClusterConnectionManager
- All Implemented Interfaces:
ClusterConnectionHandler
,ClusteredComponentIfc
,Configurable
,RepositoryChangeListenerIfc<ClusterRepoItem>
,XMPPService
,ConfigurationChangedAware
,Initializable
,RegistrarBean
,IOServiceListener<XMPPIOService<Object>>
,MessageReceiver
,PacketWriterWithTimeout
,ServerComponent
,StatisticsContainer
,StatisticsContainerIfc
,VHostListener
,XMPPIOServiceListener<XMPPIOService<Object>>
@Bean(name="cl-comp",
parent=Kernel.class,
active=true)
@ConfigType({DefaultMode,SessionManagerMode,ConnectionManagersMode,ComponentMode})
@ClusterModeRequired(active=true)
public class ClusterConnectionManager
extends ConnectionManager<XMPPIOService<Object>>
implements ClusteredComponentIfc, RepositoryChangeListenerIfc<ClusterRepoItem>, ClusterConnectionHandler
Class ClusterConnectionManager
Created: Tue Nov 22 07:07:11 2005
Created: Tue Nov 22 07:07:11 2005
- Author:
- Artur Hefczyc
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
static enum
protected class
Nested classes/interfaces inherited from class tigase.server.ConnectionManager
ConnectionManager.LIMIT_ACTION, ConnectionManager.PortConfigBean, ConnectionManager.PortsConfigBean, ConnectionManager.SecPortConfigBean, ConnectionManager.WATCHDOG_PING_TYPE
Nested classes/interfaces inherited from class tigase.server.BasicComponent
BasicComponent.ServerInfoVHostItemExtension
Nested classes/interfaces inherited from interface tigase.server.PacketWriterWithTimeout
PacketWriterWithTimeout.Handler
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final int
static final String
static final String
static final boolean
static final String
static final String
static final boolean
static int
Default value for the system property for configuration protection from system overload and DOS attack.static final String
static final boolean
static final String
static final String
static final String
static final boolean
static final String
static final String
static final boolean
static final String
static final int
static final String
Fields inherited from class tigase.server.ConnectionManager
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, kernel, 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_ST_PROP_VAL, 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_NEW_CONNECTIONS_THROTTLING_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, serviceConnectedTimeout, SOCKET_BUFFER_HT_PROP_VAL, SOCKET_BUFFER_ST_PROP_VAL, ST_TRAFFIC_THROTTLING_PROP_KEY, ST_TRAFFIC_THROTTLING_PROP_VAL, TOTAL_BIN_LIMIT_PROP_VAL, TOTAL_PACKETS_LIMIT_PROP_VAL, TRAFFIC_THROTTLING_PROP_KEY, trafficThrottling, 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_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, maxQueueSize, MINUTE, OUTGOING_FILTERS_PROP_KEY, OUTGOING_FILTERS_PROP_VAL, PACKET_DELIVERY_RETRY_COUNT_PROP_KEY, SCHEDULER_THREADS_PROP_KEY, SECOND
Fields inherited from class tigase.server.BasicComponent
admins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, scriptEngineManager, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, trusted, vHostManager
Fields inherited from interface tigase.conf.Configurable
ADMINS_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_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, 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
Fields inherited from interface tigase.disco.XMPPService
CMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
enableServiceConnectedTimeout
(XMPPIOService<Object> service) void
Utility method executed precisely every hour.protected int[]
protected String
Method returns component category type used for service discovery responses.Method returns description used for service discovery responses.protected long
protected Integer
getMaxQueueSize
(int def) getParamsForPort
(int port) void
getStatistics
(StatisticsList list) Method returns component statistics.protected XMPPIOService<Object>
int
hashCodeForPacket
(Packet packet) This method decides how incoming packets are distributed among processing threads.void
initBindings
(Bindings binds) Initialize a mapping of key/value pairs which can be used in scripts loaded by the serverprotected boolean
void
itemAdded
(ClusterRepoItem repoItem) void
itemRemoved
(ClusterRepoItem item) void
itemUpdated
(ClusterRepoItem item) void
nodeConnected
(String node) Method is called on cluster node connection event.void
nodeDisconnected
(String node) Method is called on cluster node disconnection event.int
Concurrency control method.int
Concurrency control method.void
processOutPacket
(Packet packet) By default this method just copies the given packet between queue.void
processPacket
(Packet packet) This is the mainPacket
processing method.processSocketData
(XMPPIOService<Object> serv) boolean
processUndeliveredPacket
(Packet packet, Long stamp, String errorMessage) Processes undelivered packetsvoid
reconnectionFailed
(Map<String, Object> port_props) int
Method returns default number of threads used by SchedulerExecutorServiceprotected void
serviceConnected
(XMPPIOService<Object> serv) void
serviceStarted
(XMPPIOService<Object> serv) boolean
serviceStopped
(XMPPIOService<Object> service) void
setClusterController
(ClusterControllerIfc cl_controller) Set's the configures the cluster controller object for cluster communication and API.void
void
start()
void
stop()
void
tlsHandshakeCompleted
(XMPPIOService<Object> service) void
updateConnectionDetails
(Map<String, Object> port_props) protected boolean
void
xmppStreamClosed
(XMPPIOService<Object> serv) String[]
xmppStreamOpened
(XMPPIOService<Object> service, Map<String, String> attribs) Methods inherited from class tigase.server.ConnectionManager
addWaitingTask, beanConfigurationChanged, checkHighThroughputProperty, checkTrafficLimits, connectWaitingTasks, countIOServices, doForAllServices, everyMinute, getDefPorts, getDefSSLPorts, getFlashCrossDomainPolicy, getNet_buffer_limit, getPortsConfigBean, getServiceId, getServiceId, getTrafficThrottling, getUniqueId, getXMPPIOService, getXMPPIOService, initializationCompleted, newWatchdog, packetsReady, register, release, releaseListener, setFlashCrossDomainPolicyFile, setName, setNet_buffer_limit, setProcessors, setTrafficThrottling, setupWatchdogThread, setWatchdogPingType, socketAccepted, startService, unregister, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writeRawData, xmppStreamError
Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, clearRegexRoutings, everySecond, getRegexRoutings, getResourceForPacketWithTimeout, isInRegexRoutings, newPacketId, processPacket, removeRegexRouting, setCompId, setIncoming_filters, setOutgoing_filters, setParent, setSchedulerThreads_size, updateFiltersName
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, createScriptEngineManager, getComponentId, getComponentInfo, getDefaults, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initialize, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, isTrusted, isTrusted, onNodeConnected, onNodeDisconnected, processScriptCommand, reloadScripts, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setCommandsACL, setProperties, setScriptsBaseDir, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceEntity
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface tigase.server.MessageReceiver
getDefHostName
Methods inherited from interface tigase.server.ServerComponent
getComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, release, setName
Methods inherited from interface tigase.stats.StatisticsContainerIfc
getName
-
Field Details
-
SOCKET_BUFFER_CL_PROP_VAL
public static final int SOCKET_BUFFER_CL_PROP_VAL- See Also:
-
CLUSTER_CONNECTIONS_PER_NODE_PROP_KEY
- See Also:
-
CLUSTER_CONNECTIONS_PER_NODE_VAL
public static final int CLUSTER_CONNECTIONS_PER_NODE_VAL- See Also:
-
CLUSTER_CONTR_ID_PROP_KEY
- See Also:
-
COMPRESS_STREAM_PROP_KEY
- See Also:
-
CONNECT_ALL_PAR
- See Also:
-
CONNECT_ALL_PROP_KEY
- See Also:
-
NON_CLUSTER_TRAFFIC_ALLOWED_PROP_KEY
- See Also:
-
NON_CLUSTER_TRAFFIC_ALLOWED_PROP_VAL
public static final boolean NON_CLUSTER_TRAFFIC_ALLOWED_PROP_VAL- See Also:
-
IDENTITY_TYPE_KEY
- See Also:
-
IDENTITY_TYPE_VAL
- See Also:
-
PORT_ROUTING_TABLE_PROP_KEY
- See Also:
-
RETURN_SERVICE_DISCO_KEY
- See Also:
-
SECRET_PROP_KEY
- See Also:
-
XMLNS
- See Also:
-
RETURN_SERVICE_DISCO_VAL
public static final boolean RETURN_SERVICE_DISCO_VAL- See Also:
-
CONNECT_ALL_PROP_VAL
public static final boolean CONNECT_ALL_PROP_VAL- See Also:
-
COMPRESS_STREAM_PROP_VAL
public static final boolean COMPRESS_STREAM_PROP_VAL- See Also:
-
EVENTBUS_REPOSITORY_NOTIFICATIONS_ENABLED_KEY
- See Also:
-
EVENTBUS_REPOSITORY_NOTIFICATIONS_ENABLED_VALUE
public static final boolean EVENTBUS_REPOSITORY_NOTIFICATIONS_ENABLED_VALUE- See Also:
-
ELEMENTS_NUMBER_LIMIT_CLUSTER_PROP_VAL
public static int ELEMENTS_NUMBER_LIMIT_CLUSTER_PROP_VALDefault value for the system property for configuration protection from system overload and DOS attack.
-
-
Constructor Details
-
ClusterConnectionManager
public ClusterConnectionManager()
-
-
Method Details
-
enableServiceConnectedTimeout
- Overrides:
enableServiceConnectedTimeout
in classConnectionManager<XMPPIOService<Object>>
-
hashCodeForPacket
Description copied from class:AbstractMessageReceiver
This method decides how incoming packets are distributed among processing threads. Different components needs different distribution to efficient use all threads and avoid packets re-ordering.
If there are N processing threads, packets are distributed among threads using following code:
int 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....- Specified by:
hashCodeForPacket
in interfaceClusterConnectionHandler
- Overrides:
hashCodeForPacket
in classConnectionManager<XMPPIOService<Object>>
- Parameters:
packet
- is aPacket
which needs to be processed by some thread.- Returns:
- a hash code generated for the input thread.
-
initBindings
Description copied from class:BasicComponent
Initialize a mapping of key/value pairs which can be used in scripts loaded by the server- Overrides:
initBindings
in classConnectionManager<XMPPIOService<Object>>
- Parameters:
binds
- A mapping of key/value pairs, all of whose keys are Strings.
-
itemAdded
- Specified by:
itemAdded
in interfaceRepositoryChangeListenerIfc<ClusterRepoItem>
-
itemRemoved
- Specified by:
itemRemoved
in interfaceRepositoryChangeListenerIfc<ClusterRepoItem>
-
itemUpdated
- Specified by:
itemUpdated
in interfaceRepositoryChangeListenerIfc<ClusterRepoItem>
-
nodeConnected
Description copied from interface:ClusteredComponentIfc
Method is called on cluster node connection event. This is a notification to the component that a new cluster node has connected.- Specified by:
nodeConnected
in interfaceClusteredComponentIfc
- Overrides:
nodeConnected
in classBasicComponent
- Parameters:
node
- is a hostname of a cluster node generating the event.
-
everyHour
public void everyHour()Description copied from class:AbstractMessageReceiver
Utility method executed precisely every hour. A component can overwrite the method to put own code to be executed at the regular intervals of time.
Note, no extensive calculations should happen in this method nor long lasting operations. It is essential that the method processing does not exceed 1 hour. The overriding method must call the the super method first and only then run own code.- Overrides:
everyHour
in classAbstractMessageReceiver
-
nodeDisconnected
Description copied from interface:ClusteredComponentIfc
Method is called on cluster node disconnection event. This is a notification to the component that there was network connection lost to one of the cluster nodes.- Specified by:
nodeDisconnected
in interfaceClusteredComponentIfc
- Overrides:
nodeDisconnected
in classBasicComponent
- Parameters:
node
- is a hostname of a cluster node generating the event.
-
processingInThreads
public int processingInThreads()Description copied from class:AbstractMessageReceiver
Concurrency control method. Returns preferable number of threads set for this component.- Overrides:
processingInThreads
in classConnectionManager<XMPPIOService<Object>>
- Returns:
- preferable number of threads set for this component.
-
processingOutThreads
public int processingOutThreads()Description copied from class:AbstractMessageReceiver
Concurrency control method. Returns preferable number of threads set for this component.- Overrides:
processingOutThreads
in classConnectionManager<XMPPIOService<Object>>
- Returns:
- preferable number of threads set for this component.
-
processOutPacket
Description copied from class:AbstractMessageReceiver
By default this method just copies the given packet between queue. This method operates on packets which have been already processed somehow by the component so usually the default action is the best one, however some components in rare cases may choose to process packets differently. In most cases this method should not be overridden.- Overrides:
processOutPacket
in classAbstractMessageReceiver
- Parameters:
packet
- is an output packet which normally has to go to other component for further processing.
-
processPacket
Description copied from class:AbstractMessageReceiver
This is the mainPacket
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.
Please note, thePacket
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 thePacket
instance as unmodifiable object.
Processing in this method is asynchronous, therefore there is no result value. If there are some 'result' packets generated during processing, they should be passed back usingaddOutPacket(Packet)
method.- Overrides:
processPacket
in classConnectionManager<XMPPIOService<Object>>
- Parameters:
packet
- is an instance of thePacket
class passed for processing.
-
processSocketData
- Specified by:
processSocketData
in classConnectionManager<XMPPIOService<Object>>
-
processUndeliveredPacket
Description copied from class:ConnectionManager
Processes undelivered packets- Specified by:
processUndeliveredPacket
in classConnectionManager<XMPPIOService<Object>>
stamp
- - timestamp when packet was received to be written to XMPPIOService
-
reconnectionFailed
- Specified by:
reconnectionFailed
in classConnectionManager<XMPPIOService<Object>>
-
schedulerThreads
public int schedulerThreads()Description copied from class:AbstractMessageReceiver
Method returns default number of threads used by SchedulerExecutorService- Overrides:
schedulerThreads
in classAbstractMessageReceiver
- Returns:
- a value of
int
-
serviceStarted
- Overrides:
serviceStarted
in classConnectionManager<XMPPIOService<Object>>
-
serviceStopped
- Specified by:
serviceStopped
in interfaceIOServiceListener<XMPPIOService<Object>>
- Overrides:
serviceStopped
in classConnectionManager<XMPPIOService<Object>>
-
setRepo
-
tlsHandshakeCompleted
- Specified by:
tlsHandshakeCompleted
in interfaceIOServiceListener<XMPPIOService<Object>>
-
updateConnectionDetails
- Overrides:
updateConnectionDetails
in classConnectionManager<XMPPIOService<Object>>
-
xmppStreamClosed
- Specified by:
xmppStreamClosed
in interfaceXMPPIOServiceListener<XMPPIOService<Object>>
-
xmppStreamOpened
- Specified by:
xmppStreamOpened
in interfaceXMPPIOServiceListener<XMPPIOService<Object>>
-
getDiscoCategoryType
Description copied from class:BasicComponent
Method returns component category type used for service discovery responses.- Overrides:
getDiscoCategoryType
in classBasicComponent
- Returns:
- category type of a component
-
getDiscoDescription
Description copied from class:BasicComponent
Method returns description used for service discovery responses.- Overrides:
getDiscoDescription
in classBasicComponent
- Returns:
- description of a component
-
getStatistics
Description copied from class:AbstractMessageReceiver
Method returns component statistics. Please note, the method can be called every second by the server monitoring system therefore no extensive or lengthy calculations are allowed. If there are some statistics requiring lengthy operations like database access they must haveLevel.FINEST
assigned and must be put inside the level guard to prevent generating them by the system monitor. The system monitor does not collectFINEST
statistics.
Level guard code looks like the example below:
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.- Specified by:
getStatistics
in interfaceStatisticsContainerIfc
- Overrides:
getStatistics
in classConnectionManager<XMPPIOService<Object>>
- Parameters:
list
- is aStatistcsList
where all statistics are stored.
-
setClusterController
Description copied from interface:ClusteredComponentIfc
Set's the configures the cluster controller object for cluster communication and API.- Specified by:
setClusterController
in interfaceClusteredComponentIfc
- Overrides:
setClusterController
in classBasicComponent
- Parameters:
cl_controller
- cluster controller object used for cluster communication
-
start
public void start()- Specified by:
start
in interfaceMessageReceiver
- Overrides:
start
in classConnectionManager<XMPPIOService<Object>>
-
stop
public void stop()- Overrides:
stop
in classConnectionManager<XMPPIOService<Object>>
-
serviceConnected
- Overrides:
serviceConnected
in classConnectionManager<XMPPIOService<Object>>
-
writePacketToSocket
- Overrides:
writePacketToSocket
in classConnectionManager<XMPPIOService<Object>>
-
getDefPlainPorts
protected int[] getDefPlainPorts()- Overrides:
getDefPlainPorts
in classConnectionManager<XMPPIOService<Object>>
-
getDefTrafficThrottling
- Overrides:
getDefTrafficThrottling
in classConnectionManager<XMPPIOService<Object>>
-
getMaxInactiveTime
protected long getMaxInactiveTime()- Specified by:
getMaxInactiveTime
in classConnectionManager<XMPPIOService<Object>>
-
getMaxQueueSize
- Overrides:
getMaxQueueSize
in classAbstractMessageReceiver
-
getParamsForPort
- Overrides:
getParamsForPort
in classConnectionManager<XMPPIOService<Object>>
-
getXMPPIOServiceInstance
- Specified by:
getXMPPIOServiceInstance
in classConnectionManager<XMPPIOService<Object>>
-
isHighThroughput
protected boolean isHighThroughput()- Overrides:
isHighThroughput
in classConnectionManager<XMPPIOService<Object>>
-