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.
6 #include "FetchEvent.h"
8 #include "modules/serviceworkers/Request.h"
9 #include "modules/serviceworkers/ServiceWorkerGlobalScope.h"
10 #include "wtf/RefPtr.h"
14 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create()
16 return adoptRefWillBeNoop(new FetchEvent());
19 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create(PassRefPtr<RespondWithObserver> observer, PassRefPtrWillBeRawPtr<Request> request)
21 return adoptRefWillBeNoop(new FetchEvent(observer, request));
24 PassRefPtrWillBeRawPtr<Request> FetchEvent::request() const
29 bool FetchEvent::isReload() const
34 void FetchEvent::respondWith(ScriptState* scriptState, const ScriptValue& value)
36 m_observer->respondWith(scriptState, value);
39 const AtomicString& FetchEvent::interfaceName() const
41 return EventNames::FetchEvent;
44 void FetchEvent::setIsReload(bool isReload)
46 m_isReload = isReload;
49 FetchEvent::FetchEvent()
52 ScriptWrappable::init(this);
55 FetchEvent::FetchEvent(PassRefPtr<RespondWithObserver> observer, PassRefPtrWillBeRawPtr<Request> request)
56 : Event(EventTypeNames::fetch, /*canBubble=*/false, /*cancelable=*/true)
57 , m_observer(observer)
61 ScriptWrappable::init(this);
64 void FetchEvent::trace(Visitor* visitor)
66 visitor->trace(m_request);
67 Event::trace(visitor);