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

Unified Diff: content/browser/service_worker/service_worker_url_request_job.h

Issue 2703343002: ServiceWorker: Use mojo's data pipe for respondWith(stream) (Closed)
Patch Set: Addressed comments from kinuko and haraken Created 3 years, 8 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: content/browser/service_worker/service_worker_url_request_job.h
diff --git a/content/browser/service_worker/service_worker_url_request_job.h b/content/browser/service_worker/service_worker_url_request_job.h
index 3b54696172c2cf9a942c74c5c413a0c9deda5778..bd4a021cb4dd0bdc750872610a6efc8960371f6c 100644
--- a/content/browser/service_worker/service_worker_url_request_job.h
+++ b/content/browser/service_worker/service_worker_url_request_job.h
@@ -20,11 +20,13 @@
#include "content/browser/service_worker/embedded_worker_status.h"
#include "content/browser/service_worker/service_worker_metrics.h"
#include "content/common/content_export.h"
+#include "content/common/service_worker/service_worker_event_dispatcher.mojom.h"
#include "content/common/service_worker/service_worker_status_code.h"
#include "content/common/service_worker/service_worker_types.h"
#include "content/public/common/request_context_frame_type.h"
#include "content/public/common/request_context_type.h"
#include "content/public/common/resource_type.h"
+#include "mojo/public/cpp/system/data_pipe.h"
#include "net/http/http_byte_range.h"
#include "net/url_request/url_request.h"
#include "net/url_request/url_request_job.h"
@@ -47,10 +49,9 @@ namespace content {
class ResourceContext;
class ResourceRequestBodyImpl;
class ServiceWorkerBlobReader;
-class ServiceWorkerStreamReader;
+class ServiceWorkerDataPipeReader;
class ServiceWorkerFetchDispatcher;
class ServiceWorkerVersion;
-class Stream;
class CONTENT_EXPORT ServiceWorkerURLRequestJob : public net::URLRequestJob {
public:
@@ -139,10 +140,10 @@ class CONTENT_EXPORT ServiceWorkerURLRequestJob : public net::URLRequestJob {
int ReadRawData(net::IOBuffer* buf, int buf_size) override;
//----------------------------------------------------------------------------
- // The following are intended for use by ServiceWorker(Blob|Stream)Reader.
- void OnResponseStarted();
- void OnReadRawDataComplete(int bytes_read);
- void RecordResult(ServiceWorkerMetrics::URLRequestJobResult result);
+ // The following are intended for use by ServiceWorker(Blob|DataPipe)Reader.
+ virtual void OnResponseStarted();
+ virtual void OnReadRawDataComplete(int bytes_read);
+ virtual void RecordResult(ServiceWorkerMetrics::URLRequestJobResult result);
//----------------------------------------------------------------------------
base::WeakPtr<ServiceWorkerURLRequestJob> GetWeakPtr();
@@ -187,6 +188,7 @@ class CONTENT_EXPORT ServiceWorkerURLRequestJob : public net::URLRequestJob {
ServiceWorkerStatusCode status,
ServiceWorkerFetchEventResult fetch_result,
const ServiceWorkerResponse& response,
+ blink::mojom::ServiceWorkerStreamHandlePtr body_as_stream,
const scoped_refptr<ServiceWorkerVersion>& version);
void SetResponse(const ServiceWorkerResponse& response);
@@ -302,9 +304,9 @@ class CONTENT_EXPORT ServiceWorkerURLRequestJob : public net::URLRequestJob {
std::string client_id_;
base::WeakPtr<storage::BlobStorageContext> blob_storage_context_;
const ResourceContext* resource_context_;
- // Only one of |blob_reader_| and |stream_reader_| can be non-null.
+ // Only one of |blob_reader_| and |data_pipe_reader_| can be non-null.
std::unique_ptr<ServiceWorkerBlobReader> blob_reader_;
- std::unique_ptr<ServiceWorkerStreamReader> stream_reader_;
+ std::unique_ptr<ServiceWorkerDataPipeReader> data_pipe_reader_;
FetchRequestMode request_mode_;
FetchCredentialsMode credentials_mode_;

Powered by Google App Engine
This is Rietveld 408576698