fix(mqtt_bridge): fix schema
This commit is contained in:
parent
139da6d720
commit
7befe898d0
|
@ -76,14 +76,6 @@ fields("config_connector") ->
|
||||||
}
|
}
|
||||||
)},
|
)},
|
||||||
{description, emqx_schema:description_schema()},
|
{description, emqx_schema:description_schema()},
|
||||||
{resource_opts,
|
|
||||||
mk(
|
|
||||||
hoconsc:ref(creation_opts),
|
|
||||||
#{
|
|
||||||
required => false,
|
|
||||||
desc => ?DESC(emqx_resource_schema, "creation_opts")
|
|
||||||
}
|
|
||||||
)},
|
|
||||||
{pool_size, fun egress_pool_size/1}
|
{pool_size, fun egress_pool_size/1}
|
||||||
% {ingress,
|
% {ingress,
|
||||||
% mk(
|
% mk(
|
||||||
|
@ -95,8 +87,9 @@ fields("config_connector") ->
|
||||||
% desc => ?DESC("ingress_desc")
|
% desc => ?DESC("ingress_desc")
|
||||||
% }
|
% }
|
||||||
% )}
|
% )}
|
||||||
] ++ fields("server_configs");
|
] ++ emqx_connector_schema:resource_opts_ref(?MODULE, resource_opts) ++
|
||||||
fields(creation_opts) ->
|
fields("server_configs");
|
||||||
|
fields(resource_opts) ->
|
||||||
emqx_connector_schema:resource_opts_fields();
|
emqx_connector_schema:resource_opts_fields();
|
||||||
fields("server_configs") ->
|
fields("server_configs") ->
|
||||||
[
|
[
|
||||||
|
|
|
@ -52,13 +52,8 @@ make_connector_config_from_bridge_v1_config(Config) ->
|
||||||
|| {FieldName, _} <- ConnectorConfigSchema
|
|| {FieldName, _} <- ConnectorConfigSchema
|
||||||
],
|
],
|
||||||
ConnectorConfigMap = maps:with(ConnectorTopFields, Config),
|
ConnectorConfigMap = maps:with(ConnectorTopFields, Config),
|
||||||
ResourceOptsSchema = emqx_bridge_mqtt_connector_schema:fields(creation_opts),
|
|
||||||
ResourceOptsTopFields = [
|
|
||||||
erlang:atom_to_binary(FieldName, utf8)
|
|
||||||
|| {FieldName, _} <- ResourceOptsSchema
|
|
||||||
],
|
|
||||||
ResourceOptsMap = maps:get(<<"resource_opts">>, ConnectorConfigMap, #{}),
|
ResourceOptsMap = maps:get(<<"resource_opts">>, ConnectorConfigMap, #{}),
|
||||||
ResourceOptsMap2 = maps:with(ResourceOptsTopFields, ResourceOptsMap),
|
ResourceOptsMap2 = emqx_connector_schema:project_to_connector_resource_opts(ResourceOptsMap),
|
||||||
ConnectorConfigMap2 = maps:put(<<"resource_opts">>, ResourceOptsMap2, ConnectorConfigMap),
|
ConnectorConfigMap2 = maps:put(<<"resource_opts">>, ResourceOptsMap2, ConnectorConfigMap),
|
||||||
IngressMap0 = maps:get(<<"ingress">>, Config, #{}),
|
IngressMap0 = maps:get(<<"ingress">>, Config, #{}),
|
||||||
EgressMap = maps:get(<<"egress">>, Config, #{}),
|
EgressMap = maps:get(<<"egress">>, Config, #{}),
|
||||||
|
@ -190,7 +185,13 @@ connector_action_config_to_bridge_v1_config(
|
||||||
Params = maps:get(<<"parameters">>, ActionConfig, #{}),
|
Params = maps:get(<<"parameters">>, ActionConfig, #{}),
|
||||||
ResourceOptsConnector = maps:get(<<"resource_opts">>, ConnectorConfig, #{}),
|
ResourceOptsConnector = maps:get(<<"resource_opts">>, ConnectorConfig, #{}),
|
||||||
ResourceOptsAction = maps:get(<<"resource_opts">>, ActionConfig, #{}),
|
ResourceOptsAction = maps:get(<<"resource_opts">>, ActionConfig, #{}),
|
||||||
ResourceOpts = maps:merge(ResourceOptsConnector, ResourceOptsAction),
|
ResourceOpts0 = maps:merge(ResourceOptsConnector, ResourceOptsAction),
|
||||||
|
V1ResourceOptsFields =
|
||||||
|
lists:map(
|
||||||
|
fun({Field, _}) -> atom_to_binary(Field) end,
|
||||||
|
emqx_bridge_mqtt_schema:fields("creation_opts")
|
||||||
|
),
|
||||||
|
ResourceOpts = maps:with(V1ResourceOptsFields, ResourceOpts0),
|
||||||
%% Check the direction of the action
|
%% Check the direction of the action
|
||||||
Direction =
|
Direction =
|
||||||
case maps:get(<<"remote">>, Params) of
|
case maps:get(<<"remote">>, Params) of
|
||||||
|
@ -212,11 +213,15 @@ connector_action_config_to_bridge_v1_config(
|
||||||
#{<<"egress">> => Parms3};
|
#{<<"egress">> => Parms3};
|
||||||
{<<"publisher">>, LocalT} ->
|
{<<"publisher">>, LocalT} ->
|
||||||
#{
|
#{
|
||||||
<<"egress">> => Parms3,
|
<<"egress">> =>
|
||||||
|
maps:merge(
|
||||||
|
Parms3, #{
|
||||||
<<"local">> =>
|
<<"local">> =>
|
||||||
#{
|
#{
|
||||||
<<"topic">> => LocalT
|
<<"topic">> => LocalT
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
};
|
};
|
||||||
{<<"subscriber">>, _} ->
|
{<<"subscriber">>, _} ->
|
||||||
#{<<"ingress">> => Parms3}
|
#{<<"ingress">> => Parms3}
|
||||||
|
|
Loading…
Reference in New Issue