Advertisement
Guest User

Untitled

a guest
May 24th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.33 KB | None | 0 0
  1.     @Scheduled(fixedDelayString="300000", initialDelay=1000)
  2.     public void registerAmqpSubmitEndpoints() {
  3.         List<Credential> credentials = credentialRepository.findByStatus(Status.ENABLED);
  4.        
  5.  
  6.  
  7.  
  8.  
  9. SubmitMessageListener submitMessageListener = applicationContext.getBean(SubmitMessageListener.class);     
  10.        
  11.        
  12.  
  13.  
  14.  
  15. credentials.stream().filter(e->e.getBindType() != null && e.getBindType() != BindType.RECEIVER)
  16.           .forEach( e-> {
  17.             String queueName = "submit_sm_queue_" + e.getM360CredentialId();
  18.        
  19.  
  20.  
  21.  
  22.  
  23.  
  24.    
  25.             RateLimiter rateLimiter = RateLimiter.create(e.getTps());
  26.             submitMessageListener.setRateLimiter(rateLimiter);
  27.            
  28.        
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.     if (containers.get(queueName) == null) {
  40.                 createQueueIfAbsent(queueName);
  41.                 SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
  42.                 container.setConnectionFactory(connectionFactory);
  43.                 container.setQueueNames(queueName);
  44.                 container.setConcurrentConsumers(threadsPerQueue);
  45.                 container.setMaxConcurrentConsumers(threadsPerQueue*2);
  46.                 container.setMessageListener(submitMessageListener);
  47.                 container.setTaskExecutor(executors);
  48.                 container.setDefaultRequeueRejected(false);
  49.                 containers.put(queueName, container);
  50.                 container.start();
  51.                 LOGGER.info("Registered AMQP Listener Container for {}", queueName);
  52.             }
  53.         });
  54.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement