public ServerGroupStructureNode GetParent(IWorkGroupCondition condition)
        {
            ServerGroupStructureNode serverGroupStructureNode = null;

            if (this.Childs != null)
            {
                foreach (IWorkGroupCondition workGroupCondition in this.Childs)
                {
                    if (workGroupCondition.CompareTo(condition) == 0)
                    {
                        return(this);
                    }
                }
            }
            if (this._childNodes != null)
            {
                foreach (ServerGroupStructureNode serverGroupStructureNode2 in this._childNodes)
                {
                    serverGroupStructureNode = serverGroupStructureNode2.GetParent(condition);
                    if (serverGroupStructureNode != null)
                    {
                        break;
                    }
                }
            }
            return(serverGroupStructureNode);
        }
Beispiel #2
0
        public WorkGroupStructureNode GetParent(IWorkGroupCondition condition)
        {
            WorkGroupStructureNode workGroupStructureNode = null;

            if (this._childProcesses != null)
            {
                foreach (WorkGroupCondition workGroupCondition in this._childProcesses)
                {
                    if (workGroupCondition.CompareTo(condition) == 0)
                    {
                        return(this);
                    }
                }
            }
            if (this._childNodes != null)
            {
                foreach (WorkGroupStructureNode workGroupStructureNode2 in this._childNodes)
                {
                    workGroupStructureNode = workGroupStructureNode2.GetParent(condition);
                    if (workGroupStructureNode != null)
                    {
                        break;
                    }
                }
            }
            return(workGroupStructureNode);
        }
 public WorkGroupTreeNode(IWorkGroupStructureNode node, WorkGroup _parent) : base(node.Name)
 {
     this.Title        = node.Name;
     this.items        = new List <ClientProcessItem>();
     this.parent       = _parent;
     this.priority     = this.parent.GetNextPriority();
     this.naConditions = new HashSet <string>();
     if (node.IsLeafNode)
     {
         if (node.Childs != null)
         {
             IWorkGroupCondition[] childs = node.Childs;
             for (int i = 0; i < childs.Length; i++)
             {
                 IWorkGroupCondition condition = childs[i];
                 string key = condition.ToString();
                 this.parent[key] = this;
                 this.naConditions.Add(key);
             }
             return;
         }
     }
     else
     {
         IWorkGroupStructureNode[] childNodes = node.ChildNodes;
         for (int j = 0; j < childNodes.Length; j++)
         {
             IWorkGroupStructureNode childNode = childNodes[j];
             base.Nodes.Add(new WorkGroupTreeNode(childNode, this.parent));
         }
     }
 }