You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2022/08/20 03:51:27 UTC
[activemq-artemis] branch main updated: ARTEMIS-3947 fix merging for expiry address-settings
This is an automated email from the ASF dual-hosted git repository.
jbertram pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
The following commit(s) were added to refs/heads/main by this push:
new f1c9e3df14 ARTEMIS-3947 fix merging for expiry address-settings
new fb292fde35 This closes #4182
f1c9e3df14 is described below
commit f1c9e3df1415bbde0c93cd2960991517bcd83ce3
Author: Justin Bertram <jb...@apache.org>
AuthorDate: Fri Aug 19 21:50:52 2022 -0500
ARTEMIS-3947 fix merging for expiry address-settings
---
.../activemq/artemis/core/settings/impl/AddressSettings.java | 12 ++++++------
.../activemq/artemis/core/settings/AddressSettingsTest.java | 6 ++++++
2 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java
index 96463f0909..befb5c50cb 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java
@@ -175,11 +175,11 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable
private SimpleString expiryAddress = null;
- private Long expiryDelay = AddressSettings.DEFAULT_EXPIRY_DELAY;
+ private Long expiryDelay = null;
- private Long minExpiryDelay = AddressSettings.DEFAULT_MIN_EXPIRY_DELAY;
+ private Long minExpiryDelay = null;
- private Long maxExpiryDelay = AddressSettings.DEFAULT_MAX_EXPIRY_DELAY;
+ private Long maxExpiryDelay = null;
private Boolean defaultLastValueQueue = null;
@@ -769,7 +769,7 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable
}
public Long getExpiryDelay() {
- return expiryDelay;
+ return expiryDelay != null ? expiryDelay : AddressSettings.DEFAULT_EXPIRY_DELAY;
}
public AddressSettings setExpiryDelay(final Long expiryDelay) {
@@ -778,7 +778,7 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable
}
public Long getMinExpiryDelay() {
- return minExpiryDelay;
+ return minExpiryDelay != null ? minExpiryDelay : AddressSettings.DEFAULT_MIN_EXPIRY_DELAY;
}
public AddressSettings setMinExpiryDelay(final Long minExpiryDelay) {
@@ -787,7 +787,7 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable
}
public Long getMaxExpiryDelay() {
- return maxExpiryDelay;
+ return maxExpiryDelay != null ? maxExpiryDelay : AddressSettings.DEFAULT_MAX_EXPIRY_DELAY;
}
public AddressSettings setMaxExpiryDelay(final Long maxExpiryDelay) {
diff --git a/artemis-server/src/test/java/org/apache/activemq/artemis/core/settings/AddressSettingsTest.java b/artemis-server/src/test/java/org/apache/activemq/artemis/core/settings/AddressSettingsTest.java
index 722d24b3e1..0d6e5006b2 100644
--- a/artemis-server/src/test/java/org/apache/activemq/artemis/core/settings/AddressSettingsTest.java
+++ b/artemis-server/src/test/java/org/apache/activemq/artemis/core/settings/AddressSettingsTest.java
@@ -71,6 +71,9 @@ public class AddressSettingsTest extends ActiveMQTestBase {
addressSettingsToMerge.setPageSizeBytes(1004);
addressSettingsToMerge.setMaxSizeBytesRejectThreshold(10 * 1024);
addressSettingsToMerge.setConfigDeleteDiverts(DeletionPolicy.FORCE);
+ addressSettingsToMerge.setExpiryDelay(999L);
+ addressSettingsToMerge.setMinExpiryDelay(888L);
+ addressSettingsToMerge.setMaxExpiryDelay(777L);
addressSettings.merge(addressSettingsToMerge);
Assert.assertEquals(addressSettings.getDeadLetterAddress(), DLQ);
@@ -84,6 +87,9 @@ public class AddressSettingsTest extends ActiveMQTestBase {
Assert.assertEquals(AddressFullMessagePolicy.DROP, addressSettings.getAddressFullMessagePolicy());
Assert.assertEquals(addressSettings.getMaxSizeBytesRejectThreshold(), 10 * 1024);
Assert.assertEquals(DeletionPolicy.FORCE, addressSettings.getConfigDeleteDiverts());
+ Assert.assertEquals(Long.valueOf(999), addressSettings.getExpiryDelay());
+ Assert.assertEquals(Long.valueOf(888), addressSettings.getMinExpiryDelay());
+ Assert.assertEquals(Long.valueOf(777), addressSettings.getMaxExpiryDelay());
}
@Test