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

Side by Side Diff: Source/modules/serviceworkers/FetchRequestData.cpp

Issue 329853012: [ServiceWorker] Make Request class better conformance with the spec. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 5 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 2014 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 #include "config.h"
6 #include "FetchRequestData.h"
7
8 #include "core/fetch/ResourceLoaderOptions.h"
9 #include "core/loader/ThreadableLoader.h"
10 #include "modules/serviceworkers/FetchHeaderList.h"
11 #include "platform/network/ResourceRequest.h"
12 #include "public/platform/WebServiceWorkerRequest.h"
13
14 namespace WebCore {
15
16 PassRefPtr<FetchRequestData> FetchRequestData::create()
17 {
18 return adoptRef(new FetchRequestData());
19 }
20
21 PassRefPtr<FetchRequestData> FetchRequestData::create(const blink::WebServiceWor kerRequest& webRequest)
22 {
23 RefPtr<FetchRequestData> request = adoptRef(new FetchRequestData());
yhirano 2014/07/02 01:53:06 Let's use |create|.
horo 2014/07/02 03:33:04 Done.
24 request->m_url = webRequest.url();
25 request->m_method = webRequest.method();
26 for (size_t i = 0; i < webRequest.headerList().size(); ++i) {
27 request->m_headerList->append(webRequest.headerList()[i]->first, webRequ est.headerList()[i]->second);
28 }
29 request->m_referrer.setURL(webRequest.referrer());
30 return request.release();
31 }
32
33 PassRefPtr<FetchRequestData> FetchRequestData::createRestrictedCopy(bool isServi ceWorker, PassRefPtr<SecurityOrigin> origin) const
34 {
35 // "To make a restricted copy of a request |request|, run these steps:"
36 // "1. Let |r| be a new request whose url is |request|'s url, method is
37 // |request|'s method, header list is a copy of |request|'s header list,
38 // body is a tee of |request|'s body, client is entry settings object's
39 // global object, origin is entry settings object's origin, referrer is
40 // |client|, context is |connect|, mode is |request|'s mode, and credentials
41 // mode is |request|'s credentials mode."
42 RefPtr<FetchRequestData> request = adoptRef(new FetchRequestData());
43 request->m_url = m_url;
44 request->m_method = m_method;
45 request->m_headerList = request->m_headerList->createCopy();
46 // FIXME: Support body.
47 request->m_clientIsServiceWorker = isServiceWorker;
yhirano 2014/07/02 01:53:06 Can you tell me what this flag is?
horo 2014/07/02 03:33:04 Humm.. I think we don't need this. Deleted.
48 request->m_origin = origin;
49 request->m_referrer.setClient();
50 request->m_context = ConnectContext;
51 request->m_mode = m_mode;
52 request->m_credentials = m_credentials;
53 // "2. Return |r|."
54 return request.release();
55 }
56
57 FetchRequestData::~FetchRequestData()
58 {
59 }
60
61 FetchRequestData::FetchRequestData()
62 : m_method("GET")
63 , m_headerList(FetchHeaderList::create())
64 , m_clientIsServiceWorker(false)
65 , m_context(NullContext)
66 , m_sameOriginDataURLFlag(false)
67 , m_mode(NoCORSMode)
68 , m_credentials(OmitCredentials)
69 , m_responseTainting(BasicTainting)
70 {
71 }
72
73 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698