Class PubSubComponentClustered

  • 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, PubSubComponentClusteredIfc, 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=true)
    public class PubSubComponentClustered
    extends tigase.pubsub.PubSubComponent
    implements tigase.cluster.api.ClusteredComponentIfc, PubSubComponentClusteredIfc, tigase.kernel.beans.Initializable
    PubSubComponentClustered class is a class extending PubSubComponent class which implements support for clustering of PubSub component.
    Author:
    andrzej
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  PubSubComponentClustered.PacketForwardCommand  
      • Nested classes/interfaces inherited from class tigase.pubsub.PubSubComponent

        tigase.pubsub.PubSubComponent.PacketHashCodeGenerator
      • Nested 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

      • Fields inherited from class tigase.pubsub.PubSubComponent

        DEFAULT_LEAF_NODE_CONFIG_KEY, defaultNodeConfig, EVENT_XMLNS, maxRepositoryCacheSize
      • Fields inherited from class tigase.component.AbstractKernelBasedComponent

        eventBus, kernel
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean addOutPacket​(tigase.server.Packet packet)  
      void everyHour()  
      void everyMinute()  
      void everySecond()  
      tigase.server.ComponentInfo getComponentInfo()  
      protected java.lang.String getComponentInfoClusteringStrategyKey()  
      java.lang.String getDiscoDescription()  
      void getStatistics​(tigase.stats.StatisticsList list)  
      void initialize()  
      protected void onNodeConnected​(tigase.xmpp.jid.JID jid)  
      protected void onNodeDisconnected​(tigase.xmpp.jid.JID jid)  
      void processPacket​(tigase.server.Packet packet)  
      void register​(tigase.kernel.core.Kernel kernel)  
      protected void registerModules​(tigase.kernel.core.Kernel kernel)  
      void setClusterController​(tigase.cluster.api.ClusterControllerIfc cl_controller)  
      void setClusterNodesAware​(java.util.List<ClusterNodesAware> clusterNodesAware)  
      void setCommandListeners​(java.util.List<tigase.cluster.api.CommandListener> commandListeners)  
      void setStrategy​(StrategyIfc strategy)  
      • Methods inherited from class tigase.pubsub.PubSubComponent

        checkPubSubServiceJid, getComponentVersion, getDiscoCategory, getDiscoCategoryType, hashCodeForPacket, initBindings, isDiscoNonAdmin, isSubdomain, onChangeDefaultNodeConfig, onUserRemoved, processingInThreads, processingOutThreads, processScriptCommand, setName, setPubsubRepository, start, stop
      • Methods inherited from class tigase.component.AbstractKernelBasedComponent

        createScriptEngineManager, getKernel, unregister, updateServiceEntity
      • Methods inherited from class tigase.server.AbstractMessageReceiver

        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, getDefaults, getDefHostName, getDefVHostItem, getDiscoExtensionsForm, getDiscoFeatures, getDiscoFeatures, getDiscoInfo, getDiscoItems, getName, getNodesConnected, getNodesConnectedWithLocal, getScriptCommands, getScriptItems, getServiceEntity, getServiceEntityCaps, getVHostItem, handlesLocalDomains, handlesNameSubdomains, handlesNonLocalDomains, initializationCompleted, isAdmin, isInitializationComplete, isLocalDomain, isLocalDomainOrComponent, isNonAdminCommands, isTrusted, isTrusted, nodeConnected, nodeDisconnected, reloadScripts, removeComponentDomain, removeServiceDiscoveryItem, setAdmins, 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.cluster.api.ClusteredComponentIfc

        nodeConnected, nodeDisconnected
      • 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, getName, initializationCompleted, isInitializationComplete, processPacket, release, setName
      • Methods inherited from interface tigase.stats.StatisticsContainerIfc

        getName
      • Methods inherited from interface tigase.disco.XMPPService

        getDiscoFeatures, getDiscoInfo, getDiscoItems
    • Constructor Detail

      • PubSubComponentClustered

        public PubSubComponentClustered()
    • Method Detail

      • everyHour

        public void everyHour()
        Overrides:
        everyHour in class tigase.pubsub.PubSubComponent
      • everyMinute

        public void everyMinute()
        Overrides:
        everyMinute in class tigase.pubsub.PubSubComponent
      • everySecond

        public void everySecond()
        Overrides:
        everySecond in class tigase.pubsub.PubSubComponent
      • getStatistics

        public void getStatistics​(tigase.stats.StatisticsList list)
        Specified by:
        getStatistics in interface tigase.stats.StatisticsContainerIfc
        Overrides:
        getStatistics in class tigase.pubsub.PubSubComponent
      • processPacket

        public void processPacket​(tigase.server.Packet packet)
        Overrides:
        processPacket in class tigase.pubsub.PubSubComponent
      • register

        public void register​(tigase.kernel.core.Kernel kernel)
        Specified by:
        register in interface tigase.kernel.beans.RegistrarBean
        Overrides:
        register in class tigase.component.AbstractKernelBasedComponent
      • getComponentInfo

        public tigase.server.ComponentInfo getComponentInfo()
        Specified by:
        getComponentInfo in interface tigase.server.ServerComponent
        Overrides:
        getComponentInfo in class tigase.server.BasicComponent
      • getComponentInfoClusteringStrategyKey

        protected java.lang.String getComponentInfoClusteringStrategyKey()
      • getDiscoDescription

        public java.lang.String getDiscoDescription()
        Overrides:
        getDiscoDescription in class tigase.pubsub.PubSubComponent
      • setClusterController

        public void setClusterController​(tigase.cluster.api.ClusterControllerIfc cl_controller)
        Specified by:
        setClusterController in interface tigase.cluster.api.ClusteredComponentIfc
        Overrides:
        setClusterController in class tigase.server.BasicComponent
      • setCommandListeners

        public void setCommandListeners​(java.util.List<tigase.cluster.api.CommandListener> commandListeners)
      • setStrategy

        public void setStrategy​(StrategyIfc strategy)
      • setClusterNodesAware

        public void setClusterNodesAware​(java.util.List<ClusterNodesAware> clusterNodesAware)
      • initialize

        public void initialize()
        Specified by:
        initialize in interface tigase.kernel.beans.Initializable
        Overrides:
        initialize in class tigase.server.BasicComponent
      • addOutPacket

        protected boolean addOutPacket​(tigase.server.Packet packet)
        Overrides:
        addOutPacket in class tigase.server.AbstractMessageReceiver
      • onNodeConnected

        protected void onNodeConnected​(tigase.xmpp.jid.JID jid)
        Overrides:
        onNodeConnected in class tigase.server.BasicComponent
      • onNodeDisconnected

        protected void onNodeDisconnected​(tigase.xmpp.jid.JID jid)
        Overrides:
        onNodeDisconnected in class tigase.server.BasicComponent
      • registerModules

        protected void registerModules​(tigase.kernel.core.Kernel kernel)
        Overrides:
        registerModules in class tigase.pubsub.PubSubComponent