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

Side by Side Diff: third_party/WebKit/Source/web/WebPepperSocketChannelClientProxy.h

Issue 2050123002: Remove OwnPtr from Blink. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: First attempt to land. Created 4 years, 6 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 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef WebPepperSocketChannelClientProxy_h 5 #ifndef WebPepperSocketChannelClientProxy_h
6 #define WebPepperSocketChannelClientProxy_h 6 #define WebPepperSocketChannelClientProxy_h
7 7
8 #include "modules/websockets/WebSocketChannelClient.h" 8 #include "modules/websockets/WebSocketChannelClient.h"
9 #include "platform/heap/Handle.h" 9 #include "platform/heap/Handle.h"
10 #include "web/WebPepperSocketImpl.h" 10 #include "web/WebPepperSocketImpl.h"
11 #include "wtf/PassOwnPtr.h"
12 #include "wtf/Vector.h" 11 #include "wtf/Vector.h"
13 #include "wtf/text/WTFString.h" 12 #include "wtf/text/WTFString.h"
13 #include <memory>
14 #include <stdint.h> 14 #include <stdint.h>
15 15
16 namespace blink { 16 namespace blink {
17 17
18 // Ideally we want to simply make WebPepperSocketImpl inherit from 18 // Ideally we want to simply make WebPepperSocketImpl inherit from
19 // WebPepperSocketChannelClient, but we cannot do that because 19 // WebPepperSocketChannelClient, but we cannot do that because
20 // WebSocketChannelClient needs to be on Oilpan's heap whereas 20 // WebSocketChannelClient needs to be on Oilpan's heap whereas
21 // WebPepperSocketImpl cannot be on Oilpan's heap. Thus we need to introduce a 21 // WebPepperSocketImpl cannot be on Oilpan's heap. Thus we need to introduce a
22 // proxy class to decouple WebPepperSocketImpl from WebSocketChannelClient. 22 // proxy class to decouple WebPepperSocketImpl from WebSocketChannelClient.
23 class WebPepperSocketChannelClientProxy final : public GarbageCollectedFinalized <WebPepperSocketChannelClientProxy>, public WebSocketChannelClient { 23 class WebPepperSocketChannelClientProxy final : public GarbageCollectedFinalized <WebPepperSocketChannelClientProxy>, public WebSocketChannelClient {
24 USING_GARBAGE_COLLECTED_MIXIN(WebPepperSocketChannelClientProxy) 24 USING_GARBAGE_COLLECTED_MIXIN(WebPepperSocketChannelClientProxy)
25 public: 25 public:
26 static WebPepperSocketChannelClientProxy* create(WebPepperSocketImpl* impl) 26 static WebPepperSocketChannelClientProxy* create(WebPepperSocketImpl* impl)
27 { 27 {
28 return new WebPepperSocketChannelClientProxy(impl); 28 return new WebPepperSocketChannelClientProxy(impl);
29 } 29 }
30 30
31 void didConnect(const String& subprotocol, const String& extensions) overrid e 31 void didConnect(const String& subprotocol, const String& extensions) overrid e
32 { 32 {
33 m_impl->didConnect(subprotocol, extensions); 33 m_impl->didConnect(subprotocol, extensions);
34 } 34 }
35 void didReceiveTextMessage(const String& payload) override 35 void didReceiveTextMessage(const String& payload) override
36 { 36 {
37 m_impl->didReceiveTextMessage(payload); 37 m_impl->didReceiveTextMessage(payload);
38 } 38 }
39 void didReceiveBinaryMessage(PassOwnPtr<Vector<char>> payload) override 39 void didReceiveBinaryMessage(std::unique_ptr<Vector<char>> payload) override
40 { 40 {
41 m_impl->didReceiveBinaryMessage(std::move(payload)); 41 m_impl->didReceiveBinaryMessage(std::move(payload));
42 } 42 }
43 void didError() override 43 void didError() override
44 { 44 {
45 m_impl->didError(); 45 m_impl->didError();
46 } 46 }
47 void didConsumeBufferedAmount(uint64_t consumed) override 47 void didConsumeBufferedAmount(uint64_t consumed) override
48 { 48 {
49 m_impl->didConsumeBufferedAmount(consumed); 49 m_impl->didConsumeBufferedAmount(consumed);
(...skipping 19 matching lines...) Expand all
69 : m_impl(impl) 69 : m_impl(impl)
70 { 70 {
71 } 71 }
72 72
73 WebPepperSocketImpl* m_impl; 73 WebPepperSocketImpl* m_impl;
74 }; 74 };
75 75
76 } // namespace blink 76 } // namespace blink
77 77
78 #endif // WebPepperSocketChannelClientProxy_h 78 #endif // WebPepperSocketChannelClientProxy_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/WebPepperSocket.cpp ('k') | third_party/WebKit/Source/web/WebPepperSocketImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698