From b8d58004348d3e7e0b8072b5215cf411a7736b38 Mon Sep 17 00:00:00 2001 From: redkale Date: Thu, 5 Oct 2023 20:22:43 +0800 Subject: [PATCH] =?UTF-8?q?ResourceProducer=E5=A2=9E=E5=8A=A0required?= =?UTF-8?q?=E5=B1=9E=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/redkale/boot/Application.java | 3 +++ src/main/java/org/redkale/mq/ResourceProducer.java | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/redkale/boot/Application.java b/src/main/java/org/redkale/boot/Application.java index 849640e8b..9ac74894e 100644 --- a/src/main/java/org/redkale/boot/Application.java +++ b/src/main/java/org/redkale/boot/Application.java @@ -1178,6 +1178,9 @@ public final class Application { throw new RestException("@" + ResourceProducer.class.getSimpleName() + " must on " + MessageProducer.class.getName() + " type field, but on " + field); } MessageAgent agent = findMessageAgent(annotation.mq()); + if (!annotation.required() && agent == null) { + return; + } if (agent == null) { throw new RedkaleException("Not found " + MessageAgent.class.getSimpleName() + "(name = " + annotation.mq() + ") on " + field); } diff --git a/src/main/java/org/redkale/mq/ResourceProducer.java b/src/main/java/org/redkale/mq/ResourceProducer.java index d6c207b86..fdf789079 100644 --- a/src/main/java/org/redkale/mq/ResourceProducer.java +++ b/src/main/java/org/redkale/mq/ResourceProducer.java @@ -3,9 +3,9 @@ */ package org.redkale.mq; +import java.lang.annotation.*; import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.RetentionPolicy.RUNTIME; -import java.lang.annotation.*; import org.redkale.convert.ConvertType; /** @@ -25,6 +25,8 @@ public @interface ResourceProducer { String mq(); + boolean required() default true; + ConvertType convertType() default ConvertType.JSON; - + }