using System; namespace Server.Custom.Bridge { /// /// Tunables from Config/Bridge.cfg. Key scope is the filename, so `Port=7788` there /// reads as "Bridge.Port" here. /// /// Loaded in Configure(), which ScriptCompiler invokes before World.Load. /// public static class BridgeConfig { public static string Host { get; private set; } public static int Port { get; private set; } public static int QueueCap { get; private set; } public static int StatSweepSeconds { get; private set; } public static int DecaySweepSeconds { get; private set; } public static int EconomySweepSeconds { get; private set; } public static bool Enabled { get; private set; } public static void Configure() { Load(); } /// Re-readable at runtime via `[bridge reload`. public static void Load() { Enabled = Config.Get("Bridge.Enabled", true); Host = Config.Get("Bridge.Host", "127.0.0.1"); Port = Config.Get("Bridge.Port", 7788); QueueCap = Config.Get("Bridge.QueueCap", 10000); StatSweepSeconds = Config.Get("Bridge.StatSweepSeconds", 30); DecaySweepSeconds = Config.Get("Bridge.DecaySweepSeconds", 60); EconomySweepSeconds = Config.Get("Bridge.EconomySweepSeconds", 300); if (QueueCap < 16) QueueCap = 16; } public static string Describe() { return String.Format( "enabled={0} endpoint={1}:{2} queueCap={3} sweeps(stat={4}s decay={5}s econ={6}s)", Enabled, Host, Port, QueueCap, StatSweepSeconds, DecaySweepSeconds, EconomySweepSeconds); } } }