public static void ProcessMergeTables(DAL master, IEnumerable <ComponentFile> components, IEnumerable <MergeTableCommandBuilder> commandBuilders, CancellationToken cancellation, IProgress <int> progress, IMergeLog log) { log?.StartJob(); master.BeginTransaction(); try { foreach (MergeTableCommandBuilder cmdBldr in commandBuilders) { cancellation.ThrowIfCancellationRequested(); ProcessMergeTable(master, cmdBldr, components, log); } master.CommitTransaction(); log?.EndJob(); } catch { master.RollbackTransaction(); throw; } }
public static void PopulateMergeTables( DAL master, IEnumerable <ComponentFile> components, IEnumerable <MergeTableCommandBuilder> commandBuilders, CancellationToken cancellation, IProgress <int> progress, IMergeLog log) { log?.StartJob(); foreach (var comp in components) { PopulateMergeTables(master, comp, commandBuilders, cancellation, progress, log); } log?.EndJob(); }