tgstation-server 6.3.2
The /tg/station 13 server suite
Loading...
Searching...
No Matches
DreamDaemonLaunchParameters.cs
Go to the documentation of this file.
1using System;
2using System.ComponentModel.DataAnnotations;
3
5{
10 {
14 [Required]
15 [ResponseOptions]
16 public bool? AllowWebClient { get; set; }
17
21 [Required]
22 [ResponseOptions]
23 public bool? StartProfiler { get; set; }
24
28 [Required]
29 [ResponseOptions]
30 [EnumDataType(typeof(DreamDaemonVisibility))]
31 public DreamDaemonVisibility? Visibility { get; set; }
32
36 [Required]
37 [ResponseOptions]
38 [EnumDataType(typeof(DreamDaemonSecurity))]
39 public DreamDaemonSecurity? SecurityLevel { get; set; }
40
44 [Required]
45 [ResponseOptions]
46 [Range(1, UInt16.MaxValue)]
47 public ushort? Port { get; set; }
48
52 [Required]
53 [ResponseOptions]
54 [Range(1, UInt32.MaxValue)]
55 public uint? StartupTimeout { get; set; }
56
60 [Required]
61 [ResponseOptions]
62 public uint? HealthCheckSeconds { get; set; }
63
67 [Required]
68 [ResponseOptions]
69 public bool? DumpOnHealthCheckRestart { get; set; }
70
74 [Required]
75 [ResponseOptions]
76 [Range(1, UInt32.MaxValue)]
77 public uint? TopicRequestTimeout { get; set; }
78
82 [Required]
83 [ResponseOptions]
84 [StringLength(Limits.MaximumStringLength)]
85 public string? AdditionalParameters { get; set; }
86
90 [Required]
91 [ResponseOptions]
92 public bool? LogOutput { get; set; }
93
97 [Required]
98 [ResponseOptions]
99 public uint? MapThreads { get; set; }
100
104 [Required]
105 [ResponseOptions]
106 public bool? Minidumps { get; set; }
107
114 {
115 if (otherParameters == null)
116 throw new ArgumentNullException(nameof(otherParameters));
117
118 return AllowWebClient == otherParameters.AllowWebClient
119 && SecurityLevel == otherParameters.SecurityLevel
120 && Visibility == otherParameters.Visibility
121 && Port == otherParameters.Port
122 && TopicRequestTimeout == otherParameters.TopicRequestTimeout
123 && AdditionalParameters == otherParameters.AdditionalParameters
124 && StartProfiler == otherParameters.StartProfiler
125 && LogOutput == otherParameters.LogOutput
126 && MapThreads == otherParameters.MapThreads; // We intentionally don't check StartupTimeout, Minidumps, health check seconds, or health check dump as they don't matter in terms of the watchdog
127 }
128 }
129}
ushort? Port
The port DreamDaemon uses. This should be publically accessible.
DreamDaemonVisibility? Visibility
The DreamDaemonVisibility level of DreamDaemon. No-op for EngineType.OpenDream.
bool? LogOutput
If process output/error text should be logged.
uint? TopicRequestTimeout
The timeout for sending and receiving BYOND topics in milliseconds.
bool? AllowWebClient
If the BYOND web client can be used to connect to the game server. No-op for EngineType....
uint? HealthCheckSeconds
The number of seconds between each watchdog health check. 0 disables.
uint? StartupTimeout
The DreamDaemon startup timeout in seconds.
bool? StartProfiler
If -profile is passed in on the DreamDaemon command line. No-op for EngineType.OpenDream.
DreamDaemonSecurity? SecurityLevel
The DreamDaemonSecurity level of DreamDaemon. No-op for EngineType.OpenDream.
bool? Minidumps
If minidumps should be taken instead of full dumps.
bool CanApplyWithoutReboot(DreamDaemonLaunchParameters otherParameters)
Check if we match a given set of otherParameters . StartupTimeout is excluded.
bool? DumpOnHealthCheckRestart
If a process core dump should be created prior to restarting the watchdog due to health check failure...
uint? MapThreads
If DreamDaemon supports it, the value added as the -map-threads parameter. 0 uses the default BYOND v...
Sanity limits to prevent users from overloading.
Definition: Limits.cs:9
const int MaximumStringLength
Length limit for strings in fields.
Definition: Limits.cs:13
DreamDaemonVisibility
The visibility setting for DreamDaemon.
DreamDaemonSecurity
DreamDaemon's security level.