class ChangeMasterStationOperation : public nn::nex::DOOperation
DOOperation
class that executes when a duplication master migrates.
Migration is the act of transferring control of a duplicated object to a different station. The operations executed in this class occur as a result of duplication master migration. As a result of these operations, duplicated objects maintained by the local station change roles. One of the following changes takes place.
・A duplica (DuplicatedObject::IsADuplica
) becomes a duplication master (DuplicatedObject::IsADuplicationMaster
) through a promotion in authority (IsAPromotion
).
・A duplication master becomes a duplica through a demotion in authority (IsADemotion
).
・A duplica remains unchanged (the IsARoleChange
function returns false
).
When migration of a duplicated object occurs, ChangeMasterStationOperation
is called targeting every station that maintains that duplicated object (whether the station maintains the duplication master or a duplica).
When ChangeMasterStationOperation
is called, the following sequence of events take place.
・SafetyExecutive
is executed to determine whether this migration is acceptable. If not, the process ends here.
・The DataSet::OperationBegin
function is called on all datasets.
・The DuplicatedObject::OperationBegin
function is called.
・The object migrates to a new station and the duplication master's StationID
(the duplicated object ID of the station) is updated.
・The duplication master and duplica lists are updated in the Duplicated Object store.
・The DataSet::OperationEnd
function is called on all datasets.
・The DuplicatedObject::OperationEnd
function is called.
This operation is not called on DuplicatedObject
when the system is locked (Scheduler::SystemLock
).
Type
|
Enumerated type representing the types of operations called by the system. (Inherits Operation .) |
---|
GetOldMasterStation
|
Gets the duplicated object handle of the station that was the duplication master before execution of this operation. | |
---|---|---|
GetNewMasterStation
|
Gets the duplicated object handle of the station that becomes the duplication master after execution of this operation. | |
IsAPromotion
|
Gets whether this operation results in authority promotion of a duplicated object. | |
IsADemotion
|
Gets whether this operation results in authority demotion of a duplicated object. | |
IsARoleChange
|
Gets whether this operation results in a change of authority of a duplicated object. | |
GetAssociatedDOHandle
|
Gets the duplicated object handle associated with this operation. (Inherits DOOperation .) |
|
GetOrigin
|
Gets a duplicated object handle to a station that has called a function that generates an operation object as a result of the call. (Inherits DOOperation .) |
|
GetAssociatedDO
|
Gets a pointer to the duplicated object associated with an operation. (Inherits DOOperation .) |
|
PV |
GetType
|
Returns the type of this operation object. |
GetUserData
|
Gets user-defined values. (Inherits Operation .) |
|
SetUserData
|
Sets user-defined values. (Inherits Operation .) |
|
PV |
GetClassNameString
|
Gets the class name of this operation object. |
S |
DynamicCast
|
Uses runtime information for dynamic casting. (Inherits Operation .) |
S |
SetTraceFilter
|
Sets the callback function that specifies when to run traces on operation objects. (Inherits Operation .) |
nn::nex::RootObject
nn::nex::Operation
nn::nex::DOOperation
nn::nex::ChangeMasterStationOperation
CONFIDENTIAL