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

Unified Diff: third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h

Issue 2269953004: Implment BytesConsumer::tee (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h
diff --git a/third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h b/third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h
index 0d4778631a0aa93fe0b949b45a8797593308026a..cee1a54d4138b183c2bf9e40967b766818130d06 100644
--- a/third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h
+++ b/third_party/WebKit/Source/modules/fetch/BytesConsumerForDataConsumerHandle.h
@@ -17,11 +17,13 @@
namespace blink {
+class ExecutionContext;
+
class MODULES_EXPORT BytesConsumerForDataConsumerHandle final : public BytesConsumer, public WebDataConsumerHandle::Client {
EAGERLY_FINALIZE();
DECLARE_EAGER_FINALIZATION_OPERATOR_NEW();
public:
- explicit BytesConsumerForDataConsumerHandle(std::unique_ptr<FetchDataConsumerHandle>);
+ BytesConsumerForDataConsumerHandle(ExecutionContext*, std::unique_ptr<FetchDataConsumerHandle>);
~BytesConsumerForDataConsumerHandle() override;
Result read(char* buffer, size_t /* size */, size_t* readSize) override;
@@ -49,11 +51,15 @@ public:
private:
void close();
void error();
+ void notify();
+ Member<ExecutionContext> m_executionContext;
std::unique_ptr<FetchDataConsumerHandle::Reader> m_reader;
Member<BytesConsumer::Client> m_client;
InternalState m_state = InternalState::Waiting;
Error m_error;
+ bool m_isInTwoPhaseRead = false;
+ bool m_hasPendingNotification = false;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698