Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Side by Side Diff: third_party/WebKit/Source/platform/exported/WebURLResponse.cpp

Issue 2120233003: [OBSOLETE] Remove WebURLResponse::initialize() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix formatting issues and one last compile error Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 21 matching lines...) Expand all
32 32
33 #include "platform/exported/WebURLResponsePrivate.h" 33 #include "platform/exported/WebURLResponsePrivate.h"
34 #include "platform/network/ResourceLoadTiming.h" 34 #include "platform/network/ResourceLoadTiming.h"
35 #include "platform/network/ResourceResponse.h" 35 #include "platform/network/ResourceResponse.h"
36 #include "public/platform/WebHTTPHeaderVisitor.h" 36 #include "public/platform/WebHTTPHeaderVisitor.h"
37 #include "public/platform/WebHTTPLoadInfo.h" 37 #include "public/platform/WebHTTPLoadInfo.h"
38 #include "public/platform/WebString.h" 38 #include "public/platform/WebString.h"
39 #include "public/platform/WebURL.h" 39 #include "public/platform/WebURL.h"
40 #include "public/platform/WebURLLoadTiming.h" 40 #include "public/platform/WebURLLoadTiming.h"
41 #include "wtf/Allocator.h" 41 #include "wtf/Allocator.h"
42 #include "wtf/Assertions.h"
42 #include "wtf/PtrUtil.h" 43 #include "wtf/PtrUtil.h"
43 #include "wtf/RefPtr.h" 44 #include "wtf/RefPtr.h"
44 #include <memory> 45 #include <memory>
45 46
46 namespace blink { 47 namespace blink {
47 48
48 namespace { 49 namespace {
49 50
50 class ExtraDataContainer : public ResourceResponse::ExtraData { 51 class ExtraDataContainer : public ResourceResponse::ExtraData {
51 public: 52 public:
(...skipping 17 matching lines...) Expand all
69 // The standard implementation of WebURLResponsePrivate, which maintains 70 // The standard implementation of WebURLResponsePrivate, which maintains
70 // ownership of a ResourceResponse instance. 71 // ownership of a ResourceResponse instance.
71 class WebURLResponsePrivateImpl final : public WebURLResponsePrivate { 72 class WebURLResponsePrivateImpl final : public WebURLResponsePrivate {
72 USING_FAST_MALLOC(WebURLResponsePrivateImpl); 73 USING_FAST_MALLOC(WebURLResponsePrivateImpl);
73 public: 74 public:
74 WebURLResponsePrivateImpl() 75 WebURLResponsePrivateImpl()
75 { 76 {
76 m_resourceResponse = &m_resourceResponseAllocation; 77 m_resourceResponse = &m_resourceResponseAllocation;
77 } 78 }
78 79
79 WebURLResponsePrivateImpl(const WebURLResponsePrivate* p) 80 WebURLResponsePrivateImpl(const WebURLResponsePrivate& p)
80 : m_resourceResponseAllocation(*p->m_resourceResponse) 81 : m_resourceResponseAllocation(*p.m_resourceResponse)
81 { 82 {
82 m_resourceResponse = &m_resourceResponseAllocation; 83 m_resourceResponse = &m_resourceResponseAllocation;
83 } 84 }
84 85
85 virtual void dispose() { delete this; } 86 virtual void dispose() { delete this; }
86 87
87 private: 88 private:
88 virtual ~WebURLResponsePrivateImpl() { } 89 virtual ~WebURLResponsePrivateImpl() { }
89 90
90 ResourceResponse m_resourceResponseAllocation; 91 ResourceResponse m_resourceResponseAllocation;
91 }; 92 };
92 93
93 void WebURLResponse::initialize() 94 WebURLResponse::~WebURLResponse()
94 { 95 {
95 assign(new WebURLResponsePrivateImpl()); 96 m_private->dispose();
96 } 97 }
97 98
98 void WebURLResponse::reset() 99 WebURLResponse::WebURLResponse()
100 : m_private(new WebURLResponsePrivateImpl())
99 { 101 {
100 assign(0); 102 }
103 WebURLResponse::WebURLResponse(const WebURLResponse& r)
104 : m_private(new WebURLResponsePrivateImpl(*r.m_private))
105 {
101 } 106 }
102 107
103 void WebURLResponse::assign(const WebURLResponse& r) 108 WebURLResponse::WebURLResponse(const WebURL& url)
109 : WebURLResponse()
110 {
111 setURL(url);
112 }
113
114 WebURLResponse& WebURLResponse::operator=(const WebURLResponse& r)
104 { 115 {
105 if (&r != this) 116 if (&r != this)
106 assign(r.m_private ? new WebURLResponsePrivateImpl(r.m_private) : 0); 117 assign(new WebURLResponsePrivateImpl(*r.m_private));
118 return *this;
107 } 119 }
108 120
109 bool WebURLResponse::isNull() const 121 bool WebURLResponse::isNull() const
110 { 122 {
111 return !m_private || m_private->m_resourceResponse->isNull(); 123 return m_private->m_resourceResponse->isNull();
112 } 124 }
113 125
114 WebURL WebURLResponse::url() const 126 WebURL WebURLResponse::url() const
115 { 127 {
116 return m_private->m_resourceResponse->url(); 128 return m_private->m_resourceResponse->url();
117 } 129 }
118 130
119 void WebURLResponse::setURL(const WebURL& url) 131 void WebURLResponse::setURL(const WebURL& url)
120 { 132 {
121 m_private->m_resourceResponse->setURL(url); 133 m_private->m_resourceResponse->setURL(url);
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 webSecurityDetails.cipher, 343 webSecurityDetails.cipher,
332 webSecurityDetails.mac, 344 webSecurityDetails.mac,
333 webSecurityDetails.certId, 345 webSecurityDetails.certId,
334 webSecurityDetails.numUnknownScts, 346 webSecurityDetails.numUnknownScts,
335 webSecurityDetails.numInvalidScts, 347 webSecurityDetails.numInvalidScts,
336 webSecurityDetails.numValidScts); 348 webSecurityDetails.numValidScts);
337 } 349 }
338 350
339 ResourceResponse& WebURLResponse::toMutableResourceResponse() 351 ResourceResponse& WebURLResponse::toMutableResourceResponse()
340 { 352 {
341 ASSERT(m_private); 353 DCHECK(m_private);
342 ASSERT(m_private->m_resourceResponse); 354 DCHECK(m_private->m_resourceResponse);
343 355
344 return *m_private->m_resourceResponse; 356 return *m_private->m_resourceResponse;
345 } 357 }
346 358
347 const ResourceResponse& WebURLResponse::toResourceResponse() const 359 const ResourceResponse& WebURLResponse::toResourceResponse() const
348 { 360 {
349 ASSERT(m_private); 361 DCHECK(m_private);
350 ASSERT(m_private->m_resourceResponse); 362 DCHECK(m_private->m_resourceResponse);
351 363
352 return *m_private->m_resourceResponse; 364 return *m_private->m_resourceResponse;
353 } 365 }
354 366
355 bool WebURLResponse::wasCached() const 367 bool WebURLResponse::wasCached() const
356 { 368 {
357 return m_private->m_resourceResponse->wasCached(); 369 return m_private->m_resourceResponse->wasCached();
358 } 370 }
359 371
360 void WebURLResponse::setWasCached(bool value) 372 void WebURLResponse::setWasCached(bool value)
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
500 if (!data) 512 if (!data)
501 return 0; 513 return 0;
502 return static_cast<ExtraDataContainer*>(data.get())->getExtraData(); 514 return static_cast<ExtraDataContainer*>(data.get())->getExtraData();
503 } 515 }
504 516
505 void WebURLResponse::setExtraData(WebURLResponse::ExtraData* extraData) 517 void WebURLResponse::setExtraData(WebURLResponse::ExtraData* extraData)
506 { 518 {
507 m_private->m_resourceResponse->setExtraData(ExtraDataContainer::create(extra Data)); 519 m_private->m_resourceResponse->setExtraData(ExtraDataContainer::create(extra Data));
508 } 520 }
509 521
522 WebURLResponse::WebURLResponse(WebURLResponsePrivate* p)
523 : m_private(p)
524 {
525 DCHECK(p);
526 }
527
510 void WebURLResponse::assign(WebURLResponsePrivate* p) 528 void WebURLResponse::assign(WebURLResponsePrivate* p)
511 { 529 {
512 // Subclasses may call this directly so a self-assignment check is needed 530 DCHECK(p);
513 // here as well as in the public assign method. 531 // Subclasses may perform self-assignment.
514 if (m_private == p) 532 if (m_private == p)
515 return; 533 return;
516 if (m_private) 534 m_private->dispose();
517 m_private->dispose();
518 m_private = p; 535 m_private = p;
519 } 536 }
520 537
521 } // namespace blink 538 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698