public SystemInformationProvider(ITimeProvider timeProvider, IMachineNameProvider machineNameProvider, ISystemPerformanceDataProvider systemPerformanceDataProvider, IHttpStatusCodeCheckResultProvider httpStatusCodeCheckResultProvider) { if (timeProvider == null) { throw new ArgumentNullException("timeProvider"); } if (machineNameProvider == null) { throw new ArgumentNullException("machineNameProvider"); } if (systemPerformanceDataProvider == null) { throw new ArgumentNullException("systemPerformanceDataProvider"); } if (httpStatusCodeCheckResultProvider == null) { throw new ArgumentNullException("httpStatusCodeCheckResultProvider"); } this.timeProvider = timeProvider; this.machineNameProvider = machineNameProvider; this.systemPerformanceDataProvider = systemPerformanceDataProvider; this.httpStatusCodeCheckResultProvider = httpStatusCodeCheckResultProvider; }