public FilesAnonymizerForJsonFormatResource( string configFilePath, string inputFolder, string outputFolder, AnonymizationToolOptions options) { _inputFolder = inputFolder; _outputFolder = outputFolder; _configFilePath = configFilePath; _options = options; AnonymizerEngine.InitializeFhirPathExtensionSymbols(); }
internal static async Task AnonymizeAsync(Options options) { try { InitializeAnonymizerLogging(options.IsVerbose); if (IsSameDirectory(options.InputFolder, options.OutputFolder)) { throw new Exception("Input and output folders are the same! Please choose another folder."); } Directory.CreateDirectory(options.OutputFolder); string inputFolder = options.InputFolder; string outputFolder = options.OutputFolder; string configFilePath = options.ConfigurationFilePath; AnonymizationToolOptions toolOptions = new AnonymizationToolOptions() { IsRecursive = options.IsRecursive, SkipExistedFile = options.SkipExistedFile, ValidateInput = options.ValidateInput, ValidateOutput = options.ValidateOutput }; if (options.IsBulkData) { await new FilesAnonymizerForNdJsonFormatResource(configFilePath, inputFolder, outputFolder, toolOptions).AnonymizeAsync().ConfigureAwait(false); } else { await new FilesAnonymizerForJsonFormatResource(configFilePath, inputFolder, outputFolder, toolOptions).AnonymizeAsync().ConfigureAwait(false); } Console.WriteLine($"Finished processing '{inputFolder}'!"); } finally { DisposeAnonymizerLogging(); } }