Просмотр исходного кода

fix(config): change handler name to emqx_data_bridge_config_handler

Shawn 4 лет назад
Родитель
Сommit
444c721f93

+ 4 - 1
apps/emqx/src/emqx_config_handler.erl

@@ -74,7 +74,10 @@ update_config(top, Config) ->
     emqx_config:put(Config),
     save_config_to_disk(Config);
 update_config(Handler, Config) ->
-    gen_server:cast(Handler, {handle_update_config, Config}).
+    case is_process_alive(whereis(Handler)) of
+        true -> gen_server:cast(Handler, {handle_update_config, Config});
+        false -> error({not_alive, Handler})
+    end.
 
 %%============================================================================
 %% callbacks of emqx_config_handler (the top-level handler)

+ 6 - 3
apps/emqx_data_bridge/src/emqx_data_bridge_api.erl

@@ -76,7 +76,7 @@ create_bridge(#{name := Name}, Params) ->
             emqx_data_bridge:name_to_resource_id(Name),
             emqx_data_bridge:resource_type(BridgeType), Config) of
         {ok, Data} ->
-            emqx_config_handler:update_config(emqx_data_bridge, get_all_configs()),
+            update_config(),
             {200, #{code => 0, data => format_api_reply(emqx_resource_api:format_data(Data))}};
         {error, already_created} ->
             {400, #{code => 102, message => <<"bridge already created: ", Name/binary>>}};
@@ -93,7 +93,7 @@ update_bridge(#{name := Name}, Params) ->
             emqx_data_bridge:name_to_resource_id(Name),
             emqx_data_bridge:resource_type(BridgeType), Config, []) of
         {ok, Data} ->
-            emqx_config_handler:update_config(emqx_data_bridge, get_all_configs()),
+            update_config(),
             {200, #{code => 0, data => format_api_reply(emqx_resource_api:format_data(Data))}};
         {error, not_found} ->
             {400, #{code => 102, message => <<"bridge not_found: ", Name/binary>>}};
@@ -106,7 +106,7 @@ update_bridge(#{name := Name}, Params) ->
 delete_bridge(#{name := Name}, _Params) ->
     case emqx_resource:remove(emqx_data_bridge:name_to_resource_id(Name)) of
         ok ->
-            emqx_config_handler:update_config(emqx_data_bridge, get_all_configs()),
+            update_config(),
             {200, #{code => 0, data => #{}}};
         {error, Reason} ->
             {500, #{code => 102, message => emqx_resource_api:stringnify(Reason)}}
@@ -123,3 +123,6 @@ format_conf(#{resource_type := Type, id := Id, config := Conf}) ->
 
 get_all_configs() ->
     [format_conf(Data) || Data <- emqx_data_bridge:list_bridges()].
+
+update_config() ->
+    emqx_config_handler:update_config(emqx_data_bridge_config_handler, get_all_configs()).

+ 0 - 2
apps/emqx_resource/examples/demo.md

@@ -105,7 +105,6 @@ To create a mysql data bridge:
 BridgeMySQL='{
     "type": "mysql",
     "status": "started",
-    "name": "mysql-def",
     "config": {
       "verify": false,
       "user": "root",
@@ -134,7 +133,6 @@ To update an existing data bridge:
 BridgeMySQL='{
     "type": "mysql",
     "status": "started",
-    "name": "mysql-def",
     "config": {
       "verify": false,
       "user": "root",