public void Handle(ClientMessage.TransactionCommit message)
        {
            var manager = new TransactionCommitTwoPhaseRequestManager(_bus, _prepareCount, _commitCount, _prepareTimeout, _commitTimeout);

            _currentRequests.Add(message.InternalCorrId, manager);
            manager.Handle(message);
        }
 private void Handle(ClientMessage.TransactionCommit message)
 {
     _outputBus.Publish(new StorageMessage.TransactionCommitRequestCreated(message.CorrelationId,
                                                                           message.Envelope,
                                                                           message.TransactionId,
                                                                           message.EventStreamId));
 }
Esempio n. 3
0
 public TcpPackage CreateNetworkPackage()
 {
     lock (_corrIdLock)
     {
         var commit = new ClientMessage.TransactionCommit(_transactionId, _stream, _forward);
         return(new TcpPackage(TcpCommand.TransactionCommit, _corrId, commit.Serialize()));
     }
 }
        public void Handle(ClientMessage.TransactionCommit message)
        {
            var manager = new TransactionCommitTwoPhaseRequestManager(_bus, _prepareCount, _commitCount, _prepareTimeout, _commitTimeout, _betterOrdering);

            _currentRequests.Add(message.InternalCorrId, manager);
            _currentTimedRequests.Add(message.InternalCorrId, Stopwatch.StartNew());
            manager.Handle(message);
        }
		public void Handle(ClientMessage.TransactionCommit message) {
			Transaction transaction;
			if (!_activeTransactions.TryGetValue(message.TransactionId, out transaction)) {
				message.Envelope.ReplyWith(
					new ClientMessage.TransactionWriteCompleted(
						message.CorrelationId, message.TransactionId, OperationResult.InvalidTransaction,
						"Transaction not found"));
			} else {
				transaction.Commit(message, this);
			}
		}
        private void HandleAsNonMaster(ClientMessage.TransactionCommit message)
        {
            if (message.RequireMaster)
            {
                DenyRequestBecauseNotMaster(message.CorrelationId, message.Envelope);
                return;
            }
            var timeoutMessage = new ClientMessage.TransactionCommitCompleted(
                message.CorrelationId, message.TransactionId, OperationResult.ForwardTimeout, "Forwarding timeout");

            ForwardRequest(message, timeoutMessage);
        }
			public void Commit(ClientMessage.TransactionCommit message, TestFixtureWithExistingEvents<TLogFormat,TStreamId> fixture) {
				var commitPosition = fixture._fakePosition;
				fixture._fakePosition += 50;
				fixture.ProcessWrite(
					message.Envelope, message.CorrelationId, _startMessage.EventStreamId, _startMessage.ExpectedVersion,
					_events.Select(v => v.Item2).ToArray(),
					(f, l) =>
						new ClientMessage.TransactionCommitCompleted(
							message.CorrelationId, message.TransactionId, f, l, -1, -1),
					new ClientMessage.TransactionCommitCompleted(
						message.CorrelationId, message.TransactionId, OperationResult.WrongExpectedVersion,
						"Wrong expected version"),
					_events.Select(v => (long)v.Item1).ToArray(), commitPosition);
			}
Esempio n. 8
0
        public Task <WriteResult> CommitTransactionAsync(EventStoreTransaction transaction, UserCredentials userCredentials = null)
        {
            var source = new TaskCompletionSource <WriteResult>();

            var envelope = new EmbeddedResponseEnvelope(new EmbeddedResponders.TransactionCommit(source));

            Guid corrId = Guid.NewGuid();

            var message = new ClientMessage.TransactionCommit(corrId, corrId, envelope, false,
                                                              transaction.TransactionId, SystemAccount.Principal);

            _publisher.Publish(message);

            return(source.Task);
        }
Esempio n. 9
0
        public void Handle(ClientMessage.TransactionCommit message)
        {
            var manager = new TransactionCommit(
                _bus,
                _prepareTimeout,
                _commitTimeout,
                message.Envelope,
                message.InternalCorrId,
                message.CorrelationId,
                message.TransactionId,
                _commitSource);

            _currentRequests.Add(message.InternalCorrId, manager);
            _currentTimedRequests.Add(message.InternalCorrId, Stopwatch.StartNew());
            manager.Start();
        }
Esempio n. 10
0
        private static TcpPackage WrapTransactionCommit(ClientMessage.TransactionCommit msg)
        {
            var dto = new TcpClientMessageDto.TransactionCommit(msg.TransactionId, msg.RequireMaster);

            return(CreateWriteRequestPackage(TcpCommand.TransactionCommit, msg, dto));
        }
Esempio n. 11
0
        private static TcpPackage WrapTransactionCommit(ClientMessage.TransactionCommit msg)
        {
            var dto = new ClientMessageDto.TransactionCommit(msg.CorrelationId, msg.TransactionId, msg.EventStreamId);

            return(new TcpPackage(TcpCommand.TransactionCommit, msg.CorrelationId, dto.Serialize()));
        }
Esempio n. 12
0
 private void Handle(ClientMessage.TransactionCommit message)
 {
     _outputBus.Publish(message);
 }