78 std::string
id()
const {
return id_; }
83 virtual void setId(
const std::string&
id)
final { id_ =
id; }
This abstract class is an API we need to implement from plugin side.
std::string id() const
Returns the dataPath of the plugin that created this ChatHandler.
virtual void notifyChatSubject(std::pair< std::string, std::string > &subjectConnection, chatSubjectPtr subject)=0
Should attach a chat subject (Observable) and the plugin data process (Observer).
virtual std::map< std::string, std::string > getChatHandlerDetails()=0
Returns a map with handler's name, iconPath, and pluginId.
virtual void detach(chatSubjectPtr subject)=0
Should detach a chat subject (Observable) and the plugin data process (Observer).
virtual void setPreferenceAttribute(const std::string &key, const std::string &value)=0
If a preference can be changed without the need to reload the plugin, it should be done through this ...
virtual bool preferenceMapHasKey(const std::string &key)=0
If a preference can be changed without the need to reload the plugin, this function should return Tru...
virtual void setId(const std::string &id) final
Should be called by the ChatHandler creator to set the plugins id_ variable.
void emitSignal(Args... args)
std::shared_ptr< JamiMessage > pluginMessagePtr
std::shared_ptr< PublishObservable< pluginMessagePtr > > chatSubjectPtr