From 39d3d6a3d34252622fc9f8dacfcc53cd37a7a28c Mon Sep 17 00:00:00 2001 From: DDDHuang <44492639+DDDHuang@users.noreply.github.com> Date: Tue, 19 Apr 2022 17:08:19 +0800 Subject: [PATCH] fix: auto sub & banned & topics rewrite, add required --- .../emqx_auto_subscribe/src/emqx_auto_subscribe_schema.erl | 1 + apps/emqx_management/src/emqx_mgmt_api_banned.erl | 2 ++ apps/emqx_modules/src/emqx_modules_schema.erl | 7 ++++--- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/emqx_auto_subscribe/src/emqx_auto_subscribe_schema.erl b/apps/emqx_auto_subscribe/src/emqx_auto_subscribe_schema.erl index 12bcc5a86..6770c6774 100644 --- a/apps/emqx_auto_subscribe/src/emqx_auto_subscribe_schema.erl +++ b/apps/emqx_auto_subscribe/src/emqx_auto_subscribe_schema.erl @@ -38,6 +38,7 @@ fields("auto_subscribe") -> fields("topic") -> [ {topic, sc(binary(), #{ + required => true, example => topic_example(), desc => ?DESC("topic")})} , {qos, sc(emqx_schema:qos(), #{ diff --git a/apps/emqx_management/src/emqx_mgmt_api_banned.erl b/apps/emqx_management/src/emqx_mgmt_api_banned.erl index fd542e1f4..1354b9ac8 100644 --- a/apps/emqx_management/src/emqx_mgmt_api_banned.erl +++ b/apps/emqx_management/src/emqx_mgmt_api_banned.erl @@ -87,12 +87,14 @@ schema("/banned/:as/:who") -> {as, hoconsc:mk(hoconsc:enum(?BANNED_TYPES), #{ desc => ?DESC(as), + required => true, in => path, example => username })}, {who, hoconsc:mk(binary(), #{ desc => ?DESC(who), + required => true, in => path, example => <<"Badass">> })} diff --git a/apps/emqx_modules/src/emqx_modules_schema.erl b/apps/emqx_modules/src/emqx_modules_schema.erl index fd166c89e..9c1e07dbb 100644 --- a/apps/emqx_modules/src/emqx_modules_schema.erl +++ b/apps/emqx_modules/src/emqx_modules_schema.erl @@ -51,17 +51,17 @@ fields("rewrite") -> {action, sc( hoconsc:enum([subscribe, publish, all]), - #{desc => ?DESC(tr_action), example => publish} + #{required => true, desc => ?DESC(tr_action), example => publish} )}, {source_topic, sc( binary(), - #{desc => ?DESC(tr_source_topic), example => "x/#"} + #{required => true, desc => ?DESC(tr_source_topic), example => "x/#"} )}, {dest_topic, sc( binary(), - #{desc => ?DESC(tr_dest_topic), example => "z/y/$1"} + #{required => true, desc => ?DESC(tr_dest_topic), example => "z/y/$1"} )}, {re, fun regular_expression/1} ]; @@ -80,6 +80,7 @@ desc(_) -> undefined. regular_expression(type) -> binary(); +regular_expression(required) -> true; regular_expression(desc) -> ?DESC(tr_re); regular_expression(example) -> "^x/y/(.+)$"; regular_expression(validator) -> fun is_re/1;