From 0ac7e871584956f22bffc45c3f31e1beff1f7cd5 Mon Sep 17 00:00:00 2001 From: DHR60 Date: Sun, 8 Feb 2026 14:26:39 +0800 Subject: [PATCH] Clean code --- .../ServiceLib/Handler/CoreConfigHandler.cs | 3 +- v2rayN/ServiceLib/Manager/AppManager.cs | 4 +- .../ServiceLib/Manager/GroupProfileManager.cs | 58 +++---------------- 3 files changed, 11 insertions(+), 54 deletions(-) diff --git a/v2rayN/ServiceLib/Handler/CoreConfigHandler.cs b/v2rayN/ServiceLib/Handler/CoreConfigHandler.cs index 9260fa11..e6b71bdd 100644 --- a/v2rayN/ServiceLib/Handler/CoreConfigHandler.cs +++ b/v2rayN/ServiceLib/Handler/CoreConfigHandler.cs @@ -96,8 +96,7 @@ public static class CoreConfigHandler var result = new RetResult(); var context = await BuildCoreConfigContext(config, new()); var ids = selecteds.Where(serverTestItem => !serverTestItem.IndexId.IsNullOrEmpty()) - .Select(serverTestItem => serverTestItem.IndexId!) - .ToList(); + .Select(serverTestItem => serverTestItem.IndexId); var nodes = await AppManager.Instance.GetProfileItemsByIndexIds(ids); foreach (var node in nodes) { diff --git a/v2rayN/ServiceLib/Manager/AppManager.cs b/v2rayN/ServiceLib/Manager/AppManager.cs index 82eec00e..e773c2ef 100644 --- a/v2rayN/ServiceLib/Manager/AppManager.cs +++ b/v2rayN/ServiceLib/Manager/AppManager.cs @@ -230,9 +230,9 @@ public sealed class AppManager return await SQLiteHelper.Instance.TableAsync().FirstOrDefaultAsync(it => it.IndexId == indexId); } - public async Task> GetProfileItemsByIndexIds(List indexIds) + public async Task> GetProfileItemsByIndexIds(IEnumerable indexIds) { - var ids = indexIds.Where(id => id.IsNotEmpty()).Distinct().ToList(); + var ids = indexIds.Where(id => !id.IsNullOrEmpty()).Distinct().ToList(); if (ids.Count == 0) { return []; diff --git a/v2rayN/ServiceLib/Manager/GroupProfileManager.cs b/v2rayN/ServiceLib/Manager/GroupProfileManager.cs index afd97f81..cad0c13c 100644 --- a/v2rayN/ServiceLib/Manager/GroupProfileManager.cs +++ b/v2rayN/ServiceLib/Manager/GroupProfileManager.cs @@ -79,7 +79,7 @@ public class GroupProfileManager { if (protocolExtra == null) { - return new(); + return []; } var items = new List(); @@ -93,27 +93,19 @@ public class GroupProfileManager { if (extra == null || extra.ChildItems.IsNullOrEmpty()) { - return new(); + return []; } - var childProfiles = (await Task.WhenAll( - (Utils.String2List(extra.ChildItems) ?? new()) - .Where(p => !p.IsNullOrEmpty()) - .Select(AppManager.Instance.GetProfileItem) - )) - .Where(p => - p != null && - p.IsValid() && - p.ConfigType != EConfigType.Custom - ) - .ToList(); - return childProfiles ?? new(); + var childProfileIds = Utils.String2List(extra.ChildItems) + ?.Where(p => !string.IsNullOrEmpty(p)) ?? []; + var childProfiles = await AppManager.Instance.GetProfileItemsByIndexIds(childProfileIds); + return childProfiles ?? []; } private static async Task> GetSubChildProfileItems(ProtocolExtraItem? extra) { if (extra == null || extra.SubChildItems.IsNullOrEmpty()) { - return new(); + return []; } var childProfiles = await AppManager.Instance.ProfileItems(extra.SubChildItems ?? string.Empty); @@ -123,7 +115,7 @@ public class GroupProfileManager !p.ConfigType.IsComplexType() && (extra.Filter.IsNullOrEmpty() || Regex.IsMatch(p.Remarks, extra.Filter)) ) - .ToList() ?? new(); + .ToList() ?? []; } public static async Task> GetAllChildProfileItems(ProfileItem profileItem) @@ -149,38 +141,4 @@ public class GroupProfileManager } } } - - - public static async Task> GetAllChildDomainAddresses(ProfileItem profileItem) - { - var childAddresses = new HashSet(); - var childItems = await GetAllChildProfileItems(profileItem); - foreach (var child in childItems.Where(child => !child.Address.IsNullOrEmpty()).Where(child => Utils.IsDomain(child.Address))) - { - childAddresses.Add(child.Address); - } - return childAddresses; - } - - public static async Task> GetAllChildEchQuerySni(ProfileItem profileItem) - { - var childAddresses = new HashSet(); - var childItems = await GetAllChildProfileItems(profileItem); - foreach (var childNode in childItems.Where(childNode => !childNode.EchConfigList.IsNullOrEmpty())) - { - var sni = childNode.Sni; - if (childNode.StreamSecurity == Global.StreamSecurity - && childNode.EchConfigList?.Contains("://") == true) - { - var idx = childNode.EchConfigList.IndexOf('+'); - sni = idx > 0 ? childNode.EchConfigList[..idx] : childNode.Sni; - } - if (!Utils.IsDomain(sni)) - { - continue; - } - childAddresses.Add(sni); - } - return childAddresses; - } }