public void Handle(ReplicationMessage.TransactionCommitRequestCreated message) { var manager = new TransactionCommitTwoPhaseRequestManager(_bus, _prepareCount, _commitCount); _currentRequests.Add(message.CorrelationId, manager); manager.Handle(message); }
public void Handle(ReplicationMessage.TransactionCommitRequestCreated request) { if (_initialized) { throw new InvalidOperationException(); } _initialized = true; _requestType = RequestType.TransactionCommit; _responseEnvelope = request.Envelope; _correlationId = request.CorrelationId; _preparePos = request.TransactionId; _bus.Publish(new ReplicationMessage.WriteTransactionPrepare(request.CorrelationId, _publishEnvelope, request.TransactionId, request.EventStreamId)); _bus.Publish(TimerMessage.Schedule.Create(PrepareTimeout, _publishEnvelope, new ReplicationMessage.PreparePhaseTimeout(_correlationId))); }