diff options
author | Anders Svensson <[email protected]> | 2015-03-21 19:10:19 +0100 |
---|---|---|
committer | Anders Svensson <[email protected]> | 2015-03-24 10:57:03 +0100 |
commit | 949cec3fdcf94310aa567921ac2ea37569beb970 (patch) | |
tree | 616dc008095a53094f8d5c56c9eab694a7915289 /lib/diameter/examples/code/client.erl | |
parent | d6de8b13a37bc454f6d5a425cdaff6a114b4168c (diff) | |
download | otp-949cec3fdcf94310aa567921ac2ea37569beb970.tar.gz otp-949cec3fdcf94310aa567921ac2ea37569beb970.tar.bz2 otp-949cec3fdcf94310aa567921ac2ea37569beb970.zip |
Let examples override default service options
To make them a bit more flexible. Can now do things like this:
server:start([{'Product-Name', "Bob"}]),
server:listen({tcp, [{capx_timeout, 2000}]})
Beware that the latter is completely different from this:
server:listen(tcp, [{capx_timeout, 2000}])
Diffstat (limited to 'lib/diameter/examples/code/client.erl')
-rw-r--r-- | lib/diameter/examples/code/client.erl | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/diameter/examples/code/client.erl b/lib/diameter/examples/code/client.erl index 9b0972c8d1..844c9cdbdd 100644 --- a/lib/diameter/examples/code/client.erl +++ b/lib/diameter/examples/code/client.erl @@ -41,6 +41,7 @@ -include_lib("diameter/include/diameter_gen_base_rfc6733.hrl"). -export([start/1, %% start a service + start/2, %% connect/2, %% add a connecting transport call/1, %% send using the record encoding cast/1, %% send using the list encoding and detached @@ -77,11 +78,23 @@ start(Name) when is_atom(Name) -> - node:start(Name, ?SERVICE(Name)). + start(Name, []); + +start(Opts) + when is_list(Opts) -> + start(?DEF_SVC_NAME, Opts). + +%% start/0 start() -> start(?DEF_SVC_NAME). +%% start/2 + +start(Name, Opts) -> + node:start(Name, Opts ++ [T || {K,_} = T <- ?SERVICE(Name), + false == lists:keymember(K, 1, Opts)]). + %% connect/2 connect(Name, T) -> |