./ct_report/coverage/mongoose_graphql_domain_admin_mutation.COVER.html

1 -module(mongoose_graphql_domain_admin_mutation).
2 -behaviour(mongoose_graphql).
3
4 -export([execute/4]).
5
6 -ignore_xref([execute/4]).
7
8 -include("../mongoose_graphql_types.hrl").
9
10 execute(_Ctx, admin, <<"addDomain">>, #{<<"domain">> := Domain, <<"hostType">> := HostType}) ->
11
:-(
case mongoose_domain_api:insert_domain(Domain, HostType) of
12 ok ->
13
:-(
{ok, #domain{domain = Domain, host_type = HostType}};
14 {error, Error} ->
15
:-(
error_handler(Error, Domain, HostType)
16 end;
17 execute(_Ctx, admin, <<"removeDomain">>, #{<<"domain">> := Domain, <<"hostType">> := HostType}) ->
18
:-(
case mongoose_domain_api:delete_domain(Domain, HostType) of
19 ok ->
20
:-(
DomainObj = #domain{domain = Domain, host_type = HostType},
21
:-(
{ok, #{<<"domain">> => DomainObj, <<"msg">> => <<"Domain removed!">>}};
22 {error, Error} ->
23
:-(
error_handler(Error, Domain, HostType)
24 end;
25 execute(_Ctx, admin, <<"enableDomain">>, #{<<"domain">> := Domain}) ->
26
:-(
case mongoose_domain_api:enable_domain(Domain) of
27 ok ->
28
:-(
{ok, #domain{enabled = true, domain = Domain}};
29 {error, Error} ->
30
:-(
error_handler(Error, Domain, <<"">>)
31 end;
32 execute(_Ctx, admin, <<"disableDomain">>, #{<<"domain">> := Domain}) ->
33
:-(
case mongoose_domain_api:disable_domain(Domain) of
34 ok ->
35
:-(
{ok, #domain{enabled = false, domain = Domain}};
36 {error, Error} ->
37
:-(
error_handler(Error, Domain, <<"">>)
38 end.
39
40 error_handler(Error, Domain, HostType) ->
41
:-(
case {error, Error} of
42 {error, service_disabled} ->
43
:-(
{error, service_disabled};
44 {error, duplicate} ->
45
:-(
{error, #{what => domain_duplicate, domain => Domain}};
46 {error, not_found} ->
47
:-(
{error, #{what => domain_not_found, domain => Domain}};
48 {error, static} ->
49
:-(
{error, #{what => domain_static, domain => Domain}};
50 {error, wrong_host_type} ->
51
:-(
{error, #{what => wrong_host_type, host_type => HostType}};
52 {error, unknown_host_type} ->
53
:-(
{error, #{what => unknown_host_type, host_type => HostType}};
54 {error, {db_error, Term}} ->
55
:-(
{error, #{what => db_error, term => Term}}
56 end.
Line Hits Source