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

Side by Side Diff: Source/modules/serviceworkers/Response.h

Issue 307063002: ServiceWorker: Add a Response ctor that accepts the body as a Blob (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: don't crash on null body Created 6 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 | Annotate | Revision Log
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 Response_h 5 #ifndef Response_h
6 #define Response_h 6 #define Response_h
7 7
8 #include "bindings/v8/Dictionary.h" 8 #include "bindings/v8/Dictionary.h"
9 #include "bindings/v8/ScriptWrappable.h" 9 #include "bindings/v8/ScriptWrappable.h"
10 #include "modules/serviceworkers/HeaderMap.h" 10 #include "modules/serviceworkers/HeaderMap.h"
11 #include "platform/blob/BlobData.h"
11 #include "wtf/RefCounted.h" 12 #include "wtf/RefCounted.h"
12 #include "wtf/RefPtr.h" 13 #include "wtf/RefPtr.h"
13 #include "wtf/text/WTFString.h" 14 #include "wtf/text/WTFString.h"
14 15
15 namespace blink { class WebServiceWorkerResponse; } 16 namespace blink { class WebServiceWorkerResponse; }
16 17
17 namespace WebCore { 18 namespace WebCore {
18 19
20 class Blob;
19 struct ResponseInit; 21 struct ResponseInit;
20 22
21 class Response FINAL : public ScriptWrappable, public RefCounted<Response> { 23 class Response FINAL : public ScriptWrappable, public RefCounted<Response> {
22 public: 24 public:
23 static PassRefPtr<Response> create();
24 static PassRefPtr<Response> create(const Dictionary& responseInit); 25 static PassRefPtr<Response> create(const Dictionary& responseInit);
26 static PassRefPtr<Response> create(Blob* body, const Dictionary& responseIni t);
25 ~Response() { }; 27 ~Response() { };
26 28
27 unsigned short status() const { return m_status; } 29 unsigned short status() const { return m_status; }
28 String statusText() const { return m_statusText; } 30 String statusText() const { return m_statusText; }
29 PassRefPtr<HeaderMap> headers() const; 31 PassRefPtr<HeaderMap> headers() const;
30 32
31 void populateWebServiceWorkerResponse(blink::WebServiceWorkerResponse&); 33 void populateWebServiceWorkerResponse(blink::WebServiceWorkerResponse&);
32 34
33 private: 35 private:
34 explicit Response(const ResponseInit&); 36 Response(PassRefPtr<BlobDataHandle>, const ResponseInit&);
35 unsigned short m_status; 37 unsigned short m_status;
36 String m_statusText; 38 String m_statusText;
37 RefPtr<HeaderMap> m_headers; 39 RefPtr<HeaderMap> m_headers;
40 RefPtr<BlobDataHandle> m_blobDataHandle;
38 }; 41 };
39 42
40 } // namespace WebCore 43 } // namespace WebCore
41 44
42 #endif // Response_h 45 #endif // Response_h
OLDNEW
« no previous file with comments | « LayoutTests/http/tests/serviceworker/resources/response-worker.js ('k') | Source/modules/serviceworkers/Response.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698