#include <client_server.h>
LinkServer API.
Adds nothing to the Server API.
◆ lockUnlink()
virtual void fpmas::synchro::hard::api::LinkServer::lockUnlink |
( |
DistributedId |
edge_id | ) |
|
|
pure virtual |
Locks the unlink operation on the edge corresponding to edge_id
.
isLockedUnlink(edge_id)
will return true until unlockUnlink(edge_id)
is called.
- Note
- This is notably used by the LinkClient when an UNLINK operation is initialized from the local process. While the operation is performed, the unlink operation is locked so that UNLINK requests for the same edge coming from other processes will be ignored.
- Parameters
-
edge_id | id of the edge to unlink |
Implemented in fpmas::synchro::hard::hard_link::LinkServer< T >.
◆ isLockedUnlink()
virtual bool fpmas::synchro::hard::api::LinkServer::isLockedUnlink |
( |
DistributedId |
edge_id | ) |
|
|
pure virtual |
Returns true is an unlink operation has been locked for the edge corresponding to edge_id
.
- Parameters
-
edge_id | id of the edge to unlink |
- Returns
- true iff an unlink operation is locked
Implemented in fpmas::synchro::hard::hard_link::LinkServer< T >.
◆ unlockUnlink()
virtual void fpmas::synchro::hard::api::LinkServer::unlockUnlink |
( |
DistributedId |
edge_id | ) |
|
|
pure virtual |
◆ lockRemoveNode()
virtual void fpmas::synchro::hard::api::LinkServer::lockRemoveNode |
( |
DistributedId |
node_id | ) |
|
|
pure virtual |
Locks a remove operation on a local node, represented by node_id
.
This should be called as soon as possible when the remove node operation is initialized. Incoming unlink or remove operations received while the local remove node operation is locked will then be handled consistently to avoid unexpected behaviors.
- Parameters
-
node_id | id of the local node to remove |
Implemented in fpmas::synchro::hard::hard_link::LinkServer< T >.
◆ isLockedRemoveNode()
virtual bool fpmas::synchro::hard::api::LinkServer::isLockedRemoveNode |
( |
DistributedId |
node_id | ) |
|
|
pure virtual |
◆ unlockRemoveNode()
virtual void fpmas::synchro::hard::api::LinkServer::unlockRemoveNode |
( |
DistributedId |
node_id | ) |
|
|
pure virtual |
The documentation for this class was generated from the following file: