azure-sdk-for-c/.vscode
Valerie Avva Lim 67ba2a655b
RPC Client MQTT5 HFSM & Sample (#2628)
* base files for client sample/hfsm

* filled in basic client hfsm implementation and sample. Sending command flow mostly functional, receiving command flow still needs property parsing. Initial command also not being sent yet

* switch to using az_context instead of timer in application, add common rpc.h file, parse mqtt5 properties on command response and validation

* add rpc_client_start and invoke errors

* updates from UML review

* add unsubscribe support for mqtt and rpc client

* move handling responses to the root state since it's the same in all

* handle unsubscribe req from any state

* cleanup

* cleanup

* style

* enable multiple rpc clients

* addressing first round of PR comments

* remove handle by superstate

* pass server executor id on command invocation

* remove parsing failure bool and have parse response return az_result instead of rsp struct

* move status check to shared codec

* move sending inbound event that rpc client can receive commands from entry event on Ready to transitions to Ready

* remove pointer to az_span for creating the subscription topic

* naming & comments

* use _az_hfsm_send_event to keep events within that rpc client instance

* rename hfsm to policy to more clearly separate the difference between the rpc_client and the rpc_client_policy

* rename long running operations to begin instead of request

* change pending commands from being dynamically allocated to being statically allocated

* update correlation id log

* style

* move all incoming pub recv processing to Ready

* move puback handling and pub mid tracking to the hfsm instead of the application. Adds new limitation of only 1 outstanding pub at a time until the puback is received

* doxygen

* style

* add base unit tests for rpc_client

* addressing PR comments

* add base unit test for rpc_client_policy

* add timeout to publishing

* more unit tests

* more unit tests

* updates from feature/v2

* more unit tests

* ensure free of properties

* cleanup

* style

* cleanup

* cleanup

* merge in mqtt init changes

* style

* cleanup tests

* addressing PR comments

* style

* changes needed to work with server updates

* doxygen fix

* PR comment & spelling

* style

* feedback from other PRs

* address pr comments

* address PR comments

* move QOS definitions to az_mqtt5

* doxygen
2023-09-12 10:56:45 -07:00
..
cspell.json RPC Client MQTT5 HFSM & Sample (#2628) 2023-09-12 10:56:45 -07:00