X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-ws-client.h;h=362d74663b575093698f28593fa8883604d7cbb6;hb=65353dce81a629e042800bb7b86fcd869a76727e;hp=f2aee7d07168f774e4e3cff1b73f39e03617d10d;hpb=26bca5f8a8c6f9403a84945a5cd914b6da948efd;p=src%2Fapp-framework-binder.git diff --git a/src/afb-ws-client.h b/src/afb-ws-client.h index f2aee7d0..362d7466 100644 --- a/src/afb-ws-client.h +++ b/src/afb-ws-client.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2016 "IoT.bzh" + * Copyright (C) 2015-2020 "IoT.bzh" * Author: José Bollo * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -19,11 +19,25 @@ struct afb_wsj1; struct afb_wsj1_itf; +struct afb_proto_ws; +struct afb_proto_ws_client_itf; +struct sd_event; /* * Makes the WebSocket handshake at the 'uri' and if successful - * instanciate a wsj1 websocket for this connection using 'itf' and 'closure'. + * instantiate a wsj1 websocket for this connection using 'itf' and 'closure'. * (see afb_wsj1_create). - * Returns NULL in case of failure with errno set appriately. + * The systemd event loop 'eloop' is used to handle the websocket. + * Returns NULL in case of failure with errno set appropriately. */ -extern struct afb_wsj1 *afb_ws_client_connect_wsj1(const char *uri, struct afb_wsj1_itf *itf, void *closure); +extern struct afb_wsj1 *afb_ws_client_connect_wsj1(struct sd_event *eloop, const char *uri, struct afb_wsj1_itf *itf, void *closure); + +/* + * Establish a websocket-like client connection to the API of 'uri' and if successful + * instantiate a client afb_proto_ws websocket for this API using 'itf' and 'closure'. + * (see afb_proto_ws_create_client). + * The systemd event loop 'eloop' is used to handle the websocket. + * Returns NULL in case of failure with errno set appropriately. + */ +extern struct afb_proto_ws *afb_ws_client_connect_api(struct sd_event *eloop, const char *uri, struct afb_proto_ws_client_itf *itf, void *closure); +