From 0f7cb9e02a44851785d947b0bc841b6b71302388 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=88=B0=E9=98=9F=E7=9A=84=E5=81=B6=E5=83=8F-=E5=B2=9B?= =?UTF-8?q?=E9=A3=8E=E9=85=B1!?= Date: Mon, 10 Jul 2023 13:16:31 +0800 Subject: [PATCH] :recycle: update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 舰队的偶像-岛风酱! --- src/Shimakaze.Sdk.Build/CsfBuilder.cs | 2 +- src/Shimakaze.Sdk.Build/CsfMerger.cs | 25 ++--------- src/Shimakaze.Sdk.Ini/IO/IniReader.cs | 44 +++---------------- src/Shimakaze.Sdk.Ini/IO/IniWriter.cs | 18 ++------ .../JsonRPCHostedService.cs | 3 +- 5 files changed, 17 insertions(+), 75 deletions(-) diff --git a/src/Shimakaze.Sdk.Build/CsfBuilder.cs b/src/Shimakaze.Sdk.Build/CsfBuilder.cs index f7619277..54136038 100644 --- a/src/Shimakaze.Sdk.Build/CsfBuilder.cs +++ b/src/Shimakaze.Sdk.Build/CsfBuilder.cs @@ -95,7 +95,7 @@ public override bool Execute() Log.LogWarning( "Shimakaze.Sdk.Csf", "CSF0001", - "No Json V1", + "No CSF", file.ItemSpec, 0, 0, diff --git a/src/Shimakaze.Sdk.Build/CsfMerger.cs b/src/Shimakaze.Sdk.Build/CsfMerger.cs index e975cc08..f72e92ce 100644 --- a/src/Shimakaze.Sdk.Build/CsfMerger.cs +++ b/src/Shimakaze.Sdk.Build/CsfMerger.cs @@ -43,27 +43,10 @@ public override bool Execute() OutputFile = new TaskItem(DestinationFile); foreach (var file in SourceFiles) { - try - { - using Stream stream = File.OpenRead(file.ItemSpec); - using CsfReader reader = new(stream); - merger.UnionWith(reader.ReadAsync().Result.Data); - file.CopyMetadataTo(OutputFile); - } - catch (Exception ex) - { - Log.LogError( - "Shimakaze.Sdk.Csf", - "CSF0004", - "Merge Failed", - file.ItemSpec, - 0, - 0, - 0, - 0, - "Cannot Merge file into CSF."); - Log.LogErrorFromException(ex); - } + using Stream stream = File.OpenRead(file.ItemSpec); + using CsfReader reader = new(stream); + merger.UnionWith(reader.ReadAsync().Result.Data); + file.CopyMetadataTo(OutputFile); } OutputFile.SetMetadata(Metadata_Pack, true.ToString()); diff --git a/src/Shimakaze.Sdk.Ini/IO/IniReader.cs b/src/Shimakaze.Sdk.Ini/IO/IniReader.cs index 624f4740..5d1279bf 100644 --- a/src/Shimakaze.Sdk.Ini/IO/IniReader.cs +++ b/src/Shimakaze.Sdk.Ini/IO/IniReader.cs @@ -1,3 +1,5 @@ +using System.Diagnostics.CodeAnalysis; + using Shimakaze.Sdk.Ini; namespace Shimakaze.Sdk.IO.Ini; @@ -22,42 +24,6 @@ public IniReader(Stream stream, bool leaveOpen = false) : base(stream, leaveOpen BaseReader = new StreamReader(stream, leaveOpen); } - /// - /// 反序列化INI - /// - /// - public virtual IniDocument Read() - { - IniDocument doc = new(); - IniSection current = doc.Default; - string? line; - while ((line = BaseReader.ReadLine()) is not null) - { - line = line.Split(';', '#').First().Trim(); - - if (string.IsNullOrEmpty(line)) - continue; - - if (line.StartsWith('[') && line.EndsWith(']')) - { - current = new() - { - Name = line.Substring(1, line.Length - 2) - }; - doc.Add(current); - - continue; - } - - var index = line.IndexOf('='); - if (index is -1) - current.Add(line, string.Empty); - else - current.Add(line.Substring(0, index).TrimEnd(), line.Substring(index + 1).TrimStart()); - } - return doc; - } - /// public override async Task ReadAsync(IProgress? progress = default, CancellationToken cancellationToken = default) { @@ -77,7 +43,7 @@ public override async Task ReadAsync(IProgress? progress = d { current = new() { - Name = line.Substring(1, line.Length - 2) + Name = line[1..^1] }; doc.Add(current); @@ -89,12 +55,13 @@ public override async Task ReadAsync(IProgress? progress = d if (index is -1) current.Add(line, string.Empty); else - current.Add(line.Substring(0, index).TrimEnd(), line.Substring(index + 1).TrimStart()); + current.Add(line[..index].TrimEnd(), line[(index + 1)..].TrimStart()); } return doc; } /// + [ExcludeFromCodeCoverage] protected override void Dispose(bool disposing) { if (disposing) @@ -107,6 +74,7 @@ protected override void Dispose(bool disposing) } /// + [ExcludeFromCodeCoverage] protected override ValueTask DisposeAsyncCore() { if (!_leaveOpen) diff --git a/src/Shimakaze.Sdk.Ini/IO/IniWriter.cs b/src/Shimakaze.Sdk.Ini/IO/IniWriter.cs index dca312a2..62a533f5 100644 --- a/src/Shimakaze.Sdk.Ini/IO/IniWriter.cs +++ b/src/Shimakaze.Sdk.Ini/IO/IniWriter.cs @@ -1,3 +1,5 @@ +using System.Diagnostics.CodeAnalysis; + using Shimakaze.Sdk.Ini; namespace Shimakaze.Sdk.IO.Ini; @@ -37,24 +39,11 @@ public override async Task WriteAsync(IniDocument value, IProgress? progr } } - /// - /// 序列化Ini文档 - /// - /// value - public virtual void Writer(in IniDocument value) - { - WriteSectionBody(value.Default); - foreach (var item in value) - { - BaseWriter.WriteLine($"[{item.Name}]"); - WriteSectionBody(item); - } - } - /// /// 释放资源 /// /// + [ExcludeFromCodeCoverage] protected override void Dispose(bool disposing) { if (disposing) @@ -67,6 +56,7 @@ protected override void Dispose(bool disposing) } /// + [ExcludeFromCodeCoverage] protected override ValueTask DisposeAsyncCore() { if (!_leaveOpen) diff --git a/src/Shimakaze.Sdk.JsonRPC.Server/JsonRPCHostedService.cs b/src/Shimakaze.Sdk.JsonRPC.Server/JsonRPCHostedService.cs index fcf975ec..3bfe326c 100644 --- a/src/Shimakaze.Sdk.JsonRPC.Server/JsonRPCHostedService.cs +++ b/src/Shimakaze.Sdk.JsonRPC.Server/JsonRPCHostedService.cs @@ -1,3 +1,4 @@ +using System.Diagnostics.CodeAnalysis; using System.Reflection; using Microsoft.Extensions.DependencyInjection; @@ -26,7 +27,7 @@ public JsonRPCHostedService( _options = serviceProvider.GetRequiredService(); _jsonRpc = new(_options.JsonRpcMessageHandler); } - + [ExcludeFromCodeCoverage] public void Dispose() { _jsonRpc.Dispose();