cast_dev_tools_delegate.h revision 6e8cce623b6e4fe0c9e4af605d675dd9d0338c38
1// Copyright 2014 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 CHROMECAST_SHELL_BROWSER_DEVTOOLS_CAST_DEV_TOOLS_DELEGATE_H_
6#define CHROMECAST_SHELL_BROWSER_DEVTOOLS_CAST_DEV_TOOLS_DELEGATE_H_
7
8#include "content/public/browser/devtools_http_handler_delegate.h"
9#include "net/socket/stream_listen_socket.h"
10
11namespace base {
12class FilePath;
13}
14
15namespace chromecast {
16namespace shell {
17
18class CastDevToolsDelegate : public content::DevToolsHttpHandlerDelegate {
19 public:
20  CastDevToolsDelegate();
21  virtual ~CastDevToolsDelegate();
22
23  // DevToolsHttpHandlerDelegate implementation.
24  virtual std::string GetDiscoveryPageHTML() OVERRIDE;
25  virtual bool BundlesFrontendResources() OVERRIDE;
26  virtual base::FilePath GetDebugFrontendDir() OVERRIDE;
27  virtual std::string GetPageThumbnailData(const GURL& url) OVERRIDE;
28  virtual scoped_ptr<content::DevToolsTarget> CreateNewTarget(
29      const GURL& url) OVERRIDE;
30  virtual void EnumerateTargets(TargetCallback callback) OVERRIDE;
31  virtual scoped_ptr<net::StreamListenSocket> CreateSocketForTethering(
32      net::StreamListenSocket::Delegate* delegate,
33      std::string* name) OVERRIDE;
34
35 private:
36  DISALLOW_COPY_AND_ASSIGN(CastDevToolsDelegate);
37};
38
39}  // namespace shell
40}  // namespace chromecast
41
42#endif  // CHROMECAST_SHELL_BROWSER_DEVTOOLS_CAST_DEV_TOOLS_DELEGATE_H_
43