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

Side by Side Diff: third_party/WebKit/Source/web/WebEmbeddedWorkerImpl.h

Issue 2701753003: [WIP] off-main-thread loading
Patch Set: small fix Created 3 years, 8 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
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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 namespace blink { 44 namespace blink {
45 45
46 class ThreadableLoadingContext; 46 class ThreadableLoadingContext;
47 class ParentFrameTaskRunners; 47 class ParentFrameTaskRunners;
48 class ServiceWorkerGlobalScopeProxy; 48 class ServiceWorkerGlobalScopeProxy;
49 class WebLocalFrameImpl; 49 class WebLocalFrameImpl;
50 class WebView; 50 class WebView;
51 class WorkerInspectorProxy; 51 class WorkerInspectorProxy;
52 class WorkerScriptLoader; 52 class WorkerScriptLoader;
53 class WorkerThread; 53 class WorkerThread;
54 class WebWorkerFetchContextInfo;
54 55
55 class WebEmbeddedWorkerImpl final : public WebEmbeddedWorker, 56 class WebEmbeddedWorkerImpl final : public WebEmbeddedWorker,
56 public WebFrameClient, 57 public WebFrameClient,
57 public WebDevToolsAgentClient, 58 public WebDevToolsAgentClient,
58 private WorkerLoaderProxyProvider { 59 private WorkerLoaderProxyProvider {
59 WTF_MAKE_NONCOPYABLE(WebEmbeddedWorkerImpl); 60 WTF_MAKE_NONCOPYABLE(WebEmbeddedWorkerImpl);
60 61
61 public: 62 public:
62 WebEmbeddedWorkerImpl(std::unique_ptr<WebServiceWorkerContextClient>, 63 WebEmbeddedWorkerImpl(std::unique_ptr<WebServiceWorkerContextClient>,
63 std::unique_ptr<WebWorkerContentSettingsClientProxy>); 64 std::unique_ptr<WebWorkerContentSettingsClientProxy>);
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 ThreadableLoadingContext* getThreadableLoadingContext() override; 109 ThreadableLoadingContext* getThreadableLoadingContext() override;
109 110
110 WebEmbeddedWorkerStartData m_workerStartData; 111 WebEmbeddedWorkerStartData m_workerStartData;
111 112
112 std::unique_ptr<WebServiceWorkerContextClient> m_workerContextClient; 113 std::unique_ptr<WebServiceWorkerContextClient> m_workerContextClient;
113 114
114 // This is kept until startWorkerContext is called, and then passed on 115 // This is kept until startWorkerContext is called, and then passed on
115 // to WorkerContext. 116 // to WorkerContext.
116 std::unique_ptr<WebWorkerContentSettingsClientProxy> m_contentSettingsClient; 117 std::unique_ptr<WebWorkerContentSettingsClientProxy> m_contentSettingsClient;
117 118
119 std::unique_ptr<WebWorkerFetchContextInfo> m_webWorkerFetchContextInfo;
120
118 // Kept around only while main script loading is ongoing. 121 // Kept around only while main script loading is ongoing.
119 RefPtr<WorkerScriptLoader> m_mainScriptLoader; 122 RefPtr<WorkerScriptLoader> m_mainScriptLoader;
120 123
121 // Owned by the main thread, but will be accessed by the worker when 124 // Owned by the main thread, but will be accessed by the worker when
122 // posting tasks. 125 // posting tasks.
123 CrossThreadPersistent<ParentFrameTaskRunners> m_mainThreadTaskRunners; 126 CrossThreadPersistent<ParentFrameTaskRunners> m_mainThreadTaskRunners;
124 127
125 std::unique_ptr<WorkerThread> m_workerThread; 128 std::unique_ptr<WorkerThread> m_workerThread;
126 RefPtr<WorkerLoaderProxy> m_loaderProxy; 129 RefPtr<WorkerLoaderProxy> m_loaderProxy;
127 Persistent<ServiceWorkerGlobalScopeProxy> m_workerGlobalScopeProxy; 130 Persistent<ServiceWorkerGlobalScopeProxy> m_workerGlobalScopeProxy;
(...skipping 18 matching lines...) Expand all
146 DoPauseAfterDownload, 149 DoPauseAfterDownload,
147 IsPausedAfterDownload 150 IsPausedAfterDownload
148 } m_pauseAfterDownloadState; 151 } m_pauseAfterDownloadState;
149 152
150 WaitingForDebuggerState m_waitingForDebuggerState; 153 WaitingForDebuggerState m_waitingForDebuggerState;
151 }; 154 };
152 155
153 } // namespace blink 156 } // namespace blink
154 157
155 #endif // WebEmbeddedWorkerImpl_h 158 #endif // WebEmbeddedWorkerImpl_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698