public override void Delete(ref Soap.TransactionFramework.TransactionChain chain) { if (Facade != null) { AddRelationshipTransactionLink addRelationshipTransaction = Facade.TransactionOrigin as AddRelationshipTransactionLink; if (addRelationshipTransaction != null) { if (addRelationshipTransaction.TransactionStatus == ServerStatus.ProcessingClient) { DeleteRelationshipTransactionLink deleteTransaction = new DeleteRelationshipTransactionLink(); deleteTransaction.DomainId = DomainId; deleteTransaction.MapManager = MapManager; deleteTransaction.Relationship = Facade; chain.AddTransaction(deleteTransaction); return; } } } DelayedActions.Enqueue(new DelayedRelationshipAction() { Action = TransactionActionType.Deleted }); }
public override void Update(RelationshipType relationshipType, ref Soap.TransactionFramework.TransactionChain chain) { if (Facade != null) { AddRelationshipTransactionLink addRelationshipTransaction = Facade.TransactionOrigin as AddRelationshipTransactionLink; if (addRelationshipTransaction != null) { if (addRelationshipTransaction.TransactionStatus == ServerStatus.ProcessingClient) { addRelationshipTransaction.RelationshipType = relationshipType; return; } } } DelayedActions.Enqueue(new DelayedRelationshipAction() { Action = TransactionActionType.TypeUpdated, RelationshipType = relationshipType }); }
public override void ConnectNode(ConnectionType connectionType, INode node, ref Soap.TransactionFramework.TransactionChain chain) { base.ConnectNode(connectionType, node, ref chain); if (Facade != null) { AddRelationshipTransactionLink addRelationshipTransaction = Facade.TransactionOrigin as AddRelationshipTransactionLink; if (addRelationshipTransaction != null) { if (addRelationshipTransaction.TransactionStatus == ServerStatus.ProcessingClient) { addRelationshipTransaction.AddNode(connectionType, node); return; } } } DelayedActions.Enqueue(new DelayedRelationshipAction() { Action = TransactionActionType.Updated, ConnectionType = connectionType, Node = node }); }