示例#1
0
        void ConfigurateETL()
        {
            string         path           = AppDomain.CurrentDomain.BaseDirectory;
            OptionsManager optionsManager = new OptionsManager(path);

            etlOptions = optionsManager.GetOptions <EtlOptions>() as EtlOptions;

            Directory.CreateDirectory(etlOptions.DirectoryOptions.SourceDirectory);
            Directory.CreateDirectory(etlOptions.DirectoryOptions.TargetDirectory);

            sourceWatcher        = new FileSystemWatcher(etlOptions.DirectoryOptions.SourceDirectory);
            sourceWatcher.Filter = "*.txt";
            sourceWatcher.EnableRaisingEvents   = true;
            sourceWatcher.IncludeSubdirectories = true;
            sourceWatcher.Created            += SourceWatcher_Created;
            sourceWatcher.EnableRaisingEvents = true;

            logger = new Logger(etlOptions.LoggingOptions);
            Thread loggerThread = new Thread(new ThreadStart(logger.Start));

            loggerThread.Start();
            logger.Log($"Domain directory: {path}");
            logger.Log(optionsManager.log);
            logger.Log($"Source Directory: {etlOptions.DirectoryOptions.SourceDirectory}");
            logger.Log($"Encryption Enabled: {etlOptions.EncryptionOptions.EncryptionEnabled}");
            logger.Log($"Compression Enabled: {etlOptions.ArchiveOptions.CompressionEnabled}");
        }
示例#2
0
 public Logger()                                                                                                               
 {
     var optionsManager = new OptionsManager(AppDomain.CurrentDomain.BaseDirectory);
     configOptions = optionsManager.GetOptions<Options>();
     path = configOptions.PathToDirectory.SourceDirectory;
     watcher = new FileSystemWatcher(path);
     watcher.NotifyFilter = NotifyFilters.LastAccess
         | NotifyFilters.LastWrite
         | NotifyFilters.FileName
         | NotifyFilters.DirectoryName;
     watcher.Filter = "*.txt";
     watcher.Created += Watcher_Created;
 }