public virtual void Configure(ConfigParams config) { _configParams = config; Enabled = config.GetAsBooleanWithDefault("parameters.enabled", true); TimerInterval = config.GetAsNullableInteger("parameters.timer_interval") ?? DefaultTimerInterval; DelayInterval = config.GetAsNullableInteger("parameters.delay_interval") ?? DefaultDelayInterval; MinimumThroughput = config.GetAsNullableInteger("parameters.minimum_throughput") ?? DefaultMinimumThroughput; MaximumThroughput = config.GetAsNullableInteger("parameters.maximum_throughput") ?? DefaultMaximumThroughput; GrowthRate = config.GetAsNullableDouble("parameters.growth_rate") ?? DefaultGrowthRate; ResourceGroup = config.GetAsString("parameters.resource_group"); ConnectionUri = config.GetAsString("parameters.connection_uri"); }
public virtual void Configure(ConfigParams config) { Enabled = config.GetAsBooleanWithDefault("parameters.enabled", true); TimerInterval = config.GetAsNullableInteger("parameters.timer_interval") ?? DefaultTimerInterval; DelayInterval = config.GetAsNullableInteger("parameters.delay_interval") ?? DefaultDelayInterval; MinimumThroughput = config.GetAsNullableInteger("parameters.minimum_throughput") ?? DefaultMinimumThroughput; MaximumThroughput = config.GetAsNullableInteger("parameters.maximum_throughput") ?? DefaultMaximumThroughput; GrowthRate = config.GetAsNullableDouble("parameters.growth_rate") ?? DefaultGrowthRate; ResourceGroup = config.GetAsString("parameters.resource_group"); ConnectionUri = config.GetAsString("parameters.connection_uri"); var mongoDbConnectionUrl = new MongoUrlBuilder(ConnectionUri); AccountName = mongoDbConnectionUrl.Username; AccessKey = mongoDbConnectionUrl.Password; DatabaseName = mongoDbConnectionUrl.DatabaseName; _timer = new FixedRateTimer(PerformMonitorAsync, TimerInterval, DelayInterval); }