Commit e7062b82 authored by Leon Han's avatar Leon Han Committed by Commit Bot

[OnionSoup] Remove typemapping of (blink.mojom.Referrer, blink::Referrer)

This CL removes the typemapping of
(blink.mojom.Referrer, blink::Referrer), a follow-up CL will remove the
typemapping of (blink.mojom.Referrer, content::Referrer), after that we
can move blink/public/platform/referrer.mojom into blink/public/mojom/.

BUG=789854

Change-Id: I9acb000e5f64939cd5898954e85f4288e2a88678
Reviewed-on: https://chromium-review.googlesource.com/c/1317344Reviewed-by: default avatarKinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Leon Han <leon.han@intel.com>
Cr-Commit-Position: refs/heads/master@{#605265}
parent 17fc7e48
...@@ -17,7 +17,6 @@ typemaps = [ ...@@ -17,7 +17,6 @@ typemaps = [
"//third_party/blink/renderer/platform/mojo/file.typemap", "//third_party/blink/renderer/platform/mojo/file.typemap",
"//third_party/blink/renderer/platform/mojo/geometry.typemap", "//third_party/blink/renderer/platform/mojo/geometry.typemap",
"//third_party/blink/renderer/platform/mojo/kurl.typemap", "//third_party/blink/renderer/platform/mojo/kurl.typemap",
"//third_party/blink/renderer/platform/mojo/referrer.typemap",
"//third_party/blink/renderer/platform/mojo/security_origin.typemap", "//third_party/blink/renderer/platform/mojo/security_origin.typemap",
"//third_party/blink/renderer/platform/mojo/string.typemap", "//third_party/blink/renderer/platform/mojo/string.typemap",
"//third_party/blink/renderer/platform/mojo/time.typemap", "//third_party/blink/renderer/platform/mojo/time.typemap",
......
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
#include "services/network/public/mojom/referrer_policy.mojom-blink.h" #include "services/network/public/mojom/referrer_policy.mojom-blink.h"
#include "third_party/blink/renderer/platform/blob/serialized_blob_struct_traits.h" #include "third_party/blink/renderer/platform/blob/serialized_blob_struct_traits.h"
#include "third_party/blink/renderer/platform/mojo/kurl_struct_traits.h" #include "third_party/blink/renderer/platform/mojo/kurl_struct_traits.h"
#include "third_party/blink/renderer/platform/mojo/referrer_struct_traits.h"
#include "third_party/blink/renderer/platform/weborigin/referrer.h" #include "third_party/blink/renderer/platform/weborigin/referrer.h"
namespace mojo { namespace mojo {
...@@ -41,10 +40,17 @@ StructTraits<blink::mojom::FetchAPIRequestDataView, ...@@ -41,10 +40,17 @@ StructTraits<blink::mojom::FetchAPIRequestDataView,
} }
// static // static
const blink::Referrer& StructTraits<blink::mojom::FetchAPIRequestDataView, blink::mojom::blink::ReferrerPtr
StructTraits<blink::mojom::FetchAPIRequestDataView,
blink::WebServiceWorkerRequest>:: blink::WebServiceWorkerRequest>::
referrer(const blink::WebServiceWorkerRequest& request) { referrer(const blink::WebServiceWorkerRequest& request) {
return request.GetReferrer(); blink::KURL url;
const blink::Referrer& referrer = request.GetReferrer();
if (referrer.referrer != blink::Referrer::NoReferrer())
url = blink::KURL(blink::KURL(), referrer.referrer);
return blink::mojom::blink::Referrer::New(
url,
static_cast<network::mojom::ReferrerPolicy>(referrer.referrer_policy));
} }
// static // static
...@@ -81,7 +87,7 @@ bool StructTraits<blink::mojom::FetchAPIRequestDataView, ...@@ -81,7 +87,7 @@ bool StructTraits<blink::mojom::FetchAPIRequestDataView,
WTF::String method; WTF::String method;
WTF::HashMap<WTF::String, WTF::String> headers; WTF::HashMap<WTF::String, WTF::String> headers;
scoped_refptr<blink::BlobDataHandle> blob; scoped_refptr<blink::BlobDataHandle> blob;
blink::Referrer referrer; blink::mojom::blink::ReferrerPtr referrer;
network::mojom::FetchCredentialsMode credentialsMode; network::mojom::FetchCredentialsMode credentialsMode;
network::mojom::FetchRedirectMode redirectMode; network::mojom::FetchRedirectMode redirectMode;
WTF::String integrity; WTF::String integrity;
...@@ -106,9 +112,7 @@ bool StructTraits<blink::mojom::FetchAPIRequestDataView, ...@@ -106,9 +112,7 @@ bool StructTraits<blink::mojom::FetchAPIRequestDataView,
for (const auto& pair : headers) for (const auto& pair : headers)
out->SetHeader(pair.key, pair.value); out->SetHeader(pair.key, pair.value);
out->SetBlobDataHandle(blob); out->SetBlobDataHandle(blob);
out->SetReferrer( out->SetReferrer(referrer->url.GetString(), referrer->policy);
referrer.referrer,
static_cast<network::mojom::ReferrerPolicy>(referrer.referrer_policy));
out->SetCredentialsMode(credentialsMode); out->SetCredentialsMode(credentialsMode);
out->SetCacheMode(data.cache_mode()); out->SetCacheMode(data.cache_mode());
out->SetRedirectMode(redirectMode); out->SetRedirectMode(redirectMode);
......
...@@ -48,7 +48,7 @@ struct StructTraits<::blink::mojom::FetchAPIRequestDataView, ...@@ -48,7 +48,7 @@ struct StructTraits<::blink::mojom::FetchAPIRequestDataView,
static scoped_refptr<::blink::BlobDataHandle> blob( static scoped_refptr<::blink::BlobDataHandle> blob(
const ::blink::WebServiceWorkerRequest&); const ::blink::WebServiceWorkerRequest&);
static const ::blink::Referrer& referrer( static ::blink::mojom::blink::ReferrerPtr referrer(
const ::blink::WebServiceWorkerRequest&); const ::blink::WebServiceWorkerRequest&);
static ::network::mojom::FetchCredentialsMode credentials_mode( static ::network::mojom::FetchCredentialsMode credentials_mode(
......
# Copyright 2017 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
mojom = "//third_party/blink/public/platform/referrer.mojom"
public_headers =
[ "//third_party/blink/renderer/platform/weborigin/referrer.h" ]
traits_headers =
[ "//third_party/blink/renderer/platform/mojo/referrer_struct_traits.h" ]
deps = [
"//mojo/public/cpp/bindings",
"//url",
]
type_mappings = [ "blink.mojom.Referrer=::blink::Referrer" ]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_MOJO_REFERRER_STRUCT_TRAITS_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_MOJO_REFERRER_STRUCT_TRAITS_H_
#include "services/network/public/mojom/referrer_policy.mojom-blink.h"
#include "third_party/blink/public/platform/referrer.mojom-blink.h"
#include "third_party/blink/renderer/platform/weborigin/referrer.h"
#include "third_party/blink/renderer/platform/weborigin/referrer_policy.h"
#include "third_party/blink/renderer/platform/wtf/assertions.h"
namespace mojo {
template <>
struct StructTraits<blink::mojom::ReferrerDataView, blink::Referrer> {
static blink::KURL url(const blink::Referrer& referrer) {
if (referrer.referrer == blink::Referrer::NoReferrer())
return blink::KURL();
return blink::KURL(blink::KURL(), referrer.referrer);
}
// Equality of values is asserted in //Source/web/AssertMatchingEnums.cpp.
static network::mojom::ReferrerPolicy policy(
const blink::Referrer& referrer) {
return static_cast<network::mojom::ReferrerPolicy>(
referrer.referrer_policy);
}
static bool Read(blink::mojom::ReferrerDataView data, blink::Referrer* out) {
blink::KURL referrer;
network::mojom::ReferrerPolicy referrer_policy;
if (!data.ReadUrl(&referrer) || !data.ReadPolicy(&referrer_policy))
return false;
out->referrer_policy = static_cast<blink::ReferrerPolicy>(referrer_policy);
if (referrer.GetString().IsEmpty())
out->referrer = g_null_atom;
else
out->referrer = AtomicString(referrer.GetString());
// Mimics the DCHECK() done in the blink::Referrer constructor.
return referrer.IsValid() || out->referrer == blink::Referrer::NoReferrer();
}
};
} // namespace mojo
#endif // THIRD_PARTY_BLINK_RENDERER_PLATFORM_MOJO_REFERRER_STRUCT_TRAITS_H_
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment