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(); }
public override IEnumerator <StorageCommand> Iterator() { return(_transactionRepresentation.GetEnumerator()); }