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.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.DisableDiscoClass description- Version:
- 5.1.0, 2010.11.02 at 01:05:02 MDT
- Author:
- Artur Hefczyc
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfacePubSubComponent.PacketHashCodeGenerator
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_LEAF_NODE_CONFIG_KEYprotected LeafNodeConfigdefaultNodeConfigstatic StringEVENT_XMLNSprotected IntegermaxRepositoryCacheSize-
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, SECOND
-
Fields inherited from class tigase.server.BasicComponent
admins, ALL_PROP_KEY, COMMAND_PROP_NODE, scriptCommands, SCRIPTS_DIR_PROP_DEF, SCRIPTS_DIR_PROP_KEY, trusted, vHostManager
-
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
-
-
Constructor Summary
Constructors Constructor Description PubSubComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected 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.voideveryHour()voideveryMinute()voideverySecond()StringgetComponentVersion()StringgetDiscoCategory()StringgetDiscoCategoryType()StringgetDiscoDescription()voidgetStatistics(tigase.stats.StatisticsList list)inthashCodeForPacket(tigase.server.Packet packet)voidinitBindings(Bindings binds)booleanisDiscoNonAdmin()booleanisSubdomain()voidonChangeDefaultNodeConfig(DefaultConfigCommand.DefaultNodeConfigurationChangedEvent event)voidonUserRemoved(tigase.db.UserRepository.UserRemovedEvent event)intprocessingInThreads()intprocessingOutThreads()voidprocessPacket(tigase.server.Packet packet)booleanprocessScriptCommand(tigase.server.Packet pc, Queue<tigase.server.Packet> results)protected voidregisterModules(tigase.kernel.core.Kernel kernel)voidstart()voidstop()-
Methods inherited from class tigase.component.AbstractKernelBasedComponent
createScriptEngineManager, getKernel, register, unregister, updateServiceEntity
-
Methods inherited from class tigase.server.AbstractMessageReceiver
addOutPacket, addOutPacketNB, addOutPackets, addOutPacketWithTimeout, addPacket, addPacketNB, addPackets, addRegexRouting, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTask, addTimerTaskWithTimeout, addTimerTaskWithTimeout, beanConfigurationChanged, clearRegexRoutings, getMaxQueueSize, getRegexRoutings, isInRegexRoutings, newPacketId, processingThreads, processOutPacket, processPacket, release, removeRegexRouting, schedulerThreads, setIncomingFilters, setName, setOutogingFilters, setParent, setSchedulerThreads_size
-
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, getComponentId, getComponentInfo, getDefaults, getDefHostName, getDefVHostItem, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initializationCompleted, initialize, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isTrusted, isTrusted, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, setClusterController, setCommandsACL, setProperties, setScriptsBaseDir, setVHostManager, updateServiceDiscoveryItem, updateServiceDiscoveryItem, updateServiceDiscoveryItem
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Field Detail
-
DEFAULT_LEAF_NODE_CONFIG_KEY
public static final String DEFAULT_LEAF_NODE_CONFIG_KEY
- See Also:
- Constant Field Values
-
EVENT_XMLNS
public static final String EVENT_XMLNS
- See Also:
- Constant Field Values
-
defaultNodeConfig
@Inject(bean="defaultNodeConfig") protected LeafNodeConfig defaultNodeConfig
-
maxRepositoryCacheSize
protected Integer maxRepositoryCacheSize
-
-
Method Detail
-
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
public String getComponentVersion()
- Overrides:
getComponentVersionin classtigase.component.AbstractKernelBasedComponent
-
getDiscoCategory
public String getDiscoCategory()
- Overrides:
getDiscoCategoryin classtigase.server.BasicComponent
-
getDiscoCategoryType
public String getDiscoCategoryType()
- Overrides:
getDiscoCategoryTypein classtigase.server.BasicComponent
-
getDiscoDescription
public String 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
public void initBindings(Bindings binds)
- 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
public boolean processScriptCommand(tigase.server.Packet pc, Queue<tigase.server.Packet> results)- Overrides:
processScriptCommandin classtigase.server.BasicComponent
-
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)
-
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
-
-