From 4a2c5a316148a9c0385f5f4b7f758c34528fb774 Mon Sep 17 00:00:00 2001 From: firest Date: Mon, 5 Feb 2024 10:21:06 +0800 Subject: [PATCH] fix(tdengine): keep the bridge schema still compatible with v1 --- .../src/emqx_bridge_tdengine_connector.erl | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl index d35be0f2e..ce9d84b4f 100644 --- a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl +++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl @@ -47,16 +47,13 @@ roots() -> [{config, #{type => hoconsc:ref(?MODULE, config)}}]. fields(config) -> - [ - {server, server()} - | adjust_fields(emqx_connector_schema_lib:relational_db_fields()) - ]; + base_config(true); %%===================================================================== %% V2 Hocon schema fields("config_connector") -> emqx_connector_schema:common_fields() ++ - fields(config) ++ + base_config(false) ++ emqx_connector_schema:resource_opts_ref(?MODULE, connector_resource_opts); fields(connector_resource_opts) -> emqx_connector_schema:resource_opts_fields(); @@ -67,6 +64,12 @@ fields("put") -> fields("get") -> emqx_bridge_schema:status_fields() ++ fields("post"). +base_config(HasDatabase) -> + [ + {server, server()} + | adjust_fields(emqx_connector_schema_lib:relational_db_fields(), HasDatabase) + ]. + desc(config) -> ?DESC("desc_config"); desc(connector_resource_opts) -> @@ -78,7 +81,7 @@ desc(Method) when Method =:= "get"; Method =:= "put"; Method =:= "post" -> desc(_) -> undefined. -adjust_fields(Fields) -> +adjust_fields(Fields, HasDatabase) -> lists:filtermap( fun ({username, OrigUsernameFn}) -> @@ -86,7 +89,7 @@ adjust_fields(Fields) -> ({password, _}) -> {true, {password, emqx_connector_schema_lib:password_field(#{required => true})}}; ({database, _}) -> - false; + HasDatabase; (_Field) -> true end,