public class VirtualComponent extends Object implements ServerComponent, XMPPService, Configurable, DisableDisco, VHostListener
muc.domain.our in our installation. Thus the name of the
component is: muc:
--comp-name-1=muc --comp-class-1=tigase.cluster.VirtualComponentThis is pretty much all you need to load a virtual component. A few other options are needed to point to correct destination addresses for forwarded packets and to set correct service discovery parameters:
muc/redirect-to=muc@cluster-node-with-real-muc.domain.our muc/disco-name=Multi User Chat muc/disco-node= muc/disco-type=text muc/disco-category=conference muc/disco-features=http://jabber.org/protocol/muc muc/fixed-domain=example.comAbove options set all possible parameters to setup virtual MUC component. Created: Dec 13, 2008 7:44:35 PM
| Modifier and Type | Field and Description |
|---|---|
static String |
DISCO_CATEGORY_PROP_KEY
Parameter to set service discovery item category name for the virtual
component.
|
static String |
DISCO_CATEGORY_PROP_VAL
Field description
|
static String |
DISCO_FEATURES_PROP_KEY
Comma separated list of features for the service discovery item represented
by this virtual component.
|
static String |
DISCO_FEATURES_PROP_VAL
Field description
|
static String |
DISCO_NAME_PROP_KEY
Parameter to set service discovery item name for the virtual component
instance.
|
static String |
DISCO_NAME_PROP_VAL
Field description
|
static String |
DISCO_NODE_PROP_KEY
Parameter to set service discovery node name.
|
static String |
DISCO_NODE_PROP_VAL
Field description
|
static String |
DISCO_TYPE_PROP_KEY
Parameter to set service discovery item type for the virtual component.
|
static String |
DISCO_TYPE_PROP_VAL
A default value for service discovery item type, which is 'text'
|
static String |
FIXED_DOMAIN_PROP_KEY
If set, then it is used as the component domain name part.
|
static String |
REDIRECT_TO_PROP_KEY
Virtual component parameter setting packet redirect destination address.
|
protected VHostManagerIfc |
vHostManager |
CMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNSADMINS_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_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, 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| Constructor and Description |
|---|
VirtualComponent() |
| Modifier and Type | Method and Description |
|---|---|
tigase.xmpp.JID |
getComponentId()
Method description
|
ComponentInfo |
getComponentInfo()
Allows to obtain various informations about components
|
Map<String,Object> |
getDefaults(Map<String,Object> params)
Returns default configuration settings for the component as a
Map with keys as configuration property IDs and values as the
configuration property values. |
List<tigase.xml.Element> |
getDiscoFeatures(tigase.xmpp.JID from)
Returns features for top level disco info
|
tigase.xml.Element |
getDiscoInfo(String node,
tigase.xmpp.JID jid,
tigase.xmpp.JID from)
Returns service discovery info for the component.
|
List<tigase.xml.Element> |
getDiscoItems(String node,
tigase.xmpp.JID jid,
tigase.xmpp.JID from)
Returns service discovery items for the component.
|
String |
getName()
Method description
|
boolean |
handlesLocalDomains()
Indicates whether the component accepts packets to all local domains.
|
boolean |
handlesNameSubdomains()
Indicates whether the component can handle packets to 'name' subdomain.
|
boolean |
handlesNonLocalDomains()
Indicates whether the component can handle all packets to
non-local domains.
|
void |
initializationCompleted()
Method is called by
MessageRouter when all the startup components of
the server have been loaded and configured through setProperties(...) call. |
boolean |
isInitializationComplete()
Method returns information about whether the initialization process
(initializationCompleted()) method has been called.
|
void |
processPacket(Packet packet,
Queue<Packet> results)
processPacket is a blocking processing method implemented
by all components. |
void |
release()
Method description
|
void |
setName(String name)
Method description
|
void |
setProperties(Map<String,Object> properties)
Sets all configuration properties for the object.
|
void |
setVHostManager(VHostManagerIfc manager)
Sets the VHostManager which works on this server installation.
|
public static final String DISCO_CATEGORY_PROP_KEY
public static final String DISCO_CATEGORY_PROP_VAL
public static final String DISCO_FEATURES_PROP_KEY
public static final String DISCO_FEATURES_PROP_VAL
public static final String DISCO_NAME_PROP_KEY
public static final String DISCO_NAME_PROP_VAL
public static final String DISCO_NODE_PROP_KEY
public static final String DISCO_NODE_PROP_VAL
public static final String DISCO_TYPE_PROP_KEY
public static final String DISCO_TYPE_PROP_VAL
public static final String FIXED_DOMAIN_PROP_KEY
public static final String REDIRECT_TO_PROP_KEY
protected VHostManagerIfc vHostManager
public boolean handlesLocalDomains()
VHostListenerhandlesLocalDomains in interface VHostListenerpublic boolean handlesNameSubdomains()
VHostListenerhandlesNameSubdomains in interface VHostListenerpublic boolean handlesNonLocalDomains()
VHostListenerhandlesNonLocalDomains in interface VHostListenerpublic void initializationCompleted()
ServerComponentMessageRouter 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.initializationCompleted in interface ServerComponentpublic void processPacket(Packet packet, Queue<Packet> results)
ServerComponentprocessPacket is a blocking processing method implemented
by all components. This method processes packet and returns results
instantly without waiting for any resources.processPacket in interface ServerComponentpacket - a Packet valuepublic void release()
ServerComponentrelease in interface ServerComponentpublic tigase.xmpp.JID getComponentId()
ServerComponentgetComponentId in interface ServerComponentpublic ComponentInfo getComponentInfo()
ServerComponentgetComponentInfo in interface ServerComponentpublic Map<String,Object> getDefaults(Map<String,Object> params)
ConfigurableMap with keys as configuration property IDs and values as the
configuration property values. All the default parameters returned from
this method are later passed to the setProperties(...) method.
Some of them may have changed value if they have been overwritten in the
server configuration. The configuration property value can be of any of the
basic types: int, long, boolean,
String.getDefaults in interface Configurableparams - is a Map with some initial properties set for the
starting up server. These parameters can be used as a hints to
generate component's default configuration.Map with the component default configuration.public List<tigase.xml.Element> getDiscoFeatures(tigase.xmpp.JID from)
XMPPServicegetDiscoFeatures in interface XMPPServicefrom - a request sender address. Some service disco elements are meant
to be available only to system administrarors. The component is responsible to
check whether the sender is the component administrator and return results
appropriate.public tigase.xml.Element getDiscoInfo(String node, tigase.xmpp.JID jid, tigase.xmpp.JID from)
XMPPServicegetDiscoInfo in interface XMPPServicenode - is service discovery node for which the request is made. Is
normally null for the component top level request.jid - is the jid to which the request has been made.from - is the request sender address. Some service discovery information
is only meant for administrators.public List<tigase.xml.Element> getDiscoItems(String node, tigase.xmpp.JID jid, tigase.xmpp.JID from)
XMPPServicegetDiscoItems in interface XMPPServicenode - is a service discovery node for which the request has been made.jid - is the jid to which the request has been made.from - is the request sender address. Some service discovery information
is only meant for administrators.public String getName()
ServerComponentgetName in interface ServerComponentpublic boolean isInitializationComplete()
ServerComponentisInitializationComplete in interface ServerComponenttrue if initialization of the object has been completed
false otherwisepublic void setName(String name)
ServerComponentsetName in interface ServerComponentpublic void setProperties(Map<String,Object> properties)
ConfigurablesetProperties in interface Configurableproperties - Map with the configurationpublic void setVHostManager(VHostManagerIfc manager)
VHostListenersetVHostManager in interface VHostListenermanager - is a reference to VHostManager available on the server
installation.Copyright © 2015 "Tigase, Inc.". All rights reserved.