Package com.rabbitmq.client.QueueingConsumer

Examples of com.rabbitmq.client.QueueingConsumer.Delivery


    }

    protected Delivery ack(Queue<Delivery> d, boolean multiAck)
        throws IOException
    {
        Delivery last = null;

        for (Delivery tmp : d) {
            if (!multiAck) ackDelivery(tmp, false);
            last = tmp;
        }
View Full Code Here


        //measure round-trip latency
        QueueingConsumer c = new QueueingConsumer(channel);
        String cTag = channel.basicConsume(TEST_QUEUE_NAME, true, c);
        long start = System.currentTimeMillis();
        publish(null, "test");
        Delivery d = c.nextDelivery(TTL);
        long stop = System.currentTimeMillis();
        assertNotNull(d);
        channel.basicCancel(cTag);
        long latency = stop-start;
View Full Code Here

       publication time + TTL + latency */
    private void checkPromptArrival(QueueingConsumer c,
                                    int count, long latency) throws Exception {
        long epsilon = TTL / 50;
        for (int i = 0; i < count; i++) {
            Delivery d = c.nextDelivery(TTL + TTL + latency + epsilon);
            assertNotNull("message #" + i + " did not expire", d);
            long now = System.currentTimeMillis();
            long publishTime = Long.valueOf(new String(d.getBody()));
            long targetTime = publishTime + TTL + latency;
            assertTrue("expiry outside bounds (+/- " + epsilon + "): " +
                       (now - targetTime),
                       (now >= targetTime - epsilon) &&
                       (now <= targetTime + epsilon));
View Full Code Here

    }

    protected void consumeNoDuplicates(QueueingConsumer consumer)
            throws ShutdownSignalException, InterruptedException {
        assertNotNull(consumer.nextDelivery(TIMEOUT));
        Delivery markerDelivery = consumer.nextDelivery(TIMEOUT);
        assertEquals(new String(MARKER), new String(markerDelivery.getBody()));
    }
View Full Code Here

    {
        List<Delivery> res = new LinkedList<Delivery>();
        try {
            long start = System.currentTimeMillis();
            for (int i = 0; i < n; i++) {
                Delivery d = c.nextDelivery(1000);
                assertNotNull(d);
                res.add(d);
            }
            long finish = System.currentTimeMillis();
            Thread.sleep( (n == 0 ? 0 : (finish - start) / n) + 10 );
View Full Code Here

        fill(1);
        QueueingConsumer c2 = new QueueingConsumer(channel);
        declareBindConsume(channel, c2, true);
        fill(1);
        try {
            Delivery d = c2.nextDelivery(1000);
            assertNull(d);
        } catch (InterruptedException ie) {
            fail("interrupted");
        }
        List<Delivery> d = drain(c1, 1);
View Full Code Here

        counts.put("c1", 0);
        counts.put("c2", 0);
        fill(count);
        try {
            for (int i = 0; i < count; i++) {
                Delivery d = c.nextDelivery();
                channel.basicAck(d.getEnvelope().getDeliveryTag(), false);
            }
        } catch (InterruptedException ie) {
            fail("interrupted");
        }
View Full Code Here

            tags.add(r.getEnvelope().getDeliveryTag());
        }

        //are acks handled correctly?
        //and does the basic.get above have no effect on limiting?
        Delivery last = ack(d, multiAck);
        if (txMode) {
            drain(c, 0);
            channel.txRollback();
            drain(c, 0);
            ackDelivery(last, true);
View Full Code Here

    }

    protected Delivery ack(List<Delivery> d, boolean multiAck)
        throws IOException
    {
        Delivery last = null;

        for (Delivery tmp : d) {
            if (!multiAck) ackDelivery(tmp, false);
            last = tmp;
        }
View Full Code Here

                Envelope anEnvelope,
                BasicProperties aProperties,
                byte[] aBody) throws IOException {

            if (!isClosed()) {
                handle(this.messageListener(), new Delivery(anEnvelope, aProperties, aBody));
            }

            if (isClosed()) {
                queue().close();
            }
View Full Code Here

TOP

Related Classes of com.rabbitmq.client.QueueingConsumer.Delivery

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.