Beispiel #1
0
        private IEnumerable ChildrenGetter(object model)
        {
            if (model is string)
            {
                foreach (object o in Categories[(string)model])
                {
                    yield return(o);
                }
            }

            IExtractDatasetCommand ds = model as IExtractDatasetCommand;

            if (ds != null)
            {
                yield return(ds.DatasetBundle.DataSet);

                foreach (SupportingDocument o in ds.DatasetBundle.Documents)
                {
                    yield return(o);
                }

                foreach (SupportingSQLTable o in ds.DatasetBundle.SupportingSQL)
                {
                    yield return(o);
                }

                foreach (IBundledLookupTable o in ds.DatasetBundle.LookupTables)
                {
                    yield return(o);
                }
            }
        }
        public IEnumerable <object> GetAllChangedObjects(IExtractDatasetCommand cmd)
        {
            if (CommandStates[cmd] != cmd.State)
            {
                yield return(cmd);
            }

            foreach (var substate in cmd.DatasetBundle.States.ToArray())
            {
                if (CommandSubStates[cmd][substate.Key] != substate.Value)
                {
                    yield return(substate.Key);
                }
            }
        }
        public void SaveState(IExtractDatasetCommand cmd)
        {
            CommandStates[cmd] = cmd.State;

            var toUpdateSubstates = CommandSubStates[cmd];

            foreach (KeyValuePair <object, ExtractCommandState> substate in cmd.DatasetBundle.States.ToArray())
            {
                if (!toUpdateSubstates.ContainsKey(substate.Key))
                {
                    toUpdateSubstates.Add(substate.Key, substate.Value);
                }

                toUpdateSubstates[substate.Key] = substate.Value;
            }
        }
 public void Add(IExtractDatasetCommand cmd)
 {
     CommandStates.Add(cmd, cmd.State);
     CommandSubStates.Add(cmd, cmd.DatasetBundle.States);
 }
Beispiel #5
0
 public void PreInitialize(IExtractCommand value, IDataLoadEventListener listener)
 {
     _extractCommand = value as IExtractDatasetCommand;
 }