Преглед изворни кода

fix(bridge_v2_api): don't disable schema check

Thales Macedo Garitezi пре 2 година
родитељ
комит
4bea65bf97
2 измењених фајлова са 21 додато и 7 уклоњено
  1. 15 7
      apps/emqx_bridge/src/emqx_bridge_v2_api.erl
  2. 6 0
      rel/i18n/emqx_bridge_v2_api.hocon

+ 15 - 7
apps/emqx_bridge/src/emqx_bridge_v2_api.erl

@@ -70,11 +70,7 @@
 namespace() -> "bridge_v2".
 
 api_spec() ->
-    %% TODO
-    %% The check_schema option needs to be set to false so we get the
-    %% query_string to the delete operation. We can change this once
-    %% we have fixed the schmea for the delete operation.
-    emqx_dashboard_swagger:spec(?MODULE, #{check_schema => false}).
+    emqx_dashboard_swagger:spec(?MODULE, #{check_schema => true}).
 
 paths() ->
     [
@@ -127,6 +123,18 @@ param_path_id() ->
             }
         )}.
 
+param_qs_delete_cascade() ->
+    {also_delete_dep_actions,
+        mk(
+            boolean(),
+            #{
+                in => query,
+                required => false,
+                default => false,
+                desc => ?DESC("desc_qs_also_delete_dep_actions")
+            }
+        )}.
+
 param_path_operation_cluster() ->
     {operation,
         mk(
@@ -235,7 +243,7 @@ schema("/bridges_v2/:id") ->
             tags => [<<"bridges_v2">>],
             summary => <<"Delete bridge">>,
             description => ?DESC("desc_api5"),
-            parameters => [param_path_id()],
+            parameters => [param_path_id(), param_qs_delete_cascade()],
             responses => #{
                 204 => <<"Bridge deleted">>,
                 400 => error_schema(
@@ -369,7 +377,7 @@ schema("/bridges_v2_probe") ->
                 ?BRIDGE_NOT_FOUND(BridgeType, BridgeName)
         end
     );
-'/bridges_v2/:id'(delete, #{bindings := #{id := Id}, query_string := Qs} = All) ->
+'/bridges_v2/:id'(delete, #{bindings := #{id := Id}, query_string := Qs}) ->
     ?TRY_PARSE_ID(
         Id,
         case emqx_bridge_v2:lookup(BridgeType, BridgeName) of

+ 6 - 0
rel/i18n/emqx_bridge_v2_api.hocon

@@ -79,6 +79,12 @@ desc_param_path_id.desc:
 desc_param_path_id.label:
 """Bridge ID"""
 
+desc_qs_also_delete_dep_actions.desc:
+"""Whether to cascade delete dependent actions."""
+
+desc_qs_also_delete_dep_actions.label:
+"""Cascade delete dependent actions?"""
+
 desc_param_path_node.desc:
 """The node name, e.g. 'emqx@127.0.0.1'."""