fixeria has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo_dia2gsup/+/40123?usp=email )
Change subject: osmo_dia2gsup: add get_env/2 for convenience ......................................................................
osmo_dia2gsup: add get_env/2 for convenience
Change-Id: I4c6ce2899c8b41a81fd0278ad065ab65bfd0311d --- M src/osmo_dia2gsup.erl M src/osmo_dia2gsup_sup.erl 2 files changed, 13 insertions(+), 10 deletions(-)
Approvals: pespin: Looks good to me, approved Jenkins Builder: Verified
diff --git a/src/osmo_dia2gsup.erl b/src/osmo_dia2gsup.erl index b8d7a34..7c4f2c1 100644 --- a/src/osmo_dia2gsup.erl +++ b/src/osmo_dia2gsup.erl @@ -36,7 +36,7 @@ -include_lib("diameter/include/diameter_gen_base_rfc6733.hrl"). %-include_lib("diameter_settings.hrl").
--export([main/1]). +-export([get_env/2, main/1]).
% API -export([start_link/0]). @@ -56,9 +56,9 @@ -define(DIAMETER_DICT_HSS, diameter_3gpp_ts29_272).
-define(APPID_S6, #'diameter_base_Vendor-Specific-Application-Id'{'Vendor-Id'=10415, 'Auth-Application-Id'=[16777251]}). --define(SERVICE(Name), [{'Origin-Host', application:get_env(osmo_dia2gsup, origin_host, "hss.localdomain")}, - {'Origin-Realm', application:get_env(osmo_dia2gsup, origin_realm, "localdomain")}, - {'Vendor-Id', application:get_env(osmo_dia2gsup, vendor_id, 0)}, +-define(SERVICE(Name), [{'Origin-Host', get_env(origin_host, "hss.localdomain")}, + {'Origin-Realm', get_env(origin_realm, "localdomain")}, + {'Vendor-Id', get_env(vendor_id, 0)}, {'Origin-State-Id', diameter:origin_state_id()}, {'Product-Name', Name}, {'Auth-Application-Id', []}, @@ -85,6 +85,9 @@ stop() -> gen_server:cast(?SERVER, stop).
+get_env(Param, Default) -> + application:get_env(?MODULE, Param, Default). + main(_Args) -> application:ensure_all_started(?MODULE), timer:sleep(infinity). @@ -99,10 +102,10 @@ ProdName = atom_to_list(?MODULE), ok = diameter:start_service(?SVC_NAME, ?SERVICE(ProdName)),
- Ip = application:get_env(osmo_dia2gsup, diameter_ip, "127.0.0.8"), - Port = application:get_env(osmo_dia2gsup, diameter_port, 3868), - Proto = application:get_env(osmo_dia2gsup, diameter_proto, sctp), - ConnectTimer = application:get_env(osmo_dia2gsup, diameter_connect_timer, 30000), + Ip = get_env(diameter_ip, "127.0.0.8"), + Port = get_env(diameter_port, 3868), + Proto = get_env(diameter_proto, sctp), + ConnectTimer = get_env(diameter_connect_timer, 30000), listen(?SVC_NAME, {address, Proto, element(2,inet:parse_address(Ip)), Port}, {timer, ConnectTimer}), lager:info("Diameter HSS Application started on IP ~s, ~p port ~p~n", [Ip, Proto, Port]), {ok, State}. diff --git a/src/osmo_dia2gsup_sup.erl b/src/osmo_dia2gsup_sup.erl index dbb1ae6..929206d 100644 --- a/src/osmo_dia2gsup_sup.erl +++ b/src/osmo_dia2gsup_sup.erl @@ -10,8 +10,8 @@
init([]) -> % GSUP side - HlrIp = application:get_env(osmo_dia2gsup, hlr_ip, "127.0.0.1"), - HlrPort = application:get_env(osmo_dia2gsup, hlr_port, 4222), + HlrIp = osmo_dia2gsup:get_env(hlr_ip, "127.0.0.1"), + HlrPort = osmo_dia2gsup:get_env(hlr_port, 4222), Args = [{local, gsup_client}, gsup_client, [HlrIp, HlrPort, "HSS-00-00-00-00-00-00"], []], GsupChild = {gsup_client, {gen_server, start_link, Args}, permanent, 2000, worker, [gsup_client]}, % DIAMETER side