示例#1
0
            internal TransactionRepresentationWriter(TransactionRepresentation tx)
            {
                NextJob = channel =>
                {
                    channel.putInt(tx.AuthorId);
                    channel.putInt(tx.MasterId);
                    channel.putLong(tx.LatestCommittedTxWhenStarted);
                    channel.putLong(tx.TimeStarted);
                    channel.putLong(tx.TimeCommitted);
                    channel.putInt(tx.LockSessionId);

                    sbyte[] additionalHeader = tx.AdditionalHeader();
                    if (additionalHeader != null)
                    {
                        channel.putInt(additionalHeader.Length);
                        channel.put(additionalHeader, additionalHeader.Length);
                    }
                    else
                    {
                        channel.putInt(0);
                    }
                };
                Commands = tx.GetEnumerator();
            }
示例#2
0
 public override IEnumerator <StorageCommand> Iterator()
 {
     return(_transactionRepresentation.GetEnumerator());
 }