private void InitializeCustomProcessors(AnonymizerConfigurationManager configurationManager)
        {
            var processors = _customProcessorFactory.GetType().GetField("_customProcessors", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance).GetValue(_customProcessorFactory) as Dictionary <string, Type>;

            foreach (var processor in processors)
            {
                _processors[processor.Key.ToUpperInvariant()] = _customProcessorFactory.CreateProcessor(processor.Key, configurationManager.GetParameterConfiguration().CustomSettings);
            }
        }
Esempio n. 2
0
 private void InitializeProcessors(AnonymizerConfigurationManager configurationManager)
 {
     _processors[AnonymizerMethod.DateShift.ToString().ToUpperInvariant()]  = DateShiftProcessor.Create(configurationManager);
     _processors[AnonymizerMethod.Redact.ToString().ToUpperInvariant()]     = RedactProcessor.Create(configurationManager);
     _processors[AnonymizerMethod.CryptoHash.ToString().ToUpperInvariant()] = new CryptoHashProcessor(configurationManager.GetParameterConfiguration().CryptoHashKey);
     _processors[AnonymizerMethod.Encrypt.ToString().ToUpperInvariant()]    = new EncryptProcessor(configurationManager.GetParameterConfiguration().EncryptKey);
     _processors[AnonymizerMethod.Substitute.ToString().ToUpperInvariant()] = new SubstituteProcessor();
     _processors[AnonymizerMethod.Perturb.ToString().ToUpperInvariant()]    = new PerturbProcessor();
     _processors[AnonymizerMethod.Keep.ToString().ToUpperInvariant()]       = new KeepProcessor();
 }
        public AnonymizerEngine(AnonymizerConfigurationManager configurationManager)
        {
            _configurationManger = configurationManager;
            _processors          = new Dictionary <string, IAnonymizerProcessor>();

            InitializeProcessors(_configurationManger);

            _rules = _configurationManger.FhirPathRules;

            _logger.LogDebug("AnonymizerEngine initialized successfully");
        }
        public static AnonymizerEngine CreateWithFileContext(string configFilePath, string fileName, string inputFolderName, IAnonymizerProcessorFactory customProcessorFactory = null)
        {
            var configurationManager = AnonymizerConfigurationManager.CreateFromConfigurationFile(configFilePath);
            var dateShiftScope       = configurationManager.GetParameterConfiguration().DateShiftScope;
            var dateShiftKeyPrefix   = dateShiftScope switch
            {
                DateShiftScope.File => Path.GetFileName(fileName),
                DateShiftScope.Folder => Path.GetFileName(inputFolderName.TrimEnd('\\', '/')),
                _ => string.Empty
            };

            configurationManager.SetDateShiftKeyPrefix(dateShiftKeyPrefix);
            return(new AnonymizerEngine(configurationManager, customProcessorFactory));
        }
        public static AnonymizerEngine CreateWithFileContext(string configFilePath, string fileName, string inputFolderName)
        {
            var configurationManager = AnonymizerConfigurationManager.CreateFromConfigurationFile(configFilePath);
            var dateShiftScope       = configurationManager.GetParameterConfiguration().DateShiftScope;
            var dateShiftKeyPrefix   = string.Empty;

            if (dateShiftScope == DateShiftScope.File)
            {
                dateShiftKeyPrefix = Path.GetFileName(fileName);
            }
            else if (dateShiftScope == DateShiftScope.Folder)
            {
                dateShiftKeyPrefix = Path.GetFileName(inputFolderName.TrimEnd('\\', '/'));
            }

            configurationManager.SetDateShiftKeyPrefix(dateShiftKeyPrefix);
            return(new AnonymizerEngine(configurationManager));
        }
 public AnonymizerEngine(string configFilePath) : this(AnonymizerConfigurationManager.CreateFromConfigurationFile(configFilePath))
 {
 }
Esempio n. 7
0
 public DePseudonymizerEngine(AnonymizerConfigurationManager configurationManager) : base(configurationManager)
 {
     ClearProcessors();
 }
 public AnonymizerEngine(string configFilePath, IAnonymizerProcessorFactory customProcessorFactory = null) : this(AnonymizerConfigurationManager.CreateFromConfigurationFile(configFilePath), customProcessorFactory)
 {
 }