Class InoClientTreeNode<T extends de.mid.innovator.srv2api.impl.MarshallAble>

java.lang.Object
de.mid.innovator.client.InoClientTreeNode<T>
Type Parameters:
T - class of node
All Implemented Interfaces:
de.mid.innovator.srv2api.impl.MarshallAble, Iterable<InoClientTreeNode<T>>

public class InoClientTreeNode<T extends de.mid.innovator.srv2api.impl.MarshallAble> extends Object implements Iterable<InoClientTreeNode<T>>, de.mid.innovator.srv2api.impl.MarshallAble
A collection with the same characteristics as a tree used within the Innovator server request. A client tree can be navigated using the getUp() and getDown() methods, which either takes you to the next node or returns null. Every node can contain a T type value which can be queried using the getValue() method.
  • Constructor Details

    • InoClientTreeNode

      public InoClientTreeNode(Class<T> ndClass)
  • Method Details

    • getUp

      public InoClientTreeNode<T> getUp()
    • getDown

      public List<InoClientTreeNode<T>> getDown()
    • getValue

      public T getValue()
    • setValue

      public void setValue(T val)
    • resolveReference

      public void resolveReference(de.mid.innovator.srv2api.impl.SrvMemTelegram tel)
    • getFirstChild

      public InoClientTreeNode<T> getFirstChild()
    • getParentNode

      public InoClientTreeNode<T> getParentNode()
    • getNextSibling

      public InoClientTreeNode<T> getNextSibling()
    • isEmpty

      public boolean isEmpty()
      Tests if the current node is empty.
      Returns:
      true if either value is null or the node has no sons, otherwise false
    • iterator

      public Iterator<InoClientTreeNode<T>> iterator()
      Gets an overall iterator of a tree.
      Specified by:
      iterator in interface Iterable<T extends de.mid.innovator.srv2api.impl.MarshallAble>
      Returns:
      an iterator
    • walker

      public Iterator<InoClientTreeNode<T>> walker()
      Gets an overall iterator of a tree. Depth-first search
      Returns:
      an iterator
    • marshal

      public void marshal(de.mid.innovator.srv2api.impl.SrvMemTelegram tel)
      Specified by:
      marshal in interface de.mid.innovator.srv2api.impl.MarshallAble
    • resolveReferences

      public void resolveReferences(de.mid.innovator.srv2api.impl.SrvMemTelegram tel)
      Specified by:
      resolveReferences in interface de.mid.innovator.srv2api.impl.MarshallAble
    • unmarshal

      public void unmarshal(de.mid.innovator.srv2api.impl.SrvMemTelegram tel, SrvContext srvctx)
      Specified by:
      unmarshal in interface de.mid.innovator.srv2api.impl.MarshallAble