tigase.cluster.api

## Class ClusterElement

- java.lang.Object
- - tigase.cluster.api.ClusterElement

-     public class ClusterElement
      extends Object

  Class ClusterElement is a utility class for handling tigase cluster specific packets. The cluster packet has the following form: `<cluster xmlns="tigase:cluster" from="source" to="dest" type="set"> <data> <message xmlns="jabber:client" from="source-u" to="dest-x" type="chat"> <body>Hello world!</body> </message> </data> <control> <first-node>node1 JID address</first-node> <visited-nodes> <node-id>node1 JID address</node-id> <node-id>node2 JID address</node-id> </visited-nodes> <method-call name="method name"> <par name="param1 name">value</par> <par name="param2 name">value</par> <results> <val name="val1 name">value</var> <val name="val2 name">value</var> </results> </method-call> </control> </cluster>` If none of nodes could process the packet it goes back to the first node as this node is the most likely to process the packet correctly. Created: Fri May 2 09:40:40 2008
  Version:
    $Rev$
  Author:
    Artur Hefczyc

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `CLUSTER_CONTROL_EL_NAME` Field description
    `static String[]` | `CLUSTER_CONTROL_PATH` Field description
    `static String` | `CLUSTER_DATA_EL_NAME` Field description
    `static String[]` | `CLUSTER_DATA_PATH` Field description
    `static String` | `CLUSTER_EL_NAME` Field description
    `static String` | `CLUSTER_METHOD_EL_NAME` Field description
    `static String` | `CLUSTER_METHOD_PAR_EL_NAME` Field description
    `static String[]` | `CLUSTER_METHOD_PATH` Field description
    `static String` | `CLUSTER_METHOD_RESULTS_EL_NAME` Field description
    `static String[]` | `CLUSTER_METHOD_RESULTS_PATH` Field description
    `static String` | `CLUSTER_METHOD_RESULTS_VAL_EL_NAME` Field description
    `static String` | `CLUSTER_NAME_ATTR` Field description
    `static String` | `FIRST_NODE_EL_NAME` Field description
    `static String[]` | `FIRST_NODE_PATH` Field description
    `static String` | `NODE_ID_EL_NAME` Field description
    `static String` | `VISITED_NODES_EL_NAME` Field description
    `static String[]` | `VISITED_NODES_PATH` Field description
    `static String` | `XMLNS` Field description

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ClusterElement(Element elem)` Creates a new `ClusterElement` instance.
    `ClusterElement(JID from, JID to, StanzaType type, Packet packet)` Constructs ...

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDataPacket(Element packet)` Method description
    `void` | `addDataPacket(Packet packet)` Method description
    `void` | `addDataPackets(Queue<Element> packets)` Method description
    `void` | `addMethodResult(String key, String val)` Method description
    `void` | `addVisitedNode(JID node_id)` Method description
    `void` | `addVisitedNodes(Set<JID> nodes)` Method description
    `static Element` | `clusterElement(JID from, JID to, StanzaType type)` Method description
    `static Element` | `createClusterElement(JID from, JID to, StanzaType type, String packet_from)` Method description
    `static ClusterElement` | `createClusterMethodCall(JID from, JID to, StanzaType type, String method_name, Map<String,String> params)` Method description
    `static ClusterElement` | `createForNextNode(ClusterElement clel, List<JID> cluster_nodes, JID comp_id)` Method description
    `ClusterElement` | `createMethodResponse(JID from, JID to, StanzaType type, Map<String,String> results)` Method description
    `ClusterElement` | `createMethodResponse(JID from, StanzaType type, Map<String,String> results)` Method description
    `Map<String,String>` | `getAllMethodParams()` Method description
    `Map<String,String>` | `getAllMethodResults()` Method description
    `Element` | `getClusterElement(String id)` Method description
    `Queue<Element>` | `getDataPackets()` Method description
    `JID` | `getFirstNode()` Method description
    `String` | `getMethodName()` Method description
    `String` | `getMethodParam(String par_name)` Method description
    `long` | `getMethodParam(String par_name, long def)` Method description
    `String` | `getMethodResultVal(String val_name)` Method description
    `long` | `getMethodResultVal(String val_name, long def)` Method description
    `Priority` | `getPriority()`
    `Set<JID>` | `getVisitedNodes()` Method description
    `boolean` | `isVisitedNode(JID node_id)` Method description
    `ClusterElement` | `nextClusterNode(JID node_id)` Method description
    `protected void` | `parseMethodCall(Element method_call)` Method description
    `void` | `setPriority(Priority priority)`

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

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

