18.4.0 released Sep 25, 2023 |
call-server ( <server> [ ,... ] ) | \ ( <server> [ array-count <array count> ] ) \ [ status [ define ] <status> ] \ [ started [ define ] <started> ] \ [ finished-okay [ define ] <finished okay> ]
#include "vely.h" void srv() { out-header default char *upay[3]; // list of URL payloads vv_fc *srv_arr[3]; // array of servers num i; for (i = 0; i < 3; i++) { // build URL payload string (( upay[i] @/op/add/key/key_<<p-num i>>/data/data_<<p-num i>>" )) // Create resources (prepare) for 3 server calls new-server srv_arr[i] location "/var/lib/vv/hash/sock/sock" \ method "GET" app-path "/hash" request-path "/server" \ url-payload upay[i] } // Make 3 server calls in parallel, each in it own thread call-server srv_arr array-count 3 status define st \ started define start \ finished-okay define fok // Check if all calls were completed if (st == VV_OKAY) { @No errors from call-server } if (start == 3) { @All three server calls started. } if (fok == 3) { @All three server calls finished. } // Display output data from server calls for (i = 0; i < 3; i++) { read-server srv_arr[i] data define rdata p-out rdata @ } }
out-header default // Create single call new-server define srv location "/var/lib/vv/app_name/sock/sock" \ method "GET" app-path "/app_name" request-path "/server" \ url-payload "/op/add/key/2" // Call single server call call-server srv finished-okay define sfok // Get results of a remote server call read-server srv data define rdata // Display results @Data from server is <<p-out rdata>>
new-server define srv location "192.168.0.28:2400" \ method "GET" app-path "/app_name" request-path "/server" \ url-payload "/op/add/key/2"