/* * File: MSMessageFactory.h * Author: jgaebler * * Created on March 10, 2011, 11:56 AM */ #pragma once #ifndef MSMESSAGEFACTORY_H #define MSMESSAGEFACTORY_H #include "common/Defines.h" namespace ubeeme { namespace moversight { class MembershipService; class JoinRequest; class JoinConfirm; class JoinAbort; class RosterMessage; class JoinAnnounce; class LeaveAnnounce; class PeerIDList; class Invitation; class TransportAddress; class PeerDescription; class PeerResources; class VirtualLogicalTime; class MSMessageFactory { public: static JoinRequest createJoinRequestMessage(const MembershipService & ms, const InvitationID invitationID, const PeerDescription & pDesc); static JoinConfirm createJoinConfirmMessage(const MembershipService & ms, const Invitation & inv, const std::string & message, const PeerDescription & pDesc, const PeerResources & resources); static JoinAbort createJoinAbortMessage(const MembershipService & ms, const Invitation & inv, const std::string & message); static RosterMessage createRosterMessage(const MembershipService & ms, const PeerID pID); static JoinAnnounce createJoinAnnounceMessage(const TransportAddress & inviteeAddress, const PeerDescription & pDesc, const PeerResources & resources); static LeaveAnnounce createLeaveAnnounceMessage(const PeerIDList & pIdList, const VirtualLogicalTime & referenceTime); }; } } #endif /* MSMESSAGEFACTORY_H */