3using Microsoft.Extensions.Logging;
4using Microsoft.Extensions.Options;
41 ILoggerFactory loggerFactory,
45 IOptions<GeneralConfiguration> generalConfigurationOptions)
51 generalConfigurationOptions)
53 LinkFactory = symlinkFactory ??
throw new ArgumentNullException(nameof(symlinkFactory));
66 Api.Models.Instance instance,
70 sessionControllerFactory,
78 remoteDeploymentManagerFactory,
84 settings.AutoStart ??
throw new ArgumentNullException(nameof(settings)));
Configurable settings for DreamDaemon.
IJobManager JobManager
The IJobManager for the WatchdogFactory.
IServerControl ServerControl
The IServerControl for the WatchdogFactory.
ILoggerFactory LoggerFactory
The ILoggerFactory for the WatchdogFactory.
IWatchdogFactory for creating AdvancedWatchdogs.
IFilesystemLinkFactory LinkFactory
The IFilesystemLinkFactory for the WindowsWatchdogFactory.
override IWatchdog CreateWatchdog(IChatManager chat, IDmbFactory dmbFactory, ISessionPersistor sessionPersistor, ISessionControllerFactory sessionControllerFactory, IIOManager gameIOManager, IIOManager diagnosticsIOManager, IEventConsumer eventConsumer, IRemoteDeploymentManagerFactory remoteDeploymentManagerFactory, Api.Models.Instance instance, DreamDaemonSettings settings)
Creates a IWatchdog.A new IWatchdog.
WindowsWatchdogFactory(IServerControl serverControl, ILoggerFactory loggerFactory, IJobManager jobManager, IAsyncDelayer asyncDelayer, IFilesystemLinkFactory symlinkFactory, IOptions< GeneralConfiguration > generalConfigurationOptions)
Initializes a new instance of the WindowsWatchdogFactory class.
A variant of the AdvancedWatchdog that works on Windows systems.
For managing connected chat services.
Factory for IDmbProviders.
Factory for creating IRemoteDeploymentManagers.
Consumes EventTypes and takes the appropriate actions.
Factory for ISessionControllers.
Handles saving and loading ReattachInformation.
Runs and monitors the twin server controllers.
Represents a service that may take an updated Host assembly and run it, stopping the current assembly...
For creating filesystem symbolic links.
Interface for using filesystems.
Manages the runtime of Jobs.
For waiting asynchronously.