Advertisement
Guest User

Untitled

a guest
Mar 26th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. @PostConstruct
  2. public void createQueues() {
  3. createAndBindQueuesToFanoutExchangeAndDeadLetter(EMAIL_UPDATED_EXCHANGE, MAILCHIMP_EMAIL_UPDATED_QUEUE);
  4. }
  5.  
  6. private void createAndBindQueuesToFanoutExchangeAndDeadLetter(String exchangeName, String... queueNames) {
  7. FanoutExchange exchangeBean = createExchangeBean(exchangeName);
  8.  
  9. for (String queueName : queueNames) {
  10. Queue queue = queueWithDelayedRetry(queueName);
  11. Binding bindingToExchange = BindingBuilder.bind(queue).to(exchangeBean);
  12. Binding bindingToDeadLetter = BindingBuilder.bind(queue).to(backFromTheDeadExchange()).with(queueName);
  13.  
  14. String beanPrefix = queueName.replace(".", "").replace("queue", "");
  15. beanRegistry.registerSingleton(beanPrefix + "Queue", queue);
  16. beanRegistry.registerSingleton(beanPrefix + "ExchangeBinding", bindingToExchange);
  17. beanRegistry.registerSingleton(beanPrefix + "DeadLetterBinding", bindingToDeadLetter);
  18. }
  19. }
  20.  
  21. private FanoutExchange createExchangeBean(String exchangeName) {
  22. FanoutExchange bean = new FanoutExchange(exchangeName);
  23. String beanPrefix = exchangeName.replace(".", "").replace("exchange", "");
  24. beanRegistry.registerSingleton(beanPrefix + "Exchange", bean);
  25. return bean;
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement