tigase.server
Class ConnectionManager<IO extends XMPPIOService>
java.lang.Object
tigase.server.AbstractMessageReceiver
tigase.server.ConnectionManager<IO>
- Type Parameters:
IO -
- All Implemented Interfaces:
- Configurable, IOServiceListener, MessageReceiver, ServerComponent, StatisticsContainer, VHostListener, XMPPIOServiceListener
- Direct Known Subclasses:
- ClientConnectionManager, ClusterConnectionManager, ComponentConnectionManager, ServerConnectionManager, ServerConnectionManagerOLD
public abstract class ConnectionManager<IO extends XMPPIOService>
- extends AbstractMessageReceiver
- implements XMPPIOServiceListener
Describe class ConnectionManager here.
Created: Sun Jan 22 22:52:58 2006
- Version:
- $Rev: 1315 $
- Author:
- Artur Hefczyc
| Fields inherited from interface tigase.conf.Configurable |
ADMINS_PROP_KEY, 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, COMPONENT_ID_PROP_KEY, DEF_BOSH_NAME, DEF_C2S_NAME, DEF_CL_COMP_NAME, DEF_CLUST_CONTR_NAME, DEF_EXT_COMP_NAME, DEF_HOSTNAME_PROP_KEY, DEF_S2S_NAME, DEF_SM_NAME, DEF_SRECV_NAME, DEF_SSEND_NAME, DEF_STATS_NAME, DEF_VHOST_MAN_NAME, DERBY_REPO_CLASS_PROP_VAL, DERBY_REPO_URL_PROP_VAL, DRUPAL_REPO_CLASS_PROP_VAL, DRUPAL_REPO_URL_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_EXT_COMP, GEN_MAX_QUEUE_SIZE, 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_VIRT_HOSTS, HOSTNAMES_PROP_KEY, LIBRESOURCE_REPO_CLASS_PROP_VAL, LIBRESOURCE_REPO_URL_PROP_VAL, MYSQL_REPO_CLASS_PROP_VAL, MYSQL_REPO_URL_PROP_VAL, NULL_ROUTING, PGSQL_REPO_CLASS_PROP_VAL, PGSQL_REPO_URL_PROP_VAL, ROUTER_COMP_CLASS_NAME, S2S_CLUST_COMP_CLASS_NAME, S2S_COMP_CLASS_NAME, SM_CLUS_COMP_CLASS_NAME, SM_COMP_CLASS_NAME, SRECV_COMP_CLASS_NAME, SSEND_COMP_CLASS_NAME, STATS_CLASS_NAME, TIGASE_AUTH_REPO_CLASS_PROP_VAL, TIGASE_AUTH_REPO_URL_PROP_VAL, TIGASE_CUSTOM_AUTH_REPO_CLASS_PROP_VAL, TRUSTED_PROP_KEY, VHOST_MAN_CLASS_NAME, XML_REPO_CLASS_PROP_VAL, XML_REPO_URL_PROP_VAL |
|
Method Summary |
protected void |
addWaitingTask(java.util.Map<java.lang.String,java.lang.Object> conn)
|
protected int |
countIOServices()
|
protected void |
doForAllServices(ServiceChecker checker)
|
java.util.Map<java.lang.String,java.lang.Object> |
getDefaults(java.util.Map<java.lang.String,java.lang.Object> params)
Returns defualt configuration settings for this object. |
protected int[] |
getDefPlainPorts()
|
protected int[] |
getDefSSLPorts()
|
protected abstract long |
getMaxInactiveTime()
|
protected java.util.Map<java.lang.String,java.lang.Object> |
getParamsForPort(int port)
|
protected java.lang.String |
getServiceId(Packet packet)
|
java.util.List<StatRecord> |
getStatistics()
|
protected java.lang.String |
getUniqueId(IO serv)
|
protected IO |
getXMPPIOService(Packet p)
|
protected IO |
getXMPPIOService(java.lang.String serviceId)
|
protected abstract IO |
getXMPPIOServiceInstance()
|
void |
initializationCompleted()
|
void |
packetsReady(IO serv)
|
void |
packetsReady(IOService s)
Describe packetsReady method here. |
void |
processPacket(Packet packet)
|
abstract java.util.Queue<Packet> |
processSocketData(IO serv)
|
void |
release()
|
void |
serviceStarted(IO service)
|
void |
serviceStopped(IO service)
|
void |
serviceStopped(IOService s)
|
void |
setName(java.lang.String name)
|
void |
setProperties(java.util.Map<java.lang.String,java.lang.Object> props)
Sets all configuration properties for object. |
void |
start()
|
void |
streamClosed(XMPPIOService s)
|
java.lang.String |
streamOpened(XMPPIOService s,
java.util.Map<java.lang.String,java.lang.String> attribs)
|
void |
writePacketsToSocket(IO serv,
java.util.Queue<Packet> packets)
|
boolean |
writePacketToSocket(IO ios,
Packet p)
|
protected void |
writePacketToSocket(Packet p)
|
protected void |
writePacketToSocket(Packet p,
java.lang.String serviceId)
|
protected void |
writeRawData(IO ios,
java.lang.String data)
|
abstract void |
xmppStreamClosed(IO serv)
|
abstract java.lang.String |
xmppStreamOpened(IO s,
java.util.Map<java.lang.String,java.lang.String> attribs)
|
| Methods inherited from class tigase.server.AbstractMessageReceiver |
addOutPacket, addOutPacketNB, addOutPackets, addPacket, addPacketNB, addPackets, addRegexRouting, clearRegexRoutings, everyMinute, everySecond, getComponentId, getDefHostName, getMaxQueueSize, getName, getRegexRoutings, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, isInRegexRoutings, isLocalDomain, isLocalDomainOrComponent, processPacket, removeRegexRouting, setMaxQueueSize, setParent, setVHostManager, stop |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PORT_KEY
protected static final java.lang.String PORT_KEY
- See Also:
- Constant Field Values
PROP_KEY
protected static final java.lang.String PROP_KEY
- See Also:
- Constant Field Values
PORTS_PROP_KEY
protected static final java.lang.String PORTS_PROP_KEY
- See Also:
- Constant Field Values
PORT_TYPE_PROP_KEY
protected static final java.lang.String PORT_TYPE_PROP_KEY
- See Also:
- Constant Field Values
PORT_SOCKET_PROP_KEY
protected static final java.lang.String PORT_SOCKET_PROP_KEY
- See Also:
- Constant Field Values
PORT_IFC_PROP_KEY
protected static final java.lang.String PORT_IFC_PROP_KEY
- See Also:
- Constant Field Values
PORT_CLASS_PROP_KEY
protected static final java.lang.String PORT_CLASS_PROP_KEY
- See Also:
- Constant Field Values
PORT_REMOTE_HOST_PROP_KEY
protected static final java.lang.String PORT_REMOTE_HOST_PROP_KEY
- See Also:
- Constant Field Values
PORT_REMOTE_HOST_PROP_VAL
protected static final java.lang.String PORT_REMOTE_HOST_PROP_VAL
- See Also:
- Constant Field Values
TLS_PROP_KEY
protected static final java.lang.String TLS_PROP_KEY
- See Also:
- Constant Field Values
TLS_USE_PROP_KEY
protected static final java.lang.String TLS_USE_PROP_KEY
- See Also:
- Constant Field Values
TLS_USE_PROP_VAL
protected static final boolean TLS_USE_PROP_VAL
- See Also:
- Constant Field Values
TLS_REQUIRED_PROP_KEY
protected static final java.lang.String TLS_REQUIRED_PROP_KEY
- See Also:
- Constant Field Values
TLS_REQUIRED_PROP_VAL
protected static final boolean TLS_REQUIRED_PROP_VAL
- See Also:
- Constant Field Values
TLS_KEYS_STORE_PROP_KEY
protected static final java.lang.String TLS_KEYS_STORE_PROP_KEY
- See Also:
- Constant Field Values
TLS_KEYS_STORE_PROP_VAL
protected static final java.lang.String TLS_KEYS_STORE_PROP_VAL
TLS_DEF_CERT_PROP_KEY
protected static final java.lang.String TLS_DEF_CERT_PROP_KEY
- See Also:
- Constant Field Values
TLS_DEF_CERT_PROP_VAL
protected static final java.lang.String TLS_DEF_CERT_PROP_VAL
- See Also:
- Constant Field Values
TLS_KEYS_STORE_PASSWD_PROP_KEY
protected static final java.lang.String TLS_KEYS_STORE_PASSWD_PROP_KEY
- See Also:
- Constant Field Values
TLS_KEYS_STORE_PASSWD_PROP_VAL
protected static final java.lang.String TLS_KEYS_STORE_PASSWD_PROP_VAL
- See Also:
- Constant Field Values
TLS_TRUSTS_STORE_PASSWD_PROP_KEY
protected static final java.lang.String TLS_TRUSTS_STORE_PASSWD_PROP_KEY
- See Also:
- Constant Field Values
TLS_TRUSTS_STORE_PASSWD_PROP_VAL
protected static final java.lang.String TLS_TRUSTS_STORE_PASSWD_PROP_VAL
- See Also:
- Constant Field Values
TLS_TRUSTS_STORE_PROP_KEY
protected static final java.lang.String TLS_TRUSTS_STORE_PROP_KEY
- See Also:
- Constant Field Values
TLS_TRUSTS_STORE_PROP_VAL
protected static final java.lang.String TLS_TRUSTS_STORE_PROP_VAL
TLS_CONTAINER_CLASS_PROP_KEY
protected static final java.lang.String TLS_CONTAINER_CLASS_PROP_KEY
- See Also:
- Constant Field Values
TLS_CONTAINER_CLASS_PROP_VAL
protected static final java.lang.String TLS_CONTAINER_CLASS_PROP_VAL
- See Also:
- Constant Field Values
TLS_SERVER_CERTS_DIR_PROP_KEY
protected static final java.lang.String TLS_SERVER_CERTS_DIR_PROP_KEY
- See Also:
- Constant Field Values
TLS_SERVER_CERTS_DIR_PROP_VAL
protected static final java.lang.String TLS_SERVER_CERTS_DIR_PROP_VAL
- See Also:
- Constant Field Values
TLS_TRUSTED_CERTS_DIR_PROP_KEY
protected static final java.lang.String TLS_TRUSTED_CERTS_DIR_PROP_KEY
- See Also:
- Constant Field Values
TLS_TRUSTED_CERTS_DIR_PROP_VAL
protected static final java.lang.String TLS_TRUSTED_CERTS_DIR_PROP_VAL
- See Also:
- Constant Field Values
TLS_ALLOW_SELF_SIGNED_CERTS_PROP_KEY
protected static final java.lang.String TLS_ALLOW_SELF_SIGNED_CERTS_PROP_KEY
- See Also:
- Constant Field Values
TLS_ALLOW_SELF_SIGNED_CERTS_PROP_VAL
protected static final java.lang.String TLS_ALLOW_SELF_SIGNED_CERTS_PROP_VAL
- See Also:
- Constant Field Values
TLS_ALLOW_INVALID_CERTS_PROP_KEY
protected static final java.lang.String TLS_ALLOW_INVALID_CERTS_PROP_KEY
- See Also:
- Constant Field Values
TLS_ALLOW_INVALID_CERTS_PROP_VAL
protected static final java.lang.String TLS_ALLOW_INVALID_CERTS_PROP_VAL
- See Also:
- Constant Field Values
MAX_RECONNECTS_PROP_KEY
protected static final java.lang.String MAX_RECONNECTS_PROP_KEY
- See Also:
- Constant Field Values
connectionDelay
protected long connectionDelay
ConnectionManager
public ConnectionManager()
setName
public void setName(java.lang.String name)
- Specified by:
setName in interface ServerComponent- Overrides:
setName in class AbstractMessageReceiver
initializationCompleted
public void initializationCompleted()
- Specified by:
initializationCompleted in interface ServerComponent- Overrides:
initializationCompleted in class AbstractMessageReceiver
addWaitingTask
protected void addWaitingTask(java.util.Map<java.lang.String,java.lang.Object> conn)
getDefaults
public java.util.Map<java.lang.String,java.lang.Object> getDefaults(java.util.Map<java.lang.String,java.lang.Object> params)
- Description copied from class:
AbstractMessageReceiver
- Returns defualt configuration settings for this object.
- Specified by:
getDefaults in interface Configurable- Overrides:
getDefaults in class AbstractMessageReceiver
release
public void release()
- Specified by:
release in interface ServerComponent- Overrides:
release in class AbstractMessageReceiver
start
public void start()
- Specified by:
start in interface MessageReceiver- Overrides:
start in class AbstractMessageReceiver
setProperties
public void setProperties(java.util.Map<java.lang.String,java.lang.Object> props)
- Description copied from class:
AbstractMessageReceiver
- Sets all configuration properties for object.
- Specified by:
setProperties in interface Configurable- Overrides:
setProperties in class AbstractMessageReceiver
getDefPlainPorts
protected int[] getDefPlainPorts()
getDefSSLPorts
protected int[] getDefSSLPorts()
getParamsForPort
protected java.util.Map<java.lang.String,java.lang.Object> getParamsForPort(int port)
packetsReady
public void packetsReady(IOService s)
throws java.io.IOException
- Describe
packetsReady method here.
- Specified by:
packetsReady in interface IOServiceListener
- Parameters:
s - an IOService value
- Throws:
java.io.IOException
packetsReady
public void packetsReady(IO serv)
throws java.io.IOException
- Throws:
java.io.IOException
writePacketsToSocket
public void writePacketsToSocket(IO serv,
java.util.Queue<Packet> packets)
writePacketToSocket
public boolean writePacketToSocket(IO ios,
Packet p)
writeRawData
protected void writeRawData(IO ios,
java.lang.String data)
writePacketToSocket
protected void writePacketToSocket(Packet p)
writePacketToSocket
protected void writePacketToSocket(Packet p,
java.lang.String serviceId)
getXMPPIOService
protected IO getXMPPIOService(java.lang.String serviceId)
getXMPPIOService
protected IO getXMPPIOService(Packet p)
processPacket
public void processPacket(Packet packet)
- Specified by:
processPacket in class AbstractMessageReceiver
processSocketData
public abstract java.util.Queue<Packet> processSocketData(IO serv)
serviceStopped
public void serviceStopped(IOService s)
- Specified by:
serviceStopped in interface IOServiceListener
serviceStopped
public void serviceStopped(IO service)
serviceStarted
@TODO(note="Do something if service with the same unique ID is already started, possibly kill the old one...")
public void serviceStarted(IO service)
getUniqueId
protected java.lang.String getUniqueId(IO serv)
getServiceId
protected java.lang.String getServiceId(Packet packet)
streamClosed
public void streamClosed(XMPPIOService s)
- Specified by:
streamClosed in interface XMPPIOServiceListener
xmppStreamClosed
public abstract void xmppStreamClosed(IO serv)
streamOpened
public java.lang.String streamOpened(XMPPIOService s,
java.util.Map<java.lang.String,java.lang.String> attribs)
- Specified by:
streamOpened in interface XMPPIOServiceListener
xmppStreamOpened
public abstract java.lang.String xmppStreamOpened(IO s,
java.util.Map<java.lang.String,java.lang.String> attribs)
countIOServices
protected int countIOServices()
getStatistics
public java.util.List<StatRecord> getStatistics()
- Specified by:
getStatistics in interface StatisticsContainer- Overrides:
getStatistics in class AbstractMessageReceiver
getXMPPIOServiceInstance
protected abstract IO getXMPPIOServiceInstance()
doForAllServices
protected void doForAllServices(ServiceChecker checker)
getMaxInactiveTime
protected abstract long getMaxInactiveTime()
Copyright © 2008 Tigase. All Rights Reserved.