Package tigase.pubsub
Class PubSubComponent
java.lang.Object
tigase.server.BasicComponent
tigase.server.AbstractMessageReceiver
tigase.component.AbstractKernelBasedComponent
tigase.pubsub.PubSubComponent
- All Implemented Interfaces:
tigase.cluster.api.ClusteredComponentIfc,tigase.conf.Configurable,tigase.disco.XMPPService,tigase.kernel.beans.config.ConfigurationChangedAware,tigase.kernel.beans.Initializable,tigase.kernel.beans.RegistrarBean,tigase.server.DisableDisco,tigase.server.MessageReceiver,tigase.server.PacketWriterWithTimeout,tigase.server.ServerComponent,tigase.stats.StatisticsContainer,tigase.stats.StatisticsContainerIfc,tigase.vhosts.VHostListener
@Bean(name="pubsub",
parent=tigase.kernel.core.Kernel.class,
active=true)
@ConfigType(DefaultMode)
@ClusterModeRequired(active=false)
public class PubSubComponent
extends tigase.component.AbstractKernelBasedComponent
implements tigase.conf.Configurable, tigase.server.DisableDisco
Class description
- Version:
- 5.1.0, 2010.11.02 at 01:05:02 MDT
- Author:
- Artur Hefczyc
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class tigase.component.AbstractKernelBasedComponent
tigase.component.AbstractKernelBasedComponent.DefaultPacketWriterNested classes/interfaces inherited from class tigase.server.BasicComponent
tigase.server.BasicComponent.ServerInfoVHostItemExtensionNested classes/interfaces inherited from interface tigase.server.PacketWriterWithTimeout
tigase.server.PacketWriterWithTimeout.Handler -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringprotected LeafNodeConfigstatic final Stringprotected IntegerFields inherited from class tigase.component.AbstractKernelBasedComponent
eventBus, kernel, logFields 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 booleancheckPubSubServiceJid(tigase.server.Packet packet) Method checks if packet is sent to pubsub@xxx and if so then it returns error as we no longer allow usage of pubsub@xxx address as pubsub service jid since we added support to use PEP and we have multiple domains support with separated nodes.voidvoidvoidvoidgetStatistics(tigase.stats.StatisticsList list) inthashCodeForPacket(tigase.server.Packet packet) voidinitBindings(Bindings binds) booleanbooleanvoidvoidonPasswordChange(tigase.db.AuthRepository.PasswordChangedEvent event) voidonUserRemoved(tigase.db.UserRepository.UserRemovedEvent event) intintvoidprocessPacket(tigase.server.Packet packet) booleanprocessScriptCommand(tigase.server.Packet pc, Queue<tigase.server.Packet> results) protected voidregisterModules(tigase.kernel.core.Kernel kernel) voidvoidsetPubsubRepository(IPubSubRepository pubsubRepository) voidstart()voidstop()Methods inherited from class tigase.component.AbstractKernelBasedComponent
createScriptEngineManager, getKernel, register, unregister, updateServiceEntityMethods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, beanConfigurationChanged, clearRegexRoutings, getMaxQueueSize, getRegexRoutings, getResourceForPacketWithTimeout, isInRegexRoutings, newPacketId, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setCompId, setIncoming_filters, setOutgoing_filters, setParent, setSchedulerThreads_size, updateFiltersNameMethods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, getCommandACL, getComponentId, getComponentInfo, getDefaults, getDefHostName, getDefVHostItem, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, hasNonAdminCommands, initializationCompleted, initialize, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isTrusted, isTrusted, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, reloadScripts, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setClusterController, setCommandsACL, setProperties, 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.conf.Configurable
getDefaults, setPropertiesMethods inherited from interface tigase.server.MessageReceiver
getDefHostNameMethods inherited from interface tigase.server.ServerComponent
getComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, releaseMethods inherited from interface tigase.stats.StatisticsContainerIfc
getNameMethods inherited from interface tigase.disco.XMPPService
getDiscoFeatures, getDiscoInfo, getDiscoItems
-
Field Details
-
DEFAULT_LEAF_NODE_CONFIG_KEY
- See Also:
-
EVENT_XMLNS
- See Also:
-
defaultNodeConfig
-
maxRepositoryCacheSize
-
-
Constructor Details
-
PubSubComponent
public PubSubComponent()
-
-
Method Details
-
everyHour
public void everyHour()- Overrides:
everyHourin classtigase.server.AbstractMessageReceiver
-
everyMinute
public void everyMinute()- Overrides:
everyMinutein classtigase.server.AbstractMessageReceiver
-
everySecond
public void everySecond()- Overrides:
everySecondin classtigase.server.AbstractMessageReceiver
-
getComponentVersion
- Overrides:
getComponentVersionin classtigase.component.AbstractKernelBasedComponent
-
getDiscoCategory
- Overrides:
getDiscoCategoryin classtigase.server.BasicComponent
-
getDiscoCategoryType
- Overrides:
getDiscoCategoryTypein classtigase.server.BasicComponent
-
getDiscoDescription
- Overrides:
getDiscoDescriptionin classtigase.server.BasicComponent
-
getStatistics
public void getStatistics(tigase.stats.StatisticsList list) - Specified by:
getStatisticsin interfacetigase.stats.StatisticsContainerIfc- Overrides:
getStatisticsin classtigase.server.AbstractMessageReceiver
-
hashCodeForPacket
public int hashCodeForPacket(tigase.server.Packet packet) - Overrides:
hashCodeForPacketin classtigase.server.AbstractMessageReceiver
-
initBindings
- Overrides:
initBindingsin classtigase.component.AbstractKernelBasedComponent
-
isDiscoNonAdmin
public boolean isDiscoNonAdmin()- Specified by:
isDiscoNonAdminin classtigase.component.AbstractKernelBasedComponent
-
isSubdomain
public boolean isSubdomain()- Overrides:
isSubdomainin classtigase.server.BasicComponent
-
onChangeDefaultNodeConfig
@HandleEvent public void onChangeDefaultNodeConfig(DefaultConfigCommand.DefaultNodeConfigurationChangedEvent event) -
processingInThreads
public int processingInThreads()- Overrides:
processingInThreadsin classtigase.server.AbstractMessageReceiver
-
processingOutThreads
public int processingOutThreads()- Overrides:
processingOutThreadsin classtigase.server.AbstractMessageReceiver
-
processPacket
public void processPacket(tigase.server.Packet packet) - Overrides:
processPacketin classtigase.component.AbstractKernelBasedComponent
-
processScriptCommand
- Overrides:
processScriptCommandin classtigase.server.BasicComponent
-
setName
- Specified by:
setNamein interfacetigase.server.ServerComponent- Overrides:
setNamein classtigase.server.AbstractMessageReceiver
-
setPubsubRepository
-
start
public void start()- Specified by:
startin interfacetigase.server.MessageReceiver- Overrides:
startin classtigase.component.AbstractKernelBasedComponent
-
stop
public void stop()- Overrides:
stopin classtigase.server.AbstractMessageReceiver
-
onUserRemoved
@HandleEvent public void onUserRemoved(tigase.db.UserRepository.UserRemovedEvent event) -
onPasswordChange
@HandleEvent public void onPasswordChange(tigase.db.AuthRepository.PasswordChangedEvent event) -
registerModules
protected void registerModules(tigase.kernel.core.Kernel kernel) - Specified by:
registerModulesin classtigase.component.AbstractKernelBasedComponent
-
checkPubSubServiceJid
protected boolean checkPubSubServiceJid(tigase.server.Packet packet) Method checks if packet is sent to pubsub@xxx and if so then it returns error as we no longer allow usage of pubsub@xxx address as pubsub service jid since we added support to use PEP and we have multiple domains support with separated nodes.- Parameters:
packet- packet to check- Returns:
- true - if packet service jid is ok and should be processed
-