Package tigase.server
Class ConnectionManager<IO extends XMPPIOService<?>>
java.lang.Object
tigase.server.BasicComponent
tigase.server.AbstractMessageReceiver
tigase.server.ConnectionManager<IO>
- All Implemented Interfaces:
ClusteredComponentIfc
,Configurable
,XMPPService
,ConfigurationChangedAware
,Initializable
,RegistrarBean
,IOServiceListener<IO>
,MessageReceiver
,PacketWriterWithTimeout
,ServerComponent
,StatisticsContainer
,StatisticsContainerIfc
,VHostListener
,XMPPIOServiceListener<IO>
- Direct Known Subclasses:
ClientConnectionManager
,ClusterConnectionManager
,ComponentConnectionManager
,ComponentProtocol
,S2SConnectionManager
public abstract class ConnectionManager<IO extends XMPPIOService<?>>
extends AbstractMessageReceiver
implements XMPPIOServiceListener<IO>, RegistrarBean
Describe class ConnectionManager here.
Created: Sun Jan 22 22:52:58 2006
Created: Sun Jan 22 22:52:58 2006
- Author:
- Artur Hefczyc
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
static class
static class
static class
protected class
Class looks in all established connections and checks whether any of them is dead by performing either whitspace or XMPP ping.static enum
Holds possible types of ping to be used in watchdog service for detection of broken connectionsNested classes/interfaces inherited from class tigase.server.BasicComponent
BasicComponent.ServerInfoVHostItemExtension
Nested classes/interfaces inherited from interface tigase.server.PacketWriterWithTimeout
PacketWriterWithTimeout.Handler
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected long
protected boolean
protected int
Protection from the system overload and DOS attack.static final String
Key name of the system property for configuration protection from system overload and DOS attack.static int
Default value for the system property for configuration protection from system overload and DOS attack.static final String
static final String
protected Kernel
static final long
static final long
static final String
static final String
protected int
static final String
static final int
static final int
static final int
static final String
static final int
protected static final Element
static final String
static final String
String[]
static final String
static final boolean
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
protected XMPPIOProcessor[]
static final String
protected int
static final int
static final int
static final String
static final String
static final long
static final long
static final String
protected String
static final String
static final String
static final String
protected long
protected ConnectionManager.WATCHDOG_PING_TYPE
protected long
static final String
static final boolean
static final String
static final boolean
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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addWaitingTask
(Map<String, Object> conn) void
beanConfigurationChanged
(Collection<String> changedFields) Method called when configuration was applied to bean.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) boolean
checkTrafficLimits
(IO serv) protected void
protected int
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).protected boolean
enableServiceConnectedTimeout
(IO service) void
Utility method executed precisely every minute.protected int[]
protected int[]
protected String
protected abstract long
int
getParamsForPort
(int port) protected String
getServiceId
(Packet packet) protected String
getServiceId
(JID jid) void
getStatistics
(StatisticsList list) Method returns component statistics.protected String
getUniqueId
(IO serv) getXMPPIOService
(String serviceId) protected IO
protected abstract IO
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 servervoid
Method is called byMessageRouter
when all the startup components of the server have been loaded and configured through setProperties(...) call.protected boolean
protected ConnectionManager<IO>.Watchdog
void
packetsReady
(IO serv) int
Concurrency control method.int
Concurrency control method.void
processPacket
(Packet packet) This is the mainPacket
processing method.processSocketData
(IO serv) abstract boolean
processUndeliveredPacket
(Packet packet, Long stamp, String errorMessage) Processes undelivered packetsabstract void
reconnectionFailed
(Map<String, Object> port_props) protected void
redeliverWaitingPackets
(IO service) void
Method called when bean is being registered allowing developer to programatically register other beans.void
release()
Method called when component is being stopped and unloaded.protected void
protected void
serviceConnected
(IO service) void
serviceStarted
(IO service) boolean
serviceStopped
(IO service) void
void
Method used to assign component name (localpart of the component)void
setNet_buffer_limit
(int value) void
setProcessors
(XMPPIOProcessor[] processors) void
setTrafficThrottling
(String trafficThrottling) protected void
void
setWatchdogPingType
(ConnectionManager.WATCHDOG_PING_TYPE watchdogPingType) protected boolean
shouldRedeliverWaitingPackets
(IO service) protected void
socketAccepted
(IO serv, SocketType type) void
start()
protected ConnectionManager<IO>.tigase.server.ConnectionManager.ConnectionListenerImpl
startService
(Map<String, Object> port_props) void
stop()
void
unregister
(Kernel kernel) Method called while bean is being unregistered.void
updateConnectionDetails
(Map<String, Object> port_props) void
writePacketsToSocket
(IO serv, Queue<Packet> packets) boolean
writePacketToSocket
(IO ios, Packet p) protected boolean
protected boolean
writePacketToSocket
(Packet p, String serviceId) protected void
writeRawData
(IO ios, String data) xmppStreamError
(IO serv, List<Element> err_el) Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, clearRegexRoutings, everyHour, everySecond, getMaxQueueSize, getRegexRoutings, getResourceForPacketWithTimeout, isInRegexRoutings, newPacketId, processOutPacket, processPacket, removeRegexRouting, schedulerThreads, 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, getDiscoCategoryType, getDiscoDescription, 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, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, processScriptCommand, reloadScripts, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setClusterController, 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.net.IOServiceListener
tlsHandshakeCompleted
Methods inherited from interface tigase.server.MessageReceiver
getDefHostName
Methods inherited from interface tigase.server.ServerComponent
getComponentId, getComponentInfo, getName, isInitializationComplete
Methods inherited from interface tigase.stats.StatisticsContainerIfc
getName
Methods inherited from interface tigase.xmpp.XMPPIOServiceListener
xmppStreamClosed, xmppStreamOpened
-
Field Details
-
HT_TRAFFIC_THROTTLING_PROP_KEY
- See Also:
-
HT_TRAFFIC_THROTTLING_PROP_VAL
- See Also:
-
NET_BUFFER_HT_PROP_KEY
- See Also:
-
NET_BUFFER_ST_PROP_KEY
- See Also:
-
PORT_LOCAL_HOST_PROP_KEY
- See Also:
-
ST_TRAFFIC_THROTTLING_PROP_KEY
- See Also:
-
ST_TRAFFIC_THROTTLING_PROP_VAL
- See Also:
-
TRAFFIC_THROTTLING_PROP_KEY
- See Also:
-
ELEMENTS_NUMBER_LIMIT_PROP_KEY
Key name of the system property for configuration protection from system overload and DOS attack.- See Also:
-
LAST_MINUTE_BIN_LIMIT_PROP_VAL
public static final long LAST_MINUTE_BIN_LIMIT_PROP_VAL- See Also:
-
LAST_MINUTE_PACKETS_LIMIT_PROP_VAL
public static final long LAST_MINUTE_PACKETS_LIMIT_PROP_VAL- See Also:
-
MAX_INACTIVITY_TIME
- See Also:
-
MAX_RECONNECTS_PROP_KEY
- See Also:
-
NET_BUFFER_HT_PROP_VAL
public static final int NET_BUFFER_HT_PROP_VAL- See Also:
-
NET_BUFFER_ST_PROP_VAL
public static final int NET_BUFFER_ST_PROP_VAL- See Also:
-
NET_BUFFER_LIMIT_HT_PROP_VAL
public static final int NET_BUFFER_LIMIT_HT_PROP_VAL- See Also:
-
NET_BUFFER_LIMIT_ST_PROP_VAL
public static final int NET_BUFFER_LIMIT_ST_PROP_VAL- See Also:
-
PORT_CLASS_PROP_KEY
- See Also:
-
PORT_IFC_PROP_KEY
- See Also:
-
PORT_LISTENING_DELAY_KEY
- See Also:
-
PORT_LISTENING_DELAY_DEF
public static final boolean PORT_LISTENING_DELAY_DEF- See Also:
-
PORT_KEY
- See Also:
-
PORT_NEW_CONNECTIONS_THROTTLING_KEY
- See Also:
-
PORT_REMOTE_HOST_PROP_KEY
- See Also:
-
PORT_REMOTE_HOST_PROP_VAL
- See Also:
-
PORT_SOCKET_PROP_KEY
- See Also:
-
PORT_TYPE_PROP_KEY
- See Also:
-
PROP_KEY
- See Also:
-
SOCKET_BUFFER_ST_PROP_VAL
public static final int SOCKET_BUFFER_ST_PROP_VAL- See Also:
-
SOCKET_BUFFER_HT_PROP_VAL
public static final int SOCKET_BUFFER_HT_PROP_VAL- See Also:
-
TOTAL_BIN_LIMIT_PROP_VAL
public static final long TOTAL_BIN_LIMIT_PROP_VAL- See Also:
-
TOTAL_PACKETS_LIMIT_PROP_VAL
public static final long TOTAL_PACKETS_LIMIT_PROP_VAL- See Also:
-
WHITE_CHAR_ACK_PROP_KEY
- See Also:
-
XMPP_ACK_PROP_KEY
- See Also:
-
XMPP_ACK_PROP_VAL
public static final boolean XMPP_ACK_PROP_VAL- See Also:
-
WHITE_CHAR_ACK_PROP_VAL
public static final boolean WHITE_CHAR_ACK_PROP_VAL- See Also:
-
PORTS_PROP_KEY
- See Also:
-
WATCHDOG_DELAY
- See Also:
-
WATCHDOG_TIMEOUT
- See Also:
-
WATCHDOG_PING_TYPE_KEY
- See Also:
-
pingElement
-
ELEMENTS_NUMBER_LIMIT_PROP_VAL
public static int ELEMENTS_NUMBER_LIMIT_PROP_VALDefault value for the system property for configuration protection from system overload and DOS attack. -
PORT_IFC_PROP_VAL
-
connectionDelay
-
delayPortListening
protected boolean delayPortListening -
elements_number_limit
@ConfigField(desc="Limit of elements for single XMPP stanza", alias="elements-number-limit") protected int elements_number_limitProtection from the system overload and DOS attack. We want to limit number of elements created within a single XMPP stanza. -
kernel
-
net_buffer
-
processors
-
trafficThrottling
-
watchdogDelay
-
watchdogPingType
@ConfigField(desc="Watchdog ping type", alias="watchdog-ping-type") protected ConnectionManager.WATCHDOG_PING_TYPE watchdogPingType -
watchdogTimeout
-
serviceConnectedTimeout
@ConfigField(desc="Service connection timeout", alias="service-connected-timeout") protected int serviceConnectedTimeout
-
-
Constructor Details
-
ConnectionManager
public ConnectionManager() -
ConnectionManager
protected ConnectionManager(int socketBufferSize)
-
-
Method Details
-
enableServiceConnectedTimeout
-
beanConfigurationChanged
Description copied from interface:ConfigurationChangedAware
Method called when configuration was applied to bean.- Specified by:
beanConfigurationChanged
in interfaceConfigurationChangedAware
- Overrides:
beanConfigurationChanged
in classAbstractMessageReceiver
- Parameters:
changedFields
- collection of field names which were changed
-
checkTrafficLimits
-
everyMinute
public void everyMinute()Description copied from class:AbstractMessageReceiver
Utility method executed precisely every minute. 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 minute. The overriding method must call the the super method first and only then run own code.- Overrides:
everyMinute
in classAbstractMessageReceiver
-
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....- Overrides:
hashCodeForPacket
in classAbstractMessageReceiver
- 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 classBasicComponent
- Parameters:
binds
- A mapping of key/value pairs, all of whose keys are Strings.
-
initializationCompleted
public void initializationCompleted()Description copied from interface:ServerComponent
Method is called byMessageRouter
when all the startup components of the server have been loaded and configured through setProperties(...) call. At this point the whole server should be loaded and functional, except initializations taking place in this routine.- Specified by:
initializationCompleted
in interfaceServerComponent
- Overrides:
initializationCompleted
in classBasicComponent
-
packetsReady
- Specified by:
packetsReady
in interfaceIOServiceListener<IO extends XMPPIOService<?>>
- Throws:
IOException
-
processingInThreads
public int processingInThreads()Description copied from class:AbstractMessageReceiver
Concurrency control method. Returns preferable number of threads set for this component.- Overrides:
processingInThreads
in classAbstractMessageReceiver
- 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 classAbstractMessageReceiver
- Returns:
- preferable number of threads set for this component.
-
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.- Specified by:
processPacket
in classAbstractMessageReceiver
- Parameters:
packet
- is an instance of thePacket
class passed for processing.
-
processSocketData
-
processUndeliveredPacket
Processes undelivered packets- Parameters:
stamp
- - timestamp when packet was received to be written to XMPPIOService
-
reconnectionFailed
-
getDefPorts
-
register
Description copied from interface:RegistrarBean
Method called when bean is being registered allowing developer to programatically register other beans.- Specified by:
register
in interfaceRegistrarBean
- Parameters:
kernel
- - instance from local scope
-
unregister
Description copied from interface:RegistrarBean
Method called while bean is being unregistered.- Specified by:
unregister
in interfaceRegistrarBean
- Parameters:
kernel
- - instance from local scope
-
release
public void release()Description copied from interface:ServerComponent
Method called when component is being stopped and unloaded.- Specified by:
release
in interfaceServerComponent
- Overrides:
release
in classAbstractMessageReceiver
-
serviceConnected
-
serviceStarted
-
serviceStopped
- Specified by:
serviceStopped
in interfaceIOServiceListener<IO extends XMPPIOService<?>>
-
shouldRedeliverWaitingPackets
-
redeliverWaitingPackets
-
start
public void start()- Specified by:
start
in interfaceMessageReceiver
- Overrides:
start
in classAbstractMessageReceiver
-
stop
public void stop()- Overrides:
stop
in classAbstractMessageReceiver
-
updateConnectionDetails
-
writePacketsToSocket
-
writePacketToSocket
-
xmppStreamError
- Specified by:
xmppStreamError
in interfaceXMPPIOServiceListener<IO extends XMPPIOService<?>>
-
getPortsConfigBean
-
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 classAbstractMessageReceiver
- Parameters:
list
- is aStatistcsList
where all statistics are stored.
-
getXMPPIOService
-
setName
Description copied from interface:ServerComponent
Method used to assign component name (localpart of the component)- Specified by:
setName
in interfaceServerComponent
- Overrides:
setName
in classAbstractMessageReceiver
- Parameters:
name
- to be assigned
-
getFlashCrossDomainPolicy
-
setFlashCrossDomainPolicyFile
-
getNet_buffer_limit
public int getNet_buffer_limit() -
setNet_buffer_limit
public void setNet_buffer_limit(int value) -
setProcessors
-
getTrafficThrottling
-
setTrafficThrottling
-
connectWaitingTasks
protected void connectWaitingTasks() -
setupWatchdogThread
protected void setupWatchdogThread() -
setWatchdogPingType
-
newWatchdog
-
addWaitingTask
-
checkHighThroughputProperty
-
countIOServices
protected int countIOServices()Returns number of active network connections (IOServices).- Returns:
- number of active network connections (IOServices).
-
doForAllServices
Perform a given action defined by ServiceChecker for all active IOService objects (active network connections).- Parameters:
checker
- is aServiceChecker
instance defining an action to perform for all IOService objects.
-
writePacketToSocket
-
writePacketToSocket
-
writeRawData
-
getDefPlainPorts
protected int[] getDefPlainPorts() -
getDefSSLPorts
protected int[] getDefSSLPorts() -
getDefTrafficThrottling
-
getMaxInactiveTime
protected abstract long getMaxInactiveTime() -
getParamsForPort
-
getServiceId
-
getServiceId
-
getUniqueId
-
getXMPPIOService
-
getXMPPIOServiceInstance
-
isHighThroughput
protected boolean isHighThroughput() -
socketAccepted
-
releaseListener
-
startService
protected ConnectionManager<IO>.tigase.server.ConnectionManager.ConnectionListenerImpl startService(Map<String, Object> port_props)
-