/* * Copyright (c) 2023-2026, Easy-Agents (fuhai999@gmail.com). *

* Licensed under the Apache License, Version 2.0 (the "License"); */ package com.easyagents.mcp.client; import java.util.ArrayList; import java.util.List; /** * 单个 MCP Server 的检测结果。 */ public class McpServerCheckResult { private String serverName; private String transport; private McpCheckStatus status = McpCheckStatus.SUCCESS; private int toolCount; private List checks = new ArrayList<>(); /** * 添加检测项并刷新整体状态。 * * @param item 检测项 */ public void addCheck(McpCheckItem item) { if (item == null) { return; } this.checks.add(item); this.status = McpEnvironmentCheckResult.mergeStatus(this.status, item.getStatus()); } /** * 获取 Server 名称。 * * @return Server 名称 */ public String getServerName() { return serverName; } /** * 设置 Server 名称。 * * @param serverName Server 名称 */ public void setServerName(String serverName) { this.serverName = serverName; } /** * 获取传输类型。 * * @return 传输类型 */ public String getTransport() { return transport; } /** * 设置传输类型。 * * @param transport 传输类型 */ public void setTransport(String transport) { this.transport = transport; } /** * 获取检测状态。 * * @return 检测状态 */ public McpCheckStatus getStatus() { return status; } /** * 设置检测状态。 * * @param status 检测状态 */ public void setStatus(McpCheckStatus status) { this.status = status == null ? McpCheckStatus.SUCCESS : status; } /** * 获取工具数量。 * * @return 工具数量 */ public int getToolCount() { return toolCount; } /** * 设置工具数量。 * * @param toolCount 工具数量 */ public void setToolCount(int toolCount) { this.toolCount = Math.max(toolCount, 0); } /** * 获取检测项。 * * @return 检测项 */ public List getChecks() { return checks; } /** * 设置检测项。 * * @param checks 检测项 */ public void setChecks(List checks) { this.checks = checks == null ? new ArrayList<>() : new ArrayList<>(checks); } }