From a5903f5f5751225c3202db91d45ef853ff47863b Mon Sep 17 00:00:00 2001 From: ChsBuffer <33744752+chsbuffer@users.noreply.github.com> Date: Tue, 15 Dec 2020 19:51:27 +0800 Subject: [PATCH] Remove IServerController.Server --- Netch/Controllers/HTTPController.cs | 2 +- Netch/Controllers/IServerController.cs | 2 -- Netch/Controllers/MainController.cs | 8 +++----- Netch/Controllers/NFController.cs | 4 ++-- Netch/Controllers/TUNTAPController.cs | 2 +- Netch/Servers/Shadowsocks/SSController.cs | 2 -- Netch/Servers/ShadowsocksR/SSRController.cs | 2 -- Netch/Servers/Socks5/S5Controller.cs | 2 -- Netch/Servers/Trojan/TrojanController.cs | 2 -- Netch/Servers/VLESS/VLESSController.cs | 2 -- Netch/Servers/VMess/VMessController.cs | 2 -- 11 files changed, 7 insertions(+), 23 deletions(-) diff --git a/Netch/Controllers/HTTPController.cs b/Netch/Controllers/HTTPController.cs index 421c05ae..c38a2edf 100644 --- a/Netch/Controllers/HTTPController.cs +++ b/Netch/Controllers/HTTPController.cs @@ -31,7 +31,7 @@ namespace Netch.Controllers try { - if (pPrivoxyController.Start(MainController.ServerController.Server, mode)) + if (pPrivoxyController.Start(MainController.Server, mode)) { Global.Job.AddProcess(pPrivoxyController.Instance); } diff --git a/Netch/Controllers/IServerController.cs b/Netch/Controllers/IServerController.cs index 396dacb3..62dceee2 100644 --- a/Netch/Controllers/IServerController.cs +++ b/Netch/Controllers/IServerController.cs @@ -4,8 +4,6 @@ namespace Netch.Controllers { public interface IServerController : IController { - public Server Server { get; set; } - public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } diff --git a/Netch/Controllers/MainController.cs b/Netch/Controllers/MainController.cs index cda8281a..bd498bf1 100644 --- a/Netch/Controllers/MainController.cs +++ b/Netch/Controllers/MainController.cs @@ -18,6 +18,8 @@ namespace Netch.Controllers private set => _serverController = value; } + /// TCP or Both Server + public static Server Server; public static IModeController ModeController { get; private set; } public static bool NttTested; @@ -34,6 +36,7 @@ namespace Netch.Controllers public static async Task Start(Server server, Mode mode) { Logging.Info($"启动主控制器: {server.Type} [{mode.Type}]{mode.Remark}"); + Server = server; if (server is Socks5 && mode.Type == 4) { @@ -73,11 +76,6 @@ namespace Netch.Controllers StatusPortInfoText.UpdateShareLan(); } - else - { - _serverController = ServerHelper.GetUtilByTypeName(server.Type).GetController(); - _serverController.Server = server; - } if (!await StartMode(server, mode)) { diff --git a/Netch/Controllers/NFController.cs b/Netch/Controllers/NFController.cs index 7eb843ea..bbd730cb 100644 --- a/Netch/Controllers/NFController.cs +++ b/Netch/Controllers/NFController.cs @@ -188,7 +188,7 @@ namespace Netch.Controllers var offset = portType == PortType.UDP ? UdpNameListOffset : 0; - if (controller.Server is Socks5 socks5) + if (MainController.Server is Socks5 socks5) { aio_dial((int) NameList.TYPE_TCPTYPE + offset, "Socks5"); aio_dial((int) NameList.TYPE_TCPHOST + offset, $"{socks5.AutoResolveHostname()}:{socks5.Port}"); @@ -196,7 +196,7 @@ namespace Netch.Controllers aio_dial((int) NameList.TYPE_TCPPASS + offset, socks5.Password ?? string.Empty); aio_dial((int) NameList.TYPE_TCPMETH + offset, string.Empty); } - else if (controller.Server is Shadowsocks shadowsocks) + else if (MainController.Server is Shadowsocks shadowsocks) { aio_dial((int) NameList.TYPE_TCPTYPE + offset, "Shadowsocks"); aio_dial((int) NameList.TYPE_TCPHOST + offset, $"{shadowsocks.AutoResolveHostname()}:{shadowsocks.Port}"); diff --git a/Netch/Controllers/TUNTAPController.cs b/Netch/Controllers/TUNTAPController.cs index 8bbff9bb..1a76d84f 100644 --- a/Netch/Controllers/TUNTAPController.cs +++ b/Netch/Controllers/TUNTAPController.cs @@ -42,7 +42,7 @@ namespace Netch.Controllers public bool Start(in Mode mode) { _savedMode = mode; - _savedServer = MainController.ServerController.Server; + _savedServer = MainController.Server; // 查询服务器 IP 地址 _serverAddresses = DNS.Lookup(_savedServer.Hostname); diff --git a/Netch/Servers/Shadowsocks/SSController.cs b/Netch/Servers/Shadowsocks/SSController.cs index 5681fd9f..435a9dbe 100644 --- a/Netch/Servers/Shadowsocks/SSController.cs +++ b/Netch/Servers/Shadowsocks/SSController.cs @@ -11,7 +11,6 @@ namespace Netch.Servers.Shadowsocks public override string Name { get; protected set; } = "Shadowsocks"; public override string MainFile { get; protected set; } = "Shadowsocks.exe"; - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } @@ -19,7 +18,6 @@ namespace Netch.Servers.Shadowsocks public bool Start(in Server s, in Mode mode) { - Server = s; var server = (Shadowsocks) s; DllFlag = Global.Settings.BootShadowsocksFromDLL && mode.Type is 0 or 1 or 2 && !server.HasPlugin(); diff --git a/Netch/Servers/ShadowsocksR/SSRController.cs b/Netch/Servers/ShadowsocksR/SSRController.cs index 4437ab70..f62eec3c 100644 --- a/Netch/Servers/ShadowsocksR/SSRController.cs +++ b/Netch/Servers/ShadowsocksR/SSRController.cs @@ -11,13 +11,11 @@ namespace Netch.Servers.ShadowsocksR public override string Name { get; protected set; } = "ShadowsocksR"; - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } public bool Start(in Server s, in Mode mode) { - Server = s; var server = (ShadowsocksR) s; #region Argument diff --git a/Netch/Servers/Socks5/S5Controller.cs b/Netch/Servers/Socks5/S5Controller.cs index 523cc3ce..e0f338e0 100644 --- a/Netch/Servers/Socks5/S5Controller.cs +++ b/Netch/Servers/Socks5/S5Controller.cs @@ -12,7 +12,6 @@ namespace Netch.Servers.Socks5 public bool Start(in Server s, in Mode mode) { - Server = s; var server = (Socks5) s; if (server.Auth()) { @@ -34,7 +33,6 @@ namespace Netch.Servers.Socks5 StopInstance(); } - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } diff --git a/Netch/Servers/Trojan/TrojanController.cs b/Netch/Servers/Trojan/TrojanController.cs index ac9c0e31..0a649b4c 100644 --- a/Netch/Servers/Trojan/TrojanController.cs +++ b/Netch/Servers/Trojan/TrojanController.cs @@ -18,14 +18,12 @@ namespace Netch.Servers.Trojan public override string MainFile { get; protected set; } = "Trojan.exe"; public override string Name { get; protected set; } = "Trojan"; - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } public bool Start(in Server s, in Mode mode) { - Server = s; var server = (Trojan) s; File.WriteAllText("data\\last.json", JsonConvert.SerializeObject(new TrojanConfig { diff --git a/Netch/Servers/VLESS/VLESSController.cs b/Netch/Servers/VLESS/VLESSController.cs index d9031b8a..92c6343c 100644 --- a/Netch/Servers/VLESS/VLESSController.cs +++ b/Netch/Servers/VLESS/VLESSController.cs @@ -10,14 +10,12 @@ namespace Netch.Servers.VLESS public override string Name { get; protected set; } = "VLESS"; public override string MainFile { get; protected set; } = "v2ray.exe"; - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } public bool Start(in Server s,in Mode mode) { - Server = s; File.WriteAllText("data\\last.json", V2rayConfigUtils.GenerateClientConfig(s, mode)); return StartInstanceAuto("-config ..\\data\\last.json"); } diff --git a/Netch/Servers/VMess/VMessController.cs b/Netch/Servers/VMess/VMessController.cs index 03d93810..e4d05d47 100644 --- a/Netch/Servers/VMess/VMessController.cs +++ b/Netch/Servers/VMess/VMessController.cs @@ -15,14 +15,12 @@ namespace Netch.Servers.VMess public override string Name { get; protected set; } = "VMess"; public override string MainFile { get; protected set; } = "v2ray.exe"; - public Server Server { get; set; } public ushort? Socks5LocalPort { get; set; } public string LocalAddress { get; set; } public bool Start(in Server s,in Mode mode) { - Server = s; File.WriteAllText("data\\last.json", V2rayConfigUtils.GenerateClientConfig(s, mode)); return StartInstanceAuto("-config ..\\data\\last.json"); }