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);
}