Ejemplo n.º 1
0
        private void SaveValue(Task task)
        {
            if (task == null)
            {
                return;
            }
            FieldInfo[] publicFields = TaskUtility.GetPublicFields(task.GetType());
            Dictionary <string, object> dictionary = new Dictionary <string, object>();
            int i = 0;

            while (i < publicFields.Length)
            {
                object value = publicFields[i].GetValue(task);
                if (!(value is SharedVariable))
                {
                    goto IL_5A;
                }
                SharedVariable sharedVariable = value as SharedVariable;
                if (!sharedVariable.IsGlobal && !sharedVariable.IsShared)
                {
                    goto IL_5A;
                }
IL_71:
                i++;
                continue;
IL_5A:
                dictionary.Add(publicFields[i].Name, publicFields[i].GetValue(task));
                goto IL_71;
            }
            this.defaultValues.Add(dictionary);
            if (task is ParentTask)
            {
                ParentTask parentTask = task as ParentTask;
                if (parentTask.Children != null)
                {
                    for (int j = 0; j < parentTask.Children.Count; j++)
                    {
                        this.SaveValue(parentTask.Children[j]);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        private void SaveValue(Task task)
        {
            if (task == null)
            {
                return;
            }
            FieldInfo[] publicFields = TaskUtility.GetPublicFields(task.GetType());
            Dictionary <string, object> dictionary = new Dictionary <string, object>();

            for (int index = 0; index < publicFields.Length; ++index)
            {
                object obj = publicFields[index].GetValue((object)task);
                if (obj is SharedVariable)
                {
                    SharedVariable sharedVariable = obj as SharedVariable;
                    if (sharedVariable.IsGlobal || sharedVariable.IsShared)
                    {
                        continue;
                    }
                }
                dictionary.Add(publicFields[index].Name, publicFields[index].GetValue((object)task));
            }
            this.defaultValues.Add(task, dictionary);
            if (!(task is ParentTask))
            {
                return;
            }
            ParentTask parentTask = task as ParentTask;

            if (parentTask.Children == null)
            {
                return;
            }
            for (int index = 0; index < parentTask.Children.Count; ++index)
            {
                this.SaveValue(parentTask.Children[index]);
            }
        }