From 80a6d9236ade191a5de0975abe4de5a6e7e63915 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 19 三月 2026 14:03:10 +0800
Subject: [PATCH] #AI.注释

---
 rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/McpMountRuntimeFactoryImpl.java |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/McpMountRuntimeFactoryImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/McpMountRuntimeFactoryImpl.java
index a290fd7..befeb3f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/McpMountRuntimeFactoryImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/ai/service/impl/McpMountRuntimeFactoryImpl.java
@@ -39,6 +39,11 @@
     private final ObjectMapper objectMapper;
     private final BuiltinMcpToolRegistry builtinMcpToolRegistry;
 
+    /**
+     * 鎶婁竴缁� MCP 鎸傝浇璁板綍瑙f瀽鎴愪竴娆″璇濆彲鐩存帴浣跨敤鐨勮繍琛屾椂瀵硅薄銆�
+     * 璇ユ柟娉曠粺涓�澶勭悊鍐呯疆 MCP銆佽繙绋� SSE MCP 鍜屾湰鍦� STDIO MCP锛�
+     * 鍚屾椂鏀堕泦鎸傝浇鎴愬姛椤广�佸け璐ラ」浠ュ強鏈�缁堟毚闇茬粰妯″瀷鐨勫伐鍏峰洖璋冨垪琛ㄣ��
+     */
     @Override
     public McpMountRuntime create(List<AiMcpMount> mounts, Long userId) {
         List<McpSyncClient> clients = new ArrayList<>();
@@ -75,6 +80,7 @@
     }
 
     private List<ToolCallback> wrapMountedCallbacks(List<ToolCallback> source, String mountName) {
+        /** 涓烘瘡涓伐鍏峰洖璋冭ˉ涓婃寕杞芥潵婧愶紝渚夸簬鍚庣画瀹¤銆佽娴嬪拰鍓嶇宸ュ叿杞ㄨ抗灞曠ず銆� */
         List<ToolCallback> mountedCallbacks = new ArrayList<>();
         for (ToolCallback callback : source) {
             if (callback == null) {
@@ -86,6 +92,7 @@
     }
 
     private void ensureUniqueToolNames(List<ToolCallback> callbacks) {
+        /** 纭繚澶氭寕杞借仛鍚堝悗涓嶄細鍑虹幇鍚屽悕宸ュ叿锛屽惁鍒欐ā鍨嬩晶鏃犳硶姝g‘鍒嗚鲸宸ュ叿瀹氫箟銆� */
         LinkedHashSet<String> duplicateNames = new LinkedHashSet<>();
         LinkedHashSet<String> seenNames = new LinkedHashSet<>();
         for (ToolCallback callback : callbacks) {
@@ -106,6 +113,10 @@
     }
 
     private McpSyncClient createClient(AiMcpMount mount) {
+        /**
+         * 鎸夋寕杞介厤缃姩鎬佸垱寤� MCP Client銆�
+         * 璇ユ柟娉曞彧璐熻矗 transport 灞傚垵濮嬪寲锛屼笉璐熻矗宸ュ叿鍘婚噸鍜岄敊璇仛鍚堛��
+         */
         Duration timeout = Duration.ofMillis(mount.getRequestTimeoutMs() == null
                 ? AiDefaults.DEFAULT_TIMEOUT_MS
                 : mount.getRequestTimeoutMs());
@@ -153,6 +164,7 @@
     }
 
     private List<String> readStringList(String json) {
+        /** 瑙f瀽鎸傝浇琛ㄩ噷鐨� JSON 鏁扮粍閰嶇疆锛屼緥濡� STDIO args銆� */
         if (!StringUtils.hasText(json)) {
             return Collections.emptyList();
         }
@@ -165,6 +177,7 @@
     }
 
     private Map<String, String> readStringMap(String json) {
+        /** 瑙f瀽鎸傝浇琛ㄩ噷鐨� JSON Map 閰嶇疆锛屼緥濡� headers 鎴栫幆澧冨彉閲忋�� */
         if (!StringUtils.hasText(json)) {
             return Collections.emptyMap();
         }
@@ -184,6 +197,7 @@
         private final List<String> mountedNames;
         private final List<String> errors;
 
+        /** 杩愯鏃跺璞℃湰韬彧鍋氭暟鎹皝瑁呭拰璧勬簮閲婃斁锛屼笉寮曞叆棰濆涓氬姟閫昏緫銆� */
         private DefaultMcpMountRuntime(List<McpSyncClient> clients, ToolCallback[] callbacks, List<String> mountedNames, List<String> errors) {
             this.clients = clients;
             this.callbacks = callbacks;
@@ -213,6 +227,7 @@
 
         @Override
         public void close() {
+            /** 缁熶竴鍏抽棴鏈杩愯鏃堕噷鍒涘缓鐨勫閮� MCP Client锛岄伩鍏嶈繛鎺ユ硠婕忋�� */
             for (McpSyncClient client : clients) {
                 try {
                     client.close();
@@ -228,6 +243,7 @@
         private final ToolCallback delegate;
         private final String mountName;
 
+        /** 瑁呴グ鍣ㄤ粎琛ュ厖鎸傝浇鏉ユ簮锛屼笉鏀瑰彉搴曞眰宸ュ叿瀹氫箟鍜岃皟鐢ㄨ涓恒�� */
         private MountedToolCallbackImpl(ToolCallback delegate, String mountName) {
             this.delegate = delegate;
             this.mountName = mountName;

--
Gitblit v1.9.1