public void Extract(SourceFileItem item, DefaultMultiTaskReporter asyn) { if (Context == null) { return; } Context.UnsafeSource = item; DataPumpControllableExecutionContext contextEx = Context as DataPumpControllableExecutionContext; if (contextEx != null) { contextEx.Reporter = asyn; } DataPump.Execute(Context); }
public void Init(Pump pump, IEnumerable <ExtractItem> extractItems, String rootSavePath, DefaultMultiTaskReporter asyn) { DataPump = pump.GetDataPump(); Context = DataPump.CreateContext(pump, rootSavePath, null, null, asyn); }
/// <summary> /// 创建执行上下文。 /// </summary> /// <param name="dataPump">数据泵。</param> /// <param name="metaData">元数据。</param> /// <param name="rootSavePath">保存路径。</param> /// <param name="source">数据源。</param> /// <param name="extractItems">提取项列表。</param> /// <param name="asyn">异步通知器。</param> /// <returns>执行上下文。</returns> internal static DataPumpExecutionContext CreateContext(this DataPumpBase dataPump, Pump metaData, String rootSavePath, SourceFileItem source, IEnumerable <ExtractItem> extractItems, DefaultMultiTaskReporter asyn = null) { DataPumpExecutionContext context = dataPump.CreateContext(source); context.ExtractItems = extractItems; DataPumpControllableExecutionContext contextEx = context as DataPumpControllableExecutionContext; if (contextEx != null) { contextEx.Reporter = asyn; } return(contextEx); }