Repository: qpid-jms Updated Branches: refs/heads/master e153f205e -> 6e1f4f672
https://issues.apache.org/jira/browse/QPIDJMS-177 Add some additional test coverage and ensure copy methods fully copy the policy objects. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/6e1f4f67 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/6e1f4f67 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/6e1f4f67 Branch: refs/heads/master Commit: 6e1f4f672a91618a2dd2caf83490c60295d7e6cc Parents: e153f20 Author: Timothy Bish <[email protected]> Authored: Tue Jun 7 16:59:19 2016 -0400 Committer: Timothy Bish <[email protected]> Committed: Tue Jun 7 16:59:19 2016 -0400 ---------------------------------------------------------------------- .../apache/qpid/jms/meta/JmsConnectionInfo.java | 28 +++-- .../apache/qpid/jms/meta/JmsConsumerInfo.java | 5 + .../apache/qpid/jms/meta/JmsSessionInfo.java | 20 ++++ .../qpid/jms/JmsConnectionFactoryTest.java | 115 ++++++++++++++++++- .../qpid/jms/meta/JmsConnectionInfoTest.java | 18 ++- .../qpid/jms/meta/JmsConsumerInfoTest.java | 5 + .../qpid/jms/meta/JmsSessionInfoTest.java | 16 ++- 7 files changed, 194 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConnectionInfo.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConnectionInfo.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConnectionInfo.java index f6bf6a7..b98af14 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConnectionInfo.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConnectionInfo.java @@ -63,10 +63,10 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne private String queuePrefix = null; private String topicPrefix = null; - private JmsPrefetchPolicy prefetchPolicy = new JmsDefaultPrefetchPolicy(); - private JmsRedeliveryPolicy redeliveryPolicy = new JmsDefaultRedeliveryPolicy(); - private JmsPresettlePolicy presettlePolicy = new JmsDefaultPresettlePolicy(); - private JmsMessageIDPolicy messageIDPolicy = new JmsDefaultMessageIDPolicy(); + private JmsPrefetchPolicy prefetchPolicy; + private JmsRedeliveryPolicy redeliveryPolicy; + private JmsPresettlePolicy presettlePolicy; + private JmsMessageIDPolicy messageIDPolicy; private volatile byte[] encodedUserId; @@ -97,10 +97,10 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne copy.topicPrefix = topicPrefix; copy.connectTimeout = connectTimeout; copy.validatePropertyNames = validatePropertyNames; - copy.messageIDPolicy = messageIDPolicy; - copy.prefetchPolicy = prefetchPolicy.copy(); - copy.redeliveryPolicy = redeliveryPolicy.copy(); - copy.presettlePolicy = presettlePolicy.copy(); + copy.messageIDPolicy = getMessageIDPolicy().copy(); + copy.prefetchPolicy = getPrefetchPolicy().copy(); + copy.redeliveryPolicy = getRedeliveryPolicy().copy(); + copy.presettlePolicy = getPresettlePolicy().copy(); } public boolean isForceAsyncSend() { @@ -261,6 +261,9 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne } public JmsPrefetchPolicy getPrefetchPolicy() { + if (prefetchPolicy == null) { + prefetchPolicy = new JmsDefaultPrefetchPolicy(); + } return prefetchPolicy; } @@ -269,6 +272,9 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne } public JmsRedeliveryPolicy getRedeliveryPolicy() { + if (redeliveryPolicy == null) { + redeliveryPolicy = new JmsDefaultRedeliveryPolicy(); + } return redeliveryPolicy; } @@ -277,6 +283,9 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne } public JmsPresettlePolicy getPresettlePolicy() { + if (presettlePolicy == null) { + presettlePolicy = new JmsDefaultPresettlePolicy(); + } return presettlePolicy; } @@ -285,6 +294,9 @@ public final class JmsConnectionInfo implements JmsResource, Comparable<JmsConne } public JmsMessageIDPolicy getMessageIDPolicy() { + if (messageIDPolicy == null) { + messageIDPolicy = new JmsDefaultMessageIDPolicy(); + } return messageIDPolicy; } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConsumerInfo.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConsumerInfo.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConsumerInfo.java index ef8a939..ab72d7c 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConsumerInfo.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsConsumerInfo.java @@ -17,6 +17,7 @@ package org.apache.qpid.jms.meta; import org.apache.qpid.jms.JmsDestination; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.policy.JmsRedeliveryPolicy; public final class JmsConsumerInfo implements JmsResource, Comparable<JmsConsumerInfo> { @@ -69,6 +70,7 @@ public final class JmsConsumerInfo implements JmsResource, Comparable<JmsConsume info.noLocal = noLocal; info.acknowledgementMode = acknowledgementMode; info.lastDeliveredSequenceId = lastDeliveredSequenceId; + info.redeliveryPolicy = getRedeliveryPolicy().copy(); } public boolean isDurable() { @@ -165,6 +167,9 @@ public final class JmsConsumerInfo implements JmsResource, Comparable<JmsConsume } public JmsRedeliveryPolicy getRedeliveryPolicy() { + if (redeliveryPolicy == null) { + redeliveryPolicy = new JmsDefaultRedeliveryPolicy(); + } return redeliveryPolicy; } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsSessionInfo.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsSessionInfo.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsSessionInfo.java index a4733b1..6e87480 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsSessionInfo.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/meta/JmsSessionInfo.java @@ -18,6 +18,10 @@ package org.apache.qpid.jms.meta; import javax.jms.Session; +import org.apache.qpid.jms.policy.JmsDefaultMessageIDPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPresettlePolicy; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.policy.JmsMessageIDPolicy; import org.apache.qpid.jms.policy.JmsPrefetchPolicy; import org.apache.qpid.jms.policy.JmsPresettlePolicy; @@ -58,6 +62,10 @@ public final class JmsSessionInfo implements JmsResource, Comparable<JmsSessionI private void copy(JmsSessionInfo copy) { copy.acknowledgementMode = acknowledgementMode; copy.sendAcksAsync = sendAcksAsync; + copy.redeliveryPolicy = getRedeliveryPolicy().copy(); + copy.presettlePolicy = getPresettlePolicy().copy(); + copy.prefetchPolicy = getPrefetchPolicy().copy(); + copy.messageIDPolicy = getMessageIDPolicy().copy(); } @Override @@ -122,6 +130,9 @@ public final class JmsSessionInfo implements JmsResource, Comparable<JmsSessionI } public JmsMessageIDPolicy getMessageIDPolicy() { + if (messageIDPolicy == null) { + messageIDPolicy = new JmsDefaultMessageIDPolicy(); + } return messageIDPolicy; } @@ -130,6 +141,9 @@ public final class JmsSessionInfo implements JmsResource, Comparable<JmsSessionI } public JmsPrefetchPolicy getPrefetchPolicy() { + if (prefetchPolicy == null) { + prefetchPolicy = new JmsDefaultPrefetchPolicy(); + } return prefetchPolicy; } @@ -138,6 +152,9 @@ public final class JmsSessionInfo implements JmsResource, Comparable<JmsSessionI } public JmsPresettlePolicy getPresettlePolicy() { + if (presettlePolicy == null) { + presettlePolicy = new JmsDefaultPresettlePolicy(); + } return presettlePolicy; } @@ -146,6 +163,9 @@ public final class JmsSessionInfo implements JmsResource, Comparable<JmsSessionI } public JmsRedeliveryPolicy getRedeliveryPolicy() { + if (redeliveryPolicy == null) { + redeliveryPolicy = new JmsDefaultRedeliveryPolicy(); + } return redeliveryPolicy; } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java index 48e6c63..efb29f5 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java @@ -23,6 +23,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; @@ -38,6 +39,8 @@ import javax.jms.ExceptionListener; import javax.jms.JMSException; import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPresettlePolicy; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.test.QpidJmsTestCase; import org.apache.qpid.jms.util.IdGenerator; import org.junit.Test; @@ -86,8 +89,6 @@ public class JmsConnectionFactoryTest extends QpidJmsTestCase { factory.setConnectTimeout(TimeUnit.SECONDS.toMillis(30)); factory.setCloseTimeout(TimeUnit.SECONDS.toMillis(45)); - ((JmsDefaultPrefetchPolicy) factory.getPrefetchPolicy()).setAll(1); - JmsConnection connection = (JmsConnection) factory.createConnection(); assertNotNull(connection); @@ -104,8 +105,20 @@ public class JmsConnectionFactoryTest extends QpidJmsTestCase { assertEquals(TimeUnit.SECONDS.toMillis(30), connection.getConnectTimeout()); assertEquals(TimeUnit.SECONDS.toMillis(45), connection.getCloseTimeout()); + } + + @Test + public void testConnectionFactoryPrefetchPolicyIsAppliedToConnection() throws JMSException { + JmsConnectionFactory factory = new JmsConnectionFactory(USER, PASSWORD, "mock://localhost"); + + ((JmsDefaultPrefetchPolicy) factory.getPrefetchPolicy()).setAll(1); + + JmsConnection connection = (JmsConnection) factory.createConnection(); + assertNotNull(connection); JmsDefaultPrefetchPolicy prefetchPolicy = (JmsDefaultPrefetchPolicy) connection.getPrefetchPolicy(); + assertNotNull(prefetchPolicy); + assertNotSame(factory.getPrefetchPolicy(), prefetchPolicy); assertEquals(1, prefetchPolicy.getTopicPrefetch()); assertEquals(1, prefetchPolicy.getQueuePrefetch()); @@ -114,6 +127,42 @@ public class JmsConnectionFactoryTest extends QpidJmsTestCase { } @Test + public void testConnectionFactoryPresettlePolicyIsAppliedToConnection() throws JMSException { + JmsConnectionFactory factory = new JmsConnectionFactory(USER, PASSWORD, "mock://localhost"); + + JmsDefaultPresettlePolicy presettlePolicy = (JmsDefaultPresettlePolicy) factory.getPresettlePolicy(); + + presettlePolicy.setPresettleAll(true); + + JmsConnection connection = (JmsConnection) factory.createConnection(); + assertNotNull(connection); + + presettlePolicy = (JmsDefaultPresettlePolicy) connection.getPresettlePolicy(); + assertNotNull(presettlePolicy); + assertNotSame(factory.getPresettlePolicy(), presettlePolicy); + + assertTrue(presettlePolicy.isPresettleAll()); + } + + @Test + public void testConnectionFactoryRedeliveryPolicyIsAppliedToConnection() throws JMSException { + JmsConnectionFactory factory = new JmsConnectionFactory(USER, PASSWORD, "mock://localhost"); + + JmsDefaultRedeliveryPolicy redeliveryPolicy = (JmsDefaultRedeliveryPolicy) factory.getRedeliveryPolicy(); + + redeliveryPolicy.setMaxRedeliveries(100); + + JmsConnection connection = (JmsConnection) factory.createConnection(); + assertNotNull(connection); + + redeliveryPolicy = (JmsDefaultRedeliveryPolicy) connection.getRedeliveryPolicy(); + assertNotNull(redeliveryPolicy); + assertNotSame(factory.getRedeliveryPolicy(), redeliveryPolicy); + + assertEquals(100, redeliveryPolicy.getMaxRedeliveries()); + } + + @Test public void testConnectionGetConfiguredURIApplied() throws Exception { URI mock = new URI("mock://localhost"); @@ -418,6 +467,68 @@ public class JmsConnectionFactoryTest extends QpidJmsTestCase { assertEquals("Properties were not equal", props, props2); } + /** + * The presettle policy is maintained in a child-object, which we extract the properties from + * when serializing the factory. Ensure this functions by doing a round trip on a factory + * configured with some new presettle configuration via the URI. + * + * @throws Exception if an error occurs during the test. + */ + @Test + public void testSerializeThenDeserializeMaintainsPresettlePolicy() throws Exception { + String presettleAllValue = "true"; + String presettleAllKey = "presettlePolicy.presettleAll"; + String uri = "amqp://localhost:1234?jms." + presettleAllKey + "=" + presettleAllValue; + + JmsConnectionFactory cf = new JmsConnectionFactory(uri); + Map<String, String> props = cf.getProperties(); + + assertTrue("Props dont contain expected presettle policy change", props.containsKey(presettleAllKey)); + assertEquals("Unexpected value", presettleAllValue, props.get(presettleAllKey)); + + Object roundTripped = roundTripSerialize(cf); + + assertNotNull("Null object returned", roundTripped); + assertEquals("Unexpected type", JmsConnectionFactory.class, roundTripped.getClass()); + + Map<String, String> props2 = ((JmsConnectionFactory)roundTripped).getProperties(); + assertTrue("Props dont contain expected presettle policy change", props2.containsKey(presettleAllKey)); + assertEquals("Unexpected value", presettleAllValue, props2.get(presettleAllKey)); + + assertEquals("Properties were not equal", props, props2); + } + + /** + * The message ID policy is maintained in a child-object, which we extract the properties from + * when serializing the factory. Ensure this functions by doing a round trip on a factory + * configured with some new message ID configuration via the URI. + * + * @throws Exception if an error occurs during the test. + */ + @Test + public void testSerializeThenDeserializeMaintainsMessageIDPolicy() throws Exception { + String messageIDTypeValue = "UUID"; + String messageIDTypeKey = "messageIDPolicy.messageIDType"; + String uri = "amqp://localhost:1234?jms." + messageIDTypeKey + "=" + messageIDTypeValue; + + JmsConnectionFactory cf = new JmsConnectionFactory(uri); + Map<String, String> props = cf.getProperties(); + + assertTrue("Props dont contain expected message ID policy change", props.containsKey(messageIDTypeKey)); + assertEquals("Unexpected value", messageIDTypeValue, props.get(messageIDTypeKey)); + + Object roundTripped = roundTripSerialize(cf); + + assertNotNull("Null object returned", roundTripped); + assertEquals("Unexpected type", JmsConnectionFactory.class, roundTripped.getClass()); + + Map<String, String> props2 = ((JmsConnectionFactory)roundTripped).getProperties(); + assertTrue("Props dont contain expected message ID policy change", props2.containsKey(messageIDTypeKey)); + assertEquals("Unexpected value", messageIDTypeValue, props2.get(messageIDTypeKey)); + + assertEquals("Properties were not equal", props, props2); + } + @Test public void testSetRemoteURIThrowsOnNullURI() throws Exception { JmsConnectionFactory cf = new JmsConnectionFactory(); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConnectionInfoTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConnectionInfoTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConnectionInfoTest.java index 5c44469..8e4fb23 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConnectionInfoTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConnectionInfoTest.java @@ -19,11 +19,16 @@ package org.apache.qpid.jms.meta; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import java.util.concurrent.atomic.AtomicBoolean; +import org.apache.qpid.jms.policy.JmsDefaultMessageIDPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPresettlePolicy; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.util.IdGenerator; import org.junit.Before; import org.junit.Test; @@ -71,8 +76,12 @@ public class JmsConnectionInfoTest { info.setSendTimeout(150); info.setTopicPrefix("topic"); info.setUsername("user"); - boolean validatePropertyNames = ! info.isValidatePropertyNames(); + boolean validatePropertyNames = !info.isValidatePropertyNames(); info.setValidatePropertyNames(validatePropertyNames); + info.setMessageIDPolicy(new JmsDefaultMessageIDPolicy()); + info.setPrefetchPolicy(new JmsDefaultPrefetchPolicy()); + info.setPresettlePolicy(new JmsDefaultPresettlePolicy()); + info.setRedeliveryPolicy(new JmsDefaultRedeliveryPolicy()); JmsConnectionInfo copy = info.copy(); @@ -89,8 +98,13 @@ public class JmsConnectionInfoTest { assertEquals("user", copy.getUsername()); assertEquals(validatePropertyNames, copy.isValidatePropertyNames()); + assertNotSame(info.getPrefetchPolicy(), copy.getPrefetchPolicy()); + assertNotSame(info.getPresettlePolicy(), copy.getPresettlePolicy()); + assertNotSame(info.getRedeliveryPolicy(), copy.getRedeliveryPolicy()); + assertNotSame(info.getMessageIDPolicy(), copy.getMessageIDPolicy()); + assertEquals(info, copy); -} + } @Test public void testCompareTo() { http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConsumerInfoTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConsumerInfoTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConsumerInfoTest.java index 6f2ed39..20ff635 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConsumerInfoTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsConsumerInfoTest.java @@ -19,12 +19,14 @@ package org.apache.qpid.jms.meta; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import java.util.concurrent.atomic.AtomicBoolean; import org.apache.qpid.jms.JmsTopic; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.util.IdGenerator; import org.junit.Before; import org.junit.Test; @@ -90,6 +92,7 @@ public class JmsConsumerInfoTest { info.setPrefetchSize(123456); info.setSelector("select"); info.setSubscriptionName("name"); + info.setRedeliveryPolicy(new JmsDefaultRedeliveryPolicy()); JmsConsumerInfo copy = info.copy(); @@ -103,6 +106,8 @@ public class JmsConsumerInfoTest { assertEquals("select", copy.getSelector()); assertEquals("name", copy.getSubscriptionName()); + assertNotSame(info.getRedeliveryPolicy(), copy.getRedeliveryPolicy()); + assertEquals(info, copy); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6e1f4f67/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsSessionInfoTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsSessionInfoTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsSessionInfoTest.java index ba12836..2ba79ab 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsSessionInfoTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/meta/JmsSessionInfoTest.java @@ -19,6 +19,7 @@ package org.apache.qpid.jms.meta; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; @@ -26,6 +27,10 @@ import java.util.concurrent.atomic.AtomicBoolean; import javax.jms.Session; +import org.apache.qpid.jms.policy.JmsDefaultMessageIDPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy; +import org.apache.qpid.jms.policy.JmsDefaultPresettlePolicy; +import org.apache.qpid.jms.policy.JmsDefaultRedeliveryPolicy; import org.apache.qpid.jms.util.IdGenerator; import org.junit.Before; import org.junit.Test; @@ -91,14 +96,23 @@ public class JmsSessionInfoTest { info.setAcknowledgementMode(2); info.setSendAcksAsync(true); + info.setMessageIDPolicy(new JmsDefaultMessageIDPolicy()); + info.setPrefetchPolicy(new JmsDefaultPrefetchPolicy()); + info.setPresettlePolicy(new JmsDefaultPresettlePolicy()); + info.setRedeliveryPolicy(new JmsDefaultRedeliveryPolicy()); JmsSessionInfo copy = info.copy(); assertEquals(2, copy.getAcknowledgementMode()); assertEquals(true, copy.isSendAcksAsync()); + assertNotSame(info.getPrefetchPolicy(), copy.getPrefetchPolicy()); + assertNotSame(info.getPresettlePolicy(), copy.getPresettlePolicy()); + assertNotSame(info.getRedeliveryPolicy(), copy.getRedeliveryPolicy()); + assertNotSame(info.getMessageIDPolicy(), copy.getMessageIDPolicy()); + assertEquals(info, copy); -} + } @Test public void testCompareTo() { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
