| Index: mojo/spy/spy.h
|
| diff --git a/mojo/spy/spy.h b/mojo/spy/spy.h
|
| index f2b6be9100c9ead0a292eca6e9166d4267d062dc..862630892b3203f229055a0cbf4658b8008c7232 100644
|
| --- a/mojo/spy/spy.h
|
| +++ b/mojo/spy/spy.h
|
| @@ -8,8 +8,12 @@
|
| #include <string>
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/scoped_ptr.h"
|
| +#include "mojo/public/cpp/system/message_pipe.h"
|
| +#include "mojo/spy/common.h"
|
| +#include "url/gurl.h"
|
|
|
| namespace base {
|
| +class Time;
|
| class Thread;
|
| }
|
|
|
| @@ -17,6 +21,7 @@ namespace mojo {
|
|
|
| class ApplicationManager;
|
| class SpyServerImpl;
|
| +struct SpyOptions;
|
|
|
| // mojo::Spy is a troubleshooting and debugging aid. It helps tracking
|
| // the mojo system core activities like messages, service creation, etc.
|
| @@ -29,14 +34,30 @@ class SpyServerImpl;
|
| //
|
| class Spy {
|
| public:
|
| + // Interface for the shell-provided websocket server.
|
| + class WebSocketDelegate {
|
| + public:
|
| + virtual void Start(int port, mojo::ScopedMessagePipeHandle server_pipe) = 0;
|
| + virtual void OnMessage(mojo::MojoMessageData* data,
|
| + const GURL& url,
|
| + const base::Time& time) = 0;
|
| + };
|
| +
|
| Spy(mojo::ApplicationManager* application_manager,
|
| const std::string& options);
|
| ~Spy();
|
|
|
| + // non-owning reference to the websocket server.
|
| + void SetWebSocketDelegate(WebSocketDelegate* websocket_delegate);
|
| +
|
| private:
|
| scoped_refptr<SpyServerImpl> spy_server_;
|
| // This thread runs the code that talks to the frontend.
|
| scoped_ptr<base::Thread> control_thread_;
|
| + // The delegate is in charge of talking to the html frontend.
|
| + WebSocketDelegate* websocket_delegate_;
|
| + ApplicationManager* application_manager_;
|
| + SpyOptions* spy_options_;
|
| };
|
|
|
| } // namespace mojo
|
|
|