./ct_report/coverage/mongoose_graphql_domain_admin_mutation.COVER.html

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