00001
00002
00003
00004
00005
00006
00007
00008 #ifndef SEMAINE_CMS_SENDER_STATESENDER_H
00009 #define SEMAINE_CMS_SENDER_STATESENDER_H
00010
00011 #include <semaine/cms/sender/XMLSender.h>
00012
00013 #include <semaine/datatypes/stateinfo/StateInfo.h>
00014
00015 namespace semaine {
00016
00017 namespace cms {
00018
00019 namespace sender {
00020
00021 class StateSender: public semaine::cms::sender::XMLSender {
00022 public:
00037 StateSender(const std::string & topicName, semaine::datatypes::stateinfo::StateInfo::Type datatype, const std::string & source)
00038 throw(CMSException, SystemConfigurationException)
00039 : XMLSender(topicName, semaine::datatypes::stateinfo::StateInfo::TypeNames[datatype], source)
00040 {}
00041
00052 StateSender(const std::string & cmsUrl, const std::string & cmsUser, const std::string & cmsPassword, const std::string & topicName, semaine::datatypes::stateinfo::StateInfo::Type datatype, const std::string & source)
00053 throw (CMSException, SystemConfigurationException)
00054 : XMLSender(cmsUrl, cmsUser, cmsPassword, topicName, semaine::datatypes::stateinfo::StateInfo::TypeNames[datatype], source)
00055 {}
00056
00057
00058 virtual ~StateSender() {}
00059
00060 void sendStateInfo(semaine::datatypes::stateinfo::StateInfo * state, long long usertime, const std::string & contentID = "", long long contentCreationTime = -1)
00061 throw(CMSException, SystemConfigurationException);
00062 };
00063
00064 }
00065
00066 }
00067
00068 }
00069
00070 #endif