1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_RENDERER_SHARED_WORKER_REPOSITORY_H_
6 #define CONTENT_RENDERER_SHARED_WORKER_REPOSITORY_H_
10 #include "base/basictypes.h"
11 #include "content/public/renderer/render_view_observer.h"
12 #include "third_party/WebKit/public/web/WebSharedWorkerRepositoryClient.h"
18 class SharedWorkerRepository : public RenderViewObserver,
19 public WebKit::WebSharedWorkerRepositoryClient {
21 explicit SharedWorkerRepository(RenderViewImpl* render_view);
22 virtual ~SharedWorkerRepository();
24 // WebSharedWorkerRepositoryClient overrides.
25 virtual WebKit::WebSharedWorker* createSharedWorker(
26 const WebKit::WebURL& url,
27 const WebKit::WebString& name,
28 DocumentID document_id) OVERRIDE;
29 virtual void documentDetached(DocumentID document_id) OVERRIDE;
32 std::set<DocumentID> documents_with_workers_;
34 DISALLOW_COPY_AND_ASSIGN(SharedWorkerRepository);
37 } // namespace content
39 #endif // CONTENT_RENDERER_SHARED_WORKER_REPOSITORY_H_