./ct_report/coverage/mongoose_wpool_rabbit.COVER.html

1 -module(mongoose_wpool_rabbit).
2 -behaviour(mongoose_wpool).
3
4 -export([init/0]).
5 -export([start/4]).
6 -export([stop/2]).
7
8 init() ->
9 1 application:ensure_all_started(amqp_client).
10
11 start(Host, Tag, WpoolOptsIn,
12 AMQPOpts = #{confirms_enabled := Confirms, max_worker_queue_len := MaxQueueLen}) ->
13 1 PoolName = mongoose_wpool:make_pool_name(rabbit, Host, Tag),
14 1 Worker = {mongoose_rabbit_worker,
15 [{amqp_client_opts, amqp_client_opts(AMQPOpts)},
16 {host, Host},
17 {pool_tag, Tag},
18 {confirms, Confirms},
19 {max_queue_len, MaxQueueLen}]},
20 1 WpoolOpts = [{worker, Worker} | WpoolOptsIn],
21 1 mongoose_wpool:start_sup_pool(rabbit, PoolName, WpoolOpts).
22
23 stop(_, _) ->
24
:-(
ok.
25
26 amqp_client_opts(AMQPOpts) ->
27 1 AMQPNetworkOpts = maps:with([amqp_host, amqp_port, amqp_username, amqp_password], AMQPOpts),
28 1 KVOpts = maps:to_list(AMQPNetworkOpts),
29 1 mongoose_amqp:network_params(KVOpts).
Line Hits Source