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/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h"
11 #include "components/devtools_http_handler/devtools_http_handler_delegate.h"
17 namespace devtools_http_handler {
19 class DevToolsHttpHandler;
21 // This class is to create RemoteInspector Server(Remote Debugger) and return devtools front resources.
22 // This class implements DevToolsHttpHandlerDelegate interface.
23 // This class is similar to ShellDevToolsDelegate, which also implements DevToolsHttpHandlerDelegate interface.
24 class DevToolsDelegateEfl : public DevToolsHttpHandlerDelegate {
26 // explicit ChromiumEflDevToolsDelegate();
27 explicit DevToolsDelegateEfl(int = 0);
28 virtual ~DevToolsDelegateEfl();
33 // ChromiumDevToolsHttpHandler::Delegate overrides.
34 virtual std::string GetDiscoveryPageHTML() override;
35 virtual std::string GetFrontendResource(const std::string& path) override;
36 virtual std::string GetPageThumbnailData(const GURL& url) override;
38 // Allows embedder to handle custom websocket-based protocol connection
39 // pointing remote debugging port. Returns ownership.
40 virtual content::DevToolsExternalAgentProxyDelegate*
41 HandleWebSocketConnection(const std::string& path) override;
44 DevToolsHttpHandler* devtools_http_handler() {
45 return devtools_http_handler_.get();
53 content::BrowserContext* browser_context_;
54 scoped_ptr<DevToolsHttpHandler> devtools_http_handler_;
57 } // namespace content
59 #endif // DEVTOOLS_DELEGATE_EFL_H_