| Index: Source/modules/serviceworkers/Response.h
|
| diff --git a/Source/modules/serviceworkers/Response.h b/Source/modules/serviceworkers/Response.h
|
| index 7bccea39ce2c856f21fa419b84b6ec4207d46767..e27e4afea683ad682d19ad10595c2ebffc07442b 100644
|
| --- a/Source/modules/serviceworkers/Response.h
|
| +++ b/Source/modules/serviceworkers/Response.h
|
| @@ -17,6 +17,7 @@
|
| namespace blink {
|
|
|
| class Blob;
|
| +class BodyStreamBuffer;
|
| class DOMArrayBuffer;
|
| class DOMArrayBufferView;
|
| class ExceptionState;
|
| @@ -28,7 +29,7 @@ typedef BlobOrArrayBufferOrArrayBufferViewOrUSVString BodyInit;
|
| class Response final : public Body {
|
| DEFINE_WRAPPERTYPEINFO();
|
| public:
|
| - virtual ~Response() { }
|
| + ~Response() override { }
|
|
|
| // From Response.idl:
|
| static Response* create(ExecutionContext*, ExceptionState&);
|
| @@ -37,9 +38,8 @@ public:
|
| static Response* create(ExecutionContext*, Blob*, const ResponseInit&, ExceptionState&);
|
| static Response* create(ExecutionContext*, FetchResponseData*);
|
| static Response* create(ExecutionContext*, const WebServiceWorkerResponse&);
|
| - // The 'FetchResponseData' object is shared between responses, as it is
|
| - // immutable to the user after Response creation. Headers are copied.
|
| - static Response* create(const Response&);
|
| +
|
| + static Response* createClone(const Response&);
|
|
|
| const FetchResponseData* response() const { return m_response; }
|
|
|
| @@ -55,17 +55,22 @@ public:
|
|
|
| void populateWebServiceWorkerResponse(WebServiceWorkerResponse&);
|
|
|
| - bool hasBody() const { return m_response->blobDataHandle(); }
|
| + bool hasBody() const;
|
| +
|
| + PassRefPtr<BlobDataHandle> blobDataHandle() const override;
|
| + BodyStreamBuffer* buffer() const override;
|
| + String contentType() const override;
|
| + PassRefPtr<BlobDataHandle> internalBlobDataHandle() const;
|
| + BodyStreamBuffer* internalBuffer() const;
|
| + String internalContentType() const;
|
|
|
| - virtual void trace(Visitor*) override;
|
| + void trace(Visitor*) override;
|
|
|
| private:
|
| explicit Response(const Response&);
|
| explicit Response(ExecutionContext*);
|
| Response(ExecutionContext*, FetchResponseData*);
|
|
|
| - virtual PassRefPtr<BlobDataHandle> blobDataHandle() override;
|
| -
|
| const Member<FetchResponseData> m_response;
|
| const Member<Headers> m_headers;
|
| };
|
|
|