Package org.springframework.amqp.core

Examples of org.springframework.amqp.core.Queue


 
  @Bean
  public Queue workQueue() {
    // This queue will be declared due to the presence of the AmqpAdmin class in the context.
    // Every queue is bound to the default direct exchange   
    return new Queue(QueueNames.WORK_QUEUE_NAME);
  }
View Full Code Here


 
  @Bean
  public Queue resultQueue() {
    // This queue will be declared due to the presence of the AmqpAdmin class in the context.
    // Every queue is bound to the default direct exchange   
    return new Queue(QueueNames.RESULT_QUEUE_NAME);
  }
View Full Code Here

        return new RabbitTemplate(connectionFactory());
    }

    @Bean
    public Queue queue() {
        return new Queue("testqueue");
    }
View Full Code Here

        currentRoutingKey = routingKey;
      }
      boolean exclusive = params.containsKey(EXCLUSIVE) ? (Boolean) params.get(EXCLUSIVE) : false;
      Map arguments = params.containsKey(ARGUMENTS) ? (Map) params.get(ARGUMENTS) : null;

      Queue q = null;
      String name;
      if (params.containsKey(NAME)) {
        try {
          if (null == params.get(NAME)) {
            name = null;
          } else {
            name = params.get(NAME).toString();
          }

          if (name == null) {
            q = rabbitAdmin.declareQueue();
          } else {
            q = new Queue(name, durable, exclusive, autoDelete);
            rabbitAdmin.declareQueue(q);
          }
          currentQueue = q;

          if (null != currentExchange) {
View Full Code Here

            } while (error && !endpoint.isStoppingOrStopped());
        }

        protected void declareAMQPEntities() {
            org.springframework.amqp.core.Exchange exchange = declareExchange();
            Queue queue = declareQueue();
            declareBinding(exchange, queue);
        }
View Full Code Here

                queueArguments.put(TTL_QUEUE_ARGUMENT, endpoint.getTimeToLive());
            if(endpoint.isHa() )
                queueArguments.put(HA_POLICY_ARGUMENT, "all");

            //Declare queue
            Queue queue = new Queue(this.endpoint.queueName, this.endpoint.durable, this.endpoint.exclusive, this.endpoint.autodelete, queueArguments);
            this.endpoint.getAmqpAdministration().declareQueue(queue);
            LOG.info("Declared queue {} for endpoint {}.", queue.getName(), endpoint);
            return queue;
        }
View Full Code Here

    return template;
  }

  @Bean
  public Binding binding() {
    amqpAdmin().declareQueue(new Queue(queueName));
    Binding binding = new Binding(new Queue(queueName), new DirectExchange(exchange), routingKey);
    amqpAdmin().declareBinding(binding);
    return binding;
  }
View Full Code Here

    container.setMessageListener(messageListener);

    RabbitAdmin admin = new RabbitAdmin(template.getConnectionFactory());
    Map<String, Object> args = new HashMap<String, Object>();
    args.put("x-dead-letter-exchange", "test.DLE");
    Queue queue = new Queue("", false, false, true, args);
    String testQueueName = admin.declareQueue(queue);
    // Create a DeadLetterExchange and bind a queue to it with the original routing key
    DirectExchange dle = new DirectExchange("test.DLE", false, true);
    admin.declareExchange(dle);
    Queue dlq = new AnonymousQueue();
    admin.declareQueue(dlq);
    admin.declareBinding(BindingBuilder.bind(dlq).to(dle).with(testQueueName));

    container.setQueueNames(testQueueName);
    container.afterPropertiesSet();
    container.start();

    Message message = MessageBuilder.withBody("foo".getBytes())
        .setContentType("text/plain")
        .setContentEncoding("junk")
        .build();
    template.send("", testQueueName, message);

    Message rejected = template.receive(dlq.getName());
    int n = 0;
    while (n++ < 100 && rejected == null) {
      Thread.sleep(100);
      rejected = template.receive(dlq.getName());
    }
    assertTrue("Message did not arrive in DLQ", n < 100);
    assertEquals("foo", new String(rejected.getBody()));


    // Verify that the exception strategy has access to the message
    final AtomicReference<Message> failed = new AtomicReference<Message>();
    ConditionalRejectingErrorHandler eh = new ConditionalRejectingErrorHandler(new FatalExceptionStrategy() {

      @Override
      public boolean isFatal(Throwable t) {
        if (t instanceof ListenerExecutionFailedException) {
          failed.set(((ListenerExecutionFailedException) t).getFailedMessage());
        }
        return t instanceof ListenerExecutionFailedException
            && t.getCause() instanceof MessageConversionException;
      }
    });
    container.setErrorHandler(eh);

    template.send("", testQueueName, message);

    rejected = template.receive(dlq.getName());
    n = 0;
    while (n++ < 100 && rejected == null) {
      Thread.sleep(100);
      rejected = template.receive(dlq.getName());
    }
    assertTrue("Message did not arrive in DLQ", n < 100);
    assertEquals("foo", new String(rejected.getBody()));
    assertNotNull(failed.get());
View Full Code Here

   * @return a new rule that assumes an existing running broker
   */
  public static BrokerRunning isRunningWithEmptyQueues(String... names) {
    Queue[] queues = new Queue[names.length];
    for (int i = 0; i < queues.length; i++) {
      queues[i] = new Queue(names[i]);
    }
    return new BrokerRunning(true, true, queues);
  }
View Full Code Here

  private BrokerRunning(boolean assumeOnline, Queue... queues) {
    this(assumeOnline, false, queues);
  }

  private BrokerRunning(boolean assumeOnline) {
    this(assumeOnline, new Queue(DEFAULT_QUEUE_NAME));
  }
View Full Code Here

TOP

Related Classes of org.springframework.amqp.core.Queue

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.