Commit 49c6533d authored by Henrique Ferreiro's avatar Henrique Ferreiro Committed by Commit Bot

Move WebCanonicalCookie out of public/platform

blink::WebCanonicalCookie has no users outside of //third_party/blink.
Move this class to //third_party/blink/renderer/platform as
blink::CanonicalCookie.

Bug: 919392
Change-Id: I352d287bc93b3d9801d5598de47d93dc3e8c09e2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1883576Reviewed-by: default avatarKinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Henrique Ferreiro <hferreiro@igalia.com>
Cr-Commit-Position: refs/heads/master@{#710276}
parent 17b2adf1
...@@ -199,7 +199,6 @@ source_set("blink_headers") { ...@@ -199,7 +199,6 @@ source_set("blink_headers") {
"platform/web_blob_info.h", "platform/web_blob_info.h",
"platform/web_cache.h", "platform/web_cache.h",
"platform/web_callbacks.h", "platform/web_callbacks.h",
"platform/web_canonical_cookie.h",
"platform/web_client_hints_type.h", "platform/web_client_hints_type.h",
"platform/web_coalesced_input_event.h", "platform/web_coalesced_input_event.h",
"platform/web_color_scheme.h", "platform/web_color_scheme.h",
......
...@@ -39,7 +39,6 @@ include_rules = [ ...@@ -39,7 +39,6 @@ include_rules = [
"+media/mojo/mojom/display_media_information.mojom-shared.h", "+media/mojo/mojom/display_media_information.mojom-shared.h",
"+services/network/public/mojom/cors.mojom-shared.h", "+services/network/public/mojom/cors.mojom-shared.h",
"+services/network/public/mojom/fetch_api.mojom-shared.h", "+services/network/public/mojom/fetch_api.mojom-shared.h",
"+services/network/public/mojom/restricted_cookie_manager.mojom-shared.h",
"+services/network/public/mojom/referrer_policy.mojom-shared.h", "+services/network/public/mojom/referrer_policy.mojom-shared.h",
"+services/service_manager/public/mojom", "+services/service_manager/public/mojom",
......
...@@ -4,10 +4,14 @@ ...@@ -4,10 +4,14 @@
#include "third_party/blink/renderer/modules/cookie_store/cookie_change_event.h" #include "third_party/blink/renderer/modules/cookie_store/cookie_change_event.h"
#include <utility>
#include "services/network/public/mojom/cookie_manager.mojom-blink.h"
#include "third_party/blink/renderer/core/dom/dom_time_stamp.h" #include "third_party/blink/renderer/core/dom/dom_time_stamp.h"
#include "third_party/blink/renderer/modules/cookie_store/cookie_change_event_init.h" #include "third_party/blink/renderer/modules/cookie_store/cookie_change_event_init.h"
#include "third_party/blink/renderer/modules/cookie_store/cookie_list_item.h" #include "third_party/blink/renderer/modules/cookie_store/cookie_list_item.h"
#include "third_party/blink/renderer/modules/event_modules.h" #include "third_party/blink/renderer/modules/event_modules.h"
#include "third_party/blink/renderer/platform/cookie/canonical_cookie.h"
#include "third_party/blink/renderer/platform/heap/handle.h" #include "third_party/blink/renderer/platform/heap/handle.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
...@@ -65,7 +69,7 @@ String ToCookieListItemSameSite(network::mojom::CookieSameSite same_site) { ...@@ -65,7 +69,7 @@ String ToCookieListItemSameSite(network::mojom::CookieSameSite same_site) {
// static // static
CookieListItem* CookieChangeEvent::ToCookieListItem( CookieListItem* CookieChangeEvent::ToCookieListItem(
const WebCanonicalCookie& canonical_cookie, const CanonicalCookie& canonical_cookie,
bool is_deleted) { bool is_deleted) {
CookieListItem* list_item = CookieListItem::Create(); CookieListItem* list_item = CookieListItem::Create();
...@@ -91,7 +95,7 @@ CookieListItem* CookieChangeEvent::ToCookieListItem( ...@@ -91,7 +95,7 @@ CookieListItem* CookieChangeEvent::ToCookieListItem(
// static // static
void CookieChangeEvent::ToEventInfo( void CookieChangeEvent::ToEventInfo(
const WebCanonicalCookie& backend_cookie, const CanonicalCookie& backend_cookie,
::network::mojom::CookieChangeCause change_cause, ::network::mojom::CookieChangeCause change_cause,
HeapVector<Member<CookieListItem>>& changed, HeapVector<Member<CookieListItem>>& changed,
HeapVector<Member<CookieListItem>>& deleted) { HeapVector<Member<CookieListItem>>& deleted) {
......
...@@ -5,7 +5,9 @@ ...@@ -5,7 +5,9 @@
#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_COOKIE_STORE_COOKIE_CHANGE_EVENT_H_ #ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_COOKIE_STORE_COOKIE_CHANGE_EVENT_H_
#define THIRD_PARTY_BLINK_RENDERER_MODULES_COOKIE_STORE_COOKIE_CHANGE_EVENT_H_ #define THIRD_PARTY_BLINK_RENDERER_MODULES_COOKIE_STORE_COOKIE_CHANGE_EVENT_H_
#include "third_party/blink/public/platform/web_canonical_cookie.h" #include <utility>
#include "services/network/public/mojom/cookie_manager.mojom-blink-forward.h"
#include "third_party/blink/renderer/modules/cookie_store/cookie_list_item.h" #include "third_party/blink/renderer/modules/cookie_store/cookie_list_item.h"
#include "third_party/blink/renderer/modules/event_modules.h" #include "third_party/blink/renderer/modules/event_modules.h"
#include "third_party/blink/renderer/platform/heap/handle.h" #include "third_party/blink/renderer/platform/heap/handle.h"
...@@ -14,6 +16,7 @@ ...@@ -14,6 +16,7 @@
namespace blink { namespace blink {
class CanonicalCookie;
class CookieChangeEventInit; class CookieChangeEventInit;
class CookieChangeEvent final : public Event { class CookieChangeEvent final : public Event {
...@@ -59,11 +62,11 @@ class CookieChangeEvent final : public Event { ...@@ -59,11 +62,11 @@ class CookieChangeEvent final : public Event {
void Trace(blink::Visitor*) override; void Trace(blink::Visitor*) override;
static CookieListItem* ToCookieListItem( static CookieListItem* ToCookieListItem(
const WebCanonicalCookie& canonical_cookie, const CanonicalCookie& canonical_cookie,
bool is_deleted); // True for information from a cookie deletion event. bool is_deleted); // True for information from a cookie deletion event.
// Helper for converting backend event information into a CookieChangeEvent. // Helper for converting backend event information into a CookieChangeEvent.
static void ToEventInfo(const WebCanonicalCookie& cookie, static void ToEventInfo(const CanonicalCookie& cookie,
::network::mojom::CookieChangeCause cause, ::network::mojom::CookieChangeCause cause,
HeapVector<Member<CookieListItem>>& changed, HeapVector<Member<CookieListItem>>& changed,
HeapVector<Member<CookieListItem>>& deleted); HeapVector<Member<CookieListItem>>& deleted);
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
#include "third_party/blink/renderer/modules/service_worker/service_worker_global_scope.h" #include "third_party/blink/renderer/modules/service_worker/service_worker_global_scope.h"
#include "third_party/blink/renderer/modules/service_worker/service_worker_registration.h" #include "third_party/blink/renderer/modules/service_worker/service_worker_registration.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h" #include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/cookie/canonical_cookie.h"
#include "third_party/blink/renderer/platform/heap/handle.h" #include "third_party/blink/renderer/platform/heap/handle.h"
#include "third_party/blink/renderer/platform/heap/heap.h" #include "third_party/blink/renderer/platform/heap/heap.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h" #include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
...@@ -65,7 +66,7 @@ network::mojom::blink::CookieManagerGetOptionsPtr ToBackendOptions( ...@@ -65,7 +66,7 @@ network::mojom::blink::CookieManagerGetOptionsPtr ToBackendOptions(
} }
// Returns no value if and only if an exception is thrown. // Returns no value if and only if an exception is thrown.
base::Optional<WebCanonicalCookie> ToWebCanonicalCookie( base::Optional<CanonicalCookie> ToCanonicalCookie(
const KURL& cookie_url, const KURL& cookie_url,
const CookieStoreSetExtraOptions* options, const CookieStoreSetExtraOptions* options,
ExceptionState& exception_state) { ExceptionState& exception_state) {
...@@ -138,10 +139,10 @@ base::Optional<WebCanonicalCookie> ToWebCanonicalCookie( ...@@ -138,10 +139,10 @@ base::Optional<WebCanonicalCookie> ToWebCanonicalCookie(
same_site = network::mojom::CookieSameSite::NO_RESTRICTION; same_site = network::mojom::CookieSameSite::NO_RESTRICTION;
} }
return WebCanonicalCookie::Create( return CanonicalCookie::Create(
name, value, domain, options->path(), base::Time() /*creation*/, expires, name, value, domain, options->path(), base::Time() /*creation*/, expires,
base::Time() /*last_access*/, secure, false /*http_only*/, same_site, base::Time() /*last_access*/, secure, false /*http_only*/, same_site,
WebCanonicalCookie::kDefaultPriority); CanonicalCookie::kDefaultPriority);
} }
// Returns null if and only if an exception is thrown. // Returns null if and only if an exception is thrown.
...@@ -495,7 +496,7 @@ ScriptPromise CookieStore::DoRead( ...@@ -495,7 +496,7 @@ ScriptPromise CookieStore::DoRead(
// static // static
void CookieStore::GetAllForUrlToGetAllResult( void CookieStore::GetAllForUrlToGetAllResult(
ScriptPromiseResolver* resolver, ScriptPromiseResolver* resolver,
const Vector<WebCanonicalCookie>& backend_cookies) { const Vector<CanonicalCookie>& backend_cookies) {
ScriptState* script_state = resolver->GetScriptState(); ScriptState* script_state = resolver->GetScriptState();
if (!script_state->ContextIsValid()) if (!script_state->ContextIsValid())
return; return;
...@@ -513,7 +514,7 @@ void CookieStore::GetAllForUrlToGetAllResult( ...@@ -513,7 +514,7 @@ void CookieStore::GetAllForUrlToGetAllResult(
// static // static
void CookieStore::GetAllForUrlToGetResult( void CookieStore::GetAllForUrlToGetResult(
ScriptPromiseResolver* resolver, ScriptPromiseResolver* resolver,
const Vector<WebCanonicalCookie>& backend_cookies) { const Vector<CanonicalCookie>& backend_cookies) {
ScriptState* script_state = resolver->GetScriptState(); ScriptState* script_state = resolver->GetScriptState();
if (!script_state->ContextIsValid()) if (!script_state->ContextIsValid())
return; return;
...@@ -532,8 +533,8 @@ void CookieStore::GetAllForUrlToGetResult( ...@@ -532,8 +533,8 @@ void CookieStore::GetAllForUrlToGetResult(
ScriptPromise CookieStore::DoWrite(ScriptState* script_state, ScriptPromise CookieStore::DoWrite(ScriptState* script_state,
const CookieStoreSetExtraOptions* options, const CookieStoreSetExtraOptions* options,
ExceptionState& exception_state) { ExceptionState& exception_state) {
base::Optional<WebCanonicalCookie> canonical_cookie = base::Optional<CanonicalCookie> canonical_cookie =
ToWebCanonicalCookie(default_cookie_url_, options, exception_state); ToCanonicalCookie(default_cookie_url_, options, exception_state);
if (!canonical_cookie) { if (!canonical_cookie) {
DCHECK(exception_state.HadException()); DCHECK(exception_state.HadException());
return ScriptPromise(); return ScriptPromise();
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
#include "mojo/public/cpp/bindings/remote.h" #include "mojo/public/cpp/bindings/remote.h"
#include "services/network/public/mojom/restricted_cookie_manager.mojom-blink-forward.h" #include "services/network/public/mojom/restricted_cookie_manager.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/cookie_store/cookie_store.mojom-blink.h" #include "third_party/blink/public/mojom/cookie_store/cookie_store.mojom-blink.h"
#include "third_party/blink/public/platform/web_canonical_cookie.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h" #include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/core/dom/events/event_target.h" #include "third_party/blink/renderer/core/dom/events/event_target.h"
#include "third_party/blink/renderer/core/execution_context/context_lifecycle_observer.h" #include "third_party/blink/renderer/core/execution_context/context_lifecycle_observer.h"
...@@ -21,6 +20,7 @@ ...@@ -21,6 +20,7 @@
namespace blink { namespace blink {
class CanonicalCookie;
class CookieStoreDeleteOptions; class CookieStoreDeleteOptions;
class CookieStoreGetOptions; class CookieStoreGetOptions;
class CookieStoreSetOptions; class CookieStoreSetOptions;
...@@ -97,8 +97,8 @@ class CookieStore final : public EventTargetWithInlineData, ...@@ -97,8 +97,8 @@ class CookieStore final : public EventTargetWithInlineData,
const RegisteredEventListener&) final; const RegisteredEventListener&) final;
private: private:
using DoReadBackendResultConverter = using DoReadBackendResultConverter = void (*)(ScriptPromiseResolver*,
void (*)(ScriptPromiseResolver*, const Vector<WebCanonicalCookie>&); const Vector<CanonicalCookie>&);
// Common code in CookieStore::{get,getAll}. // Common code in CookieStore::{get,getAll}.
// //
...@@ -115,13 +115,13 @@ class CookieStore final : public EventTargetWithInlineData, ...@@ -115,13 +115,13 @@ class CookieStore final : public EventTargetWithInlineData,
// the promise result expected by CookieStore.getAll. // the promise result expected by CookieStore.getAll.
static void GetAllForUrlToGetAllResult( static void GetAllForUrlToGetAllResult(
ScriptPromiseResolver*, ScriptPromiseResolver*,
const Vector<WebCanonicalCookie>& backend_result); const Vector<CanonicalCookie>& backend_result);
// Converts the result of a RestrictedCookieManager::GetAllForUrl mojo call to // Converts the result of a RestrictedCookieManager::GetAllForUrl mojo call to
// the promise result expected by CookieStore.get. // the promise result expected by CookieStore.get.
static void GetAllForUrlToGetResult( static void GetAllForUrlToGetResult(
ScriptPromiseResolver*, ScriptPromiseResolver*,
const Vector<WebCanonicalCookie>& backend_result); const Vector<CanonicalCookie>& backend_result);
// Common code in CookieStore::delete and CookieStore::set. // Common code in CookieStore::delete and CookieStore::set.
ScriptPromise DoWrite(ScriptState*, ScriptPromise DoWrite(ScriptState*,
......
...@@ -464,6 +464,10 @@ jumbo_component("platform") { ...@@ -464,6 +464,10 @@ jumbo_component("platform") {
"bindings/wrapper_type_info.cc", "bindings/wrapper_type_info.cc",
"bindings/wrapper_type_info.h", "bindings/wrapper_type_info.h",
"content_decryption_module_result.h", "content_decryption_module_result.h",
"cookie/canonical_cookie.cc",
"cookie/canonical_cookie.h",
"cookie/canonical_cookie_mojom_traits.cc",
"cookie/canonical_cookie_mojom_traits.h",
"cpu/mips/common_macros_msa.h", "cpu/mips/common_macros_msa.h",
"crypto.cc", "crypto.cc",
"crypto.h", "crypto.h",
...@@ -489,7 +493,6 @@ jumbo_component("platform") { ...@@ -489,7 +493,6 @@ jumbo_component("platform") {
"exported/web_audio_device.cc", "exported/web_audio_device.cc",
"exported/web_blob_info.cc", "exported/web_blob_info.cc",
"exported/web_cache.cc", "exported/web_cache.cc",
"exported/web_canonical_cookie.cc",
"exported/web_coalesced_input_event.cc", "exported/web_coalesced_input_event.cc",
"exported/web_content_decryption_module.cc", "exported/web_content_decryption_module.cc",
"exported/web_content_decryption_module_access.cc", "exported/web_content_decryption_module_access.cc",
...@@ -1226,8 +1229,6 @@ jumbo_component("platform") { ...@@ -1226,8 +1229,6 @@ jumbo_component("platform") {
"mojo/big_string_mojom_traits.h", "mojo/big_string_mojom_traits.h",
"mojo/bluetooth_mojom_traits.cc", "mojo/bluetooth_mojom_traits.cc",
"mojo/bluetooth_mojom_traits.h", "mojo/bluetooth_mojom_traits.h",
"mojo/canonical_cookie_mojom_traits.cc",
"mojo/canonical_cookie_mojom_traits.h",
"mojo/fetch_api_request_headers_mojom_traits.h", "mojo/fetch_api_request_headers_mojom_traits.h",
"mojo/mojo_helper.h", "mojo/mojo_helper.h",
"mojo/string16_mojom_traits.cc", "mojo/string16_mojom_traits.cc",
...@@ -1721,13 +1722,13 @@ jumbo_source_set("blink_platform_unittests_sources") { ...@@ -1721,13 +1722,13 @@ jumbo_source_set("blink_platform_unittests_sources") {
"audio/vector_math_test.cc", "audio/vector_math_test.cc",
"bindings/parkable_string_test.cc", "bindings/parkable_string_test.cc",
"bindings/runtime_call_stats_test.cc", "bindings/runtime_call_stats_test.cc",
"cookie/canonical_cookie_test.cc",
"exported/file_path_conversion_test.cc", "exported/file_path_conversion_test.cc",
"exported/mediastream/media_stream_audio_processor_options_test.cc", "exported/mediastream/media_stream_audio_processor_options_test.cc",
"exported/mediastream/media_stream_audio_test.cc", "exported/mediastream/media_stream_audio_test.cc",
"exported/mediastream/webrtc_uma_histograms_test.cc", "exported/mediastream/webrtc_uma_histograms_test.cc",
"exported/page_zoom_test.cc", "exported/page_zoom_test.cc",
"exported/video_capture/web_video_capture_impl_manager_test.cc", "exported/video_capture/web_video_capture_impl_manager_test.cc",
"exported/web_canonical_cookie_test.cc",
"exported/web_icon_sizes_parser_test.cc", "exported/web_icon_sizes_parser_test.cc",
"exported/web_screen_info_test.cc", "exported/web_screen_info_test.cc",
"exported/web_string_test.cc", "exported/web_string_test.cc",
......
include_rules = [
# Don't depend on platform/.
"-third_party/blink/renderer/platform",
# Module.
"+third_party/blink/renderer/platform/cookie",
# Dependencies.
"+third_party/blink/renderer/platform/platform_export.h",
"+third_party/blink/renderer/platform/weborigin",
"+third_party/blink/renderer/platform/wtf",
]
specific_include_rules = {
"canonical_cookie.cc": [
"+net/cookies/canonical_cookie.h",
"+net/cookies/cookie_constants.h",
],
}
per-file *_mojom_traits*.*=set noparent
per-file *_mojom_traits*.*=file://ipc/SECURITY_OWNERS
per-file *.typemap=set noparent
per-file *.typemap=file://ipc/SECURITY_OWNERS
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "third_party/blink/public/platform/web_canonical_cookie.h" #include "third_party/blink/renderer/platform/cookie/canonical_cookie.h"
#include <memory> #include <memory>
#include <utility>
#include "base/optional.h" #include "base/optional.h"
#include "net/cookies/canonical_cookie.h" #include "net/cookies/canonical_cookie.h"
#include "net/cookies/cookie_constants.h" #include "net/cookies/cookie_constants.h"
#include "third_party/blink/public/platform/web_url.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "third_party/blink/renderer/platform/wtf/vector.h" #include "third_party/blink/renderer/platform/wtf/vector.h"
#include "url/gurl.h" #include "url/gurl.h"
...@@ -32,13 +34,13 @@ STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_MEDIUM, ...@@ -32,13 +34,13 @@ STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_MEDIUM,
STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_HIGH, STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_HIGH,
network::mojom::CookiePriority::HIGH); network::mojom::CookiePriority::HIGH);
STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_DEFAULT, STATIC_ASSERT_ENUM(net::CookiePriority::COOKIE_PRIORITY_DEFAULT,
blink::WebCanonicalCookie::kDefaultPriority); blink::CanonicalCookie::kDefaultPriority);
namespace blink { namespace blink {
namespace { namespace {
net::CanonicalCookie ToNetCanonicalCookie(const WebCanonicalCookie& cookie) { net::CanonicalCookie ToNetCanonicalCookie(const CanonicalCookie& cookie) {
net::CanonicalCookie net_cookie( net::CanonicalCookie net_cookie(
cookie.Name().Utf8(), cookie.Value().Utf8(), cookie.Domain().Utf8(), cookie.Name().Utf8(), cookie.Value().Utf8(), cookie.Domain().Utf8(),
cookie.Path().Utf8(), cookie.CreationDate(), cookie.ExpiryDate(), cookie.Path().Utf8(), cookie.CreationDate(), cookie.ExpiryDate(),
...@@ -51,9 +53,9 @@ net::CanonicalCookie ToNetCanonicalCookie(const WebCanonicalCookie& cookie) { ...@@ -51,9 +53,9 @@ net::CanonicalCookie ToNetCanonicalCookie(const WebCanonicalCookie& cookie) {
} // namespace } // namespace
WebCanonicalCookie::WebCanonicalCookie() = default; CanonicalCookie::CanonicalCookie() = default;
WebCanonicalCookie::WebCanonicalCookie(WebString name, CanonicalCookie::CanonicalCookie(WebString name,
WebString value, WebString value,
WebString domain, WebString domain,
WebString path, WebString path,
...@@ -78,13 +80,12 @@ WebCanonicalCookie::WebCanonicalCookie(WebString name, ...@@ -78,13 +80,12 @@ WebCanonicalCookie::WebCanonicalCookie(WebString name,
DCHECK(ToNetCanonicalCookie(*this).IsCanonical()); DCHECK(ToNetCanonicalCookie(*this).IsCanonical());
} }
WebCanonicalCookie::WebCanonicalCookie(const WebCanonicalCookie& other) = CanonicalCookie::CanonicalCookie(const CanonicalCookie& other) = default;
default;
WebCanonicalCookie& WebCanonicalCookie::operator=( CanonicalCookie& CanonicalCookie::operator=(const CanonicalCookie& other) =
const WebCanonicalCookie& other) = default; default;
WebCanonicalCookie::~WebCanonicalCookie() = default; CanonicalCookie::~CanonicalCookie() = default;
namespace { namespace {
...@@ -99,7 +100,7 @@ GURL ToGURL(const WebURL& url) { ...@@ -99,7 +100,7 @@ GURL ToGURL(const WebURL& url) {
} // namespace } // namespace
// static // static
base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create( base::Optional<CanonicalCookie> CanonicalCookie::Create(
const WebURL& url, const WebURL& url,
const WebString& cookie_line, const WebString& cookie_line,
base::Time creation_time) { base::Time creation_time) {
...@@ -108,7 +109,7 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create( ...@@ -108,7 +109,7 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create(
base::nullopt /* server_time */); base::nullopt /* server_time */);
if (!cookie) if (!cookie)
return base::nullopt; return base::nullopt;
return WebCanonicalCookie( return CanonicalCookie(
WebString::FromUTF8(cookie->Name()), WebString::FromUTF8(cookie->Value()), WebString::FromUTF8(cookie->Name()), WebString::FromUTF8(cookie->Value()),
WebString::FromUTF8(cookie->Domain()), WebString::FromUTF8(cookie->Domain()),
WebString::FromUTF8(cookie->Path()), cookie->CreationDate(), WebString::FromUTF8(cookie->Path()), cookie->CreationDate(),
...@@ -119,7 +120,7 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create( ...@@ -119,7 +120,7 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create(
} }
// static // static
base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create( base::Optional<CanonicalCookie> CanonicalCookie::Create(
WebString name, WebString name,
WebString value, WebString value,
WebString domain, WebString domain,
...@@ -139,13 +140,12 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create( ...@@ -139,13 +140,12 @@ base::Optional<WebCanonicalCookie> WebCanonicalCookie::Create(
if (!net_cookie.IsCanonical()) if (!net_cookie.IsCanonical())
return base::nullopt; return base::nullopt;
return WebCanonicalCookie(std::move(name), std::move(value), return CanonicalCookie(std::move(name), std::move(value), std::move(domain),
std::move(domain), std::move(path), creation, std::move(path), creation, expiration, last_access,
expiration, last_access, is_secure, is_http_only, is_secure, is_http_only, same_site, priority);
same_site, priority);
} }
constexpr const network::mojom::CookiePriority constexpr const network::mojom::CookiePriority
WebCanonicalCookie::kDefaultPriority; CanonicalCookie::kDefaultPriority;
} // namespace blink } // namespace blink
...@@ -2,30 +2,29 @@ ...@@ -2,30 +2,29 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_CANONICAL_COOKIE_H_ #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_COOKIE_CANONICAL_COOKIE_H_
#define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_CANONICAL_COOKIE_H_ #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_COOKIE_CANONICAL_COOKIE_H_
#include "base/optional.h" #include "base/optional.h"
#include "base/time/time.h" #include "base/time/time.h"
#include "services/network/public/mojom/restricted_cookie_manager.mojom-shared.h" #include "services/network/public/mojom/cookie_manager.mojom-shared.h"
#include "third_party/blink/public/platform/web_common.h"
#include "third_party/blink/public/platform/web_string.h" #include "third_party/blink/public/platform/web_string.h"
#include "third_party/blink/public/platform/web_url.h"
#include "third_party/blink/renderer/platform/platform_export.h" // nogncheck
namespace blink { namespace blink {
class WebURL;
// This class is a blink analogue for net::CanonicalCookie. // This class is a blink analogue for net::CanonicalCookie.
// TODO(jsbell): Once all prospective clients are migrated to blink, move this class BLINK_PLATFORM_EXPORT CanonicalCookie {
// to renderer/platform as blink::CanonicalCookie.
class BLINK_PLATFORM_EXPORT WebCanonicalCookie {
public: public:
// Default/copy constructor needed for use with Vector. // Default/copy constructor needed for use with Vector.
WebCanonicalCookie(); CanonicalCookie();
WebCanonicalCookie(const WebCanonicalCookie& other); CanonicalCookie(const CanonicalCookie& other);
~WebCanonicalCookie(); ~CanonicalCookie();
WebCanonicalCookie& operator=(const WebCanonicalCookie& other); CanonicalCookie& operator=(const CanonicalCookie& other);
const WebString& Name() const { return name_; } const WebString& Name() const { return name_; }
const WebString& Value() const { return value_; } const WebString& Value() const { return value_; }
...@@ -40,7 +39,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie { ...@@ -40,7 +39,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie {
network::mojom::CookiePriority Priority() const { return priority_; } network::mojom::CookiePriority Priority() const { return priority_; }
// If the result is not canonical, nullopt will be returned. // If the result is not canonical, nullopt will be returned.
static base::Optional<WebCanonicalCookie> Create( static base::Optional<CanonicalCookie> Create(
WebString name, WebString name,
WebString value, WebString value,
WebString domain, WebString domain,
...@@ -55,7 +54,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie { ...@@ -55,7 +54,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie {
// Parsing, for the document.cookie API. // Parsing, for the document.cookie API.
// If the result is not canonical, nullopt will be returned. // If the result is not canonical, nullopt will be returned.
static base::Optional<WebCanonicalCookie> Create(const WebURL& url, static base::Optional<CanonicalCookie> Create(const WebURL& url,
const WebString& cookie_line, const WebString& cookie_line,
base::Time creation_time); base::Time creation_time);
...@@ -65,7 +64,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie { ...@@ -65,7 +64,7 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie {
private: private:
// Prefer static Create methods, which ensure that the returned cookie is // Prefer static Create methods, which ensure that the returned cookie is
// canonical. // canonical.
WebCanonicalCookie(WebString name, CanonicalCookie(WebString name,
WebString value, WebString value,
WebString domain, WebString domain,
WebString path, WebString path,
...@@ -93,4 +92,4 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie { ...@@ -93,4 +92,4 @@ class BLINK_PLATFORM_EXPORT WebCanonicalCookie {
} // namespace blink } // namespace blink
#endif // THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_CANONICAL_COOKIE_H_ #endif // THIRD_PARTY_BLINK_RENDERER_PLATFORM_COOKIE_CANONICAL_COOKIE_H_
...@@ -4,11 +4,9 @@ ...@@ -4,11 +4,9 @@
mojom = "//services/network/public/mojom/cookie_manager.mojom" mojom = "//services/network/public/mojom/cookie_manager.mojom"
public_headers = public_headers =
[ "//third_party/blink/public/platform/web_canonical_cookie.h" ] [ "//third_party/blink/renderer/platform/cookie/canonical_cookie.h" ]
traits_headers = [ traits_headers = [ "//third_party/blink/renderer/platform/cookie/canonical_cookie_mojom_traits.h" ]
"//third_party/blink/renderer/platform/mojo/canonical_cookie_mojom_traits.h",
]
deps = [ deps = [
"//mojo/public/cpp/bindings", "//mojo/public/cpp/bindings",
] ]
type_mappings = [ "network.mojom.CanonicalCookie=::blink::WebCanonicalCookie" ] type_mappings = [ "network.mojom.CanonicalCookie=::blink::CanonicalCookie" ]
...@@ -2,97 +2,98 @@ ...@@ -2,97 +2,98 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "third_party/blink/renderer/platform/mojo/canonical_cookie_mojom_traits.h" #include "third_party/blink/renderer/platform/cookie/canonical_cookie_mojom_traits.h"
#include <utility>
#include "base/optional.h" #include "base/optional.h"
#include "mojo/public/cpp/base/time_mojom_traits.h" #include "mojo/public/cpp/base/time_mojom_traits.h"
#include "mojo/public/cpp/bindings/string_traits_wtf.h" #include "mojo/public/cpp/bindings/string_traits_wtf.h"
#include "third_party/blink/renderer/platform/wtf/assertions.h" #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
namespace mojo { namespace mojo {
// static // static
WTF::String StructTraits< WTF::String
network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::name(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::name(const blink::CanonicalCookie& c) {
return c.Name(); return c.Name();
} }
// static // static
WTF::String StructTraits< WTF::String
network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::value(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::value(const blink::CanonicalCookie& c) {
return c.Value(); return c.Value();
} }
// static // static
WTF::String StructTraits< WTF::String
network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::domain(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::domain(const blink::CanonicalCookie& c) {
return c.Domain(); return c.Domain();
} }
// static // static
WTF::String StructTraits< WTF::String
network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::path(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::path(const blink::CanonicalCookie& c) {
return c.Path(); return c.Path();
} }
// static // static
base::Time StructTraits< base::Time StructTraits<
network::mojom::CanonicalCookieDataView, network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::creation(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::creation(const blink::CanonicalCookie& c) {
return c.CreationDate(); return c.CreationDate();
} }
// static // static
base::Time StructTraits< base::Time
network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::expiry(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::expiry(const blink::CanonicalCookie& c) {
return c.ExpiryDate(); return c.ExpiryDate();
} }
// static // static
base::Time StructTraits<network::mojom::CanonicalCookieDataView, base::Time StructTraits<
blink::WebCanonicalCookie>:: network::mojom::CanonicalCookieDataView,
last_access(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::last_access(const blink::CanonicalCookie& c) {
return c.LastAccessDate(); return c.LastAccessDate();
} }
// static // static
bool StructTraits< bool StructTraits<network::mojom::CanonicalCookieDataView,
network::mojom::CanonicalCookieDataView, blink::CanonicalCookie>::secure(const blink::CanonicalCookie&
blink::WebCanonicalCookie>::secure(const blink::WebCanonicalCookie& c) { c) {
return c.IsSecure(); return c.IsSecure();
} }
// static // static
bool StructTraits< bool StructTraits<
network::mojom::CanonicalCookieDataView, network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::httponly(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::httponly(const blink::CanonicalCookie& c) {
return c.IsHttpOnly(); return c.IsHttpOnly();
} }
// static // static
network::mojom::CookieSameSite network::mojom::CookieSameSite
StructTraits<network::mojom::CanonicalCookieDataView, StructTraits<network::mojom::CanonicalCookieDataView, blink::CanonicalCookie>::
blink::WebCanonicalCookie>:: site_restrictions(const blink::CanonicalCookie& c) {
site_restrictions(const blink::WebCanonicalCookie& c) {
return c.SameSite(); return c.SameSite();
} }
// static // static
network::mojom::CookiePriority StructTraits< network::mojom::CookiePriority StructTraits<
network::mojom::CanonicalCookieDataView, network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>::priority(const blink::WebCanonicalCookie& c) { blink::CanonicalCookie>::priority(const blink::CanonicalCookie& c) {
return c.Priority(); return c.Priority();
} }
// static // static
bool StructTraits<network::mojom::CanonicalCookieDataView, bool StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie>:: blink::CanonicalCookie>::
Read(network::mojom::CanonicalCookieDataView cookie, Read(network::mojom::CanonicalCookieDataView cookie,
blink::WebCanonicalCookie* out) { blink::CanonicalCookie* out) {
WTF::String name; WTF::String name;
if (!cookie.ReadName(&name)) if (!cookie.ReadName(&name))
return false; return false;
...@@ -129,8 +130,8 @@ bool StructTraits<network::mojom::CanonicalCookieDataView, ...@@ -129,8 +130,8 @@ bool StructTraits<network::mojom::CanonicalCookieDataView,
if (!cookie.ReadPriority(&priority)) if (!cookie.ReadPriority(&priority))
return false; return false;
base::Optional<blink::WebCanonicalCookie> created = base::Optional<blink::CanonicalCookie> created =
blink::WebCanonicalCookie::Create( blink::CanonicalCookie::Create(
name, value, domain, path, creation, expiry, last_access, name, value, domain, path, creation, expiry, last_access,
cookie.secure(), cookie.httponly(), site_restrictions, priority); cookie.secure(), cookie.httponly(), site_restrictions, priority);
if (!created) if (!created)
......
// Copyright 2018 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_COOKIE_CANONICAL_COOKIE_MOJOM_TRAITS_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_COOKIE_CANONICAL_COOKIE_MOJOM_TRAITS_H_
#include "base/time/time.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "services/network/public/mojom/cookie_manager.mojom-blink-forward.h"
#include "services/network/public/mojom/cookie_manager.mojom-shared.h"
#include "third_party/blink/renderer/platform/cookie/canonical_cookie.h"
#include "third_party/blink/renderer/platform/platform_export.h"
#include "third_party/blink/renderer/platform/wtf/forward.h"
namespace mojo {
template <>
struct PLATFORM_EXPORT StructTraits<network::mojom::CanonicalCookieDataView,
blink::CanonicalCookie> {
static WTF::String name(const blink::CanonicalCookie& c);
static WTF::String value(const blink::CanonicalCookie& c);
static WTF::String domain(const blink::CanonicalCookie& c);
static WTF::String path(const blink::CanonicalCookie& c);
static base::Time creation(const blink::CanonicalCookie& c);
static base::Time expiry(const blink::CanonicalCookie& c);
static base::Time last_access(const blink::CanonicalCookie& c);
static bool secure(const blink::CanonicalCookie& c);
static bool httponly(const blink::CanonicalCookie& c);
static network::mojom::CookieSameSite site_restrictions(
const blink::CanonicalCookie& c);
static network::mojom::CookiePriority priority(
const blink::CanonicalCookie& c);
static bool Read(network::mojom::CanonicalCookieDataView cookie,
blink::CanonicalCookie* out);
};
} // namespace mojo
#endif // THIRD_PARTY_BLINK_RENDERER_PLATFORM_COOKIE_CANONICAL_COOKIE_MOJOM_TRAITS_H_
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "third_party/blink/public/platform/web_canonical_cookie.h" #include "third_party/blink/renderer/platform/cookie/canonical_cookie.h"
#include <initializer_list> #include <initializer_list>
...@@ -15,8 +15,8 @@ ...@@ -15,8 +15,8 @@
namespace blink { namespace blink {
TEST(WebCanonicalCookieTest, Defaults) { TEST(CanonicalCookieTest, Defaults) {
WebCanonicalCookie cookie; CanonicalCookie cookie;
EXPECT_EQ(WebString(), cookie.Name()); EXPECT_EQ(WebString(), cookie.Name());
EXPECT_EQ(WebString(), cookie.Value()); EXPECT_EQ(WebString(), cookie.Value());
EXPECT_EQ(WebString(), cookie.Domain()); EXPECT_EQ(WebString(), cookie.Domain());
...@@ -27,26 +27,26 @@ TEST(WebCanonicalCookieTest, Defaults) { ...@@ -27,26 +27,26 @@ TEST(WebCanonicalCookieTest, Defaults) {
EXPECT_FALSE(cookie.IsSecure()); EXPECT_FALSE(cookie.IsSecure());
EXPECT_FALSE(cookie.IsHttpOnly()); EXPECT_FALSE(cookie.IsHttpOnly());
EXPECT_EQ(network::mojom::CookieSameSite::NO_RESTRICTION, cookie.SameSite()); EXPECT_EQ(network::mojom::CookieSameSite::NO_RESTRICTION, cookie.SameSite());
EXPECT_EQ(WebCanonicalCookie::kDefaultPriority, cookie.Priority()); EXPECT_EQ(CanonicalCookie::kDefaultPriority, cookie.Priority());
} }
TEST(WebCanonicalCookieTest, CreationFailure) { TEST(CanonicalCookieTest, CreationFailure) {
const WebURL url(KURL("http://example.com")); const WebURL url(KURL("http://example.com"));
// Invalid cookie lines cause nullopt to be returned. // Invalid cookie lines cause nullopt to be returned.
EXPECT_FALSE( EXPECT_FALSE(
WebCanonicalCookie::Create(url, "\x01", base::Time::Now()).has_value()); CanonicalCookie::Create(url, "\x01", base::Time::Now()).has_value());
// Invalid names cause nullopt to be returned. // Invalid names cause nullopt to be returned.
EXPECT_FALSE(WebCanonicalCookie::Create( EXPECT_FALSE(CanonicalCookie::Create(
"\x01", "value", "domain", "/path", base::Time::Now(), "\x01", "value", "domain", "/path", base::Time::Now(),
base::Time::Now(), base::Time::Now(), false, false, base::Time::Now(), base::Time::Now(), false, false,
network::mojom::CookieSameSite::NO_RESTRICTION, network::mojom::CookieSameSite::NO_RESTRICTION,
WebCanonicalCookie::kDefaultPriority) CanonicalCookie::kDefaultPriority)
.has_value()); .has_value());
} }
TEST(WebCanonicalCookieTest, Properties) { TEST(CanonicalCookieTest, Properties) {
const base::Time t1 = base::Time::FromDoubleT(1); const base::Time t1 = base::Time::FromDoubleT(1);
const base::Time t2 = base::Time::FromDoubleT(2); const base::Time t2 = base::Time::FromDoubleT(2);
const base::Time t3 = base::Time::FromDoubleT(3); const base::Time t3 = base::Time::FromDoubleT(3);
...@@ -54,12 +54,12 @@ TEST(WebCanonicalCookieTest, Properties) { ...@@ -54,12 +54,12 @@ TEST(WebCanonicalCookieTest, Properties) {
ASSERT_NE(t1, t3); ASSERT_NE(t1, t3);
ASSERT_NE(t2, t3); ASSERT_NE(t2, t3);
base::Optional<WebCanonicalCookie> cookie_opt = WebCanonicalCookie::Create( base::Optional<CanonicalCookie> cookie_opt = CanonicalCookie::Create(
"name", "value", "domain", "/path", t1, t2, t3, true, true, "name", "value", "domain", "/path", t1, t2, t3, true, true,
network::mojom::CookieSameSite::STRICT_MODE, network::mojom::CookieSameSite::STRICT_MODE,
network::mojom::CookiePriority::HIGH); network::mojom::CookiePriority::HIGH);
ASSERT_TRUE(cookie_opt); ASSERT_TRUE(cookie_opt);
WebCanonicalCookie& cookie = cookie_opt.value(); CanonicalCookie& cookie = cookie_opt.value();
EXPECT_EQ("name", cookie.Name()); EXPECT_EQ("name", cookie.Name());
EXPECT_EQ("value", cookie.Value()); EXPECT_EQ("value", cookie.Value());
...@@ -78,9 +78,9 @@ TEST(WebCanonicalCookieTest, Properties) { ...@@ -78,9 +78,9 @@ TEST(WebCanonicalCookieTest, Properties) {
network::mojom::CookieSameSite::LAX_MODE, network::mojom::CookieSameSite::LAX_MODE,
network::mojom::CookieSameSite::STRICT_MODE}) { network::mojom::CookieSameSite::STRICT_MODE}) {
EXPECT_EQ(same_site, EXPECT_EQ(same_site,
WebCanonicalCookie::Create("name", "value", "domain", "/path", t1, CanonicalCookie::Create("name", "value", "domain", "/path", t1,
t2, t3, false, false, same_site, t2, t3, false, false, same_site,
WebCanonicalCookie::kDefaultPriority) CanonicalCookie::kDefaultPriority)
->SameSite()); ->SameSite());
} }
...@@ -88,9 +88,9 @@ TEST(WebCanonicalCookieTest, Properties) { ...@@ -88,9 +88,9 @@ TEST(WebCanonicalCookieTest, Properties) {
for (auto priority : {network::mojom::CookiePriority::LOW, for (auto priority : {network::mojom::CookiePriority::LOW,
network::mojom::CookiePriority::MEDIUM, network::mojom::CookiePriority::MEDIUM,
network::mojom::CookiePriority::HIGH, network::mojom::CookiePriority::HIGH,
WebCanonicalCookie::kDefaultPriority}) { CanonicalCookie::kDefaultPriority}) {
EXPECT_EQ(priority, EXPECT_EQ(priority,
WebCanonicalCookie::Create( CanonicalCookie::Create(
"name", "value", "domain", "/path", t1, t2, t3, false, false, "name", "value", "domain", "/path", t1, t2, t3, false, false,
network::mojom::CookieSameSite::NO_RESTRICTION, priority) network::mojom::CookieSameSite::NO_RESTRICTION, priority)
->Priority()); ->Priority());
......
include_rules = [ include_rules = [
"+net/base/load_flags.h", "+net/base/load_flags.h",
"+net/cookies/canonical_cookie.h",
"+net/cookies/cookie_constants.h",
"+services/network/public/cpp/features.h", "+services/network/public/cpp/features.h",
] ]
......
...@@ -16,8 +16,8 @@ typemaps = [ ...@@ -16,8 +16,8 @@ typemaps = [
"//third_party/blink/renderer/core/messaging/blink_transferable_message.typemap", "//third_party/blink/renderer/core/messaging/blink_transferable_message.typemap",
"//third_party/blink/renderer/modules/indexeddb/indexed_db_blink.typemap", "//third_party/blink/renderer/modules/indexeddb/indexed_db_blink.typemap",
"//third_party/blink/renderer/platform/blob/serialized_blob.typemap", "//third_party/blink/renderer/platform/blob/serialized_blob.typemap",
"//third_party/blink/renderer/platform/cookie/canonical_cookie.typemap",
"//third_party/blink/renderer/platform/mojo/big_string.typemap", "//third_party/blink/renderer/platform/mojo/big_string.typemap",
"//third_party/blink/renderer/platform/mojo/canonical_cookie.typemap",
"//third_party/blink/renderer/platform/mojo/fetch_api_request_headers.typemap", "//third_party/blink/renderer/platform/mojo/fetch_api_request_headers.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",
......
// Copyright 2018 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_CANONICAL_COOKIE_MOJOM_TRAITS_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_MOJO_CANONICAL_COOKIE_MOJOM_TRAITS_H_
#include "base/time/time.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "services/network/public/mojom/restricted_cookie_manager.mojom-blink-forward.h"
#include "third_party/blink/public/platform/web_canonical_cookie.h"
#include "third_party/blink/public/platform/web_string.h"
namespace mojo {
template <>
struct PLATFORM_EXPORT StructTraits<network::mojom::CanonicalCookieDataView,
blink::WebCanonicalCookie> {
static WTF::String name(const blink::WebCanonicalCookie& c);
static WTF::String value(const blink::WebCanonicalCookie& c);
static WTF::String domain(const blink::WebCanonicalCookie& c);
static WTF::String path(const blink::WebCanonicalCookie& c);
static base::Time creation(const blink::WebCanonicalCookie& c);
static base::Time expiry(const blink::WebCanonicalCookie& c);
static base::Time last_access(const blink::WebCanonicalCookie& c);
static bool secure(const blink::WebCanonicalCookie& c);
static bool httponly(const blink::WebCanonicalCookie& c);
static network::mojom::CookieSameSite site_restrictions(
const blink::WebCanonicalCookie& c);
static network::mojom::CookiePriority priority(
const blink::WebCanonicalCookie& c);
static bool Read(network::mojom::CanonicalCookieDataView cookie,
blink::WebCanonicalCookie* out);
};
} // namespace mojo
#endif // THIRD_PARTY_BLINK_RENDERER_PLATFORM_MOJO_CANONICAL_COOKIE_MOJOM_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