1 // Copyright (c) 2021 The Chromium Embedded Framework Authors. All rights
2 // reserved. Use of this source code is governed by a BSD-style license that
3 // can be found in the LICENSE file.
4 //
5 // ---------------------------------------------------------------------------
6 //
7 // This file was generated by the CEF translator tool. If making changes by
8 // hand only do so within the body of existing method and function
9 // implementations. See the translator.README.txt file in the tools directory
10 // for more information.
11 //
12 // $hash=a53f4f53f8063044f5c82870f2cef1ef89a91d83$
13 //
14
15 #include "libcef_dll/ctocpp/resource_request_handler_ctocpp.h"
16 #include "libcef_dll/cpptoc/browser_cpptoc.h"
17 #include "libcef_dll/cpptoc/frame_cpptoc.h"
18 #include "libcef_dll/cpptoc/request_callback_cpptoc.h"
19 #include "libcef_dll/cpptoc/request_cpptoc.h"
20 #include "libcef_dll/cpptoc/response_cpptoc.h"
21 #include "libcef_dll/ctocpp/cookie_access_filter_ctocpp.h"
22 #include "libcef_dll/ctocpp/resource_handler_ctocpp.h"
23 #include "libcef_dll/ctocpp/response_filter_ctocpp.h"
24
25 // VIRTUAL METHODS - Body may be edited by hand.
26
27 NO_SANITIZE("cfi-icall")
28 CefRefPtr<CefCookieAccessFilter> CefResourceRequestHandlerCToCpp::
GetCookieAccessFilter(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request)29 GetCookieAccessFilter(CefRefPtr<CefBrowser> browser,
30 CefRefPtr<CefFrame> frame,
31 CefRefPtr<CefRequest> request) {
32 cef_resource_request_handler_t* _struct = GetStruct();
33 if (CEF_MEMBER_MISSING(_struct, get_cookie_access_filter))
34 return nullptr;
35
36 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
37
38 // Verify param: request; type: refptr_diff
39 DCHECK(request.get());
40 if (!request.get())
41 return nullptr;
42 // Unverified params: browser, frame
43
44 // Execute
45 cef_cookie_access_filter_t* _retval = _struct->get_cookie_access_filter(
46 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
47 CefRequestCppToC::Wrap(request));
48
49 // Return type: refptr_same
50 return CefCookieAccessFilterCToCpp::Wrap(_retval);
51 }
52
53 NO_SANITIZE("cfi-icall")
54 CefResourceRequestHandler::ReturnValue
OnBeforeResourceLoad(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,CefRefPtr<CefRequestCallback> callback)55 CefResourceRequestHandlerCToCpp::OnBeforeResourceLoad(
56 CefRefPtr<CefBrowser> browser,
57 CefRefPtr<CefFrame> frame,
58 CefRefPtr<CefRequest> request,
59 CefRefPtr<CefRequestCallback> callback) {
60 cef_resource_request_handler_t* _struct = GetStruct();
61 if (CEF_MEMBER_MISSING(_struct, on_before_resource_load))
62 return RV_CONTINUE;
63
64 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
65
66 // Verify param: request; type: refptr_diff
67 DCHECK(request.get());
68 if (!request.get())
69 return RV_CONTINUE;
70 // Verify param: callback; type: refptr_diff
71 DCHECK(callback.get());
72 if (!callback.get())
73 return RV_CONTINUE;
74 // Unverified params: browser, frame
75
76 // Execute
77 cef_return_value_t _retval = _struct->on_before_resource_load(
78 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
79 CefRequestCppToC::Wrap(request),
80 CefRequestCallbackCppToC::Wrap(callback));
81
82 // Return type: simple
83 return _retval;
84 }
85
86 NO_SANITIZE("cfi-icall")
87 CefRefPtr<CefResourceHandler> CefResourceRequestHandlerCToCpp::
GetResourceHandler(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request)88 GetResourceHandler(CefRefPtr<CefBrowser> browser,
89 CefRefPtr<CefFrame> frame,
90 CefRefPtr<CefRequest> request) {
91 cef_resource_request_handler_t* _struct = GetStruct();
92 if (CEF_MEMBER_MISSING(_struct, get_resource_handler))
93 return nullptr;
94
95 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
96
97 // Verify param: request; type: refptr_diff
98 DCHECK(request.get());
99 if (!request.get())
100 return nullptr;
101 // Unverified params: browser, frame
102
103 // Execute
104 cef_resource_handler_t* _retval = _struct->get_resource_handler(
105 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
106 CefRequestCppToC::Wrap(request));
107
108 // Return type: refptr_same
109 return CefResourceHandlerCToCpp::Wrap(_retval);
110 }
111
112 NO_SANITIZE("cfi-icall")
OnResourceRedirect(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,CefRefPtr<CefResponse> response,CefString & new_url)113 void CefResourceRequestHandlerCToCpp::OnResourceRedirect(
114 CefRefPtr<CefBrowser> browser,
115 CefRefPtr<CefFrame> frame,
116 CefRefPtr<CefRequest> request,
117 CefRefPtr<CefResponse> response,
118 CefString& new_url) {
119 cef_resource_request_handler_t* _struct = GetStruct();
120 if (CEF_MEMBER_MISSING(_struct, on_resource_redirect))
121 return;
122
123 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
124
125 // Verify param: request; type: refptr_diff
126 DCHECK(request.get());
127 if (!request.get())
128 return;
129 // Verify param: response; type: refptr_diff
130 DCHECK(response.get());
131 if (!response.get())
132 return;
133 // Unverified params: browser, frame
134
135 // Execute
136 _struct->on_resource_redirect(
137 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
138 CefRequestCppToC::Wrap(request), CefResponseCppToC::Wrap(response),
139 new_url.GetWritableStruct());
140 }
141
142 NO_SANITIZE("cfi-icall")
OnResourceResponse(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,CefRefPtr<CefResponse> response)143 bool CefResourceRequestHandlerCToCpp::OnResourceResponse(
144 CefRefPtr<CefBrowser> browser,
145 CefRefPtr<CefFrame> frame,
146 CefRefPtr<CefRequest> request,
147 CefRefPtr<CefResponse> response) {
148 cef_resource_request_handler_t* _struct = GetStruct();
149 if (CEF_MEMBER_MISSING(_struct, on_resource_response))
150 return false;
151
152 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
153
154 // Verify param: request; type: refptr_diff
155 DCHECK(request.get());
156 if (!request.get())
157 return false;
158 // Verify param: response; type: refptr_diff
159 DCHECK(response.get());
160 if (!response.get())
161 return false;
162 // Unverified params: browser, frame
163
164 // Execute
165 int _retval = _struct->on_resource_response(
166 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
167 CefRequestCppToC::Wrap(request), CefResponseCppToC::Wrap(response));
168
169 // Return type: bool
170 return _retval ? true : false;
171 }
172
173 NO_SANITIZE("cfi-icall")
174 CefRefPtr<CefResponseFilter> CefResourceRequestHandlerCToCpp::
GetResourceResponseFilter(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,CefRefPtr<CefResponse> response)175 GetResourceResponseFilter(CefRefPtr<CefBrowser> browser,
176 CefRefPtr<CefFrame> frame,
177 CefRefPtr<CefRequest> request,
178 CefRefPtr<CefResponse> response) {
179 cef_resource_request_handler_t* _struct = GetStruct();
180 if (CEF_MEMBER_MISSING(_struct, get_resource_response_filter))
181 return nullptr;
182
183 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
184
185 // Verify param: request; type: refptr_diff
186 DCHECK(request.get());
187 if (!request.get())
188 return nullptr;
189 // Verify param: response; type: refptr_diff
190 DCHECK(response.get());
191 if (!response.get())
192 return nullptr;
193 // Unverified params: browser, frame
194
195 // Execute
196 cef_response_filter_t* _retval = _struct->get_resource_response_filter(
197 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
198 CefRequestCppToC::Wrap(request), CefResponseCppToC::Wrap(response));
199
200 // Return type: refptr_same
201 return CefResponseFilterCToCpp::Wrap(_retval);
202 }
203
204 NO_SANITIZE("cfi-icall")
OnResourceLoadComplete(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,CefRefPtr<CefResponse> response,URLRequestStatus status,int64 received_content_length)205 void CefResourceRequestHandlerCToCpp::OnResourceLoadComplete(
206 CefRefPtr<CefBrowser> browser,
207 CefRefPtr<CefFrame> frame,
208 CefRefPtr<CefRequest> request,
209 CefRefPtr<CefResponse> response,
210 URLRequestStatus status,
211 int64 received_content_length) {
212 cef_resource_request_handler_t* _struct = GetStruct();
213 if (CEF_MEMBER_MISSING(_struct, on_resource_load_complete))
214 return;
215
216 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
217
218 // Verify param: request; type: refptr_diff
219 DCHECK(request.get());
220 if (!request.get())
221 return;
222 // Verify param: response; type: refptr_diff
223 DCHECK(response.get());
224 if (!response.get())
225 return;
226 // Unverified params: browser, frame
227
228 // Execute
229 _struct->on_resource_load_complete(
230 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
231 CefRequestCppToC::Wrap(request), CefResponseCppToC::Wrap(response),
232 status, received_content_length);
233 }
234
235 NO_SANITIZE("cfi-icall")
OnProtocolExecution(CefRefPtr<CefBrowser> browser,CefRefPtr<CefFrame> frame,CefRefPtr<CefRequest> request,bool & allow_os_execution)236 void CefResourceRequestHandlerCToCpp::OnProtocolExecution(
237 CefRefPtr<CefBrowser> browser,
238 CefRefPtr<CefFrame> frame,
239 CefRefPtr<CefRequest> request,
240 bool& allow_os_execution) {
241 cef_resource_request_handler_t* _struct = GetStruct();
242 if (CEF_MEMBER_MISSING(_struct, on_protocol_execution))
243 return;
244
245 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
246
247 // Verify param: request; type: refptr_diff
248 DCHECK(request.get());
249 if (!request.get())
250 return;
251 // Unverified params: browser, frame
252
253 // Translate param: allow_os_execution; type: bool_byref
254 int allow_os_executionInt = allow_os_execution;
255
256 // Execute
257 _struct->on_protocol_execution(
258 _struct, CefBrowserCppToC::Wrap(browser), CefFrameCppToC::Wrap(frame),
259 CefRequestCppToC::Wrap(request), &allow_os_executionInt);
260
261 // Restore param:allow_os_execution; type: bool_byref
262 allow_os_execution = allow_os_executionInt ? true : false;
263 }
264
265 // CONSTRUCTOR - Do not edit by hand.
266
CefResourceRequestHandlerCToCpp()267 CefResourceRequestHandlerCToCpp::CefResourceRequestHandlerCToCpp() {}
268
269 // DESTRUCTOR - Do not edit by hand.
270
~CefResourceRequestHandlerCToCpp()271 CefResourceRequestHandlerCToCpp::~CefResourceRequestHandlerCToCpp() {}
272
273 template <>
274 cef_resource_request_handler_t* CefCToCppRefCounted<
275 CefResourceRequestHandlerCToCpp,
276 CefResourceRequestHandler,
UnwrapDerived(CefWrapperType type,CefResourceRequestHandler * c)277 cef_resource_request_handler_t>::UnwrapDerived(CefWrapperType type,
278 CefResourceRequestHandler*
279 c) {
280 NOTREACHED() << "Unexpected class type: " << type;
281 return nullptr;
282 }
283
284 template <>
285 CefWrapperType
286 CefCToCppRefCounted<CefResourceRequestHandlerCToCpp,
287 CefResourceRequestHandler,
288 cef_resource_request_handler_t>::kWrapperType =
289 WT_RESOURCE_REQUEST_HANDLER;
290