1 // Copyright 2018 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "third_party/blink/renderer/platform/loader/fetch/fetch_client_settings_object_snapshot.h"
6 
7 #include "third_party/blink/public/mojom/security_context/insecure_request_policy.mojom-blink.h"
8 
9 namespace blink {
10 
FetchClientSettingsObjectSnapshot(const FetchClientSettingsObject & fetch_client_setting_object)11 FetchClientSettingsObjectSnapshot::FetchClientSettingsObjectSnapshot(
12     const FetchClientSettingsObject& fetch_client_setting_object)
13     : FetchClientSettingsObjectSnapshot(
14           fetch_client_setting_object.GlobalObjectUrl(),
15           fetch_client_setting_object.BaseUrl(),
16           fetch_client_setting_object.GetSecurityOrigin(),
17           fetch_client_setting_object.GetReferrerPolicy(),
18           fetch_client_setting_object.GetOutgoingReferrer(),
19           fetch_client_setting_object.GetHttpsState(),
20           fetch_client_setting_object.MimeTypeCheckForClassicWorkerScript(),
21           fetch_client_setting_object.GetAddressSpace(),
22           fetch_client_setting_object.GetInsecureRequestsPolicy(),
23           fetch_client_setting_object.GetUpgradeInsecureNavigationsSet()) {}
24 
FetchClientSettingsObjectSnapshot(std::unique_ptr<CrossThreadFetchClientSettingsObjectData> data)25 FetchClientSettingsObjectSnapshot::FetchClientSettingsObjectSnapshot(
26     std::unique_ptr<CrossThreadFetchClientSettingsObjectData> data)
27     : FetchClientSettingsObjectSnapshot(
28           data->global_object_url,
29           data->base_url,
30           data->security_origin,
31           data->referrer_policy,
32           data->outgoing_referrer,
33           data->https_state,
34           data->mime_type_check_for_classic_worker_script,
35           data->address_space,
36           data->insecure_requests_policy,
37           data->insecure_navigations_set) {}
38 
FetchClientSettingsObjectSnapshot(const KURL & global_object_url,const KURL & base_url,const scoped_refptr<const SecurityOrigin> security_origin,network::mojom::ReferrerPolicy referrer_policy,const String & outgoing_referrer,HttpsState https_state,AllowedByNosniff::MimeTypeCheck mime_type_check_for_classic_worker_script,network::mojom::IPAddressSpace address_space,mojom::blink::InsecureRequestPolicy insecure_requests_policy,InsecureNavigationsSet insecure_navigations_set)39 FetchClientSettingsObjectSnapshot::FetchClientSettingsObjectSnapshot(
40     const KURL& global_object_url,
41     const KURL& base_url,
42     const scoped_refptr<const SecurityOrigin> security_origin,
43     network::mojom::ReferrerPolicy referrer_policy,
44     const String& outgoing_referrer,
45     HttpsState https_state,
46     AllowedByNosniff::MimeTypeCheck mime_type_check_for_classic_worker_script,
47     network::mojom::IPAddressSpace address_space,
48     mojom::blink::InsecureRequestPolicy insecure_requests_policy,
49     InsecureNavigationsSet insecure_navigations_set)
50     : global_object_url_(global_object_url),
51       base_url_(base_url),
52       security_origin_(std::move(security_origin)),
53       referrer_policy_(referrer_policy),
54       outgoing_referrer_(outgoing_referrer),
55       https_state_(https_state),
56       mime_type_check_for_classic_worker_script_(
57           mime_type_check_for_classic_worker_script),
58       address_space_(address_space),
59       insecure_requests_policy_(insecure_requests_policy),
60       insecure_navigations_set_(std::move(insecure_navigations_set)) {}
61 
62 }  // namespace blink
63