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

Side by Side Diff: Source/modules/fetch/DataConsumerHandleUtil.h

Issue 1176243004: Add FetchDataConsumerHandle and utility functions/classes (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Build break fix. Created 5 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
(Empty)
1 // Copyright 2015 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 #ifndef DataConsumerHandleUtil_h
6 #define DataConsumerHandleUtil_h
7
8 #include "modules/fetch/FetchDataConsumerHandle.h"
9 #include "public/platform/WebDataConsumerHandle.h"
10 #include "wtf/PassOwnPtr.h"
11 #include "wtf/WeakPtr.h"
12
13 namespace blink {
14
15 // Returns a handle that returns ShouldWait for read / beginRead and
16 // UnexpectedError for endRead.
17 PassOwnPtr<WebDataConsumerHandle> createWaitingDataConsumerHandle();
18
19 // Returns a handle that returns Done for read / beginRead and
20 // UnexpectedError for endRead.
21 PassOwnPtr<WebDataConsumerHandle> createDoneDataConsumerHandle();
22
23 // Returns a handle that returns UnexpectedError for read / beginRead /
24 // endRead.
25 PassOwnPtr<WebDataConsumerHandle> createUnexpectedErrorDataConsumerHandle();
26
27 // Returns a FetchDataConsumerHandle that wraps WebDataConsumerHandle.
28 PassOwnPtr<FetchDataConsumerHandle> createFetchDataConsumerHandleFromWebHandle(P assOwnPtr<WebDataConsumerHandle>);
29
30 // A helper class to call Client::didGetReadable() asynchronously after
31 // Reader creation.
32 // NotifyOnReaderCreationHelper must be owned by a reader and
33 // |client| must be the client of the reader.
34 class NotifyOnReaderCreationHelper final {
35 public:
36 NotifyOnReaderCreationHelper(WebDataConsumerHandle::Client* /* client */);
37
38 private:
39 void notify(WebDataConsumerHandle::Client*);
40
41 WeakPtrFactory<NotifyOnReaderCreationHelper> m_factory;
42 };
43
44 } // namespace blink
45
46 #endif // DataConsumerHandleUtil_h
OLDNEW
« no previous file with comments | « Source/modules/fetch/DataConsumerHandleTestUtil.h ('k') | Source/modules/fetch/DataConsumerHandleUtil.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698