./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 execute(_Ctx, admin, <<"setDomainPassword">>,
40 #{<<"domain">> := Domain, <<"password">> := Password}) ->
41
:-(
case mongoose_domain_api:set_domain_password(Domain, Password) of
42 ok ->
43
:-(
{ok, <<"Domain password set successfully">>};
44 {error, Error} ->
45
:-(
error_handler(Error, Domain, <<>>)
46 end;
47 execute(_Ctx, admin, <<"deleteDomainPassword">>, #{<<"domain">> := Domain}) ->
48
:-(
ok = mongoose_domain_api:delete_domain_password(Domain),
49
:-(
{ok, <<"Domain admin deleted successfully">>}.
50
51 error_handler(Error, Domain, HostType) ->
52
:-(
case {error, Error} of
53 {error, service_disabled} ->
54
:-(
{error, service_disabled};
55 {error, duplicate} ->
56
:-(
{error, #{what => domain_duplicate, domain => Domain}};
57 {error, not_found} ->
58
:-(
{error, #{what => domain_not_found, domain => Domain}};
59 {error, static} ->
60
:-(
{error, #{what => domain_static, domain => Domain}};
61 {error, wrong_host_type} ->
62
:-(
{error, #{what => wrong_host_type, host_type => HostType}};
63 {error, unknown_host_type} ->
64
:-(
{error, #{what => unknown_host_type, host_type => HostType}};
65 {error, {db_error, Term}} ->
66
:-(
{error, #{what => db_error, term => Term}}
67 end.
Line Hits Source