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 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 #include "public/web/WebSettings.h" | 54 #include "public/web/WebSettings.h" |
55 #include "public/web/WebView.h" | 55 #include "public/web/WebView.h" |
56 #include "public/web/WebWorkerPermissionClientProxy.h" | 56 #include "public/web/WebWorkerPermissionClientProxy.h" |
57 #include "web/ServiceWorkerGlobalScopeClientImpl.h" | 57 #include "web/ServiceWorkerGlobalScopeClientImpl.h" |
58 #include "web/ServiceWorkerGlobalScopeProxy.h" | 58 #include "web/ServiceWorkerGlobalScopeProxy.h" |
59 #include "web/WebDataSourceImpl.h" | 59 #include "web/WebDataSourceImpl.h" |
60 #include "web/WebLocalFrameImpl.h" | 60 #include "web/WebLocalFrameImpl.h" |
61 #include "web/WorkerPermissionClient.h" | 61 #include "web/WorkerPermissionClient.h" |
62 #include "wtf/Functional.h" | 62 #include "wtf/Functional.h" |
63 | 63 |
64 using namespace blink; | |
65 | |
66 namespace blink { | 64 namespace blink { |
67 | 65 |
68 // A thin wrapper for one-off script loading. | 66 // A thin wrapper for one-off script loading. |
69 class WebEmbeddedWorkerImpl::Loader : public WorkerScriptLoaderClient { | 67 class WebEmbeddedWorkerImpl::Loader : public WorkerScriptLoaderClient { |
70 public: | 68 public: |
71 static PassOwnPtr<Loader> create() | 69 static PassOwnPtr<Loader> create() |
72 { | 70 { |
73 return adoptPtr(new Loader()); | 71 return adoptPtr(new Loader()); |
74 } | 72 } |
75 | 73 |
76 virtual ~Loader() | 74 virtual ~Loader() |
77 { | 75 { |
78 m_scriptLoader->setClient(0); | 76 m_scriptLoader->setClient(0); |
79 } | 77 } |
80 | 78 |
81 void load(ExecutionContext* loadingContext, const KURL& scriptURL, const Clo
sure& callback) | 79 void load(ExecutionContext* loadingContext, const KURL& scriptURL, const Clo
sure& callback) |
82 { | 80 { |
83 ASSERT(loadingContext); | 81 ASSERT(loadingContext); |
84 m_callback = callback; | 82 m_callback = callback; |
85 m_scriptLoader->setRequestContext(blink::WebURLRequest::RequestContextSe
rviceWorker); | 83 m_scriptLoader->setRequestContext(WebURLRequest::RequestContextServiceWo
rker); |
86 m_scriptLoader->loadAsynchronously( | 84 m_scriptLoader->loadAsynchronously( |
87 *loadingContext, scriptURL, DenyCrossOriginRequests, this); | 85 *loadingContext, scriptURL, DenyCrossOriginRequests, this); |
88 } | 86 } |
89 | 87 |
90 virtual void notifyFinished() OVERRIDE | 88 virtual void notifyFinished() OVERRIDE |
91 { | 89 { |
92 m_callback(); | 90 m_callback(); |
93 } | 91 } |
94 | 92 |
95 void cancel() | 93 void cancel() |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
387 m_mainScriptLoader.clear(); | 385 m_mainScriptLoader.clear(); |
388 | 386 |
389 m_workerGlobalScopeProxy = ServiceWorkerGlobalScopeProxy::create(*this, *toW
ebLocalFrameImpl(m_mainFrame)->frame()->document(), *m_workerContextClient); | 387 m_workerGlobalScopeProxy = ServiceWorkerGlobalScopeProxy::create(*this, *toW
ebLocalFrameImpl(m_mainFrame)->frame()->document(), *m_workerContextClient); |
390 m_loaderProxy = LoaderProxy::create(*this); | 388 m_loaderProxy = LoaderProxy::create(*this); |
391 | 389 |
392 m_workerThread = ServiceWorkerThread::create(*m_loaderProxy, *m_workerGlobal
ScopeProxy, startupData.release()); | 390 m_workerThread = ServiceWorkerThread::create(*m_loaderProxy, *m_workerGlobal
ScopeProxy, startupData.release()); |
393 m_workerThread->start(); | 391 m_workerThread->start(); |
394 } | 392 } |
395 | 393 |
396 } // namespace blink | 394 } // namespace blink |
OLD | NEW |