diff options
author | Magnus Feuer <mfeuer@jaguarlandrover.com> | 2015-09-14 12:28:15 -0700 |
---|---|---|
committer | Magnus Feuer <mfeuer@jaguarlandrover.com> | 2015-09-14 12:28:15 -0700 |
commit | 60d79c09330c89ad66e7d8e25133a6f171a08a81 (patch) | |
tree | a675b4057c8cd9cfa3cdbd630648f61f205f5880 /components | |
parent | 052a7c05ca61b76827904175e79b690e3d03f49e (diff) | |
download | rvi_core-60d79c09330c89ad66e7d8e25133a6f171a08a81.tar.gz |
mfeuer_json_params: Now handles messages between services on the same node both on websock and HTTP
Diffstat (limited to 'components')
-rw-r--r-- | components/service_edge/src/service_edge_rpc.erl | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/components/service_edge/src/service_edge_rpc.erl b/components/service_edge/src/service_edge_rpc.erl index e61b781..354f724 100644 --- a/components/service_edge/src/service_edge_rpc.erl +++ b/components/service_edge/src/service_edge_rpc.erl @@ -406,7 +406,9 @@ handle_call({ rvi, handle_local_message, authorize_rpc:authorize_local_message( St#st.cs, SvcName, [{service_name, SvcName}, {timeout, TimeoutArg}, - {parameters, Parameters}]), + %% {parameters, Parameters}, + {parameters, {struct, Parameters}} + ]), %% %% Slick but ugly. @@ -497,6 +499,7 @@ handle_cast({rvi, handle_remote_message, {remote_port, Port}, {service_name, SvcName}, {timeout, Timeout}, + %% {parameters, [ {struct, Parameters}]}, {parameters, Parameters}, {signature, Signature}]) of [ ok ] -> @@ -606,21 +609,16 @@ dispatch_to_local_service([ $w, $s, $: | WSPidStr], services_unavailable, ok; dispatch_to_local_service([ $w, $s, $: | WSPidStr], message, - {struct, [{ service_name, SvcName}, { parameters, [ { struct, Args} ]}]} ) -> - ?info("service_edge:dispatch_to_local_service(message, websock): ~p", [Args]), - wse_server:send(list_to_pid(WSPidStr), - json_rpc_notification("message", - [{ "service_name", SvcName}, {parameters, { struct, Args}}])), - %% No response expected. - ?debug("service_edge:dispatch_to_local_service(message, websock): Done"), - ok; + {struct, [{ service_name, SvcName}, + { parameters, { struct, Parameters} } + ]} ) -> -dispatch_to_local_service([ $w, $s, $: | WSPidStr], message, - {struct, [{ service_name, SvcName}, { parameters,{array,[{struct, Args}]}}]}) -> - ?info("service_edge:dispatch_to_local_service(message/alt, websock): ~p", [Args]), + ?info("service_edge:dispatch_to_local_service(message, websock): ~p", + [Parameters]), wse_server:send(list_to_pid(WSPidStr), json_rpc_notification("message", - [{ "service_name", SvcName}, {parameters, { struct, Args}}])), + [{ "service_name", SvcName}, + {parameters, { struct, Parameters}}])), %% No response expected. ?debug("service_edge:dispatch_to_local_service(message, websock): Done"), ok; @@ -663,7 +661,7 @@ forward_message_to_local_service(URL,SvcName, Parameters, _CompSpec) -> dispatch_to_local_service(URL, message, {struct, [ { service_name, LocalSvcName }, - { parameters, Parameters }]})) + { parameters, { struct, Parameters }}]})) end), [ ok, -1 ]. |