public void TestQueueBrowsingLVQ() { // Create a topic with one producer and two consumers. SetUpEndPoint(0, true, false, TEST_ROUTING_KEY2 + testId, AcknowledgeMode.AutoAcknowledge, false, ExchangeNameDefaults.DIRECT, true, true, TEST_ROUTING_KEY2 + testId, false, false); FieldTable args = new FieldTable(); args.SetBoolean("qpid.last_value_queue", true); args.SetString("qpid.last_value_queue_key", "key"); testChannel[0].DeclareQueue(TEST_ROUTING_KEY2 + testId, true, false, false, args); testChannel[0].Bind(TEST_ROUTING_KEY2 + testId, ExchangeNameDefaults.DIRECT, TEST_ROUTING_KEY2 + testId); Thread.Sleep(500); for (int i = 0; i < 12; i++) { ITextMessage msg = testChannel[0].CreateTextMessage("msg"); msg.Headers.SetInt("key", i % 6); testProducer[0].Send(msg); } Thread.Sleep(2000); SetUpEndPoint(1, false, true, TEST_ROUTING_KEY2 + testId, AcknowledgeMode.NoAcknowledge, false, ExchangeNameDefaults.DIRECT, true, true, TEST_ROUTING_KEY2 + testId, false, true); SetUpEndPoint(2, false, true, TEST_ROUTING_KEY2 + testId, AcknowledgeMode.NoAcknowledge, false, ExchangeNameDefaults.DIRECT, true, true, TEST_ROUTING_KEY2 + testId, false, true); Thread.Sleep(500); ConsumeNMessagesOnly(6, "msg", testConsumer[1]); ConsumeNMessagesOnly(6, "msg", testConsumer[2]); // Clean up any open consumers at the end of the test. CloseEndPoint(2); CloseEndPoint(1); CloseEndPoint(0); }
public void SetString(string propertyName, string value) { CheckPropertyName(propertyName); _headers.SetString(propertyName, value); }