public MonitoringJob(TargetRecord targetRecord, IProbe probe, ILogger <MonitoringJob> logger) { targetRecord.VerifyNotNull(nameof(targetRecord)) .VerifyAssert(x => !x.ReadyUrl.IsEmpty(), x => nameof(x.ReadyUrl)) .VerifyAssert(x => x.FrequencyInSeconds != null, x => nameof(x.FrequencyInSeconds)); probe.VerifyNotNull(nameof(probe)); logger.VerifyNotNull(nameof(logger)); _targetRecord = targetRecord; _probe = probe; _logger = logger; }