Package tigase.server.bosh
Class BoshConnectionManager
- java.lang.Object
-
- tigase.server.BasicComponent
-
- tigase.server.AbstractMessageReceiver
-
- tigase.server.ConnectionManager<XMPPIOService<java.lang.Object>>
-
- tigase.server.xmppclient.ClientConnectionManager
-
- tigase.server.bosh.BoshConnectionManager
-
- All Implemented Interfaces:
ClusteredComponentIfc,Configurable,XMPPService,ConfigurationChangedAware,Initializable,RegistrarBean,IOServiceListener<XMPPIOService<java.lang.Object>>,BoshIOService.ConfigProvider,BoshSessionTaskHandler,MessageReceiver,PacketWriterWithTimeout,ServerComponent,StatisticsContainer,StatisticsContainerIfc,VHostListener,XMPPIOServiceListener<XMPPIOService<java.lang.Object>>
- Direct Known Subclasses:
BoshConnectionClustered
@Bean(name="bosh", parent=Kernel.class, active=true) @ConfigType({DefaultMode,ConnectionManagersMode}) @ClusterModeRequired(active=false) public class BoshConnectionManager extends ClientConnectionManager implements BoshSessionTaskHandler, BoshIOService.ConfigProvider
Describe class BoshConnectionManager here.
Created: Sat Jun 2 12:24:29 2007- Author:
- Artur Hefczyc
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classBoshConnectionManager.BOSH_OPERATION_TYPE-
Nested classes/interfaces inherited from class tigase.server.ConnectionManager
ConnectionManager.LIMIT_ACTION, ConnectionManager.PortConfigBean, ConnectionManager.PortsConfigBean, ConnectionManager.SecPortConfigBean, ConnectionManager.Watchdog, 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
Fields Modifier and Type Field Description static java.lang.StringBOSH_CLOSE_CONNECTION_PROP_KEYstatic java.lang.StringBOSH_EXTRA_HEADERS_FILE_PROP_KEYstatic java.lang.StringBOSH_EXTRA_HEADERS_FILE_PROP_VALstatic java.lang.StringCLIENT_ACCESS_POLICY_FILE_PROP_KEYstatic java.lang.StringCLIENT_ACCESS_POLICY_FILE_PROP_VALprotected java.util.Map<java.util.UUID,BoshSession>sessions-
Fields inherited from class tigase.server.xmppclient.ClientConnectionManager
eventBus, FORCE_REDIRECT_TO_KEY, routings, see_other_host_strategy
-
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, 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
Constructors Constructor Description BoshConnectionManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddOutPackets(java.util.Queue<Packet> out_results, BoshSession bs)Method adds packets to the output queue stamping it with the appropriateBoshSessiondatabooleanaddOutStreamClosed(Packet packet, BoshSession bs, boolean withTimeout)booleanaddOutStreamOpen(Packet packet, BoshSession bs)voidcancelSendQueueTask(BoshSendQueueTask tt)voidcancelTask(BoshTask tt)protected JIDchangeDataReceiver(Packet packet, JID newAddress, java.lang.String command_sessionId, XMPPIOService<java.lang.Object> serv)protected booleanenableServiceConnectedTimeout(XMPPIOService<java.lang.Object> service)protected BoshSessiongetBoshSession(JID jid)Method retrievesBoshSessionrelated to the particular user addressjava.lang.StringgetClientAccessPolicy()protected int[]getDefPlainPorts()protected int[]getDefSSLPorts()java.lang.StringgetDiscoCategoryType()Method returns component category type used for service discovery responses.java.lang.StringgetDiscoDescription()Method returns description used for service discovery responses.java.lang.StringgetExtraHeaders()JIDgetJidForBoshSession(BoshSession bs)Returns full jid of passed BoshSession instanceprotected longgetMaxInactiveTime()MethodgetMaxInactiveTimereturns max keep-alive time for inactive connection.ElementgetSeeOtherHostError(Packet packet, BareJID destination)BareJIDgetSeeOtherHostForJID(Packet packet, BareJID fromJID, SeeOtherHostIfc.Phase ph)voidgetStatistics(StatisticsList list)Method returns component statistics.protected BoshIOServicegetXMPPIOServiceInstance()voidinitBindings(javax.script.Bindings binds)Initialize a mapping of key/value pairs which can be used in scripts loaded by the servervoidinitialize()Method will be called, when bean will be created, configured and ready to use.booleanisCloseConnections()protected ReceiverTimeoutHandlernewStartedHandler()protected java.util.Map<java.lang.String,java.lang.String>preBindSession(java.util.Map<java.lang.String,java.lang.String> attr)protected voidprocessCommand(Packet packet)voidprocessPacket(Packet packet)This is the mainPacketprocessing method.java.util.Queue<Packet>processSocketData(XMPPIOService<java.lang.Object> srv)BoshSendQueueTaskscheduleSendQueueTask(BoshSession bs, long delay)BoshTaskscheduleTask(BoshSession bs, long delay)voidserviceStarted(XMPPIOService<java.lang.Object> service)booleanserviceStopped(XMPPIOService<java.lang.Object> xmppService)voidsetClientAccessPolicyFile(java.lang.String clientAccessPolicyFile)voidsetExtraHeadersFile(java.lang.String extraHeadersFile)voidsetSidLoggerLevel(java.lang.String loggerLevel)protected static voidsetupSidlogger(java.util.logging.Level lvl)protected voidsetupWatchdogThread()protected booleanwritePacketToSocket(Packet packet)voidwriteRawData(BoshIOService ios, java.lang.String data)voidxmppStreamClosed(XMPPIOService<java.lang.Object> serv)java.lang.String[]xmppStreamOpened(XMPPIOService<java.lang.Object> serv, java.util.Map<java.lang.String,java.lang.String> attribs)-
Methods inherited from class tigase.server.xmppclient.ClientConnectionManager
getClientTrustManagerFactory, getMaxQueueSize, getSeeOtherHostInstance, hashCodeForPacket, isAllowed, newStoppedHandler, nodeShutdown, prepareSeeOtherHost, prepareStreamClose, prepareStreamError, prepareStreamError, prepareStreamOpen, preprocessStreamFeatures, processUndeliveredPacket, reconnectionFailed, schedulerThreads, setRegistrationThrottling, setSee_other_host_strategy, socketAccepted, start, stop, tlsHandshakeCompleted, xmppStreamError
-
Methods inherited from class tigase.server.ConnectionManager
addWaitingTask, beanConfigurationChanged, checkHighThroughputProperty, checkTrafficLimits, connectWaitingTasks, countIOServices, doForAllServices, everyMinute, getDefPorts, getDefTrafficThrottling, getFlashCrossDomainPolicy, getNet_buffer_limit, getParamsForPort, getPortsConfigBean, getServiceId, getServiceId, getTrafficThrottling, getUniqueId, getXMPPIOService, getXMPPIOService, initializationCompleted, isHighThroughput, newWatchdog, packetsReady, processingInThreads, processingOutThreads, register, release, releaseListener, serviceConnected, setFlashCrossDomainPolicyFile, setName, setNet_buffer_limit, setProcessors, setTrafficThrottling, startService, unregister, updateConnectionDetails, writePacketsToSocket, writePacketToSocket, writePacketToSocket, writeRawData
-
Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, clearRegexRoutings, everyHour, everySecond, getRegexRoutings, getResourceForPacketWithTimeout, isInRegexRoutings, newPacketId, processOutPacket, 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, 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.server.bosh.BoshSessionTaskHandler
getDefHostName, processUndeliveredPacket
-
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
-
-
-
-
Field Detail
-
BOSH_CLOSE_CONNECTION_PROP_KEY
public static final java.lang.String BOSH_CLOSE_CONNECTION_PROP_KEY
- See Also:
- Constant Field Values
-
BOSH_EXTRA_HEADERS_FILE_PROP_KEY
public static final java.lang.String BOSH_EXTRA_HEADERS_FILE_PROP_KEY
- See Also:
- Constant Field Values
-
BOSH_EXTRA_HEADERS_FILE_PROP_VAL
public static final java.lang.String BOSH_EXTRA_HEADERS_FILE_PROP_VAL
- See Also:
- Constant Field Values
-
CLIENT_ACCESS_POLICY_FILE_PROP_KEY
public static final java.lang.String CLIENT_ACCESS_POLICY_FILE_PROP_KEY
- See Also:
- Constant Field Values
-
CLIENT_ACCESS_POLICY_FILE_PROP_VAL
public static final java.lang.String CLIENT_ACCESS_POLICY_FILE_PROP_VAL
- See Also:
- Constant Field Values
-
sessions
protected final java.util.Map<java.util.UUID,BoshSession> sessions
-
-
Method Detail
-
setupSidlogger
protected static void setupSidlogger(java.util.logging.Level lvl)
-
addOutStreamClosed
public boolean addOutStreamClosed(Packet packet, BoshSession bs, boolean withTimeout)
- Specified by:
addOutStreamClosedin interfaceBoshSessionTaskHandler
-
addOutStreamOpen
public boolean addOutStreamOpen(Packet packet, BoshSession bs)
- Specified by:
addOutStreamOpenin interfaceBoshSessionTaskHandler
-
cancelSendQueueTask
public void cancelSendQueueTask(BoshSendQueueTask tt)
- Specified by:
cancelSendQueueTaskin interfaceBoshSessionTaskHandler
-
cancelTask
public void cancelTask(BoshTask tt)
- Specified by:
cancelTaskin interfaceBoshSessionTaskHandler
-
enableServiceConnectedTimeout
protected boolean enableServiceConnectedTimeout(XMPPIOService<java.lang.Object> service)
- Overrides:
enableServiceConnectedTimeoutin classConnectionManager<XMPPIOService<java.lang.Object>>
-
processPacket
public void processPacket(Packet packet)
Description copied from class:AbstractMessageReceiverThis is the mainPacketprocessing 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, thePacketinstance may be processed by different parts of the server, different components or plugins at the same time. Therefore this is very important to tread thePacketinstance 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:
processPacketin classClientConnectionManager- Parameters:
packet- is an instance of thePacketclass passed for processing.
-
processSocketData
public java.util.Queue<Packet> processSocketData(XMPPIOService<java.lang.Object> srv)
- Overrides:
processSocketDatain classClientConnectionManager
-
scheduleSendQueueTask
public BoshSendQueueTask scheduleSendQueueTask(BoshSession bs, long delay)
- Specified by:
scheduleSendQueueTaskin interfaceBoshSessionTaskHandler
-
scheduleTask
public BoshTask scheduleTask(BoshSession bs, long delay)
- Specified by:
scheduleTaskin interfaceBoshSessionTaskHandler
-
serviceStarted
public void serviceStarted(XMPPIOService<java.lang.Object> service)
- Overrides:
serviceStartedin classClientConnectionManager
-
serviceStopped
public boolean serviceStopped(XMPPIOService<java.lang.Object> xmppService)
- Specified by:
serviceStoppedin interfaceIOServiceListener<XMPPIOService<java.lang.Object>>- Overrides:
serviceStoppedin classClientConnectionManager
-
writeRawData
public void writeRawData(BoshIOService ios, java.lang.String data)
- Specified by:
writeRawDatain interfaceBoshSessionTaskHandler
-
xmppStreamClosed
public void xmppStreamClosed(XMPPIOService<java.lang.Object> serv)
- Specified by:
xmppStreamClosedin interfaceXMPPIOServiceListener<XMPPIOService<java.lang.Object>>- Overrides:
xmppStreamClosedin classClientConnectionManager
-
xmppStreamOpened
public java.lang.String[] xmppStreamOpened(XMPPIOService<java.lang.Object> serv, java.util.Map<java.lang.String,java.lang.String> attribs)
- Specified by:
xmppStreamOpenedin interfaceXMPPIOServiceListener<XMPPIOService<java.lang.Object>>- Overrides:
xmppStreamOpenedin classClientConnectionManager
-
getDiscoCategoryType
public java.lang.String getDiscoCategoryType()
Description copied from class:BasicComponentMethod returns component category type used for service discovery responses.- Overrides:
getDiscoCategoryTypein classClientConnectionManager- Returns:
- category type of a component
-
getDiscoDescription
public java.lang.String getDiscoDescription()
Description copied from class:BasicComponentMethod returns description used for service discovery responses.- Overrides:
getDiscoDescriptionin classClientConnectionManager- Returns:
- description of a component
-
getJidForBoshSession
public JID getJidForBoshSession(BoshSession bs)
Returns full jid of passed BoshSession instance- Specified by:
getJidForBoshSessionin interfaceBoshSessionTaskHandler- Parameters:
bs-BoshSessionfor which JID should be retrieved- Returns:
- JID address related to particular
BoshSession
-
getSeeOtherHostError
public Element getSeeOtherHostError(Packet packet, BareJID destination)
- Specified by:
getSeeOtherHostErrorin interfaceBoshSessionTaskHandler
-
getSeeOtherHostForJID
public BareJID getSeeOtherHostForJID(Packet packet, BareJID fromJID, SeeOtherHostIfc.Phase ph)
- Specified by:
getSeeOtherHostForJIDin interfaceBoshSessionTaskHandler
-
getStatistics
public void getStatistics(StatisticsList list)
Description copied from class:AbstractMessageReceiverMethod 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.FINESTassigned and must be put inside the level guard to prevent generating them by the system monitor. The system monitor does not collectFINESTstatistics.
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:
getStatisticsin interfaceStatisticsContainerIfc- Overrides:
getStatisticsin classConnectionManager<XMPPIOService<java.lang.Object>>- Parameters:
list- is aStatistcsListwhere all statistics are stored.
-
setSidLoggerLevel
public void setSidLoggerLevel(java.lang.String loggerLevel)
-
initBindings
public void initBindings(javax.script.Bindings binds)
Description copied from class:BasicComponentInitialize a mapping of key/value pairs which can be used in scripts loaded by the server- Overrides:
initBindingsin classConnectionManager<XMPPIOService<java.lang.Object>>- Parameters:
binds- A mapping of key/value pairs, all of whose keys are Strings.
-
initialize
public void initialize()
Description copied from interface:InitializableMethod will be called, when bean will be created, configured and ready to use.- Specified by:
initializein interfaceInitializable- Overrides:
initializein classBasicComponent
-
isCloseConnections
public boolean isCloseConnections()
- Specified by:
isCloseConnectionsin interfaceBoshIOService.ConfigProvider
-
getClientAccessPolicy
public java.lang.String getClientAccessPolicy()
- Specified by:
getClientAccessPolicyin interfaceBoshIOService.ConfigProvider
-
setClientAccessPolicyFile
public void setClientAccessPolicyFile(java.lang.String clientAccessPolicyFile)
-
getExtraHeaders
public java.lang.String getExtraHeaders()
- Specified by:
getExtraHeadersin interfaceBoshIOService.ConfigProvider
-
setExtraHeadersFile
public void setExtraHeadersFile(java.lang.String extraHeadersFile)
-
setupWatchdogThread
protected void setupWatchdogThread()
- Overrides:
setupWatchdogThreadin classConnectionManager<XMPPIOService<java.lang.Object>>
-
preBindSession
protected java.util.Map<java.lang.String,java.lang.String> preBindSession(java.util.Map<java.lang.String,java.lang.String> attr)
-
addOutPackets
protected void addOutPackets(java.util.Queue<Packet> out_results, BoshSession bs)
Method adds packets to the output queue stamping it with the appropriateBoshSessiondata- Parameters:
out_results- collection ofPacketobjects to be added to queuebs- relatedBoshSession
-
changeDataReceiver
protected JID changeDataReceiver(Packet packet, JID newAddress, java.lang.String command_sessionId, XMPPIOService<java.lang.Object> serv)
- Overrides:
changeDataReceiverin classClientConnectionManager
-
newStartedHandler
protected ReceiverTimeoutHandler newStartedHandler()
- Overrides:
newStartedHandlerin classClientConnectionManager
-
processCommand
protected void processCommand(Packet packet)
- Overrides:
processCommandin classClientConnectionManager
-
writePacketToSocket
protected boolean writePacketToSocket(Packet packet)
- Overrides:
writePacketToSocketin classConnectionManager<XMPPIOService<java.lang.Object>>
-
getBoshSession
protected BoshSession getBoshSession(JID jid)
Method retrievesBoshSessionrelated to the particular user address- Parameters:
jid- address for whichBoshSessionshould be returned- Returns:
- a value of
BoshSession
-
getDefPlainPorts
protected int[] getDefPlainPorts()
- Overrides:
getDefPlainPortsin classClientConnectionManager
-
getDefSSLPorts
protected int[] getDefSSLPorts()
- Overrides:
getDefSSLPortsin classClientConnectionManager
-
getMaxInactiveTime
protected long getMaxInactiveTime()
MethodgetMaxInactiveTimereturns max keep-alive time for inactive connection. For Bosh it does not make sense to keep the idle connection longer than 10 minutes.- Overrides:
getMaxInactiveTimein classClientConnectionManager- Returns:
- a
longvalue
-
getXMPPIOServiceInstance
protected BoshIOService getXMPPIOServiceInstance()
- Overrides:
getXMPPIOServiceInstancein classClientConnectionManager
-
-