LeviLamina
Loading...
Searching...
No Matches
WinHttpConnection.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/Result.h"
7#include "mc/deps/core/threading/XAsyncOp.h"
8#include "mc/external/lib_http_client/HCWebSocketCloseStatus.h"
9#include "mc/external/lib_http_client/proxy_type.h"
10
11// auto generated forward declare list
12// clang-format off
13struct HC_CALL;
15struct XAsyncBlock;
17namespace xbox::httpclient { struct WinHttpCallbackContext; }
18namespace xbox::httpclient { struct XPlatSecurityInformation; }
19// clang-format on
20
21namespace xbox::httpclient {
22
24public:
25 // WinHttpConnection inner types declare
26 // clang-format off
28 // clang-format on
29
30 // WinHttpConnection inner types define
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCAPI long Close(::std::function<void()>);
37
38 MCAPI long HttpCallPerformAsync(::XAsyncBlock*);
39
40 MCAPI long Initialize();
41
42 MCAPI void SendRequest();
43
44 MCAPI void StartWinHttpClose();
45
46 MCAPI long WebSocketConnectAsync(::XAsyncBlock*);
47
48 MCAPI long WebSocketDisconnect(::HCWebSocketCloseStatus);
49
50 MCAPI long WebSocketReadAsync();
51
52 MCAPI long WebSocketReadComplete(bool, bool);
53
54 MCAPI void WebSocketSendMessage(::xbox::httpclient::WinHttpConnection::WebSocketSendContext const&);
55
56 MCAPI long WebSocketSendMessageAsync(::XAsyncBlock*, char const*);
57
58 MCAPI long WebSocketSendMessageAsync(::XAsyncBlock*, uchar const*, uint64, ::_WINHTTP_WEB_SOCKET_BUFFER_TYPE);
59
60 MCAPI void complete_task(long, uint);
61
62 MCAPI void on_websocket_disconnected(ushort);
63 // NOLINTEND
64
65public:
66 // static functions
67 // NOLINTBEGIN
68 MCAPI static ::Result<::std::shared_ptr<::xbox::httpclient::WinHttpConnection>>
69 Initialize(void*, ::HC_CALL*, ::xbox::httpclient::proxy_type, ::xbox::httpclient::XPlatSecurityInformation&&);
70
71 MCAPI static ::Result<::std::shared_ptr<::xbox::httpclient::WinHttpConnection>>
72 Initialize(void*, ::HC_WEBSOCKET_OBSERVER*, char const*, char const*, ::xbox::httpclient::proxy_type, ::xbox::httpclient::XPlatSecurityInformation&&);
73
74 MCAPI static long WebSocketConnectProvider(::XAsyncOp, ::XAsyncProviderData const*);
75
76 MCAPI static long WebSocketSendProvider(::XAsyncOp, ::XAsyncProviderData const*);
77
78 MCAPI static void _multiple_segment_write_data(::xbox::httpclient::WinHttpConnection*);
79
80 MCAPI static void callback_status_headers_available(void*, ::xbox::httpclient::WinHttpConnection*, void*);
81
82 MCAPI static void callback_status_request_error(void*, ::xbox::httpclient::WinHttpConnection*, void*);
83
84 MCAPI static void callback_websocket_status_headers_available(void*, ::xbox::httpclient::WinHttpCallbackContext*);
85
86 MCAPI static void completion_callback(void*, uint64, ulong, void*, ulong);
87
88 MCAPI static long flush_response_buffer(::xbox::httpclient::WinHttpConnection*);
89
90 MCAPI static void parse_headers_string(::HC_CALL*, wchar_t*);
91
92 MCAPI static uint parse_status_code(::HC_CALL*, void*, ::xbox::httpclient::WinHttpConnection*);
93
94 MCAPI static void read_next_response_chunk(::xbox::httpclient::WinHttpConnection*, ulong);
95 // NOLINTEND
96
97public:
98 // vftables
99 // NOLINTBEGIN
100 MCAPI static void** $vftable();
101 // NOLINTEND
102};
103
104} // namespace xbox::httpclient
Definition WinHttpConnection.h:23
Definition HC_CALL.h:16
Definition HC_WEBSOCKET_OBSERVER.h:14
Definition XAsyncBlock.h:10
Definition XAsyncProviderData.h:5
Definition WinHttpCallbackContext.h:7
Definition XPlatSecurityInformation.h:7