Subject: [PATCH] clean up code --- Index: Manager/WebApiManager.cs IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/Manager/WebApiManager.cs b/Manager/WebApiManager.cs --- a/Manager/WebApiManager.cs (revision 5129f68dadfebc3477fa29452cc914fcbcbb0106) +++ b/Manager/WebApiManager.cs (revision cc94e7fcc8edfcb500c176ec8e111d0f8ca98866) @@ -4,23 +4,23 @@ using System.Text; namespace Zerolauncher.Manager { - internal class WebApiManager + internal static class WebApiManager { - static HttpListener listener = new HttpListener(); - static CancellationTokenSource cts = new CancellationTokenSource(); + static readonly HttpListener Listener = new HttpListener(); + static readonly CancellationTokenSource Cts = new CancellationTokenSource(); public static async Task StartListener() { - listener.Prefixes.Add("http://127.0.0.1:7233/"); - listener.Start(); + Listener.Prefixes.Add("http://127.0.0.1:7233/"); + Listener.Start(); Trace.WriteLine("Listening..."); - while (!cts.Token.IsCancellationRequested) + while (!Cts.Token.IsCancellationRequested) { - HttpListenerContext context = await listener.GetContextAsync(); - HttpListenerRequest request = context.Request; - HttpListenerResponse response = context.Response; + var context = await Listener.GetContextAsync(); + var request = context.Request; + var response = context.Response; var raw = request.RawUrl; - ResponesBody? rb = null; + ResponseBody? rb = null; if (raw != null && raw.Contains("?")) { var lines = raw.Split("?"); @@ -34,121 +34,79 @@ switch (lines[0]) { case "/CloseGame": - { - if (EngineManager.ExitGame(acc)) - { - rb = new ResponesBody(1, 0, $"Account [{nick}] successful to close."); - } - else - { - rb = new ResponesBody($"Account [{nick}] is unluacher."); - break; - } - } + { + rb = EngineManager.ExitGame(acc) ? new ResponseBody(1, 0, $"Account [{nick}] successful to close.") : new ResponseBody($"Account [{nick}] is unluacher."); + } break; case "/ToNormalSize": - { - switch (EngineManager.TurnGameSizeNormal(acc)) - { - case 2: - rb = new ResponesBody(1, 0, $"Account [{nick}] now is normal size."); - break; - case 1: - rb = new ResponesBody(0, 0, $"Account [{nick}] is loading, please wait."); - break; - case 0: - rb = new ResponesBody($"Account [{nick}] is unluacher."); - break; - } - } + { + rb = EngineManager.TurnGameSizeNormal(acc) switch + { + 2 => new ResponseBody(1, 0, $"Account [{nick}] now is normal size."), + 1 => new ResponseBody(0, 0, $"Account [{nick}] is loading, please wait."), + 0 => new ResponseBody($"Account [{nick}] is unluacher."), + _ => rb + }; + } break; case "/ToMiniSize": - { - switch (EngineManager.TurnGameSizeMini(acc)) - { - case 2: - rb = new ResponesBody(1, 0, $"Account [{nick}] now is mini size."); - break; - case 1: - rb = new ResponesBody(0, 0, $"Account [{nick}] is loading, please wait."); - break; - case 0: - rb = new ResponesBody($"Account [{nick}] is unluacher."); - break; - } - } + { + rb = EngineManager.TurnGameSizeMini(acc) switch + { + 2 => new ResponseBody(1, 0, $"Account [{nick}] now is mini size."), + 1 => new ResponseBody(0, 0, $"Account [{nick}] is loading, please wait."), + 0 => new ResponseBody($"Account [{nick}] is unluacher."), + _ => rb + }; + } break; case "/LoginGame": { if (EngineManager.CreateGame(acc)) { - rb = new ResponesBody(0, 0, $"Account [{nick}] successful to start."); + rb = new ResponseBody(0, 0, $"Account [{nick}] successful to start."); } else { - int hwnd = EngineManager.CheckGameState(acc); - if (hwnd <= 0) - { - rb = new ResponesBody(0, 0, $"Account [{nick}] is loading, please wait."); - } - else - { - rb = new ResponesBody(1, hwnd, $"Account [{nick}] now is running."); - } + var hwnd = EngineManager.CheckGameState(acc); + rb = hwnd <= 0 ? new ResponseBody(0, 0, $"Account [{nick}] is loading, please wait.") : new ResponseBody(1, hwnd, $"Account [{nick}] now is running."); } } break; default: - rb = new ResponesBody($"commad [{lines[0]}] undefind."); + rb = new ResponseBody($"commad [{lines[0]}] undefind."); break; } } else { - rb = new ResponesBody($"Account [{nick}] undefind."); + rb = new ResponseBody($"Account [{nick}] undefind."); } } else { - rb = new ResponesBody("args is missing."); + rb = new ResponseBody("args is missing."); } } - if (rb == null) - { - rb = new ResponesBody(); - } - byte[] buffer = Encoding.UTF8.GetBytes(rb.Encode()); + rb ??= new ResponseBody(); + var buffer = Encoding.UTF8.GetBytes(rb.Encode()); response.ContentLength64 = buffer.Length; - Stream output = response.OutputStream; + var output = response.OutputStream; await output.WriteAsync(buffer, 0, buffer.Length); output.Close(); } - listener.Stop(); + Listener.Stop(); } - public static void StopListener() { cts.Cancel(); } + public static void StopListener() { Cts.Cancel(); } } - class ResponesBody + class ResponseBody(int status = -1, int hwnd = 0, string message = "Hello, World!") { - public int status; - public int hwnd; - public string message; - - public ResponesBody(string message) + public ResponseBody(string message) : this(-1, 0, message) { - this.status = -1; - this.hwnd = 0; - this.message = message; - } - - public ResponesBody(int status=-1, int hwnd=0, string message= "Hello, World!") - { - this.status = status; - this.hwnd = hwnd; - this.message = message; } public string Encode()