OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 19 matching lines...) Expand all Loading... |
30 #ifndef ServiceWorkerGlobalScope_h | 30 #ifndef ServiceWorkerGlobalScope_h |
31 #define ServiceWorkerGlobalScope_h | 31 #define ServiceWorkerGlobalScope_h |
32 | 32 |
33 #include "bindings/modules/v8/RequestOrUSVString.h" | 33 #include "bindings/modules/v8/RequestOrUSVString.h" |
34 #include "core/workers/WorkerGlobalScope.h" | 34 #include "core/workers/WorkerGlobalScope.h" |
35 #include "modules/ModulesExport.h" | 35 #include "modules/ModulesExport.h" |
36 #include "platform/heap/Handle.h" | 36 #include "platform/heap/Handle.h" |
37 #include "public/platform/modules/serviceworker/WebServiceWorkerRegistration.h" | 37 #include "public/platform/modules/serviceworker/WebServiceWorkerRegistration.h" |
38 #include "wtf/Assertions.h" | 38 #include "wtf/Assertions.h" |
39 #include "wtf/Forward.h" | 39 #include "wtf/Forward.h" |
40 #include <memory> | |
41 | 40 |
42 namespace blink { | 41 namespace blink { |
43 | 42 |
44 class Dictionary; | 43 class Dictionary; |
45 class Request; | 44 class Request; |
46 class ScriptPromise; | 45 class ScriptPromise; |
47 class ScriptState; | 46 class ScriptState; |
48 class ServiceWorkerClients; | 47 class ServiceWorkerClients; |
49 class ServiceWorkerRegistration; | 48 class ServiceWorkerRegistration; |
50 class ServiceWorkerThread; | 49 class ServiceWorkerThread; |
51 class WaitUntilObserver; | 50 class WaitUntilObserver; |
52 class WorkerThreadStartupData; | 51 class WorkerThreadStartupData; |
53 | 52 |
54 typedef RequestOrUSVString RequestInfo; | 53 typedef RequestOrUSVString RequestInfo; |
55 | 54 |
56 class MODULES_EXPORT ServiceWorkerGlobalScope final : public WorkerGlobalScope { | 55 class MODULES_EXPORT ServiceWorkerGlobalScope final : public WorkerGlobalScope { |
57 DEFINE_WRAPPERTYPEINFO(); | 56 DEFINE_WRAPPERTYPEINFO(); |
58 public: | 57 public: |
59 static ServiceWorkerGlobalScope* create(ServiceWorkerThread*, std::unique_pt
r<WorkerThreadStartupData>); | 58 static ServiceWorkerGlobalScope* create(ServiceWorkerThread*, PassOwnPtr<Wor
kerThreadStartupData>); |
60 | 59 |
61 ~ServiceWorkerGlobalScope() override; | 60 ~ServiceWorkerGlobalScope() override; |
62 bool isServiceWorkerGlobalScope() const override { return true; } | 61 bool isServiceWorkerGlobalScope() const override { return true; } |
63 | 62 |
64 // WorkerGlobalScope | 63 // WorkerGlobalScope |
65 void didEvaluateWorkerScript() override; | 64 void didEvaluateWorkerScript() override; |
66 | 65 |
67 // ServiceWorkerGlobalScope.idl | 66 // ServiceWorkerGlobalScope.idl |
68 ServiceWorkerClients* clients(); | 67 ServiceWorkerClients* clients(); |
69 ServiceWorkerRegistration* registration(); | 68 ServiceWorkerRegistration* registration(); |
(...skipping 16 matching lines...) Expand all Loading... |
86 DEFINE_ATTRIBUTE_EVENT_LISTENER(foreignfetch); | 85 DEFINE_ATTRIBUTE_EVENT_LISTENER(foreignfetch); |
87 | 86 |
88 DECLARE_VIRTUAL_TRACE(); | 87 DECLARE_VIRTUAL_TRACE(); |
89 | 88 |
90 protected: | 89 protected: |
91 // EventTarget | 90 // EventTarget |
92 DispatchEventResult dispatchEventInternal(Event*) override; | 91 DispatchEventResult dispatchEventInternal(Event*) override; |
93 bool addEventListenerInternal(const AtomicString& eventType, EventListener*,
const AddEventListenerOptions&) override; | 92 bool addEventListenerInternal(const AtomicString& eventType, EventListener*,
const AddEventListenerOptions&) override; |
94 | 93 |
95 private: | 94 private: |
96 ServiceWorkerGlobalScope(const KURL&, const String& userAgent, ServiceWorker
Thread*, double timeOrigin, std::unique_ptr<SecurityOrigin::PrivilegeData>, Work
erClients*); | 95 ServiceWorkerGlobalScope(const KURL&, const String& userAgent, ServiceWorker
Thread*, double timeOrigin, PassOwnPtr<SecurityOrigin::PrivilegeData>, WorkerCli
ents*); |
97 void importScripts(const Vector<String>& urls, ExceptionState&) override; | 96 void importScripts(const Vector<String>& urls, ExceptionState&) override; |
98 CachedMetadataHandler* createWorkerScriptCachedMetadataHandler(const KURL& s
criptURL, const Vector<char>* metaData) override; | 97 CachedMetadataHandler* createWorkerScriptCachedMetadataHandler(const KURL& s
criptURL, const Vector<char>* metaData) override; |
99 void logExceptionToConsole(const String& errorMessage, std::unique_ptr<Sourc
eLocation>) override; | 98 void logExceptionToConsole(const String& errorMessage, PassOwnPtr<SourceLoca
tion>) override; |
100 void scriptLoaded(size_t scriptSize, size_t cachedMetadataSize) override; | 99 void scriptLoaded(size_t scriptSize, size_t cachedMetadataSize) override; |
101 | 100 |
102 Member<ServiceWorkerClients> m_clients; | 101 Member<ServiceWorkerClients> m_clients; |
103 Member<ServiceWorkerRegistration> m_registration; | 102 Member<ServiceWorkerRegistration> m_registration; |
104 bool m_didEvaluateScript; | 103 bool m_didEvaluateScript; |
105 bool m_hadErrorInTopLevelEventHandler; | 104 bool m_hadErrorInTopLevelEventHandler; |
106 unsigned m_eventNestingLevel; | 105 unsigned m_eventNestingLevel; |
107 size_t m_scriptCount; | 106 size_t m_scriptCount; |
108 size_t m_scriptTotalSize; | 107 size_t m_scriptTotalSize; |
109 size_t m_scriptCachedMetadataTotalSize; | 108 size_t m_scriptCachedMetadataTotalSize; |
110 }; | 109 }; |
111 | 110 |
112 DEFINE_TYPE_CASTS(ServiceWorkerGlobalScope, ExecutionContext, context, context->
isServiceWorkerGlobalScope(), context.isServiceWorkerGlobalScope()); | 111 DEFINE_TYPE_CASTS(ServiceWorkerGlobalScope, ExecutionContext, context, context->
isServiceWorkerGlobalScope(), context.isServiceWorkerGlobalScope()); |
113 | 112 |
114 } // namespace blink | 113 } // namespace blink |
115 | 114 |
116 #endif // ServiceWorkerGlobalScope_h | 115 #endif // ServiceWorkerGlobalScope_h |
OLD | NEW |