private IMessage Run (IMessageQueueTransaction transaction, RecieveDelegate r) { TxReceiver txr = new TxReceiver (this, r); RabbitMQMessageQueueTransaction tx = (RabbitMQMessageQueueTransaction) transaction; return tx.RunReceive (txr.ReceiveInContext); }