The INetTxSession interface extends the capability of Session by adding access to a NMS
provider's support for the Distributed Transactions (optional). The transaction support
leverages the .NET Frameworks System.Transactions API.
The NMS Provider implements this interface by participating in the current ambient transaction
as defined by the System.Transactions.Transaction.Current static member. Whenever a new
Transaction is entered the NMS provider should enlist in that transaction. When there is no
ambient transaction then the NMS Prodiver should allow the INetTxSession instance to behave
as a session that is in Auto Acknowledge mode.
Calling the Commit or Rollback methods on a INetTxSession instance should throw an exception
as those operations are controlled by the Transaction Manager.
The INetTxSession interface is optional. NMS providers are not required to support this
interface. This interface is for use by NMS providers to support transactional environments.
Apache.NMS.INetTxSession = function();