tigase.server.xmppclient

## Class SeeOtherHostHashed

- java.lang.Object
- - tigase.server.xmppclient.SeeOtherHost
  - - tigase.server.xmppclient.SeeOtherHostHashed

- All Implemented Interfaces:
    Initializable, Lifecycle, SeeOtherHostIfc
  Direct Known Subclasses:
    SeeOtherHostDB, SeeOtherHostDualIP

      @Bean(name="seeOtherHost",
            parent=ClientConnectionManager.class,
            active=true)
       @ClusterModeRequired(active=true)
      public class SeeOtherHostHashed
      extends SeeOtherHost

  Default implementation for cluster environment of SeeOtherHostIfc returning redirect host based on the hash value of the user's JID
  Author:
    Wojtek

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class tigase.server.xmppclient.SeeOtherHost

      `SeeOtherHost.SeeOtherHostVHostItemExtension, SeeOtherHost.SeeOtherHostVHostItemExtensionProvider`

    - ### Nested classes/interfaces inherited from interface tigase.server.xmppclient.SeeOtherHostIfc

      `SeeOtherHostIfc.Phase`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected List<BareJID>` | `connectedNodes`

    - ### Fields inherited from class tigase.server.xmppclient.SeeOtherHost

      `defaultHost, eventBus, REDIRECTION_ENABLED, vHostManager`

    - ### Fields inherited from interface tigase.server.xmppclient.SeeOtherHostIfc

      `CM_SEE_OTHER_HOST_ACTIVE, CM_SEE_OTHER_HOST_CLASS_PROP_DEF_VAL, CM_SEE_OTHER_HOST_CLASS_PROP_DEF_VAL_CLUSTER, CM_SEE_OTHER_HOST_CLASS_PROP_KEY, CM_SEE_OTHER_HOST_CLASS_PROPERTY, CM_SEE_OTHER_HOST_DEFAULT_HOST, CM_SEE_OTHER_HOST_DEFAULT_PORT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SeeOtherHostHashed()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `BareJID` | `findHostForJID(BareJID jid, BareJID host)` Finds an appropriate host for a given JID
    `protected void` | `nodeShutdown(ShutdownEvent event)`
    `void` | `setNodes(List<JID> connectedNodes)` Sets list of available nodes in cluster environment

    - ### Methods inherited from class tigase.server.xmppclient.SeeOtherHost

      `initialize, isEnabled, isNodeShutdown, setDefaultHost, start, stop`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface tigase.server.xmppclient.SeeOtherHostIfc

      `getStreamError, isRedirectionRequired`

- - ### Field Detail

    - #### connectedNodes

          protected List<BareJID> connectedNodes

  - ### Constructor Detail

    - #### SeeOtherHostHashed

          public SeeOtherHostHashed()

  - ### Method Detail

    - #### findHostForJID

          public BareJID findHostForJID(BareJID jid,
                                        BareJID host)

      Description copied from interface: `SeeOtherHostIfc`
      Finds an appropriate host for a given JID
      Specified by:
        `findHostForJID` in interface `SeeOtherHostIfc`
      Overrides:
        `findHostForJID` in class `SeeOtherHost`
      Parameters:
        `jid` - is a user JID extracted from the stream open attributes
        `host` - is "this" host to which the user is now connected and which calls the method
      Returns:
        BareJID of possible host to which the user should connect or NULL

    - #### setNodes

          public void setNodes(List<JID> connectedNodes)

      Description copied from interface: `SeeOtherHostIfc`
      Sets list of available nodes in cluster environment
      Specified by:
        `setNodes` in interface `SeeOtherHostIfc`
      Overrides:
        `setNodes` in class `SeeOtherHost`
      Parameters:
        `connectedNodes` - current list of nodes

    - #### nodeShutdown

          protected void nodeShutdown(ShutdownEvent event)

      Overrides:
        `nodeShutdown` in class `SeeOtherHost`

Copyright © 2004–2020 "Tigase, Inc.". All rights reserved.