Files
flipper/xplat/Sonar/SonarPlugin.h
John Knox a480be90a2 Rename facebook::sonar namespace
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/271

Reviewed By: passy

Differential Revision: D9861393

Pulled By: jknoxville

fbshipit-source-id: d65f751c35028748915023f33f273d6ec45863c8
2018-09-18 07:27:28 -07:00

43 lines
1.1 KiB
C++

/*
* Copyright (c) 2018-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the LICENSE
* file in the root directory of this source tree.
*
*/
#pragma once
#include <Sonar/SonarConnection.h>
#include <string>
namespace facebook {
namespace flipper {
class SonarPlugin {
public:
virtual ~SonarPlugin() {}
/**
The plugin's identifier. This should map to a javascript plugin
with the same identifier to ensure messages are sent correctly.
*/
virtual std::string identifier() const = 0;
/**
Called when a connection has been established between this plugin
and the corresponding plugin on the Sonar desktop app. The provided
connection can be used to register method receivers as well as send
messages back to the desktop app.
*/
virtual void didConnect(std::shared_ptr<SonarConnection> conn) = 0;
/**
Called when a plugin has been disconnected and the SonarConnection
provided in didConnect is no longer valid to use.
*/
virtual void didDisconnect() = 0;
};
} // namespace flipper
} // namespace facebook