diff --git a/include/transport/networkplugin.h b/include/transport/networkplugin.h index 9a0dfb9be64c7bb1c1b644edbecdc21951e1c649..9f440152a6111e2e6ceb61ccd1d6a6508b0a1590 100644 --- a/include/transport/networkplugin.h +++ b/include/transport/networkplugin.h @@ -34,6 +34,22 @@ namespace Transport { /// development. class NetworkPlugin { public: + + class PluginConfig { + public: + PluginConfig() : m_needPassword(true) {} + virtual ~PluginConfig() {} + + void setNeedPassword(bool needPassword = true) { m_needPassword = needPassword; } + void setExtraFields(const std::vector &fields) { m_extraFields = fields; } + + private: + bool m_needPassword; + std::vector m_extraFields; + + friend class NetworkPlugin; + }; + /// Creates new NetworkPlugin and connects the Spectrum2 NetworkPluginServer. /// \param loop Event loop. /// \param host Host where Spectrum2 NetworkPluginServer runs. @@ -43,6 +59,8 @@ class NetworkPlugin { /// Destructor. virtual ~NetworkPlugin(); + void sendConfig(const PluginConfig &cfg); + /// Call this function when legacy network buddy changed. /// \param user XMPP JID of user for which this event occurs. You can get it from NetworkPlugin::handleLoginRequest(). (eg. "user%gmail.com@xmpp.domain.tld") /// \param buddyName Name of legacy network buddy. (eg. "user2@gmail.com")