Package tigase.sys

# Interface OnlineJidsReporter

All Known Subinterfaces:
  `ClusteringStrategyIfc<E>`

All Known Implementing Classes:
  `DefaultClusteringStrategy`, `DefaultClusteringStrategyAbstract`, `SessionManager`, `SessionManagerClustered`, `SMNonCachingAllNodes`

public interface OnlineJidsReporter
Created: Apr 19, 2009 12:15:07 AM

Author:
  Artur Hefczyc

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `containsJid(BareJID jid)`
  The method checks whether the given JID is known to the installation, either user connected to local machine or any of the cluster nodes.
  `boolean`
  `containsJidLocally(BareJID jid)`
  The method checks whether the given JID is known to local cluster node as connected user.
  `boolean`
  `containsJidLocally(JID jid)`
  The method checks whether the given JID is known to local cluster node as connected user.
  `JID[]`
  `getConnectionIdsForJid(BareJID jid)`
  Retrieve all connection IDs (CIDs) for the given user.
  `boolean`
  `hasCompleteJidsInfo()`
  Method checks whether the clustering strategy has a complete JIDs info.

- ## Method Details

  - ### hasCompleteJidsInfo

    boolean hasCompleteJidsInfo()
    Method checks whether the clustering strategy has a complete JIDs info. That is whether the strategy knows about all users connected to all nodes. Some strategies may choose not to share this information among nodes, hence the methods returns false. Other may synchronize this information and can provide it to further optimize cluster traffic.
    Returns:
      a true boolean value if the strategy has a complete information about all users connected to all cluster nodes.

  - ### containsJid

    boolean containsJid(BareJID jid)
    The method checks whether the given JID is known to the installation, either user connected to local machine or any of the cluster nodes. False result does not mean the user is not connected. It means the method does not know anything about the JID. Some clustering strategies may not cache online users information.
    Parameters:
      `jid` - a user's JID for whom we query information.
    Returns:
      true if the user is known as online to the installation, false if the method does not know.

  - ### containsJidLocally

    boolean containsJidLocally(BareJID jid)
    The method checks whether the given JID is known to local cluster node as connected user. False result means that given JID is not connected to local cluster node but it may be connected to other cluster node. Result of this method should be independent of used clustering strategy.
    Parameters:
      `jid` - a user's JID for whom we query information
    Returns:
      true if user is known as connected to local cluster node, false if it is not connected to local node

  - ### containsJidLocally

    boolean containsJidLocally(JID jid)
    The method checks whether the given JID is known to local cluster node as connected user. False result means that given JID is not connected to local cluster node but it may be connected to other cluster node. Result of this method should be independent of used clustering strategy.
    Parameters:
      `jid` - a user's JID for whom we query information
    Returns:
      true if user is known as connected to local cluster node, false if it is not connected to local node

  - ### getConnectionIdsForJid

    JID[] getConnectionIdsForJid(BareJID jid)
    Retrieve all connection IDs (CIDs) for the given user.
    Parameters:
      `jid` - id of the user for which we want to retrieve the list.
    Returns:
      an array of `JID` containing all Connection IDs (CIDs) for the given user.