- add sources.
[platform/framework/web/crosswalk.git] / src / content / browser / service_worker / service_worker_dispatcher_host.h
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.
4
5 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_DISPATCHER_HOST_H_
6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_DISPATCHER_HOST_H_
7
8 #include "content/public/browser/browser_message_filter.h"
9
10 class GURL;
11
12 namespace content {
13
14 class ServiceWorkerContext;
15
16 class ServiceWorkerDispatcherHost : public BrowserMessageFilter {
17  public:
18   ServiceWorkerDispatcherHost(int render_process_id,
19                               ServiceWorkerContext* context);
20
21   // BrowserIOMessageFilter implementation
22   virtual bool OnMessageReceived(const IPC::Message& message,
23                                  bool* message_was_ok) OVERRIDE;
24
25  protected:
26   virtual ~ServiceWorkerDispatcherHost();
27
28  private:
29   // IPC Message handlers
30   void OnRegisterServiceWorker(int32 thread_id,
31                                int32 request_id,
32                                const GURL& scope,
33                                const GURL& script_url);
34   void OnUnregisterServiceWorker(int32 thread_id,
35                                  int32 request_id,
36                                  const GURL& scope);
37   scoped_refptr<ServiceWorkerContext> context_;
38 };
39
40 }  // namespace content
41
42 #endif  // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_DISPATCHER_HOST_H_