/* * Copyright (c) 2013 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include <Swiften/Base/Override.h> #include <Swiften/Base/API.h> #include <Swiften/Elements/Payload.h> #include <boost/optional.hpp> #include <boost/shared_ptr.hpp> #include <string> #include <vector> #include <Swiften/Elements/PubSubAffiliation.h> #include <Swiften/Elements/PubSubPayload.h> namespace Swift { class SWIFTEN_API PubSubAffiliations : public PubSubPayload { public: PubSubAffiliations(); virtual ~PubSubAffiliations(); const boost::optional< std::string >& getNode() const { return node; } void setNode(const boost::optional< std::string >& value) { this->node = value ; } const std::vector< boost::shared_ptr<PubSubAffiliation> >& getAffiliations() const { return affiliations; } void setAffiliations(const std::vector< boost::shared_ptr<PubSubAffiliation> >& value) { this->affiliations = value ; } void addAffiliation(boost::shared_ptr<PubSubAffiliation> value) { this->affiliations.push_back(value); } private: boost::optional< std::string > node; std::vector< boost::shared_ptr<PubSubAffiliation> > affiliations; }; }