/// <summary> /// Default constructor with injected items /// </summary> /// <param name="log">The logger for the app</param> /// <param name="coordinator">Singleton for the coordinator</param> public MetricMonitor(ILogger<MetricMonitor> log, IAppMonitorCoordinator coordinator, IAppMonitorConfig config) { this.log = log; this.coordinator = coordinator; this.config = config; }
/// <summary> /// Default constructor with the App Monitor Core injected into it /// </summary> public AppMonitorHub(IAppMonitorCoordinator coordinator) { this.coordinator = coordinator; this.coordinator.RegisteredHub = this; // Register this hub with the coordinator }
/// <summary> /// Default constructor to allow dependency injection of coordinator and logging /// </summary> /// <param name="coordinator">Singleton for the coordinator</param> /// <param name="config">Singleton for the configuration that was defined in startup</param> public APIMiddleware(IAppMonitorCoordinator coordinator, IAppMonitorConfig config) { this.coordinator = coordinator; this.config = config; }