public override Response processMessage(Message send) { if (send != null) { if (TrackTransactions && send.TransactionId != null) { ConnectionId connectionId = send.ProducerId.ParentId.ParentId; if (connectionId != null) { ConnectionState cs = connectionStates[connectionId]; if (cs != null) { TransactionState transactionState = cs[send.TransactionId]; if (transactionState != null) { transactionState.addCommand(send); } } } return(TRACKED_RESPONSE_MARKER); } else if (TrackMessages) { messageCache.Add(send.MessageId, (Message)send.Clone()); RemoveEldestInCache(); } } return(null); }
public override Response processBeginTransaction(TransactionInfo info) { if (TrackTransactions && info != null && info.TransactionId != null) { ConnectionId connectionId = info.ConnectionId; if (connectionId != null) { ConnectionState cs = connectionStates[connectionId]; if (cs != null) { cs.addTransactionState(info.TransactionId); TransactionState state = cs[info.TransactionId]; state.addCommand(info); } } return(TRACKED_RESPONSE_MARKER); } return(null); }
public override Response processRollbackTransaction(TransactionInfo info) { if (TrackTransactions && info != null) { ConnectionId connectionId = info.ConnectionId; if (connectionId != null) { ConnectionState cs = connectionStates[connectionId]; if (cs != null) { TransactionState transactionState = cs[info.TransactionId]; if (transactionState != null) { transactionState.addCommand(info); return(new Tracked(new RemoveTransactionAction(info, this))); } } } } return(null); }
public override Response processPrepareTransaction(TransactionInfo info) { if (TrackTransactions && info != null) { ConnectionId connectionId = info.ConnectionId; if (connectionId != null) { ConnectionState cs = connectionStates[connectionId]; if (cs != null) { TransactionState transactionState = cs[info.TransactionId]; if (transactionState != null) { transactionState.addCommand(info); } } } return(TRACKED_RESPONSE_MARKER); } return(null); }
public override Response processMessageAck(MessageAck ack) { if (TrackTransactions && ack != null && ack.TransactionId != null) { ConnectionId connectionId = ack.ConsumerId.ParentId.ParentId; if (connectionId != null) { ConnectionState cs = connectionStates[connectionId]; if (cs != null) { TransactionState transactionState = cs[ack.TransactionId]; if (transactionState != null) { transactionState.addCommand(ack); } } } return(TRACKED_RESPONSE_MARKER); } return(null); }
public override Response processEndTransaction(TransactionInfo info) { if (TrackTransactions && info != null) { ConnectionId connectionId = info.ConnectionId; if (connectionId != null) { ConnectionState cs = null; if (connectionStates.TryGetValue(connectionId, out cs)) { TransactionState transactionState = cs[info.TransactionId]; if (transactionState != null) { transactionState.addCommand(info); } } } return(TRACKED_RESPONSE_MARKER); } return(null); }
public override Response processCommitTransactionOnePhase(TransactionInfo info) { if (TrackTransactions && info != null) { ConnectionId connectionId = info.ConnectionId; if (connectionId != null) { ConnectionState cs = null; if (connectionStates.TryGetValue(connectionId, out cs)) { TransactionState transactionState = cs[info.TransactionId]; if (transactionState != null) { transactionState.addCommand(info); return(new Tracked(new RemoveTransactionAction(info, this))); } } } } return(null); }