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.DefaultPacketWriter
Nested classes/interfaces inherited from class tigase.server.BasicComponent
tigase.server.BasicComponent.ServerInfoVHostItemExtension
Nested classes/interfaces inherited from interface tigase.server.PacketWriterWithTimeout
tigase.server.PacketWriterWithTimeout.Handler
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
protected LeafNodeConfig
static final String
protected Integer
Fields inherited from class tigase.component.AbstractKernelBasedComponent
eventBus, kernel, log
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, scriptEngineManager, 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
Fields inherited from interface tigase.disco.XMPPService
CMD_FEATURES, DEF_FEATURES, INFO_XMLNS, ITEMS_XMLNS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected 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.void
void
void
void
getStatistics
(tigase.stats.StatisticsList list) int
hashCodeForPacket
(tigase.server.Packet packet) void
initBindings
(Bindings binds) boolean
boolean
void
void
onUserRemoved
(tigase.db.UserRepository.UserRemovedEvent event) int
int
void
processPacket
(tigase.server.Packet packet) boolean
processScriptCommand
(tigase.server.Packet pc, Queue<tigase.server.Packet> results) protected void
registerModules
(tigase.kernel.core.Kernel kernel) void
void
setPubsubRepository
(IPubSubRepository pubsubRepository) void
start()
void
stop()
Methods inherited from class tigase.component.AbstractKernelBasedComponent
createScriptEngineManager, getKernel, register, unregister, updateServiceEntity
Methods 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, updateFiltersName
Methods inherited from class tigase.server.BasicComponent
addComponentDomain, canCallCommand, canCallCommand, checkCommandAcl, checkCommandAcl, getComponentId, getComponentInfo, getDefaults, getDefHostName, getDefVHostItem, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initializationCompleted, initialize, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isTrusted, isTrusted, nodeConnected, nodeDisconnected, onNodeConnected, onNodeDisconnected, reloadScripts, 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
Methods inherited from interface tigase.conf.Configurable
getDefaults, setProperties
Methods inherited from interface tigase.server.MessageReceiver
getDefHostName
Methods inherited from interface tigase.server.ServerComponent
getComponentId, getComponentInfo, getName, initializationCompleted, isInitializationComplete, processPacket, release
Methods inherited from interface tigase.stats.StatisticsContainerIfc
getName
Methods 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:
everyHour
in classtigase.server.AbstractMessageReceiver
-
everyMinute
public void everyMinute()- Overrides:
everyMinute
in classtigase.server.AbstractMessageReceiver
-
everySecond
public void everySecond()- Overrides:
everySecond
in classtigase.server.AbstractMessageReceiver
-
getComponentVersion
- Overrides:
getComponentVersion
in classtigase.component.AbstractKernelBasedComponent
-
getDiscoCategory
- Overrides:
getDiscoCategory
in classtigase.server.BasicComponent
-
getDiscoCategoryType
- Overrides:
getDiscoCategoryType
in classtigase.server.BasicComponent
-
getDiscoDescription
- Overrides:
getDiscoDescription
in classtigase.server.BasicComponent
-
getStatistics
public void getStatistics(tigase.stats.StatisticsList list) - Specified by:
getStatistics
in interfacetigase.stats.StatisticsContainerIfc
- Overrides:
getStatistics
in classtigase.server.AbstractMessageReceiver
-
hashCodeForPacket
public int hashCodeForPacket(tigase.server.Packet packet) - Overrides:
hashCodeForPacket
in classtigase.server.AbstractMessageReceiver
-
initBindings
- Overrides:
initBindings
in classtigase.component.AbstractKernelBasedComponent
-
isDiscoNonAdmin
public boolean isDiscoNonAdmin()- Specified by:
isDiscoNonAdmin
in classtigase.component.AbstractKernelBasedComponent
-
isSubdomain
public boolean isSubdomain()- Overrides:
isSubdomain
in classtigase.server.BasicComponent
-
onChangeDefaultNodeConfig
@HandleEvent public void onChangeDefaultNodeConfig(DefaultConfigCommand.DefaultNodeConfigurationChangedEvent event) -
processingInThreads
public int processingInThreads()- Overrides:
processingInThreads
in classtigase.server.AbstractMessageReceiver
-
processingOutThreads
public int processingOutThreads()- Overrides:
processingOutThreads
in classtigase.server.AbstractMessageReceiver
-
processPacket
public void processPacket(tigase.server.Packet packet) - Overrides:
processPacket
in classtigase.component.AbstractKernelBasedComponent
-
processScriptCommand
- Overrides:
processScriptCommand
in classtigase.server.BasicComponent
-
setName
- Specified by:
setName
in interfacetigase.server.ServerComponent
- Overrides:
setName
in classtigase.server.AbstractMessageReceiver
-
setPubsubRepository
-
start
public void start()- Specified by:
start
in interfacetigase.server.MessageReceiver
- Overrides:
start
in classtigase.component.AbstractKernelBasedComponent
-
stop
public void stop()- Overrides:
stop
in classtigase.server.AbstractMessageReceiver
-
onUserRemoved
@HandleEvent public void onUserRemoved(tigase.db.UserRepository.UserRemovedEvent event) -
registerModules
protected void registerModules(tigase.kernel.core.Kernel kernel) - Specified by:
registerModules
in 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
-