| 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 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 #include "modules/serviceworkers/InspectorServiceWorkerCacheAgent.h" | 48 #include "modules/serviceworkers/InspectorServiceWorkerCacheAgent.h" |
| 49 #include "modules/serviceworkers/ServiceWorkerClients.h" | 49 #include "modules/serviceworkers/ServiceWorkerClients.h" |
| 50 #include "modules/serviceworkers/ServiceWorkerGlobalScopeClient.h" | 50 #include "modules/serviceworkers/ServiceWorkerGlobalScopeClient.h" |
| 51 #include "modules/serviceworkers/ServiceWorkerRegistration.h" | 51 #include "modules/serviceworkers/ServiceWorkerRegistration.h" |
| 52 #include "modules/serviceworkers/ServiceWorkerScriptCachedMetadataHandler.h" | 52 #include "modules/serviceworkers/ServiceWorkerScriptCachedMetadataHandler.h" |
| 53 #include "modules/serviceworkers/ServiceWorkerThread.h" | 53 #include "modules/serviceworkers/ServiceWorkerThread.h" |
| 54 #include "modules/serviceworkers/WaitUntilObserver.h" | 54 #include "modules/serviceworkers/WaitUntilObserver.h" |
| 55 #include "platform/network/ResourceRequest.h" | 55 #include "platform/network/ResourceRequest.h" |
| 56 #include "platform/weborigin/DatabaseIdentifier.h" | 56 #include "platform/weborigin/DatabaseIdentifier.h" |
| 57 #include "platform/weborigin/KURL.h" | 57 #include "platform/weborigin/KURL.h" |
| 58 #include "public/platform/Platform.h" |
| 58 #include "public/platform/WebServiceWorkerSkipWaitingCallbacks.h" | 59 #include "public/platform/WebServiceWorkerSkipWaitingCallbacks.h" |
| 59 #include "public/platform/WebURL.h" | 60 #include "public/platform/WebURL.h" |
| 60 #include "wtf/CurrentTime.h" | 61 #include "wtf/CurrentTime.h" |
| 61 | 62 |
| 62 namespace blink { | 63 namespace blink { |
| 63 | 64 |
| 64 class ServiceWorkerGlobalScope::SkipWaitingCallback final : public WebServiceWor
kerSkipWaitingCallbacks { | 65 class ServiceWorkerGlobalScope::SkipWaitingCallback final : public WebServiceWor
kerSkipWaitingCallbacks { |
| 65 WTF_MAKE_NONCOPYABLE(SkipWaitingCallback); | 66 WTF_MAKE_NONCOPYABLE(SkipWaitingCallback); |
| 66 public: | 67 public: |
| 67 explicit SkipWaitingCallback(PassRefPtrWillBeRawPtr<ScriptPromiseResolver> r
esolver) | 68 explicit SkipWaitingCallback(PassRefPtrWillBeRawPtr<ScriptPromiseResolver> r
esolver) |
| (...skipping 19 matching lines...) Expand all Loading... |
| 87 context->applyContentSecurityPolicyFromString(startupData->m_contentSecurity
Policy, startupData->m_contentSecurityPolicyType); | 88 context->applyContentSecurityPolicyFromString(startupData->m_contentSecurity
Policy, startupData->m_contentSecurityPolicyType); |
| 88 | 89 |
| 89 return context.release(); | 90 return context.release(); |
| 90 } | 91 } |
| 91 | 92 |
| 92 ServiceWorkerGlobalScope::ServiceWorkerGlobalScope(const KURL& url, const String
& userAgent, ServiceWorkerThread* thread, double timeOrigin, const SecurityOrigi
n* starterOrigin, PassOwnPtrWillBeRawPtr<WorkerClients> workerClients) | 93 ServiceWorkerGlobalScope::ServiceWorkerGlobalScope(const KURL& url, const String
& userAgent, ServiceWorkerThread* thread, double timeOrigin, const SecurityOrigi
n* starterOrigin, PassOwnPtrWillBeRawPtr<WorkerClients> workerClients) |
| 93 : WorkerGlobalScope(url, userAgent, thread, timeOrigin, starterOrigin, worke
rClients) | 94 : WorkerGlobalScope(url, userAgent, thread, timeOrigin, starterOrigin, worke
rClients) |
| 94 , m_didEvaluateScript(false) | 95 , m_didEvaluateScript(false) |
| 95 , m_hadErrorInTopLevelEventHandler(false) | 96 , m_hadErrorInTopLevelEventHandler(false) |
| 96 , m_eventNestingLevel(0) | 97 , m_eventNestingLevel(0) |
| 98 , m_scriptCount(0) |
| 99 , m_scriptTotalSize(0) |
| 100 , m_scriptCachedMetadataTotalSize(0) |
| 97 { | 101 { |
| 98 workerInspectorController()->registerModuleAgent(InspectorServiceWorkerCache
Agent::create(this)); | 102 workerInspectorController()->registerModuleAgent(InspectorServiceWorkerCache
Agent::create(this)); |
| 99 } | 103 } |
| 100 | 104 |
| 101 ServiceWorkerGlobalScope::~ServiceWorkerGlobalScope() | 105 ServiceWorkerGlobalScope::~ServiceWorkerGlobalScope() |
| 102 { | 106 { |
| 103 } | 107 } |
| 104 | 108 |
| 105 void ServiceWorkerGlobalScope::didEvaluateWorkerScript() | 109 void ServiceWorkerGlobalScope::didEvaluateWorkerScript() |
| 106 { | 110 { |
| 111 if (Platform* platform = Platform::current()) { |
| 112 platform->histogramCustomCounts("ServiceWorker.ScriptCount", m_scriptCou
nt, 1, 1000, 50); |
| 113 platform->histogramCustomCounts("ServiceWorker.ScriptTotalSize", m_scrip
tTotalSize, 1000, 5000000, 50); |
| 114 if (m_scriptCachedMetadataTotalSize) |
| 115 platform->histogramCustomCounts("ServiceWorker.ScriptCachedMetadataT
otalSize", m_scriptCachedMetadataTotalSize, 1000, 50000000, 50); |
| 116 } |
| 107 m_didEvaluateScript = true; | 117 m_didEvaluateScript = true; |
| 108 } | 118 } |
| 109 | 119 |
| 110 CacheStorage* ServiceWorkerGlobalScope::caches(ExecutionContext* context) | 120 CacheStorage* ServiceWorkerGlobalScope::caches(ExecutionContext* context) |
| 111 { | 121 { |
| 112 if (!m_caches) { | 122 if (!m_caches) { |
| 113 String identifier = createDatabaseIdentifierFromSecurityOrigin(context->
securityOrigin()); | 123 String identifier = createDatabaseIdentifierFromSecurityOrigin(context->
securityOrigin()); |
| 114 ASSERT(!identifier.isEmpty()); | 124 ASSERT(!identifier.isEmpty()); |
| 115 m_caches = CacheStorage::create(Platform::current()->cacheStorage(identi
fier)); | 125 m_caches = CacheStorage::create(Platform::current()->cacheStorage(identi
fier)); |
| 116 } | 126 } |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 | 238 |
| 229 void ServiceWorkerGlobalScope::logExceptionToConsole(const String& errorMessage,
int scriptId, const String& sourceURL, int lineNumber, int columnNumber, PassRe
fPtrWillBeRawPtr<ScriptCallStack> callStack) | 239 void ServiceWorkerGlobalScope::logExceptionToConsole(const String& errorMessage,
int scriptId, const String& sourceURL, int lineNumber, int columnNumber, PassRe
fPtrWillBeRawPtr<ScriptCallStack> callStack) |
| 230 { | 240 { |
| 231 WorkerGlobalScope::logExceptionToConsole(errorMessage, scriptId, sourceURL,
lineNumber, columnNumber, callStack); | 241 WorkerGlobalScope::logExceptionToConsole(errorMessage, scriptId, sourceURL,
lineNumber, columnNumber, callStack); |
| 232 RefPtrWillBeRawPtr<ConsoleMessage> consoleMessage = ConsoleMessage::create(J
SMessageSource, ErrorMessageLevel, errorMessage, sourceURL, lineNumber); | 242 RefPtrWillBeRawPtr<ConsoleMessage> consoleMessage = ConsoleMessage::create(J
SMessageSource, ErrorMessageLevel, errorMessage, sourceURL, lineNumber); |
| 233 consoleMessage->setScriptId(scriptId); | 243 consoleMessage->setScriptId(scriptId); |
| 234 consoleMessage->setCallStack(callStack); | 244 consoleMessage->setCallStack(callStack); |
| 235 addMessageToWorkerConsole(consoleMessage.release()); | 245 addMessageToWorkerConsole(consoleMessage.release()); |
| 236 } | 246 } |
| 237 | 247 |
| 248 void ServiceWorkerGlobalScope::scriptLoaded(size_t scriptSize, size_t cachedMeta
dataSize) |
| 249 { |
| 250 ++m_scriptCount; |
| 251 m_scriptTotalSize += scriptSize; |
| 252 m_scriptCachedMetadataTotalSize += cachedMetadataSize; |
| 253 } |
| 254 |
| 238 } // namespace blink | 255 } // namespace blink |
| OLD | NEW |