Package tigase.server
Class BasicComponent
- java.lang.Object
-
- tigase.server.BasicComponent
-
- All Implemented Interfaces:
ClusteredComponentIfc,Configurable,XMPPService,ConfigurationChangedAware,Initializable,ServerComponent,VHostListener
- Direct Known Subclasses:
AbstractComponentRegistrator,AbstractMessageReceiver
public class BasicComponent extends java.lang.Object implements Configurable, XMPPService, VHostListener, ClusteredComponentIfc, Initializable, ConfigurationChangedAware
Created: Oct 17, 2009 7:49:05 PM- Author:
- Artur Hefczyc
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBasicComponent.ServerInfoVHostItemExtension
-
Field Summary
Fields Modifier and Type Field Description protected java.util.concurrent.ConcurrentSkipListSet<BareJID>adminsstatic java.lang.StringALL_PROP_KEYstatic java.lang.StringCOMMAND_PROP_NODEprotected java.util.Map<java.lang.String,CommandIfc>scriptCommandsprotected javax.script.ScriptEngineManagerscriptEngineManagerstatic java.lang.StringSCRIPTS_DIR_PROP_DEFstatic java.lang.StringSCRIPTS_DIR_PROP_KEYprotected java.util.concurrent.ConcurrentSkipListSet<java.lang.String>trustedprotected VHostManagerIfcvHostManager-
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 BasicComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddComponentDomain(java.lang.String domain)voidbeanConfigurationChanged(java.util.Collection<java.lang.String> changedFields)Method called when configuration was applied to bean.booleancanCallCommand(JID jid, java.lang.String commandId)Method checks if following adhoc command can execute from this JIDbooleancanCallCommand(JID jid, java.lang.String domain, java.lang.String commandId)booleancheckCommandAcl(JID jid, java.lang.String domain, java.util.Set<CmdAcl> acl)Check if entity with JID is allowed ot execute command with passed access control list.booleancheckCommandAcl(JID jid, java.util.Set<CmdAcl> acl)Check if entity with JID is allowed ot execute command with passed access control list.protected javax.script.ScriptEngineManagercreateScriptEngineManager()voideveryHour()voideveryMinute()voideverySecond()JIDgetComponentId()Method returns component jid in form of the component name followed by server hostname as a domain.ComponentInfogetComponentInfo()Allows to obtain various informations about componentsjava.util.Map<java.lang.String,java.lang.Object>getDefaults(java.util.Map<java.lang.String,java.lang.Object> params)Deprecated.BareJIDgetDefHostName()BareJIDgetDefVHostItem()java.lang.StringgetDiscoCategory()Method returns category of a component used for service discovery responses.java.lang.StringgetDiscoCategoryType()Method returns component category type used for service discovery responses.java.lang.StringgetDiscoDescription()Method returns description used for service discovery responses.ElementgetDiscoExtensionsForm(java.lang.String domain)java.util.List<Element>getDiscoFeatures()Method returns list of features provided by this component.java.util.List<Element>getDiscoFeatures(JID from)Method returns list of features provided by this component for provided JID.ElementgetDiscoInfo(java.lang.String node, JID jid, JID from)Returns service discovery info for the component.java.util.List<Element>getDiscoItems(java.lang.String node, JID jid, JID from)Returns service discovery items for the component.java.lang.StringgetName()Method returns name of the component.java.util.List<JID>getNodesConnected()java.util.List<JID>getNodesConnectedWithLocal()protected java.util.Map<java.lang.String,CommandIfc>getScriptCommands()java.util.List<Element>getScriptItems(java.lang.String node, JID jid, JID from)protected ServiceEntitygetServiceEntity()java.util.Optional<Element>getServiceEntityCaps(JID fromJid)voidgetStatistics(StatisticsList list)VHostItemgetVHostItem(java.lang.String domain)booleanhandlesLocalDomains()Indicates whether the component accepts packets to all local domains.booleanhandlesNameSubdomains()Indicates whether the component can handle packets to 'name' subdomain.booleanhandlesNonLocalDomains()Indicates whether the component can handle all packets to non-local domains.voidinitBindings(javax.script.Bindings binds)Initialize a mapping of key/value pairs which can be used in scripts loaded by the servervoidinitializationCompleted()Method is called byMessageRouterwhen all the startup components of the server have been loaded and configured through setProperties(...) call.voidinitialize()Method will be called, when bean will be created, configured and ready to use.booleanisAdmin(JID jid)booleanisInitializationComplete()Method returns information about whether the initialization process (initializationCompleted()) method has been called.booleanisLocalDomain(java.lang.String domain)booleanisLocalDomainOrComponent(java.lang.String domain)protected booleanisNonAdminCommands()booleanisSubdomain()booleanisTrusted(java.lang.String jid)booleanisTrusted(JID jid)voidnodeConnected(java.lang.String node)Method is called on cluster node connection event.voidnodeDisconnected(java.lang.String node)Method is called on cluster node disconnection event.protected voidonNodeConnected(JID jid)protected voidonNodeDisconnected(JID jid)voidprocessPacket(Packet packet, java.util.Queue<Packet> results)processPacketis a blocking processing method implemented by all components.booleanprocessScriptCommand(Packet pc, java.util.Queue<Packet> results)voidrelease()Method called when component is being stopped and unloaded.protected voidreloadScripts()voidremoveComponentDomain(java.lang.String domain)voidremoveServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description)voidsetAdmins(java.util.Set<BareJID> admins)voidsetClusterController(ClusterControllerIfc cl_controller)Set's the configures the cluster controller object for cluster communication and API.voidsetCommandsACL(java.util.concurrent.ConcurrentHashMap<java.lang.String,java.util.concurrent.CopyOnWriteArraySet<CmdAcl>> commandsACL)voidsetCompId(JID jid)voidsetName(java.lang.String name)Method used to assign component name (localpart of the component)voidsetProperties(java.util.Map<java.lang.String,java.lang.Object> props)Deprecated.voidsetScriptsBaseDir(java.lang.String scriptsBaseDir)voidsetVHostManager(VHostManagerIfc manager)Sets the VHostManager which works on this server installation.voidupdateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, boolean admin)voidupdateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, boolean admin, java.lang.String... features)voidupdateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, java.lang.String category, java.lang.String type, boolean admin, java.lang.String... features)voidupdateServiceEntity()
-
-
-
Field Detail
-
ALL_PROP_KEY
public static final java.lang.String ALL_PROP_KEY
- See Also:
- Constant Field Values
-
COMMAND_PROP_NODE
public static final java.lang.String COMMAND_PROP_NODE
- See Also:
- Constant Field Values
-
SCRIPTS_DIR_PROP_DEF
public static final java.lang.String SCRIPTS_DIR_PROP_DEF
- See Also:
- Constant Field Values
-
SCRIPTS_DIR_PROP_KEY
public static final java.lang.String SCRIPTS_DIR_PROP_KEY
- See Also:
- Constant Field Values
-
admins
@ConfigField(desc="List of admins JIDs", alias="admins") protected java.util.concurrent.ConcurrentSkipListSet<BareJID> admins
-
scriptCommands
protected java.util.Map<java.lang.String,CommandIfc> scriptCommands
-
trusted
protected java.util.concurrent.ConcurrentSkipListSet<java.lang.String> trusted
-
vHostManager
@Inject(nullAllowed=true) protected VHostManagerIfc vHostManager
-
scriptEngineManager
protected javax.script.ScriptEngineManager scriptEngineManager
-
-
Method Detail
-
addComponentDomain
public void addComponentDomain(java.lang.String domain)
-
beanConfigurationChanged
public void beanConfigurationChanged(java.util.Collection<java.lang.String> changedFields)
Description copied from interface:ConfigurationChangedAwareMethod called when configuration was applied to bean.- Specified by:
beanConfigurationChangedin interfaceConfigurationChangedAware- Parameters:
changedFields- collection of field names which were changed
-
canCallCommand
public boolean canCallCommand(JID jid, java.lang.String commandId)
Method checks if following adhoc command can execute from this JID- Parameters:
jid- - JID of entity which wants to execute commandcommandId- - ID of an adhoc command- Returns:
- a value of
boolean
-
canCallCommand
public boolean canCallCommand(JID jid, java.lang.String domain, java.lang.String commandId)
-
checkCommandAcl
public boolean checkCommandAcl(JID jid, java.util.Set<CmdAcl> acl)
Check if entity with JID is allowed ot execute command with passed access control list.- Parameters:
jid- - entity JIDacl- - access control list- Returns:
- a value of
boolean
-
checkCommandAcl
public boolean checkCommandAcl(JID jid, java.lang.String domain, java.util.Set<CmdAcl> acl)
Check if entity with JID is allowed ot execute command with passed access control list.- Parameters:
jid- - entity JIDdomain- - domain for which check permissionacl- - access control list- Returns:
- a value of
boolean
-
everyHour
public void everyHour()
-
everyMinute
public void everyMinute()
-
everySecond
public void everySecond()
-
handlesLocalDomains
public boolean handlesLocalDomains()
Description copied from interface:VHostListenerIndicates whether the component accepts packets to all local domains. The best example would be SM component which usually handles all requests sent to any local domain.- Specified by:
handlesLocalDomainsin interfaceVHostListener- Returns:
- 'true' if the component accepts packets to local domains 'false' otherwise.
-
handlesNameSubdomains
public boolean handlesNameSubdomains()
Description copied from interface:VHostListenerIndicates whether the component can handle packets to 'name' subdomain. Name subdomain is an artificial domain created from the component name and the domain name. The best example would be a 'MUC' component or a 'PubSub' component. They are usually named respectively 'muc' and 'pubsub' and they accept requests sent to domains 'muc.tigase.org' or 'pubsub.tigase.org', even though a local domain is just 'tigase.org'.- Specified by:
handlesNameSubdomainsin interfaceVHostListener- Returns:
- 'true' if the component accepts packets to 'name' subdomains 'false' otherwise.
-
handlesNonLocalDomains
public boolean handlesNonLocalDomains()
Description copied from interface:VHostListenerIndicates whether the component can handle all packets to non-local domains. S2s connection manager component is the best example of the component which handles all requests sent to non-local domains.- Specified by:
handlesNonLocalDomainsin interfaceVHostListener- Returns:
- 'true' if the component accepts packets to non-local domains 'false' otherwise.
-
initBindings
public void initBindings(javax.script.Bindings binds)
Initialize a mapping of key/value pairs which can be used in scripts loaded by the server- Parameters:
binds- A mapping of key/value pairs, all of whose keys are Strings.
-
initializationCompleted
public void initializationCompleted()
Description copied from interface:ServerComponentMethod is called byMessageRouterwhen 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:
initializationCompletedin interfaceServerComponent
-
nodeConnected
public void nodeConnected(java.lang.String node)
Description copied from interface:ClusteredComponentIfcMethod is called on cluster node connection event. This is a notification to the component that a new cluster node has connected.- Specified by:
nodeConnectedin interfaceClusteredComponentIfc- Parameters:
node- is a hostname of a cluster node generating the event.
-
nodeDisconnected
public void nodeDisconnected(java.lang.String node)
Description copied from interface:ClusteredComponentIfcMethod 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:
nodeDisconnectedin interfaceClusteredComponentIfc- Parameters:
node- is a hostname of a cluster node generating the event.
-
processPacket
public void processPacket(Packet packet, java.util.Queue<Packet> results)
Description copied from interface:ServerComponentprocessPacketis a blocking processing method implemented by all components. This method processes packet and returns results instantly without waiting for any resources.- Specified by:
processPacketin interfaceServerComponent- Parameters:
packet- aPacketvalue
-
release
public void release()
Description copied from interface:ServerComponentMethod called when component is being stopped and unloaded.- Specified by:
releasein interfaceServerComponent
-
removeComponentDomain
public void removeComponentDomain(java.lang.String domain)
-
removeServiceDiscoveryItem
public void removeServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description)
-
setClusterController
public void setClusterController(ClusterControllerIfc cl_controller)
Description copied from interface:ClusteredComponentIfcSet's the configures the cluster controller object for cluster communication and API.- Specified by:
setClusterControllerin interfaceClusteredComponentIfc- Parameters:
cl_controller- cluster controller object used for cluster communication
-
updateServiceDiscoveryItem
public void updateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, boolean admin)
-
updateServiceDiscoveryItem
public void updateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, boolean admin, java.lang.String... features)
-
updateServiceDiscoveryItem
public void updateServiceDiscoveryItem(java.lang.String jid, java.lang.String node, java.lang.String description, java.lang.String category, java.lang.String type, boolean admin, java.lang.String... features)
-
updateServiceEntity
public void updateServiceEntity()
-
getComponentId
public JID getComponentId()
Description copied from interface:ServerComponentMethod returns component jid in form of the component name followed by server hostname as a domain.- Specified by:
getComponentIdin interfaceServerComponent- Returns:
- jid
-
setCompId
public void setCompId(JID jid)
-
getComponentInfo
public ComponentInfo getComponentInfo()
Description copied from interface:ServerComponentAllows to obtain various informations about components- Specified by:
getComponentInfoin interfaceServerComponent- Returns:
- information about particular component
-
getDefaults
@Deprecated public java.util.Map<java.lang.String,java.lang.Object> getDefaults(java.util.Map<java.lang.String,java.lang.Object> params)
Deprecated.Description copied from interface:ConfigurableReturns default configuration settings for the component as aMapwith keys as configuration property IDs and values as the configuration property values. All the default parameters returned from this method are later passed to thesetProperties(...)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.- Specified by:
getDefaultsin interfaceConfigurable- Parameters:
params- is aMapwith some initial properties set for the starting up server. These parameters can be used as a hints to generate component's default configuration.- Returns:
- a
Mapwith the component default configuration.
-
getDefHostName
public BareJID getDefHostName()
-
getDefVHostItem
public BareJID getDefVHostItem()
-
getDiscoCategory
public java.lang.String getDiscoCategory()
Method returns category of a component used for service discovery responses.- Returns:
- category of a component
-
getDiscoCategoryType
public java.lang.String getDiscoCategoryType()
Method returns component category type used for service discovery responses.- Returns:
- category type of a component
-
getDiscoDescription
public java.lang.String getDiscoDescription()
Method returns description used for service discovery responses.- Returns:
- description of a component
-
getDiscoFeatures
public java.util.List<Element> getDiscoFeatures()
Method returns list of features provided by this component.- Returns:
- list of features
-
getDiscoFeatures
public java.util.List<Element> getDiscoFeatures(JID from)
Method returns list of features provided by this component for provided JID.- Specified by:
getDiscoFeaturesin interfaceXMPPService- Parameters:
from- 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.- Returns:
- list of features
-
getDiscoInfo
public Element getDiscoInfo(java.lang.String node, JID jid, JID from)
Description copied from interface:XMPPServiceReturns service discovery info for the component. If the jid is null then this is info for the top level request. SM may return disco info on the top level. Other components should not.- Specified by:
getDiscoInfoin interfaceXMPPService- Parameters:
node- 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.- Returns:
- returns an XML Element with service discovery data.
-
getDiscoExtensionsForm
public Element getDiscoExtensionsForm(java.lang.String domain)
-
getDiscoItems
public java.util.List<Element> getDiscoItems(java.lang.String node, JID jid, JID from)
Description copied from interface:XMPPServiceReturns service discovery items for the component. If the JID is null then this is request for the top level request. SM may return disco items on the top level, other components should just return it's top level service discovery item for null node.- Specified by:
getDiscoItemsin interfaceXMPPService- Parameters:
node- 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.- Returns:
- a list of service discovery items for this component or the component itself disco item for the top level request.
-
getName
public java.lang.String getName()
Description copied from interface:ServerComponentMethod returns name of the component.- Specified by:
getNamein interfaceServerComponent- Returns:
- name of the component
-
setName
public void setName(java.lang.String name)
Description copied from interface:ServerComponentMethod used to assign component name (localpart of the component)- Specified by:
setNamein interfaceServerComponent- Parameters:
name- to be assigned
-
getStatistics
public void getStatistics(StatisticsList list)
-
getScriptItems
public java.util.List<Element> getScriptItems(java.lang.String node, JID jid, JID from)
-
getVHostItem
public VHostItem getVHostItem(java.lang.String domain)
-
isAdmin
public boolean isAdmin(JID jid)
-
isInitializationComplete
public boolean isInitializationComplete()
Description copied from interface:ServerComponentMethod returns information about whether the initialization process (initializationCompleted()) method has been called.- Specified by:
isInitializationCompletein interfaceServerComponent- Returns:
trueif initialization of the object has been completedfalseotherwise
-
isLocalDomain
public boolean isLocalDomain(java.lang.String domain)
-
isLocalDomainOrComponent
public boolean isLocalDomainOrComponent(java.lang.String domain)
-
isSubdomain
public boolean isSubdomain()
-
isTrusted
public boolean isTrusted(JID jid)
-
isTrusted
public boolean isTrusted(java.lang.String jid)
-
setAdmins
public void setAdmins(java.util.Set<BareJID> admins)
-
setProperties
@Deprecated public void setProperties(java.util.Map<java.lang.String,java.lang.Object> props) throws ConfigurationExceptionDeprecated.Description copied from interface:ConfigurableSets all configuration properties for the object.- Specified by:
setPropertiesin interfaceConfigurable- Parameters:
props-Mapwith the configuration- Throws:
ConfigurationException- - if setting configuration will fail which will make it unable to work
-
setCommandsACL
public void setCommandsACL(java.util.concurrent.ConcurrentHashMap<java.lang.String,java.util.concurrent.CopyOnWriteArraySet<CmdAcl>> commandsACL)
-
setScriptsBaseDir
public void setScriptsBaseDir(java.lang.String scriptsBaseDir)
-
setVHostManager
public void setVHostManager(VHostManagerIfc manager)
Description copied from interface:VHostListenerSets the VHostManager which works on this server installation. The VHostManager allows for accessing vritual domain data.- Specified by:
setVHostManagerin interfaceVHostListener- Parameters:
manager- is a reference to VHostManager available on the server installation.
-
getNodesConnected
public java.util.List<JID> getNodesConnected()
-
getNodesConnectedWithLocal
public java.util.List<JID> getNodesConnectedWithLocal()
-
processScriptCommand
public boolean processScriptCommand(Packet pc, java.util.Queue<Packet> results)
-
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
-
createScriptEngineManager
protected javax.script.ScriptEngineManager createScriptEngineManager()
-
onNodeConnected
protected void onNodeConnected(JID jid)
-
onNodeDisconnected
protected void onNodeDisconnected(JID jid)
-
getScriptCommands
protected java.util.Map<java.lang.String,CommandIfc> getScriptCommands()
-
getServiceEntity
protected ServiceEntity getServiceEntity()
-
isNonAdminCommands
protected boolean isNonAdminCommands()
-
reloadScripts
protected void reloadScripts()
-
-