Example #1
0
        // Configuration methods
        private CsvMetricOutputConfig BindConfiguration(IConfiguration configuration)
        {
            // TODO: [TESTS] (CsvMetricOutput.BindConfiguration) Add tests
            var boundConfig = new CsvMetricOutputConfig();
            var section     = configuration.GetSection(ConfigKey);

            if (!section.Exists())
            {
                _logger.Warning("Unable to find config '{s}' - using defaults", ConfigKey);
                return(boundConfig);
            }

            section.Bind(boundConfig);
            return(boundConfig);
        }
Example #2
0
        public CsvMetricOutput(
            ILoggerAdapter <CsvMetricOutput> logger,
            IDirectoryAbstraction directory,
            IEnvironmentAbstraction environment,
            IDateTimeAbstraction dateTime,
            IPathAbstraction path,
            IFileAbstraction file,
            IConfiguration configuration)
        {
            // TODO: [TESTS] (CsvMetricOutput) Add tests
            _logger      = logger;
            _directory   = directory;
            _environment = environment;
            _dateTime    = dateTime;
            _path        = path;
            _file        = file;
            _config      = BindConfiguration(configuration);

            Name    = nameof(CsvMetricOutput);
            Enabled = _config.Enabled;

            ProcessConfig();
        }