示例#1
0
        public override void Delete(ref Soap.TransactionFramework.TransactionChain chain)
        {
            if (Facade != null)
            {
                TransactionFramework.AddNodeTransactionLink addNodeTransaction = Facade.TransactionOrigin as TransactionFramework.AddNodeTransactionLink;

                if (addNodeTransaction != null)
                {
                    if (addNodeTransaction.TransactionStatus == TransactionFramework.ServerStatus.ProcessingClient)
                    {
                        TransactionFramework.DeleteNodeTransactionLink deleteTransaction = new TransactionFramework.DeleteNodeTransactionLink();

                        deleteTransaction.DomainId = DomainId;
                        deleteTransaction.MapManager = MapManager;
                        deleteTransaction.Node = Facade;

                        chain.AddTransaction(deleteTransaction);

                        return;
                    }
                }
            }

            DelayedActions.Enqueue(new DelayedNodeAction() { Action = Proxy.TransactionActionType.Deleted });
        }