public static TResult RunCheckpoint <TInput, TResult>(this ICheckpointRunner runner, string name, Func <TInput, IDirectoryLocation, TResult> run, TInput input, ILoadingConvention <TInput, TResult> loadingConvention) { return(runner.RunCheckpoint(name, (dir, mover) => { var result = run(input, dir); loadingConvention.Move(result, mover.Move); return loadingConvention.Load(input); }, () => loadingConvention.Load(input))); }
public SampleSet <T> Load(SampleSet <TIn> input) { var set = new SampleSet <T>(); foreach (var sample in input) { IFileLocation stub = _convention(sample.Key); ILoadingConvention <TIn, T> namingConvention = _loadingConventionGenerator(stub); T output = namingConvention.Load(sample.Value); set.Add(sample.Key, output); } return(set); }
public Task <TResult> Load(TInput input) { return(Task.Run(() => _loadingConvention.Load(input))); }