Exemplo n.º 1
0
        public byte[] Promote(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
        {
            var promotedTx = new CommittableTransaction();
            var neo4jTransactionHandler = new BoltTransactionSinglePhaseNotification(transactionExecutionEnvironment);
            var token = TransactionInterop.GetTransmitterPropagationToken(promotedTx);

            transactions[transactionExecutionEnvironment.TransactionId] = promotedTx;
            neo4jTransactionHandler.Enlist(promotedTx);

            return(token);
        }
Exemplo n.º 2
0
 public static void DoRollback(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
 {
     transactionExecutionEnvironment.DriverTransaction.RollbackAsync().Wait();
     // transactionExecutionEnvironment.DriverTransaction.Dispose();
 }
Exemplo n.º 3
0
 public static void DoCommit(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
 {
     transactionExecutionEnvironment.DriverTransaction.CommitAsync().Wait();
     // transactionExecutionEnvironment.DriverTransaction.Dispose();
 }
 public static void DoCommit(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
 {
     transactionExecutionEnvironment.DriverTransaction.Success();
 }
 public static void DoRollback(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
 {
     transactionExecutionEnvironment.DriverTransaction.Failure();
 }
Exemplo n.º 6
0
        public void Enlist(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment, byte[] transactionToken)
        {
            var tx = TransactionInterop.GetTransactionFromTransmitterPropagationToken(transactionToken);

            new BoltTransactionSinglePhaseNotification(transactionExecutionEnvironment).Enlist(tx);
        }
Exemplo n.º 7
0
 public BoltTransactionSinglePhaseNotification(ITransactionExecutionEnvironmentBolt transactionExecutionEnvironment)
 {
     this.transactionExecutionEnvironment = transactionExecutionEnvironment;
 }