tgstation-server 5.12.7
The /tg/station 13 server suite
Loading...
Searching...
No Matches
PostSetupServices.cs
Go to the documentation of this file.
1using System;
2
3using Microsoft.Extensions.Logging;
4using Microsoft.Extensions.Options;
5
8
10{
12 sealed class PostSetupServices<TLoggerType> : IPostSetupServices<TLoggerType>
13 {
16
19
22
25
28
30 public ILogger<TLoggerType> Logger { get; }
31
34
38 readonly IOptions<GeneralConfiguration> generalConfigurationOptions;
39
43 readonly IOptions<DatabaseConfiguration> databaseConfigurationOptions;
44
48 readonly IOptions<SecurityConfiguration> securityConfigurationOptions;
49
53 readonly IOptions<FileLoggingConfiguration> fileLoggingConfigurationOptions;
54
58 readonly IOptions<ElasticsearchConfiguration> elasticsearchConfigurationOptions;
59
71 IPlatformIdentifier platformIdentifier,
72 ILoggerFactory loggerFactory,
73 IOptions<GeneralConfiguration> generalConfigurationOptions,
74 IOptions<DatabaseConfiguration> databaseConfigurationOptions,
75 IOptions<SecurityConfiguration> securityConfigurationOptions,
76 IOptions<FileLoggingConfiguration> fileLoggingConfigurationOptions,
77 IOptions<ElasticsearchConfiguration> elasticsearchConfigurationOptions)
78 {
79 PlatformIdentifier = platformIdentifier ?? throw new ArgumentNullException(nameof(platformIdentifier));
80 ArgumentNullException.ThrowIfNull(loggerFactory);
81
82 Logger = loggerFactory.CreateLogger<TLoggerType>();
83 this.generalConfigurationOptions = generalConfigurationOptions ?? throw new ArgumentNullException(nameof(generalConfigurationOptions));
84 this.databaseConfigurationOptions = databaseConfigurationOptions ?? throw new ArgumentNullException(nameof(databaseConfigurationOptions));
85 this.securityConfigurationOptions = securityConfigurationOptions ?? throw new ArgumentNullException(nameof(securityConfigurationOptions));
86 this.fileLoggingConfigurationOptions = fileLoggingConfigurationOptions ?? throw new ArgumentNullException(nameof(fileLoggingConfigurationOptions));
87 this.elasticsearchConfigurationOptions = elasticsearchConfigurationOptions ?? throw new ArgumentNullException(nameof(elasticsearchConfigurationOptions));
88 }
89 }
90}
Configuration options for the Database.DatabaseContext.
Configuration options pertaining to elasticsearch log storage.
Configuration options pertaining to user security.
PostSetupServices(IPlatformIdentifier platformIdentifier, ILoggerFactory loggerFactory, IOptions< GeneralConfiguration > generalConfigurationOptions, IOptions< DatabaseConfiguration > databaseConfigurationOptions, IOptions< SecurityConfiguration > securityConfigurationOptions, IOptions< FileLoggingConfiguration > fileLoggingConfigurationOptions, IOptions< ElasticsearchConfiguration > elasticsearchConfigurationOptions)
Initializes a new instance of the PostSetupServices<TLoggerType> class.
readonly IOptions< ElasticsearchConfiguration > elasticsearchConfigurationOptions
Backing IOptions<TOptions> for ElasticsearchConfiguration.
readonly IOptions< FileLoggingConfiguration > fileLoggingConfigurationOptions
Backing IOptions<TOptions> for FileLoggingConfiguration.
readonly IOptions< GeneralConfiguration > generalConfigurationOptions
Backing IOptions<TOptions> for GeneralConfiguration.
readonly IOptions< DatabaseConfiguration > databaseConfigurationOptions
Backing IOptions<TOptions> for DatabaseConfiguration.
ILogger< TLoggerType > Logger
The ILogger.
readonly IOptions< SecurityConfiguration > securityConfigurationOptions
Backing IOptions<TOptions> for SecurityConfiguration.
Set of objects needed to configure an Core.Application.
For identifying the current platform.