1 // Copyright 2014 Samsung Electronics. 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 DEVTOOLS_DELEGATE_EFL_H_
6 #define DEVTOOLS_DELEGATE_EFL_H_
9 #include "base/basictypes.h"
10 #include "base/compiler_specific.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "components/devtools_http_handler/devtools_http_handler_delegate.h"
18 namespace devtools_http_handler {
20 class DevToolsHttpHandler;
22 // This class is to create RemoteInspector Server(Remote Debugger) and return devtools front resources.
23 // This class implements DevToolsHttpHandlerDelegate interface.
24 // This class is similar to ShellDevToolsDelegate, which also implements DevToolsHttpHandlerDelegate interface.
25 class DevToolsDelegateEfl : public DevToolsHttpHandlerDelegate {
27 // explicit ChromiumEflDevToolsDelegate();
28 explicit DevToolsDelegateEfl(int = 0);
29 virtual ~DevToolsDelegateEfl();
34 // ChromiumDevToolsHttpHandler::Delegate overrides.
35 virtual std::string GetDiscoveryPageHTML() override;
36 virtual std::string GetFrontendResource(const std::string& path) override;
37 virtual std::string GetPageThumbnailData(const GURL& url) override;
39 // Allows embedder to handle custom websocket-based protocol connection
40 // pointing remote debugging port. Returns ownership.
41 virtual content::DevToolsExternalAgentProxyDelegate*
42 HandleWebSocketConnection(const std::string& path) override;
45 DevToolsHttpHandler* devtools_http_handler() {
46 return devtools_http_handler_.get();
54 content::BrowserContext* browser_context_;
55 scoped_ptr<DevToolsHttpHandler> devtools_http_handler_;
58 } // namespace content
60 #endif // DEVTOOLS_DELEGATE_EFL_H_