/* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #pragma once #include #include #include #include #include #include #include #include namespace Swift { class SWIFTEN_API MIXJoin : public Payload { public: using ref = std::shared_ptr; public: MIXJoin() {} const boost::optional& getChannel() const { return channel_; } void setChannel(const JID& channel) { channel_ = channel; } const boost::optional& getJID() const { return jid_; } void setJID(const JID& jid) { jid_ = jid; } const std::vector& getSubscriptions() const { return subscribeItems_; } void setSubscriptions(const std::vector& value) { subscribeItems_ = value ; } void addSubscription(MIXSubscribe::ref value) { subscribeItems_.push_back(value); } void setForm(std::shared_ptr
form) { form_ = form; } const std::shared_ptr& getForm() const { return form_; } private: boost::optional jid_; boost::optional channel_; std::vector subscribeItems_; std::shared_ptr form_; // FIXME: MIXInvitation to be implemented. boost::optional invitation_; }; }