diff --git a/apps/emqx_bridge_es/src/emqx_bridge_es.app.src b/apps/emqx_bridge_es/src/emqx_bridge_es.app.src index 34b07d305..9ed9d572d 100644 --- a/apps/emqx_bridge_es/src/emqx_bridge_es.app.src +++ b/apps/emqx_bridge_es/src/emqx_bridge_es.app.src @@ -1,7 +1,7 @@ %% -*- mode: erlang -*- {application, emqx_bridge_es, [ {description, "EMQX Enterprise Elastic Search Bridge"}, - {vsn, "0.1.0"}, + {vsn, "0.1.1"}, {modules, [ emqx_bridge_es, emqx_bridge_es_connector @@ -12,7 +12,10 @@ stdlib, emqx_resource ]}, - {env, []}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_es_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_es_connector_info]} + ]}, {licenses, ["Business Source License 1.1"]}, {maintainers, ["EMQX Team "]}, {links, [ diff --git a/apps/emqx_bridge_es/src/emqx_bridge_es_connector_info.erl b/apps/emqx_bridge_es/src/emqx_bridge_es_connector_info.erl new file mode 100644 index 000000000..4542c9382 --- /dev/null +++ b/apps/emqx_bridge_es/src/emqx_bridge_es_connector_info.erl @@ -0,0 +1,43 @@ +-module(emqx_bridge_es_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + elasticsearch. + +bridge_types() -> + [elasticsearch]. + +resource_callback_module() -> + emqx_bridge_es_connector. + +config_transform_module() -> + emqx_bridge_es_connector. + +config_schema() -> + {elasticsearch, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_es_connector, config)), + #{ + desc => <<"ElasticSearch Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_azure_event_hub. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_es_connector, <<"elasticsearch">>, Method + ). diff --git a/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb.app.src b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb.app.src index 357db5c96..c61335f8f 100644 --- a/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb.app.src +++ b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb.app.src @@ -8,7 +8,10 @@ emqx_resource, greptimedb ]}, - {env, [{emqx_action_info_modules, [emqx_bridge_greptimedb_action_info]}]}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_greptimedb_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_greptimedb_connector_info]} + ]}, {modules, []}, {links, []} ]}. diff --git a/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector_info.erl b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector_info.erl new file mode 100644 index 000000000..cf804c45a --- /dev/null +++ b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector_info.erl @@ -0,0 +1,43 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_greptimedb_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + greptimedb. + +bridge_types() -> + [greptimedb]. + +resource_callback_module() -> + emqx_bridge_greptimedb_connector. + +config_schema() -> + {greptimedb, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_greptimedb, "config_connector")), + #{ + desc => <<"GreptimeDB Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_greptimedb. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_greptimedb, <<"greptimedb">>, Method ++ "_connector" + ). diff --git a/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb.app.src b/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb.app.src index b666beeed..9515d8d19 100644 --- a/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb.app.src +++ b/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb.app.src @@ -12,7 +12,10 @@ stdlib, emqx_resource ]}, - {env, []}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_iotdb_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_iotdb_connector_info]} + ]}, {licenses, ["Business Source License 1.1"]}, {maintainers, ["EMQX Team "]}, {links, [ diff --git a/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb_connector_info.erl b/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb_connector_info.erl new file mode 100644 index 000000000..f91151d87 --- /dev/null +++ b/apps/emqx_bridge_iotdb/src/emqx_bridge_iotdb_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_iotdb_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + iotdb. + +bridge_types() -> + [iotdb]. + +resource_callback_module() -> + emqx_bridge_iotdb_connector. + +config_transform_module() -> + emqx_bridge_iotdb_connector. + +config_schema() -> + {iotdb, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_iotdb_connector, config)), + #{ + desc => <<"IoTDB Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_iotdb_connector. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_iotdb_connector, <<"iotdb">>, Method + ). diff --git a/apps/emqx_bridge_opents/src/emqx_bridge_opents.app.src b/apps/emqx_bridge_opents/src/emqx_bridge_opents.app.src index 2469acaa8..8514eb37c 100644 --- a/apps/emqx_bridge_opents/src/emqx_bridge_opents.app.src +++ b/apps/emqx_bridge_opents/src/emqx_bridge_opents.app.src @@ -8,7 +8,10 @@ emqx_resource, opentsdb ]}, - {env, []}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_opents_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_opents_connector_info]} + ]}, {modules, []}, {licenses, ["BSL"]}, diff --git a/apps/emqx_bridge_opents/src/emqx_bridge_opents_connector_info.erl b/apps/emqx_bridge_opents/src/emqx_bridge_opents_connector_info.erl new file mode 100644 index 000000000..e312e7d4a --- /dev/null +++ b/apps/emqx_bridge_opents/src/emqx_bridge_opents_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_opents_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + opents. + +bridge_types() -> + [opents]. + +resource_callback_module() -> + emqx_bridge_opents_connector. + +config_transform_module() -> + emqx_bridge_opents_connector. + +config_schema() -> + {opents, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_opents_connector, "config_connector")), + #{ + desc => <<"OpenTSDB Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_opents_connector. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_opents_connector, <<"opents">>, Method + ). diff --git a/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar.app.src b/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar.app.src index ce7c313ae..dc61ae334 100644 --- a/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar.app.src +++ b/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar.app.src @@ -1,6 +1,6 @@ {application, emqx_bridge_pulsar, [ {description, "EMQX Pulsar Bridge"}, - {vsn, "0.2.0"}, + {vsn, "0.1.9"}, {registered, []}, {applications, [ kernel, @@ -8,7 +8,11 @@ emqx_resource, pulsar ]}, - {env, []}, + + {env, [ + {emqx_action_info_modules, [emqx_bridge_pulsar_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_pulsar_connector_info]} + ]}, {modules, []}, {links, []} diff --git a/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar_connector_info.erl b/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar_connector_info.erl new file mode 100644 index 000000000..94f8be03d --- /dev/null +++ b/apps/emqx_bridge_pulsar/src/emqx_bridge_pulsar_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_pulsar_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + pulsar. + +bridge_types() -> + [pulsar_producer, pulsar]. + +resource_callback_module() -> + emqx_bridge_pulsar_connector. + +config_transform_module() -> + emqx_bridge_pulsar_connector. + +config_schema() -> + {pulsar, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_pulsar_connector_schema, "config_connector")), + #{ + desc => <<"Pulsar Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_pulsar_connector_schema. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_pulsar_connector_schema, <<"pulsar">>, Method + ). diff --git a/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq.app.src b/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq.app.src index a885cc6bc..b9e271bf9 100644 --- a/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq.app.src +++ b/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq.app.src @@ -10,7 +10,11 @@ rabbit_common, amqp_client ]}, - {env, []}, + + {env, [ + {emqx_action_info_modules, [emqx_bridge_rabbitmq_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_rabbitmq_connector_info]} + ]}, {modules, []}, {links, []} ]}. diff --git a/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq_connector_info.erl b/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq_connector_info.erl new file mode 100644 index 000000000..9a48edae7 --- /dev/null +++ b/apps/emqx_bridge_rabbitmq/src/emqx_bridge_rabbitmq_connector_info.erl @@ -0,0 +1,49 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_rabbitmq_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + rabbitmq. + +bridge_types() -> + [rabbitmq]. + +resource_callback_module() -> + emqx_bridge_rabbitmq_connector. + +config_transform_module() -> + emqx_bridge_rabbitmq_connector. + +config_schema() -> + {rabbitmq, + hoconsc:mk( + hoconsc:map( + name, hoconsc:ref(emqx_bridge_rabbitmq_connector_schema, "config_connector") + ), + #{ + desc => <<"RabbitMQ Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_rabbitmq_connector_schema. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_rabbitmq_connector_schema, <<"rabbitmq">>, Method + ). diff --git a/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector_info.erl b/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector_info.erl index 8a3cdd6cd..3de7e8108 100644 --- a/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector_info.erl +++ b/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector_info.erl @@ -38,5 +38,5 @@ schema_module() -> api_schema(Method) -> emqx_connector_schema:api_ref( - emqx_bridge_redis_schema, <<"mysql">>, Method ++ "_connector" + emqx_bridge_redis_schema, <<"redis">>, Method ++ "_connector" ). diff --git a/apps/emqx_bridge_s3/src/emqx_bridge_s3.app.src b/apps/emqx_bridge_s3/src/emqx_bridge_s3.app.src index 0047b5e51..a6000067a 100644 --- a/apps/emqx_bridge_s3/src/emqx_bridge_s3.app.src +++ b/apps/emqx_bridge_s3/src/emqx_bridge_s3.app.src @@ -1,6 +1,6 @@ {application, emqx_bridge_s3, [ {description, "EMQX Enterprise S3 Bridge"}, - {vsn, "0.1.0"}, + {vsn, "0.1.1"}, {registered, []}, {applications, [ kernel, @@ -10,7 +10,8 @@ emqx_s3 ]}, {env, [ - {emqx_action_info_modules, [emqx_bridge_s3_action_info]} + {emqx_action_info_modules, [emqx_bridge_s3_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_s3_connector_info]} ]}, {modules, []}, {links, []} diff --git a/apps/emqx_bridge_s3/src/emqx_bridge_s3_connector_info.erl b/apps/emqx_bridge_s3/src/emqx_bridge_s3_connector_info.erl new file mode 100644 index 000000000..be3c29bae --- /dev/null +++ b/apps/emqx_bridge_s3/src/emqx_bridge_s3_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_s3_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + s3. + +bridge_types() -> + [s3]. + +resource_callback_module() -> + emqx_bridge_s3_connector. + +config_transform_module() -> + emqx_bridge_s3. + +config_schema() -> + {s3, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_s3, "config_connector")), + #{ + desc => <<"S3 Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_s3. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_s3, <<"s3">>, Method ++ "_connector" + ). diff --git a/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver.app.src b/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver.app.src index 1340161a2..5931b17de 100644 --- a/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver.app.src +++ b/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver.app.src @@ -3,7 +3,10 @@ {vsn, "0.1.6"}, {registered, []}, {applications, [kernel, stdlib, emqx_resource, odbc]}, - {env, [{emqx_action_info_modules, [emqx_bridge_sqlserver_action_info]}]}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_sqlserver_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_sqlserver_connector_info]} + ]}, {env, []}, {modules, []}, {links, []} diff --git a/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver_connector_info.erl b/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver_connector_info.erl new file mode 100644 index 000000000..8dbeaa30b --- /dev/null +++ b/apps/emqx_bridge_sqlserver/src/emqx_bridge_sqlserver_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_sqlserver_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + sqlserver. + +bridge_types() -> + [sqlserver]. + +resource_callback_module() -> + emqx_bridge_sqlserver_connector. + +config_transform_module() -> + emqx_bridge_sqlserver. + +config_schema() -> + {sqlserver, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_sqlserver, "config_connector")), + #{ + desc => <<"Microsoft SQL Server Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_sqlserver. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_sqlserver, <<"sqlserver">>, Method ++ "_connector" + ). diff --git a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src index 898a3211d..b1c3c2d6a 100644 --- a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src +++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src @@ -8,7 +8,10 @@ emqx_resource, tdengine ]}, - {env, []}, + {env, [ + {emqx_action_info_modules, [emqx_bridge_tdengine_action_info]}, + {emqx_connector_info_modules, [emqx_bridge_tdengine_connector_info]} + ]}, {modules, []}, {links, []} ]}. diff --git a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector_info.erl b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector_info.erl new file mode 100644 index 000000000..010e77269 --- /dev/null +++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector_info.erl @@ -0,0 +1,47 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%%-------------------------------------------------------------------- + +-module(emqx_bridge_tdengine_connector_info). + +-behaviour(emqx_connector_info). + +-export([ + type_name/0, + bridge_types/0, + resource_callback_module/0, + config_transform_module/0, + config_schema/0, + schema_module/0, + api_schema/1 +]). + +type_name() -> + tdengine. + +bridge_types() -> + [tdengine]. + +resource_callback_module() -> + emqx_bridge_tdengine_connector. + +config_transform_module() -> + emqx_bridge_tdengine_connector. + +config_schema() -> + {tdengine, + hoconsc:mk( + hoconsc:map(name, hoconsc:ref(emqx_bridge_tdengine_connector, "config_connector")), + #{ + desc => <<"TDengine Connector Config">>, + required => false + } + )}. + +schema_module() -> + emqx_bridge_tdengine_connector. + +api_schema(Method) -> + emqx_connector_schema:api_ref( + emqx_bridge_tdengine_connector, <<"tdengine">>, Method + ). diff --git a/apps/emqx_connector/src/emqx_connector_info.erl b/apps/emqx_connector/src/emqx_connector_info.erl index bc80ed6c7..c53fede62 100644 --- a/apps/emqx_connector/src/emqx_connector_info.erl +++ b/apps/emqx_connector/src/emqx_connector_info.erl @@ -77,7 +77,16 @@ hard_coded_connector_info_modules_ee() -> emqx_bridge_redis_connector_info, emqx_bridge_rocketmq_connector_info, emqx_bridge_syskeeper_connector_info, - emqx_bridge_syskeeper_proxy_connector_info + emqx_bridge_syskeeper_proxy_connector_info, + emqx_bridge_sqlserver_connector_info, + emqx_bridge_iotdb_connector_info, + emqx_bridge_es_connector_info, + emqx_bridge_opents_connector_info, + emqx_bridge_greptimedb_connector_info, + emqx_bridge_pulsar_connector_info, + emqx_bridge_tdengine_connector_info, + emqx_bridge_rabbitmq_connector_info, + emqx_bridge_s3_connector_info ]. -else. hard_coded_connector_info_modules_ee() -> diff --git a/apps/emqx_connector/src/schema/emqx_connector_ee_schema.erl b/apps/emqx_connector/src/schema/emqx_connector_ee_schema.erl index 0db605bfe..8e5f1c001 100644 --- a/apps/emqx_connector/src/schema/emqx_connector_ee_schema.erl +++ b/apps/emqx_connector/src/schema/emqx_connector_ee_schema.erl @@ -21,42 +21,12 @@ resource_type(Type) when is_binary(Type) -> resource_type(binary_to_atom(Type, utf8)); -resource_type(sqlserver) -> - emqx_bridge_sqlserver_connector; -resource_type(iotdb) -> - emqx_bridge_iotdb_connector; -resource_type(elasticsearch) -> - emqx_bridge_es_connector; -resource_type(opents) -> - emqx_bridge_opents_connector; -resource_type(greptimedb) -> - emqx_bridge_greptimedb_connector; -resource_type(tdengine) -> - emqx_bridge_tdengine_connector; -resource_type(pulsar) -> - emqx_bridge_pulsar_connector; -resource_type(rabbitmq) -> - emqx_bridge_rabbitmq_connector; -resource_type(s3) -> - emqx_bridge_s3_connector; resource_type(Type) -> error({unknown_connector_type, Type}). %% For connectors that need to override connector configurations. connector_impl_module(ConnectorType) when is_binary(ConnectorType) -> connector_impl_module(binary_to_atom(ConnectorType, utf8)); -connector_impl_module(iotdb) -> - emqx_bridge_iotdb_connector; -connector_impl_module(elasticsearch) -> - emqx_bridge_es_connector; -connector_impl_module(opents) -> - emqx_bridge_opents_connector; -connector_impl_module(pulsar) -> - emqx_bridge_pulsar_connector; -connector_impl_module(tdengine) -> - emqx_bridge_tdengine_connector; -connector_impl_module(rabbitmq) -> - emqx_bridge_rabbitmq_connector; connector_impl_module(_ConnectorType) -> undefined. @@ -66,112 +36,13 @@ fields(connectors) -> connector_structs(). connector_structs() -> - [ - {sqlserver, - mk( - hoconsc:map(name, ref(emqx_bridge_sqlserver, "config_connector")), - #{ - desc => <<"Microsoft SQL Server Connector Config">>, - required => false - } - )}, - {iotdb, - mk( - hoconsc:map(name, ref(emqx_bridge_iotdb_connector, config)), - #{ - desc => <<"IoTDB Connector Config">>, - required => false - } - )}, - {elasticsearch, - mk( - hoconsc:map(name, ref(emqx_bridge_es_connector, config)), - #{ - desc => <<"ElasticSearch Connector Config">>, - required => false - } - )}, - {opents, - mk( - hoconsc:map(name, ref(emqx_bridge_opents_connector, "config_connector")), - #{ - desc => <<"OpenTSDB Connector Config">>, - required => false - } - )}, - {greptimedb, - mk( - hoconsc:map(name, ref(emqx_bridge_greptimedb, "config_connector")), - #{ - desc => <<"GreptimeDB Connector Config">>, - required => false - } - )}, - {tdengine, - mk( - hoconsc:map(name, ref(emqx_bridge_tdengine_connector, "config_connector")), - #{ - desc => <<"TDengine Connector Config">>, - required => false - } - )}, - {pulsar, - mk( - hoconsc:map(name, ref(emqx_bridge_pulsar_connector_schema, "config_connector")), - #{ - desc => <<"Pulsar Connector Config">>, - required => false - } - )}, - {rabbitmq, - mk( - hoconsc:map(name, ref(emqx_bridge_rabbitmq_connector_schema, "config_connector")), - #{ - desc => <<"RabbitMQ Connector Config">>, - required => false - } - )}, - {s3, - mk( - hoconsc:map(name, ref(emqx_bridge_s3, "config_connector")), - #{ - desc => <<"S3 Connector Config">>, - required => false - } - )} - ]. + []. schema_modules() -> - [ - emqx_bridge_sqlserver, - emqx_postgresql_connector_schema, - emqx_bridge_iotdb_connector, - emqx_bridge_es_connector, - emqx_bridge_rabbitmq_connector_schema, - emqx_bridge_pulsar_connector_schema, - emqx_bridge_opents_connector, - emqx_bridge_greptimedb, - emqx_bridge_tdengine_connector, - emqx_bridge_s3 - ]. + []. -api_schemas(Method) -> - [ - %% We need to map the `type' field of a request (binary) to a - %% connector schema module. - api_ref(emqx_bridge_sqlserver, <<"sqlserver">>, Method ++ "_connector"), - api_ref(emqx_bridge_iotdb_connector, <<"iotdb">>, Method), - api_ref(emqx_bridge_es_connector, <<"elasticsearch">>, Method), - api_ref(emqx_bridge_opents_connector, <<"opents">>, Method), - api_ref(emqx_bridge_rabbitmq_connector_schema, <<"rabbitmq">>, Method), - api_ref(emqx_bridge_pulsar_connector_schema, <<"pulsar">>, Method), - api_ref(emqx_bridge_greptimedb, <<"greptimedb">>, Method ++ "_connector"), - api_ref(emqx_bridge_tdengine_connector, <<"tdengine">>, Method), - api_ref(emqx_bridge_s3, <<"s3">>, Method ++ "_connector") - ]. - -api_ref(Module, Type, Method) -> - {Type, ref(Module, Method)}. +api_schemas(_Method) -> + []. -else. diff --git a/apps/emqx_connector/src/schema/emqx_connector_schema.erl b/apps/emqx_connector/src/schema/emqx_connector_schema.erl index 529de41a0..7bfcab254 100644 --- a/apps/emqx_connector/src/schema/emqx_connector_schema.erl +++ b/apps/emqx_connector/src/schema/emqx_connector_schema.erl @@ -122,24 +122,6 @@ connector_info_schema_modules() -> %% @doc Return old bridge(v1) and/or connector(v2) type %% from the latest connector type name. -connector_type_to_bridge_types(sqlserver) -> - [sqlserver]; -connector_type_to_bridge_types(iotdb) -> - [iotdb]; -connector_type_to_bridge_types(elasticsearch) -> - [elasticsearch]; -connector_type_to_bridge_types(opents) -> - [opents]; -connector_type_to_bridge_types(greptimedb) -> - [greptimedb]; -connector_type_to_bridge_types(pulsar) -> - [pulsar_producer, pulsar]; -connector_type_to_bridge_types(tdengine) -> - [tdengine]; -connector_type_to_bridge_types(rabbitmq) -> - [rabbitmq]; -connector_type_to_bridge_types(s3) -> - [s3]; connector_type_to_bridge_types(Type) -> emqx_connector_info:bridge_types(Type).