17 #ifdef REQUESTS_USE_CURL 18 #include "curl/curl.h" 19 #include "curl/multi.h" 20 #endif // REQUESTS_USE_CURL 22 #ifdef REQUESTS_USE_SH2LIB 26 #endif // REQUESTS_USE_SH2LIB 28 #include <experimental/string_view> 32 #include <unordered_map> 34 #include "mbedtls/ssl.h" 35 #include "mbedtls/x509_crt.h" 41 #ifdef REQUESTS_USE_CURL 46 std::unique_ptr<CURLM, CURLMcode(*)(CURLM*)> multi_handle;
47 #endif // REQUESTS_USE_CURL 50 #ifdef REQUESTS_USE_CURL 51 using HandleImpl = CURL;
52 #endif // REQUESTS_USE_CURL 53 #ifdef REQUESTS_USE_SH2LIB 55 #endif // REQUESTS_USE_SH2LIB 56 using HandleImplPtr = std::unique_ptr<HandleImpl, void(*)(HandleImpl*)>;
83 #ifdef REQUESTS_USE_CURL 84 auto sslctx_callback(CURL* curl, mbedtls_ssl_config* ssl_ctx)
86 #endif // REQUESTS_USE_CURL 89 using RequestMap = std::unordered_map<HandleImplPtr, RequestHandler>;
93 -> RequestMap::const_iterator;
std::unordered_map< HandleImplPtr, RequestHandler > RequestMap
Definition: request_manager.h:89
flatbuffers::BufferRef< RequestIntent > RequestIntentFlatbufferRef
Definition: requests.h:28
Definition: request_manager.h:39
~RequestManager()
Definition: request_manager.cpp:188
Handle for working with sh2lib APIs.
Definition: sh2lib.h:35
RequestManager()
Definition: request_manager.cpp:147
RequestMap requests
Definition: request_manager.h:90
auto wait_all() -> size_t
Definition: request_manager.cpp:694
auto add_cacert_der(const string_view cacert_der) -> bool
Definition: request_manager.cpp:748
Definition: request_handler.h:41
auto wait_any() -> size_t
Definition: request_manager.cpp:543
auto send(HandleImpl *handle, RequestHandler &handler) -> bool
Definition: request_manager.cpp:250
static spi_device_handle_t handle
Definition: u8g2_esp32_hal.cpp:14
std::experimental::string_view string_view
Definition: actor_model.cpp:16
auto fetch(const RequestIntentFlatbufferRef &_request_intent_buf_ref) -> bool
Definition: request_manager.cpp:202
auto add_cacert_pem(const string_view cacert_pem) -> bool
Definition: request_manager.cpp:703
std::experimental::string_view string_view
Definition: request_manager.h:58
std::unique_ptr< HandleImpl, void(*)(HandleImpl *)> HandleImplPtr
Definition: request_manager.h:56
Definition: curl_library_info.cpp:15
auto get_existing_request_handler(const UUID::UUID *request_intent_id) -> RequestMap::const_iterator
Definition: request_manager.cpp:813
UUID::UUID UUID
Definition: firmware_update_actor.cpp:41