66 lines
1.7 KiB
C++
66 lines
1.7 KiB
C++
/*
|
|
* File: RejoinRoster.h
|
|
* Author: gschneid
|
|
*
|
|
* Created on October 10, 2012, 5:41 PM
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#ifndef REJOINROSTER_H
|
|
#define REJOINROSTER_H
|
|
|
|
#include "common/transport/msg/ExteriorMessage.h"
|
|
#include "ms/MemberDescription.h"
|
|
#include "ms/MemberDescriptionList.h"
|
|
#include "common/container/PeerIDList.h"
|
|
|
|
namespace ubeeme {
|
|
namespace moversight {
|
|
|
|
class Dispatcher;
|
|
|
|
/**
|
|
* @brief A rejoinRoster send the needed information about the rejoining group to the other partition.
|
|
* @class RejoinRoster
|
|
* @author Grit Schneider, Robert Noack
|
|
*/
|
|
class RejoinRoster : public ExteriorMessage {
|
|
public:
|
|
RejoinRoster();
|
|
RejoinRoster(const RejoinRoster& other);
|
|
virtual ~RejoinRoster();
|
|
|
|
RejoinRoster * dup() const;
|
|
RejoinRoster & operator=(const RejoinRoster& other);
|
|
|
|
virtual void handleReceive(Dispatcher & dis);
|
|
|
|
// field getter/setter methods
|
|
const ViewID& getViewID() const;
|
|
void setViewID(const ViewID& nextViewID);
|
|
|
|
const PeerID& getNextPeerID() const;
|
|
void setNextPeerID(const PeerID& nextPeerID);
|
|
|
|
void setMemberDescriptionList(const MemberDescriptionList & descList);
|
|
const MemberDescriptionList & getMemberDescriptionList() const;
|
|
|
|
const PeerIDList& getDisconnectedPeers() const;
|
|
void setDisconnectedPeers( const PeerIDList& disPeers);
|
|
|
|
virtual void set(Archive & archive);
|
|
|
|
private:
|
|
ViewID viewID;
|
|
PeerID nextPeerID;
|
|
|
|
PeerIDList disconnectedPeers;
|
|
MemberDescriptionList mDescList;
|
|
};
|
|
}
|
|
}
|
|
|
|
#endif /* REJOINROSTER_H */
|
|
|