Package tigase.component
Class AbstractComponent
java.lang.Object
tigase.server.BasicComponent
tigase.server.AbstractMessageReceiver
tigase.component.AbstractComponent
- All Implemented Interfaces:
ClusteredComponentIfc,Configurable,XMPPService,ConfigurationChangedAware,Initializable,DisableDisco,MessageReceiver,PacketWriterWithTimeout,ServerComponent,StatisticsContainer,StatisticsContainerIfc,VHostListener
@Deprecated
public abstract class AbstractComponent
extends AbstractMessageReceiver
implements XMPPService, DisableDisco
Deprecated.
Base class for implement XMPP Component.
- Author:
- bmalkow
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class tigase.server.BasicComponent
BasicComponent.ServerInfoVHostItemExtensionNested classes/interfaces inherited from interface tigase.server.PacketWriterWithTimeout
PacketWriterWithTimeout.Handler -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final StringDeprecated.protected EventBusDeprecated.protected final LoggerDeprecated.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, SECONDFields inherited from class tigase.server.BasicComponent
admins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, scriptEngineManager, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, trusted, vHostManagerFields 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_ACKFields inherited from interface tigase.disco.XMPPService
CMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddOutPacket(Packet packet, AsyncCallback asyncCallback) Deprecated.voidDeprecated.Utility method executed precisely every minute.abstract StringDeprecated.Returns version of component.Deprecated.Returns default map of components.getDefaults(Map<String, Object> params) Deprecated.Returns default configuration settings for the component as aMapwith keys as configuration property IDs and values as the configuration property values.Deprecated.Deprecated.Deprecated.voidinitBindings(Bindings binds) Deprecated.Initialize a mapping of key/value pairs which can be used in scripts loaded by the serverprotected voidinitModules(Map<String, Object> props) Deprecated.abstract booleanDeprecated.Is this component discoverable by disco#items for domain by non admin users.voidprocessPacket(Packet packet) Deprecated.This is the mainPacketprocessing method.voidsetEventBus(EventBus eventBus) Deprecated.voidDeprecated.voidsetProperties(Map<String, Object> props) Deprecated.Sets all configuration properties for the object.voidsetResponseManager(ResponseManager responseManager) Deprecated.voidsetStanzaProcessor(StanzaProcessor stanzaProcessor) Deprecated.voidDeprecated.Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, beanConfigurationChanged, clearRegexRoutings, everyHour, everySecond, getMaxQueueSize, getRegexRoutings, getResourceForPacketWithTimeout, getStatistics, hashCodeForPacket, isInRegexRoutings, newPacketId, processingInThreads, processingOutThreads, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setCompId, setIncoming_filters, setName, setOutgoing_filters, setParent, setSchedulerThreads_size, start, stop, updateFiltersNameMethods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, createScriptEngineManager, getComponentId, getComponentInfo, getDefHostName, getDefVHostItem, getDiscoCategory, getDiscoCategoryType, getDiscoDescription, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initializationCompleted, initialize, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isSubdomain, isTrusted, isTrusted, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, processScriptCommand, reloadScripts, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setClusterController, setCommandsACL, setScriptsBaseDir, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItemMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface tigase.server.MessageReceiver
getDefHostNameMethods inherited from interface tigase.server.ServerComponent
getComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, release, setNameMethods inherited from interface tigase.stats.StatisticsContainerIfc
getNameMethods inherited from interface tigase.disco.XMPPService
getDiscoFeatures, getDiscoInfo, getDiscoItems
-
Field Details
-
COMPONENT
Deprecated.- See Also:
-
log
Deprecated. -
eventBus
Deprecated.
-
-
Constructor Details
-
AbstractComponent
public AbstractComponent()Deprecated.
-
-
Method Details
-
everyMinute
public void everyMinute()Deprecated.Description copied from class:AbstractMessageReceiverUtility 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:
everyMinutein classAbstractMessageReceiver
-
getComponentVersion
Deprecated.Returns version of component. Used for Service Discovery purposes.- Returns:
- version of component.
-
getDefaults
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- Overrides:
getDefaultsin classBasicComponent- 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.
-
getKernel
Deprecated. -
setKernel
Deprecated. -
getResponseManager
Deprecated. -
setResponseManager
Deprecated. -
getStanzaProcessor
Deprecated. -
setStanzaProcessor
Deprecated. -
initBindings
Deprecated.Description copied from class:BasicComponentInitialize a mapping of key/value pairs which can be used in scripts loaded by the server- Overrides:
initBindingsin classBasicComponent- Parameters:
binds- A mapping of key/value pairs, all of whose keys are Strings.
-
isDiscoNonAdmin
public abstract boolean isDiscoNonAdmin()Deprecated.Is this component discoverable by disco#items for domain by non admin users.- Returns:
true- if yes
-
processPacket
Deprecated.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.- Specified by:
processPacketin classAbstractMessageReceiver- Parameters:
packet- is an instance of thePacketclass passed for processing.
-
setProperties
Deprecated.Description copied from interface:ConfigurableSets all configuration properties for the object.- Specified by:
setPropertiesin interfaceConfigurable- Overrides:
setPropertiesin classBasicComponent- Parameters:
props-Mapwith the configuration- Throws:
ConfigurationException- - if setting configuration will fail which will make it unable to work
-
updateServiceEntity
public void updateServiceEntity()Deprecated.- Overrides:
updateServiceEntityin classBasicComponent
-
setEventBus
Deprecated. -
addOutPacket
Deprecated. -
getDefaultModulesList
Deprecated.Returns default map of components. Keys in map are used as component identifiers.
This map may be modified byconfig.tdsl:
<component_name>/modules/<module_name>[S]=<module_class>- Returns:
- map of default modules.
-
initModules
protected void initModules(Map<String, Object> props) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetExceptionDeprecated.
-
AbstractKernelBasedComponentinstead. This class is here just because developer wants to know how some parts of code worked before migration to Kernel Based TCF.