Packages
rebar3_hex
6.8.0
7.1.0
7.0.11
7.0.10
7.0.9
7.0.8
7.0.7
7.0.6
7.0.5
7.0.4
7.0.3
7.0.2
7.0.1
7.0.0
6.11.9
6.11.8
6.11.7
6.11.6
6.11.5
6.11.4
6.11.3
6.11.2
6.11.1
6.11.0
6.10.3
6.10.2
6.10.1
6.10.0
6.9.6
6.9.5
6.9.4
6.9.3
6.9.2
6.9.1
6.9.0
6.8.0
6.7.0
6.6.0
6.5.0
6.4.0
6.3.0
6.2.0
6.1.0
6.0.0
4.1.0
4.0.0
3.1.0
3.0.0
2.5.1
2.5.0
2.4.0
2.3.0
2.2.0
2.1.0
2.0.0
1.20.0
1.19.0
1.18.0
1.17.0
1.16.0
1.15.0
1.14.0
1.13.0
1.12.0
1.11.0
1.10.0
1.9.1
1.9.0
1.8.1
1.8.0
1.7.2
1.7.1
1.7.0
1.6.3
1.6.1
1.6.0
1.5.0
1.4.0
1.3.0
1.2.0
1.1.0
0.9.0
0.8.0
0.7.0
0.6.0
0.5.1
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
Hex.pm plugin for rebar3
Current section
Files
Jump to
Current section
Files
src/rebar3_hex_client.erl
-module(rebar3_hex_client).
-export([key_add/3, key_get/2, key_delete/2, key_delete_all/1, key_list/1]).
-include("rebar3_hex.hrl").
key_add(HexConfig, <<KeyName/binary>>, Perms) ->
Res = hex_api_key:add(HexConfig, KeyName, Perms),
response(Res);
key_add(HexConfig, KeyName, Perms) ->
key_add(HexConfig, to_binary(KeyName), Perms).
key_get(HexConfig, <<KeyName/binary>>) ->
Res = hex_api_key:get(HexConfig, KeyName),
response(Res);
key_get(HexConfig, KeyName) ->
key_get(HexConfig, to_binary(KeyName)).
key_list(HexConfig) ->
Res = hex_api_key:list(HexConfig),
response(Res).
key_delete(HexConfig, <<KeyName/binary>>) ->
Res = hex_api_key:delete(HexConfig, KeyName),
response(Res);
key_delete(HexConfig, KeyName) ->
key_delete(HexConfig, to_binary(KeyName)).
key_delete_all(HexConfig) ->
Res = hex_api_key:delete_all(HexConfig),
response(Res).
response({ok, {200, _Headers, Res}}) ->
{success, Res};
response({ok, {201, _Headers, Res}}) ->
{created, Res};
response({ok, {204, _Headers, Res}}) ->
{success, Res};
response({ok, {401, _Headers, Res}}) ->
{unauthorized, Res};
response({ok, {404, _Headers, Res}}) ->
{not_found, Res};
response({ok, {422, _Headers, #{<<"message">> := <<"Validation error(s)">>} = Res}}) ->
{validation_errors, Res};
response({ok, {422, _Headers, Res}}) ->
{unprocessable, Res};
response({_, _} = Unknown) ->
Unknown.
to_binary(Subject) ->
rebar_utils:to_binary(Subject).