- - ### Field Detail

    - #### CLUSTER_CONTROL_EL_NAME

          public static final String CLUSTER_CONTROL_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_DATA_EL_NAME

          public static final String CLUSTER_DATA_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_EL_NAME

          public static final String CLUSTER_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_METHOD_EL_NAME

          public static final String CLUSTER_METHOD_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_METHOD_PAR_EL_NAME

          public static final String CLUSTER_METHOD_PAR_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_METHOD_RESULTS_EL_NAME

          public static final String CLUSTER_METHOD_RESULTS_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_METHOD_RESULTS_VAL_EL_NAME

          public static final String CLUSTER_METHOD_RESULTS_VAL_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### CLUSTER_NAME_ATTR

          public static final String CLUSTER_NAME_ATTR

      Field description
      See Also:
        Constant Field Values

    - #### FIRST_NODE_EL_NAME

          public static final String FIRST_NODE_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### NODE_ID_EL_NAME

          public static final String NODE_ID_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### VISITED_NODES_EL_NAME

          public static final String VISITED_NODES_EL_NAME

      Field description
      See Also:
        Constant Field Values

    - #### XMLNS

          public static final String XMLNS

      Field description
      See Also:
        Constant Field Values

    - #### VISITED_NODES_PATH

          public static final String[] VISITED_NODES_PATH

      Field description

    - #### FIRST_NODE_PATH

          public static final String[] FIRST_NODE_PATH

      Field description

    - #### CLUSTER_METHOD_RESULTS_PATH

          public static final String[] CLUSTER_METHOD_RESULTS_PATH

      Field description

    - #### CLUSTER_METHOD_PATH

          public static final String[] CLUSTER_METHOD_PATH

      Field description

    - #### CLUSTER_DATA_PATH

          public static final String[] CLUSTER_DATA_PATH

      Field description

    - #### CLUSTER_CONTROL_PATH

          public static final String[] CLUSTER_CONTROL_PATH

      Field description

  - ### Constructor Detail

    - #### ClusterElement

          public ClusterElement(Element elem)

      Creates a new `ClusterElement` instance.
      Parameters:
        `elem` -

    - #### ClusterElement

          public ClusterElement(JID from,
                                JID to,
                                StanzaType type,
                                Packet packet)

      Constructs ...
      Parameters:
        `from` -
        `to` -
        `type` -
        `packet` -

  - ### Method Detail

    - #### clusterElement

          public static Element clusterElement(JID from,
                                               JID to,
                                               StanzaType type)

      Method description
      Parameters:
        `from` -
        `to` -
        `type` -

    - #### createClusterElement

          public static Element createClusterElement(JID from,
                                                     JID to,
                                                     StanzaType type,
                                                     String packet_from)

      Method description
      Parameters:
        `from` -
        `to` -
        `type` -
        `packet_from` -

    - #### createClusterMethodCall

          public static ClusterElement createClusterMethodCall(JID from,
                                                               JID to,
                                                               StanzaType type,
                                                               String method_name,
                                                               Map<String,String> params)

      Method description
      Parameters:
        `from` -
        `to` -
        `type` -
        `method_name` -
        `params` -

    - #### createForNextNode

          public static ClusterElement createForNextNode(ClusterElement clel,
                                                         List<JID> cluster_nodes,
                                                         JID comp_id)

      Method description
      Parameters:
        `clel` -
        `cluster_nodes` -
        `comp_id` -

    - #### addDataPacket

          public void addDataPacket(Packet packet)

      Method description
      Parameters:
        `packet` -

    - #### addDataPacket

          public void addDataPacket(Element packet)

      Method description
      Parameters:
        `packet` -

    - #### addDataPackets

          public void addDataPackets(Queue<Element> packets)

      Method description
      Parameters:
        `packets` -

    - #### addMethodResult

          public void addMethodResult(String key,
                                      String val)

      Method description
      Parameters:
        `key` -
        `val` -

    - #### addVisitedNode

          public void addVisitedNode(JID node_id)

      Method description
      Parameters:
        `node_id` -

    - #### addVisitedNodes

          public void addVisitedNodes(Set<JID> nodes)

      Method description
      Parameters:
        `nodes` -

    - #### createMethodResponse

          public ClusterElement createMethodResponse(JID from,
                                                     StanzaType type,
                                                     Map<String,String> results)

      Method description
      Parameters:
        `from` -
        `type` -
        `results` -

    - #### createMethodResponse

          public ClusterElement createMethodResponse(JID from,
                                                     JID to,
                                                     StanzaType type,
                                                     Map<String,String> results)

      Method description
      Parameters:
        `from` -
        `to` -
        `type` -
        `results` -

    - #### getAllMethodParams

          public Map<String,String> getAllMethodParams()

      Method description

    - #### getAllMethodResults

          public Map<String,String> getAllMethodResults()

      Method description

    - #### getClusterElement

          public Element getClusterElement(String id)

      Method description
      Parameters:
        `id` -

    - #### getDataPackets

          public Queue<Element> getDataPackets()

      Method description

    - #### getFirstNode

          public JID getFirstNode()

      Method description

    - #### getMethodName

          public String getMethodName()

      Method description

    - #### getMethodParam

          public String getMethodParam(String par_name)

      Method description
      Parameters:
        `par_name` -

    - #### getMethodParam

          public long getMethodParam(String par_name,
                                     long def)

      Method description
      Parameters:
        `par_name` -
        `def` -

    - #### getMethodResultVal

          public String getMethodResultVal(String val_name)

      Method description
      Parameters:
        `val_name` -

    - #### getMethodResultVal

          public long getMethodResultVal(String val_name,
                                         long def)

      Method description
      Parameters:
        `val_name` -
        `def` -

    - #### getPriority

          public Priority getPriority()

    - #### getVisitedNodes

          public Set<JID> getVisitedNodes()

      Method description

    - #### isVisitedNode

          public boolean isVisitedNode(JID node_id)

      Method description
      Parameters:
        `node_id` -

    - #### setPriority

          public void setPriority(Priority priority)

    - #### nextClusterNode

          public ClusterElement nextClusterNode(JID node_id)

      Method description
      Parameters:
        `node_id` -

    - #### parseMethodCall

          protected void parseMethodCall(Element method_call)

      Method description
      Parameters:
        `method_call` -

Copyright © 2022 "Tigase, Inc.". All rights reserved.