Skip to content

Commit

Permalink
Merge pull request #1169 from jbonofre/AMQ-9419
Browse files Browse the repository at this point in the history
AMQ-9419: Implement createContext(int sessionMode) method
  • Loading branch information
jbonofre committed Mar 5, 2024
2 parents b08f65d + 7fae1b9 commit 5446874
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,11 @@ public JMSContext createContext(String userName, String password, int sessionMod
*/
@Override
public JMSContext createContext(int sessionMode) {
throw new UnsupportedOperationException("createContext() is not supported");
try {
return new ActiveMQContext(createActiveMQConnection(getUserName(), getPassword()), sessionMode);
} catch (JMSException e) {
throw JMSExceptionSupport.convertToJMSRuntimeException(e);
}
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,18 @@ public void testConnectionFactoryCreateContext() {
}
}

@Test(expected = UnsupportedOperationException.class)
@Test
public void testConnectionFactoryCreateContextSession() {
activemqConnectionFactory.createContext(Session.AUTO_ACKNOWLEDGE);
try(JMSContext jmsContext = activemqConnectionFactory.createContext(Session.AUTO_ACKNOWLEDGE)) {
assertNotNull(jmsContext);
jmsContext.start();
assertTrue(ActiveMQContext.class.isAssignableFrom(jmsContext.getClass()));
Destination destination = jmsContext.createQueue(methodNameDestinationName);
sendMessage(jmsContext, destination, "Test-" + methodNameDestinationName);
recvMessage(jmsContext, destination, "Test-" + methodNameDestinationName);
} catch (JMSException e) {
fail(e.getMessage());
}
}

@Test
Expand Down

0 comments on commit 5446874

Please sign in to comment.