From b55cd9aad0835a96a790e61f9f89edc2fae1be9f Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期二, 29 九月 2026 01:26:37 +0800
Subject: [PATCH] 注释优化、格式优化
---
cloud-server-management/src/main/java/cn/mb/cloud/common/sentinel/fallback/DefaultFeignFallback.java | 14 ++++++--------
1 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/cloud-server-management/src/main/java/cn/mb/cloud/common/sentinel/fallback/DefaultFeignFallback.java b/cloud-server-management/src/main/java/cn/mb/cloud/common/sentinel/fallback/DefaultFeignFallback.java
index 4b6230f..d792aa8 100644
--- a/cloud-server-management/src/main/java/cn/mb/cloud/common/sentinel/fallback/DefaultFeignFallback.java
+++ b/cloud-server-management/src/main/java/cn/mb/cloud/common/sentinel/fallback/DefaultFeignFallback.java
@@ -18,12 +18,11 @@
import java.util.Set;
/**
- * Safe replacement for the common Sentinel Feign fallback.
+ * 公共 Sentinel Feign 降级处理的安全替代实现。
*
- * <p>The dependency version assumes every generic return type is a Class. That
- * is false for declarations such as {@code Map<String, Object>}, whose runtime
- * type is {@link ParameterizedType}; the failed cast used to hide the original
- * downstream exception behind an AssertionError.</p>
+ * <p>依赖版本假定所有泛型返回类型均为 {@link Class}。对于
+ * {@code Map<String, Object>} 等声明并不成立,其运行时类型为
+ * {@link ParameterizedType};此前转换失败会以 AssertionError 掩盖原始下游异常。</p>
*/
public class DefaultFeignFallback<T> implements MethodInterceptor {
private static final Logger log = LoggerFactory.getLogger(DefaultFeignFallback.class);
@@ -47,9 +46,8 @@
Class<?> returnType = rawType(declaredReturnType);
Object data = defaultValue(returnType);
- // Only methods that explicitly declare ResponseData may receive a
- // ResponseData fallback. Returning it from Map/List methods causes a
- // second ClassCastException in the Feign proxy.
+ // 仅显式声明返回 ResponseData 的方法可以返回 ResponseData 降级结果。
+ // 在 Map/List 方法中返回该对象会导致 Feign 代理再次抛出 ClassCastException。
if (ResponseData.class.equals(returnType)) {
Type dataType = firstTypeArgument(declaredReturnType);
return ResponseData.builder()
--
Gitblit v1.7.1