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); }
public void PreInitialize(IExtractCommand value, IDataLoadEventListener listener) { _extractCommand = value as IExtractDatasetCommand; }