emqx_bridge_pgsql_action_info.erl 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. %%--------------------------------------------------------------------
  2. %% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved.
  3. %%--------------------------------------------------------------------
  4. -module(emqx_bridge_pgsql_action_info).
  5. -behaviour(emqx_action_info).
  6. -export([
  7. bridge_v1_type_name/0,
  8. action_type_name/0,
  9. connector_type_name/0,
  10. schema_module/0,
  11. connector_action_config_to_bridge_v1_config/2
  12. ]).
  13. bridge_v1_type_name() -> pgsql.
  14. action_type_name() -> pgsql.
  15. connector_type_name() -> pgsql.
  16. schema_module() -> emqx_bridge_pgsql.
  17. connector_action_config_to_bridge_v1_config(ConnectorConfig, ActionConfig) ->
  18. Config0 = emqx_action_info:connector_action_config_to_bridge_v1_config(
  19. ConnectorConfig,
  20. ActionConfig
  21. ),
  22. maps:with(bridge_v1_fields(), Config0).
  23. %%------------------------------------------------------------------------------------------
  24. %% Internal helper functions
  25. %%------------------------------------------------------------------------------------------
  26. bridge_v1_fields() ->
  27. [
  28. emqx_utils_conv:bin(K)
  29. || {K, _V} <- emqx_bridge_pgsql:fields("config")
  30. ].