View Javadoc

1   package com.loribel.commons.abstraction;
2   
3   /***
4    * Abstraction to represent a hierarchy.
5    * See {@link GB_SimpleNode} for details...
6    *
7    * @author Grégory Borelli
8    */
9   public interface GB_SimpleNodeSet
10          extends
11              GB_SimpleNode
12  {
13      /***
14       * Set the labelIcon.
15       *
16       * @param a_labelIcon GB_LabelIcon -
17       */
18      void setLabelIcon(
19              GB_LabelIcon a_labelIcon);
20  
21      /***
22       * Set the value of this node.
23       *
24       * @param a_value Object -
25       */
26      void setValue(
27              Object a_value);
28  
29      /***
30       * Add a Child to the this node.
31       *
32       * @param a_child GB_SimpleNode -
33       *
34       * @return boolean
35       */
36      boolean addChild(
37              GB_SimpleNode a_child);
38  
39      /***
40       * Add an array of child to this node.
41       *
42       * @param a_childArray GB_SimpleNode[] -
43       */
44      void addAllChild(
45              GB_SimpleNode[] a_childArray);
46  
47      /***
48       * Remove a child.
49       *
50       * @param a_child GB_SimpleNode -
51       *
52       * @return boolean
53       */
54      boolean removeChild(
55              GB_SimpleNode a_child);
56  
57      /***
58       * Remove all children to this node.
59       */
60      void removeAllChild();
61  
62  }