61 lines
1.7 KiB
C++
61 lines
1.7 KiB
C++
|
|
#pragma once
|
|
|
|
#ifndef ROSTERMESSAGE_H
|
|
#define ROSTERMESSAGE_H
|
|
|
|
#include "common/Defines.h"
|
|
#include "app/PeerDescription.h"
|
|
#include "common/transport/TransportAddress.h"
|
|
#include "common/transport/msg/ExteriorMessage.h"
|
|
#include "ms/MemberDescription.h"
|
|
#include "ms/MemberDescriptionList.h"
|
|
|
|
namespace ubeeme {
|
|
namespace moversight {
|
|
|
|
class Dispatcher;
|
|
|
|
/**
|
|
* @brief Defines a roster message, used within the membership service module.
|
|
* @author Jan Gäbler, Robert Noack
|
|
* @class RosterMessage
|
|
* @ingroup Moversight
|
|
*/
|
|
class RosterMessage : public ExteriorMessage {
|
|
public:
|
|
RosterMessage();
|
|
RosterMessage(const RosterMessage & orig);
|
|
virtual ~RosterMessage();
|
|
|
|
RosterMessage* dup() const;
|
|
RosterMessage& operator=(const RosterMessage& other);
|
|
|
|
void handleReceive(Dispatcher & dis);
|
|
|
|
// field getter/setter methods
|
|
virtual const ViewID& getViewID() const ;
|
|
virtual void setViewID(const ViewID& viewID);
|
|
|
|
virtual const PeerID& getNextPeerID() const;
|
|
virtual void setNextPeerID(const PeerID& nextPeerID);
|
|
|
|
virtual const PeerID& getJoinedPeerID() const;
|
|
virtual void setJoinedPeerID(const PeerID& joinedPeerID);
|
|
|
|
virtual const MemberDescriptionList & getMemberDescriptionList() const;
|
|
virtual void setMemberDescriptionList(MemberDescriptionList descList);
|
|
|
|
virtual void set(Archive & archive);
|
|
|
|
private:
|
|
ViewID viewID;
|
|
PeerID nextPeerID;
|
|
PeerID joinedPeerID;
|
|
MemberDescriptionList mDescList;
|
|
};
|
|
}
|
|
}
|
|
|
|
#endif /* ROSTERMESSAGE_H */
|