Пример #1
0
  public void testConnectionFactory() throws Exception {
    // Create sample connection factory
    ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory();
    factory.setDispatchAsync(true);
    factory.setBrokerURL("vm://test");
    factory.setClientID("test");
    factory.setCopyMessageOnSend(false);
    factory.setDisableTimeStampsByDefault(true);
    factory.setObjectMessageSerializationDefered(true);
    factory.setOptimizedMessageDispatch(false);
    factory.setPassword("pass");
    factory.setUseAsyncSend(true);
    factory.setUseCompression(true);
    factory.setUseRetroactiveConsumer(true);
    factory.setUserName("user");
    factory.getPrefetchPolicy().setQueuePrefetch(777);
    factory.getRedeliveryPolicy().setMaximumRedeliveries(15);
    factory.getRedeliveryPolicy().setBackOffMultiplier((short) 32);

    // Create reference
    Reference ref = JNDIReferenceFactory.createReference(factory.getClass().getName(), factory);

    // Get object created based on reference
    ActiveMQConnectionFactory temp;
    JNDIReferenceFactory refFactory = new JNDIReferenceFactory();
    temp = (ActiveMQConnectionFactory) refFactory.getObjectInstance(ref, null, null, null);

    // Check settings
    assertEquals(factory.isDispatchAsync(), temp.isDispatchAsync());
    assertEquals(factory.getBrokerURL(), temp.getBrokerURL());
    assertEquals(factory.getClientID(), temp.getClientID());
    assertEquals(factory.isCopyMessageOnSend(), temp.isCopyMessageOnSend());
    assertEquals(factory.isDisableTimeStampsByDefault(), temp.isDisableTimeStampsByDefault());
    assertEquals(
        factory.isObjectMessageSerializationDefered(), temp.isObjectMessageSerializationDefered());
    assertEquals(factory.isOptimizedMessageDispatch(), temp.isOptimizedMessageDispatch());
    assertEquals(factory.getPassword(), temp.getPassword());
    assertEquals(factory.isUseAsyncSend(), temp.isUseAsyncSend());
    assertEquals(factory.isUseCompression(), temp.isUseCompression());
    assertEquals(factory.isUseRetroactiveConsumer(), temp.isUseRetroactiveConsumer());
    assertEquals(factory.getUserName(), temp.getUserName());
    assertEquals(
        factory.getPrefetchPolicy().getQueuePrefetch(),
        temp.getPrefetchPolicy().getQueuePrefetch());
    assertEquals(
        factory.getRedeliveryPolicy().getMaximumRedeliveries(),
        temp.getRedeliveryPolicy().getMaximumRedeliveries());
    assertEquals(
        factory.getRedeliveryPolicy().getBackOffMultiplier(),
        temp.getRedeliveryPolicy().getBackOffMultiplier());
  }
 @Test
 public void testActiveMQOverriddenPoolAndStandalone() {
   load(TestConfiguration.class, "spring.activemq.pooled:true", "spring.activemq.inMemory:false");
   JmsTemplate jmsTemplate = this.context.getBean(JmsTemplate.class);
   PooledConnectionFactory pool = this.context.getBean(PooledConnectionFactory.class);
   assertThat(jmsTemplate).isNotNull();
   assertThat(pool).isNotNull();
   assertThat(pool).isEqualTo(jmsTemplate.getConnectionFactory());
   ActiveMQConnectionFactory factory = (ActiveMQConnectionFactory) pool.getConnectionFactory();
   assertThat(factory.getBrokerURL()).isEqualTo(ACTIVEMQ_NETWORK_URL);
 }
 @Test
 public void testActiveMQOverriddenPoolAndRemoteServer() {
   load(
       TestConfiguration.class,
       "spring.activemq.pooled:true",
       "spring.activemq.brokerUrl:tcp://remote-host:10000");
   JmsTemplate jmsTemplate = this.context.getBean(JmsTemplate.class);
   PooledConnectionFactory pool = this.context.getBean(PooledConnectionFactory.class);
   assertThat(jmsTemplate).isNotNull();
   assertThat(pool).isNotNull();
   assertThat(pool).isEqualTo(jmsTemplate.getConnectionFactory());
   ActiveMQConnectionFactory factory = (ActiveMQConnectionFactory) pool.getConnectionFactory();
   assertThat(factory.getBrokerURL()).isEqualTo("tcp://remote-host:10000");
 }