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

Unified Diff: content/renderer/shared_worker/embedded_shared_worker_stub.h

Issue 158953008: Implementations of SharedWorker in the renderer process. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@WorkerMessages
Patch Set: move shared_worker_devtools_agent to content/child Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/shared_worker/embedded_shared_worker_stub.h
diff --git a/content/worker/websharedworker_stub.h b/content/renderer/shared_worker/embedded_shared_worker_stub.h
similarity index 31%
copy from content/worker/websharedworker_stub.h
copy to content/renderer/shared_worker/embedded_shared_worker_stub.h
index 1f9aadd56dfd00a6ec6d6eb55e45b0589b6fd502..8dbc219d6babed65ff2e1be039d5c12ddd1c42a6 100644
--- a/content/worker/websharedworker_stub.h
+++ b/content/renderer/shared_worker/embedded_shared_worker_stub.h
@@ -1,83 +1,85 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_WORKER_WEBSHAREDWORKER_STUB_H_
-#define CONTENT_WORKER_WEBSHAREDWORKER_STUB_H_
+#ifndef CONTENT_RENDERER_SHARED_WORKER_EMBEDDED_SHARED_WORKER_STUB_H
+#define CONTENT_RENDERER_SHARED_WORKER_EMBEDDED_SHARED_WORKER_STUB_H
-#include "base/memory/scoped_ptr.h"
+#include "content/child/child_message_filter.h"
#include "content/child/scoped_child_process_reference.h"
-#include "content/worker/websharedworkerclient_proxy.h"
-#include "content/worker/worker_webapplicationcachehost_impl.h"
#include "ipc/ipc_listener.h"
-#include "third_party/WebKit/public/web/WebSharedWorker.h"
+#include "third_party/WebKit/public/platform/WebString.h"
+#include "third_party/WebKit/public/web/WebContentSecurityPolicy.h"
+#include "third_party/WebKit/public/web/WebSharedWorkerClient.h"
#include "url/gurl.h"
namespace blink {
+class WebApplicationCacheHost;
+class WebApplicationCacheHostClient;
+class WebMessagePortChannel;
+class WebNotificationPresenter;
+class WebSecurityOrigin;
class WebSharedWorker;
+class WebWorkerPermissionClientProxy;
}
namespace content {
-
class SharedWorkerDevToolsAgent;
class WebMessagePortChannelImpl;
-// This class creates a WebSharedWorker, and translates incoming IPCs to the
-// appropriate WebSharedWorker APIs.
-class WebSharedWorkerStub : public IPC::Listener {
+class EmbeddedSharedWorkerStub : public IPC::Listener,
+ public blink::WebSharedWorkerClient {
public:
- WebSharedWorkerStub(const GURL& url,
- const base::string16& name,
- const base::string16& content_security_policy,
- blink::WebContentSecurityPolicyType security_policy_type,
- int route_id);
+ EmbeddedSharedWorkerStub(
+ const GURL& url,
+ const base::string16& name,
+ const base::string16& content_security_policy,
+ blink::WebContentSecurityPolicyType security_policy_type,
+ int route_id);
// IPC::Listener implementation.
virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
virtual void OnChannelError() OVERRIDE;
- // Invoked when the WebSharedWorkerClientProxy is shutting down.
- void Shutdown();
-
- void WorkerScriptLoaded();
- void WorkerScriptLoadFailed();
-
- // Called after terminating the worker context to make sure that the worker
- // actually terminates (is not stuck in an infinite loop).
- void EnsureWorkerContextTerminates();
-
- WebSharedWorkerClientProxy* client() { return &client_; }
-
- // Returns the script url of this worker.
- const GURL& url();
-
+ // blink::WebSharedWorkerClient implementation.
+ virtual void workerContextClosed() OVERRIDE;
+ virtual void workerContextDestroyed() OVERRIDE;
+ virtual void workerScriptLoaded() OVERRIDE;
+ virtual void workerScriptLoadFailed() OVERRIDE;
+ virtual void selectAppCacheID(long long) OVERRIDE;
+ virtual blink::WebNotificationPresenter* notificationPresenter() OVERRIDE;
+ virtual blink::WebApplicationCacheHost* createApplicationCacheHost(
+ blink::WebApplicationCacheHostClient*) OVERRIDE;
+ virtual blink::WebWorkerPermissionClientProxy*
+ createWorkerPermissionClientProxy(
+ const blink::WebSecurityOrigin& origin) OVERRIDE;
+ virtual void dispatchDevToolsMessage(
+ const blink::WebString& message) OVERRIDE;
+ virtual void saveDevToolsAgentState(const blink::WebString& state) OVERRIDE;
private:
- virtual ~WebSharedWorkerStub();
+ virtual ~EmbeddedSharedWorkerStub();
- void OnConnect(int sent_message_port_id, int routing_id);
+ void Shutdown();
+ bool Send(IPC::Message* message);
+ void OnConnect(int sent_message_port_id, int routing_id);
void OnTerminateWorkerContext();
- ScopedChildProcessReference process_ref_;
-
int route_id_;
-
- // WebSharedWorkerClient that responds to outgoing API calls
- // from the worker object.
- WebSharedWorkerClientProxy client_;
-
- blink::WebSharedWorker* impl_;
- bool running_;
+ base::string16 name_;
+ bool runing_;
GURL url_;
+ blink::WebSharedWorker* impl_;
scoped_ptr<SharedWorkerDevToolsAgent> worker_devtools_agent_;
typedef std::vector<WebMessagePortChannelImpl*> PendingChannelList;
PendingChannelList pending_channels_;
- DISALLOW_COPY_AND_ASSIGN(WebSharedWorkerStub);
+ ScopedChildProcessReference process_ref_;
+ DISALLOW_COPY_AND_ASSIGN(EmbeddedSharedWorkerStub);
};
} // namespace content
-#endif // CONTENT_WORKER_WEBSHAREDWORKER_STUB_H_
+#endif // CONTENT_RENDERER_SHARED_WORKER_EMBEDDED_SHARED_WORKER_STUB_H

Powered by Google App Engine
This is Rietveld 408576698