From dacd6421de7a06ad53fa7ba7ff51188856ca9f3a Mon Sep 17 00:00:00 2001 From: godotg Date: Fri, 21 Jul 2023 21:55:44 +0800 Subject: [PATCH] perf[net]: rule checks for attachment --- net/src/main/java/com/zfoo/net/router/route/PacketBus.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/net/src/main/java/com/zfoo/net/router/route/PacketBus.java b/net/src/main/java/com/zfoo/net/router/route/PacketBus.java index 4a67576b..7d1cf3ad 100644 --- a/net/src/main/java/com/zfoo/net/router/route/PacketBus.java +++ b/net/src/main/java/com/zfoo/net/router/route/PacketBus.java @@ -94,8 +94,9 @@ public abstract class PacketBus { var expectedMethodName = StringUtils.format("at{}", packetClazz.getSimpleName()); AssertionUtils.isTrue(methodName.equals(expectedMethodName), "[class:{}] [method:{}] [packet:{}] expects '{}' as method name!", bean.getClass().getName(), methodName, packetName, expectedMethodName); - // If the request class name ends with Request, then the attachment should be a Gateway Attachment - // If the request class name ends with Ask, then attachment cannot be a Gateway Attachment + // These rules are not necessary, but can reduce us from making low-level mistakes + // If the request class name ends with Request which is for outer net client, then the attachment can not be a SignalAttachment + // If the request class name ends with Ask which is for intranet client, then attachment can not be a GatewayAttachment if (attachmentClazz != null) { if (packetName.endsWith(PacketService.NET_REQUEST_SUFFIX)) { AssertionUtils.isTrue(!attachmentClazz.equals(SignalAttachment.class), "[class:{}] [method:{}] [packet:{}] must use [attachment:{}]!"