diff options
author | Ulf Wiger <ulf@wiger.net> | 2015-05-13 21:28:00 +0200 |
---|---|---|
committer | Ulf Wiger <ulf@feuerlabs.com> | 2015-06-10 11:22:42 +0200 |
commit | 179fbae4c5bc3fa1da7ff6515d0b295fc5de825c (patch) | |
tree | d7e6da0c44b886bd4a6ab7e0f3fa9702a894fbc0 /components/schedule | |
parent | 98c449e716ec8dfd22a48127c7577b74c1b862a4 (diff) | |
download | rvi_core-179fbae4c5bc3fa1da7ff6515d0b295fc5de825c.tar.gz |
JWT-style certificates, WIP
Diffstat (limited to 'components/schedule')
-rw-r--r-- | components/schedule/src/schedule_rpc.erl | 50 |
1 files changed, 18 insertions, 32 deletions
diff --git a/components/schedule/src/schedule_rpc.erl b/components/schedule/src/schedule_rpc.erl index 17bcf83..8289234 100644 --- a/components/schedule/src/schedule_rpc.erl +++ b/components/schedule/src/schedule_rpc.erl @@ -230,7 +230,7 @@ handle_call( { rvi, schedule_message, %% Queue the message {_, NSt2 }= queue_message(SvcName, TransID, - rvi_routing:get_service_routes(SvcName), %% Can be no_route + rvi_routing:get_service_routes(SvcName), %% Can be [] (no route) Timeout, Parameters, Signature, @@ -484,28 +484,27 @@ queue_message(SvcName, %% Once up, the data link will invoke service_availble() %% to indicate that the service is available for the given DL. %% + Msg = #message { + transaction_id = TransID, + service = SvcName, + timeout = Timeout, + data_link = { DLMod, DLOpt }, + protocol = { ProtoMod, ProtoOpt }, + routes = RemainingRoutes, + timeout_tref = 0, + parameters = Parameters, + signature = Signature, + certificate = Certificate + }, + case DLMod:setup_data_link(St#st.cs, SvcName, DLOpt) of [ ok, DLTimeout ] -> TOut = select_timeout(calc_relative_tout(Timeout), DLTimeout), ?debug("sched:q(~p:~s): ~p seconds to compe up.", - [ DLMod, SvcName, TOut / 1000.0]), - - store_message(SvcRec, - DLMod, - #message { - transaction_id = TransID, - service = SvcName, - timeout = Timeout, - data_link = { DLMod, DLOpt }, - protocol = { ProtoMod, ProtoOpt }, - routes = RemainingRoutes, - timeout_tref = 0, - parameters = Parameters, - signature = Signature, - certificate = Certificate - }, - TOut), + [ DLMod, SvcName, TOut / 1000.0]), + + store_message(SvcRec, DLMod, Msg, TOut), {ok, St}; [ already_connected, _] -> @@ -515,20 +514,7 @@ queue_message(SvcName, %% Will re-queue message if cannot send. { _, NSt } = - send_message(DLMod, DLOpt, - ProtoMod, ProtoOpt, - #message { - transaction_id = TransID, - timeout = Timeout, - service = SvcName, - data_link = { DLMod, DLOpt }, - protocol = { ProtoMod, ProtoOpt }, - routes = RemainingRoutes, - timeout_tref = 0, - parameters = Parameters, - signature = Signature, - certificate = Certificate - }, St), + send_message(DLMod, DLOpt, ProtoMod, ProtoOpt, Msg, St), { ok, NSt }; |