Generic controls for auto queue/address creation
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/aefdc671 Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/aefdc671 Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/aefdc671 Branch: refs/heads/ARTEMIS-780 Commit: aefdc671f900c392fa6ff37eeb78f0c1906cb424 Parents: 20433fd Author: jbertram <[email protected]> Authored: Mon Nov 21 16:23:27 2016 -0600 Committer: jbertram <[email protected]> Committed: Wed Nov 23 09:04:36 2016 -0600 ---------------------------------------------------------------------- .../core/management/ActiveMQServerControl.java | 30 ++++ artemis-features/src/main/resources/artemis.xml | 4 +- .../deployers/impl/FileConfigurationParser.java | 16 ++ .../impl/ActiveMQServerControlImpl.java | 62 ++++++- .../core/settings/impl/AddressSettings.java | 165 +++++++++++++++++-- .../resources/schema/artemis-configuration.xsd | 43 ++++- .../core/settings/AddressSettingsTest.java | 8 +- .../resources/ConfigurationTest-full-config.xml | 8 + docs/user-manual/en/queue-attributes.md | 32 +++- .../ActiveMQServerControlUsingCoreTest.java | 37 ++++- .../src/test/resources/reload-test-jms.xml | 2 +- .../test/resources/reload-test-updated-jms.xml | 2 +- 12 files changed, 375 insertions(+), 34 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/management/ActiveMQServerControl.java ---------------------------------------------------------------------- diff --git a/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/management/ActiveMQServerControl.java b/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/management/ActiveMQServerControl.java index b658508..33584bf 100644 --- a/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/management/ActiveMQServerControl.java +++ b/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/core/management/ActiveMQServerControl.java @@ -849,6 +849,36 @@ public interface ActiveMQServerControl { @Parameter(desc = "allow auto-created queues to be deleted automatically", name = "autoDeleteJmsQueues") boolean autoDeleteJmsQueues, @Parameter(desc = "allow topics to be created automatically", name = "autoCreateJmsTopics") boolean autoCreateJmsTopics, @Parameter(desc = "allow auto-created topics to be deleted automatically", name = "autoDeleteJmsTopics") boolean autoDeleteJmsTopics) throws Exception; + /** + * adds a new address setting for a specific address + */ + @Operation(desc = "Add address settings for addresses matching the addressMatch", impact = MBeanOperationInfo.ACTION) + void addAddressSettings(@Parameter(desc = "an address match", name = "addressMatch") String addressMatch, + @Parameter(desc = "the dead letter address setting", name = "DLA") String DLA, + @Parameter(desc = "the expiry address setting", name = "expiryAddress") String expiryAddress, + @Parameter(desc = "the expiry delay setting", name = "expiryDelay") long expiryDelay, + @Parameter(desc = "are any queues created for this address a last value queue", name = "lastValueQueue") boolean lastValueQueue, + @Parameter(desc = "the delivery attempts", name = "deliveryAttempts") int deliveryAttempts, + @Parameter(desc = "the max size in bytes", name = "maxSizeBytes") long maxSizeBytes, + @Parameter(desc = "the page size in bytes", name = "pageSizeBytes") int pageSizeBytes, + @Parameter(desc = "the max number of pages in the soft memory cache", name = "pageMaxCacheSize") int pageMaxCacheSize, + @Parameter(desc = "the redelivery delay", name = "redeliveryDelay") long redeliveryDelay, + @Parameter(desc = "the redelivery delay multiplier", name = "redeliveryMultiplier") double redeliveryMultiplier, + @Parameter(desc = "the maximum redelivery delay", name = "maxRedeliveryDelay") long maxRedeliveryDelay, + @Parameter(desc = "the redistribution delay", name = "redistributionDelay") long redistributionDelay, + @Parameter(desc = "do we send to the DLA when there is no where to route the message", name = "sendToDLAOnNoRoute") boolean sendToDLAOnNoRoute, + @Parameter(desc = "the policy to use when the address is full", name = "addressFullMessagePolicy") String addressFullMessagePolicy, + @Parameter(desc = "when a consumer falls below this threshold in terms of messages consumed per second it will be considered 'slow'", name = "slowConsumerThreshold") long slowConsumerThreshold, + @Parameter(desc = "how often (in seconds) to check for slow consumers", name = "slowConsumerCheckPeriod") long slowConsumerCheckPeriod, + @Parameter(desc = "the policy to use when a slow consumer is detected", name = "slowConsumerPolicy") String slowConsumerPolicy, + @Parameter(desc = "allow jms queues to be created automatically", name = "autoCreateJmsQueues") boolean autoCreateJmsQueues, + @Parameter(desc = "allow auto-created jms queues to be deleted automatically", name = "autoDeleteJmsQueues") boolean autoDeleteJmsQueues, + @Parameter(desc = "allow jms topics to be created automatically", name = "autoCreateJmsTopics") boolean autoCreateJmsTopics, + @Parameter(desc = "allow auto-created jms topics to be deleted automatically", name = "autoDeleteJmsTopics") boolean autoDeleteJmsTopics, + @Parameter(desc = "allow queues to be created automatically", name = "autoCreateQueues") boolean autoCreateQueues, + @Parameter(desc = "allow auto-created queues to be deleted automatically", name = "autoDeleteQueues") boolean autoDeleteQueues, + @Parameter(desc = "allow topics to be created automatically", name = "autoCreateAddresses") boolean autoCreateAddresses, + @Parameter(desc = "allow auto-created topics to be deleted automatically", name = "autoDeleteAddresses") boolean autoDeleteAddresses) throws Exception; void removeAddressSettings(String addressMatch) throws Exception; http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-features/src/main/resources/artemis.xml ---------------------------------------------------------------------- diff --git a/artemis-features/src/main/resources/artemis.xml b/artemis-features/src/main/resources/artemis.xml index fc1cdcc..7a51dc2 100644 --- a/artemis-features/src/main/resources/artemis.xml +++ b/artemis-features/src/main/resources/artemis.xml @@ -80,6 +80,8 @@ under the License. <permission type="deleteNonDurableQueue" roles="manager"/> <permission type="createDurableQueue" roles="manager"/> <permission type="deleteDurableQueue" roles="manager"/> + <permission type="createAddress" roles="manager"/> + <permission type="deleteAddress" roles="manager"/> <permission type="consume" roles="manager"/> <permission type="send" roles="manager"/> <!-- we need this otherwise ./artemis data imp wouldn't work --> @@ -97,7 +99,7 @@ under the License. <max-size-bytes>-1</max-size-bytes> <message-counter-history-day-limit>10</message-counter-history-day-limit> <address-full-policy>PAGE</address-full-policy> - <auto-create-jms-queues>true</auto-create-jms-queues> + <auto-create-queues>true</auto-create-queues> </address-setting> </address-settings> </core> http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java ---------------------------------------------------------------------- diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java index 2517b10..08e65e2 100644 --- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java +++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/deployers/impl/FileConfigurationParser.java @@ -175,6 +175,14 @@ public final class FileConfigurationParser extends XMLConfigurationUtil { private static final String AUTO_DELETE_JMS_TOPICS = "auto-delete-jms-topics"; + private static final String AUTO_CREATE_QUEUES = "auto-create-queues"; + + private static final String AUTO_DELETE_QUEUES = "auto-delete-queues"; + + private static final String AUTO_CREATE_ADDRESSES = "auto-create-addresses"; + + private static final String AUTO_DELETE_ADDRESSES = "auto-delete-addresses"; + private static final String MANAGEMENT_BROWSE_PAGE_SIZE = "management-browse-page-size"; private static final String MAX_CONNECTIONS_NODE_NAME = "max-connections"; @@ -836,6 +844,14 @@ public final class FileConfigurationParser extends XMLConfigurationUtil { addressSettings.setAutoCreateJmsTopics(XMLUtil.parseBoolean(child)); } else if (AUTO_DELETE_JMS_TOPICS.equalsIgnoreCase(name)) { addressSettings.setAutoDeleteJmsTopics(XMLUtil.parseBoolean(child)); + } else if (AUTO_CREATE_QUEUES.equalsIgnoreCase(name)) { + addressSettings.setAutoCreateQueues(XMLUtil.parseBoolean(child)); + } else if (AUTO_DELETE_QUEUES.equalsIgnoreCase(name)) { + addressSettings.setAutoDeleteQueues(XMLUtil.parseBoolean(child)); + } else if (AUTO_CREATE_ADDRESSES.equalsIgnoreCase(name)) { + addressSettings.setAutoCreateAddresses(XMLUtil.parseBoolean(child)); + } else if (AUTO_DELETE_ADDRESSES.equalsIgnoreCase(name)) { + addressSettings.setAutoDeleteAddresses(XMLUtil.parseBoolean(child)); } else if (MANAGEMENT_BROWSE_PAGE_SIZE.equalsIgnoreCase(name)) { addressSettings.setManagementBrowsePageSize(XMLUtil.parseInt(child)); } http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java ---------------------------------------------------------------------- diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java index 0458fa4..e5ad233 100644 --- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java +++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java @@ -1696,7 +1696,31 @@ public class ActiveMQServerControlImpl extends AbstractControl implements Active if (addressSettings.getExpiryAddress() != null) { settings.add("expiryAddress", addressSettings.getExpiryAddress().toString()); } - return settings.add("expiryDelay", addressSettings.getExpiryDelay()).add("maxDeliveryAttempts", addressSettings.getMaxDeliveryAttempts()).add("pageCacheMaxSize", addressSettings.getPageCacheMaxSize()).add("maxSizeBytes", addressSettings.getMaxSizeBytes()).add("pageSizeBytes", addressSettings.getPageSizeBytes()).add("redeliveryDelay", addressSettings.getRedeliveryDelay()).add("redeliveryMultiplier", addressSettings.getRedeliveryMultiplier()).add("maxRedeliveryDelay", addressSettings.getMaxRedeliveryDelay()).add("redistributionDelay", addressSettings.getRedistributionDelay()).add("lastValueQueue", addressSettings.isLastValueQueue()).add("sendToDLAOnNoRoute", addressSettings.isSendToDLAOnNoRoute()).add("addressFullMessagePolicy", policy).add("slowConsumerThreshold", addressSettings.getSlowConsumerThreshold()).add("slowConsumerCheckPeriod", addressSettings.getSlowConsumerCheckPeriod()).add("slowConsumerPolicy", consumerPolicy).add("autoCreateJmsQueues", addressSettings.isAutoCreat eJmsQueues()).add("autoCreateJmsTopics", addressSettings.isAutoCreateJmsTopics()).add("autoDeleteJmsQueues", addressSettings.isAutoDeleteJmsQueues()).add("autoDeleteJmsTopics", addressSettings.isAutoDeleteJmsQueues()).build().toString(); + return settings.add("expiryDelay", addressSettings.getExpiryDelay()) + .add("maxDeliveryAttempts", addressSettings.getMaxDeliveryAttempts()) + .add("pageCacheMaxSize", addressSettings.getPageCacheMaxSize()) + .add("maxSizeBytes", addressSettings.getMaxSizeBytes()) + .add("pageSizeBytes", addressSettings.getPageSizeBytes()) + .add("redeliveryDelay", addressSettings.getRedeliveryDelay()) + .add("redeliveryMultiplier", addressSettings.getRedeliveryMultiplier()) + .add("maxRedeliveryDelay", addressSettings.getMaxRedeliveryDelay()) + .add("redistributionDelay", addressSettings.getRedistributionDelay()) + .add("lastValueQueue", addressSettings.isLastValueQueue()) + .add("sendToDLAOnNoRoute", addressSettings.isSendToDLAOnNoRoute()) + .add("addressFullMessagePolicy", policy) + .add("slowConsumerThreshold", addressSettings.getSlowConsumerThreshold()) + .add("slowConsumerCheckPeriod", addressSettings.getSlowConsumerCheckPeriod()) + .add("slowConsumerPolicy", consumerPolicy) + .add("autoCreateJmsQueues", addressSettings.isAutoCreateJmsQueues()) + .add("autoCreateJmsTopics", addressSettings.isAutoCreateJmsTopics()) + .add("autoDeleteJmsQueues", addressSettings.isAutoDeleteJmsQueues()) + .add("autoDeleteJmsTopics", addressSettings.isAutoDeleteJmsQueues()) + .add("autoCreateQueues", addressSettings.isAutoCreateQueues()) + .add("autoDeleteQueues", addressSettings.isAutoDeleteQueues()) + .add("autoCreateAddress", addressSettings.isAutoCreateAddresses()) + .add("autoDeleteAddress", addressSettings.isAutoDeleteAddresses()) + .build() + .toString(); } @Override @@ -1722,6 +1746,36 @@ public class ActiveMQServerControlImpl extends AbstractControl implements Active final boolean autoDeleteJmsQueues, final boolean autoCreateJmsTopics, final boolean autoDeleteJmsTopics) throws Exception { + addAddressSettings(address, DLA, expiryAddress, expiryDelay, lastValueQueue, deliveryAttempts, maxSizeBytes, pageSizeBytes, pageMaxCacheSize, redeliveryDelay, redeliveryMultiplier, maxRedeliveryDelay, redistributionDelay, sendToDLAOnNoRoute, addressFullMessagePolicy, slowConsumerThreshold, slowConsumerCheckPeriod, slowConsumerPolicy, autoCreateJmsQueues, autoDeleteJmsQueues, autoCreateJmsTopics, autoDeleteJmsTopics, AddressSettings.DEFAULT_AUTO_CREATE_QUEUES, AddressSettings.DEFAULT_AUTO_DELETE_QUEUES, AddressSettings.DEFAULT_AUTO_CREATE_ADDRESSES, AddressSettings.DEFAULT_AUTO_DELETE_ADDRESSES); + } + + @Override + public void addAddressSettings(final String address, + final String DLA, + final String expiryAddress, + final long expiryDelay, + final boolean lastValueQueue, + final int deliveryAttempts, + final long maxSizeBytes, + final int pageSizeBytes, + final int pageMaxCacheSize, + final long redeliveryDelay, + final double redeliveryMultiplier, + final long maxRedeliveryDelay, + final long redistributionDelay, + final boolean sendToDLAOnNoRoute, + final String addressFullMessagePolicy, + final long slowConsumerThreshold, + final long slowConsumerCheckPeriod, + final String slowConsumerPolicy, + final boolean autoCreateJmsQueues, + final boolean autoDeleteJmsQueues, + final boolean autoCreateJmsTopics, + final boolean autoDeleteJmsTopics, + final boolean autoCreateQueues, + final boolean autoDeleteQueues, + final boolean autoCreateAddresses, + final boolean autoDeleteAddresses) throws Exception { checkStarted(); // JBPAPP-6334 requested this to be pageSizeBytes > maxSizeBytes @@ -1769,6 +1823,12 @@ public class ActiveMQServerControlImpl extends AbstractControl implements Active } addressSettings.setAutoCreateJmsQueues(autoCreateJmsQueues); addressSettings.setAutoDeleteJmsQueues(autoDeleteJmsQueues); + addressSettings.setAutoCreateJmsTopics(autoCreateJmsTopics); + addressSettings.setAutoDeleteJmsTopics(autoDeleteJmsTopics); + addressSettings.setAutoCreateQueues(autoCreateJmsQueues); + addressSettings.setAutoDeleteQueues(autoDeleteJmsQueues); + addressSettings.setAutoCreateAddresses(autoCreateJmsTopics); + addressSettings.setAutoDeleteAddresses(autoDeleteJmsTopics); server.getAddressSettingsRepository().addMatch(address, addressSettings); storageManager.storeAddressSetting(new PersistedAddressSetting(new SimpleString(address), addressSettings)); http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java ---------------------------------------------------------------------- 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 e613ee6..a63ee9b 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 @@ -52,14 +52,26 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable public static final boolean DEFAULT_LAST_VALUE_QUEUE = false; + @Deprecated public static final boolean DEFAULT_AUTO_CREATE_JMS_QUEUES = true; + @Deprecated public static final boolean DEFAULT_AUTO_DELETE_JMS_QUEUES = true; + @Deprecated public static final boolean DEFAULT_AUTO_CREATE_TOPICS = true; + @Deprecated public static final boolean DEFAULT_AUTO_DELETE_TOPICS = true; + public static final boolean DEFAULT_AUTO_CREATE_QUEUES = true; + + public static final boolean DEFAULT_AUTO_DELETE_QUEUES = true; + + public static final boolean DEFAULT_AUTO_CREATE_ADDRESSES = true; + + public static final boolean DEFAULT_AUTO_DELETE_ADDRESSES = true; + public static final long DEFAULT_REDISTRIBUTION_DELAY = -1; public static final long DEFAULT_EXPIRY_DELAY = -1; @@ -125,6 +137,14 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable private Boolean autoDeleteJmsTopics = null; + private Boolean autoCreateQueues = null; + + private Boolean autoDeleteQueues = null; + + private Boolean autoCreateAddresses = null; + + private Boolean autoDeleteAddresses = null; + private Integer managementBrowsePageSize = AddressSettings.MANAGEMENT_BROWSE_PAGE_SIZE; private Long maxSizeBytesRejectThreshold = null; @@ -157,6 +177,10 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable this.autoDeleteJmsQueues = other.autoDeleteJmsQueues; this.autoCreateJmsTopics = other.autoCreateJmsTopics; this.autoDeleteJmsTopics = other.autoDeleteJmsTopics; + this.autoCreateQueues = other.autoCreateQueues; + this.autoDeleteQueues = other.autoDeleteQueues; + this.autoCreateAddresses = other.autoCreateAddresses; + this.autoDeleteAddresses = other.autoDeleteAddresses; this.managementBrowsePageSize = other.managementBrowsePageSize; this.queuePrefetch = other.queuePrefetch; this.maxSizeBytesRejectThreshold = other.maxSizeBytesRejectThreshold; @@ -165,42 +189,86 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable public AddressSettings() { } + @Deprecated public boolean isAutoCreateJmsQueues() { return autoCreateJmsQueues != null ? autoCreateJmsQueues : AddressSettings.DEFAULT_AUTO_CREATE_JMS_QUEUES; } + @Deprecated public AddressSettings setAutoCreateJmsQueues(final boolean autoCreateJmsQueues) { this.autoCreateJmsQueues = autoCreateJmsQueues; return this; } + @Deprecated public boolean isAutoDeleteJmsQueues() { return autoDeleteJmsQueues != null ? autoDeleteJmsQueues : AddressSettings.DEFAULT_AUTO_DELETE_JMS_QUEUES; } + @Deprecated public AddressSettings setAutoDeleteJmsQueues(final boolean autoDeleteJmsQueues) { this.autoDeleteJmsQueues = autoDeleteJmsQueues; return this; } + @Deprecated public boolean isAutoCreateJmsTopics() { return autoCreateJmsTopics != null ? autoCreateJmsTopics : AddressSettings.DEFAULT_AUTO_CREATE_TOPICS; } + @Deprecated public AddressSettings setAutoCreateJmsTopics(final boolean autoCreateJmsTopics) { this.autoCreateJmsTopics = autoCreateJmsTopics; return this; } + @Deprecated public boolean isAutoDeleteJmsTopics() { return autoDeleteJmsTopics != null ? autoDeleteJmsTopics : AddressSettings.DEFAULT_AUTO_DELETE_TOPICS; } + @Deprecated public AddressSettings setAutoDeleteJmsTopics(final boolean autoDeleteJmsTopics) { this.autoDeleteJmsTopics = autoDeleteJmsTopics; return this; } + public boolean isAutoCreateQueues() { + return autoCreateQueues != null ? autoCreateQueues : AddressSettings.DEFAULT_AUTO_CREATE_QUEUES; + } + + public AddressSettings setAutoCreateQueues(Boolean autoCreateQueues) { + this.autoCreateQueues = autoCreateQueues; + return this; + } + + public boolean isAutoDeleteQueues() { + return autoDeleteQueues != null ? autoDeleteQueues : AddressSettings.DEFAULT_AUTO_DELETE_QUEUES; + } + + public AddressSettings setAutoDeleteQueues(Boolean autoDeleteQueues) { + this.autoDeleteQueues = autoDeleteQueues; + return this; + } + + public boolean isAutoCreateAddresses() { + return autoCreateAddresses != null ? autoCreateAddresses : AddressSettings.DEFAULT_AUTO_CREATE_ADDRESSES; + } + + public AddressSettings setAutoCreateAddresses(Boolean autoCreateAddresses) { + this.autoCreateAddresses = autoCreateAddresses; + return this; + } + + public boolean isAutoDeleteAddresses() { + return autoDeleteAddresses != null ? autoDeleteAddresses : AddressSettings.DEFAULT_AUTO_DELETE_ADDRESSES; + } + + public AddressSettings setAutoDeleteAddresses(Boolean autoDeleteAddresses) { + this.autoDeleteAddresses = autoDeleteAddresses; + return this; + } + public boolean isLastValueQueue() { return lastValueQueue != null ? lastValueQueue : AddressSettings.DEFAULT_LAST_VALUE_QUEUE; } @@ -459,12 +527,24 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable if (autoDeleteJmsQueues == null) { autoDeleteJmsQueues = merged.autoDeleteJmsQueues; } -// if (autoCreateJmsTopics == null) { -// autoCreateJmsTopics = merged.autoCreateJmsTopics; -// } + if (autoCreateJmsTopics == null) { + autoCreateJmsTopics = merged.autoCreateJmsTopics; + } if (autoDeleteJmsTopics == null) { autoDeleteJmsTopics = merged.autoDeleteJmsTopics; } + if (autoCreateQueues == null) { + autoCreateQueues = merged.autoCreateQueues; + } + if (autoDeleteQueues == null) { + autoDeleteQueues = merged.autoDeleteQueues; + } + if (autoCreateAddresses == null) { + autoCreateAddresses = merged.autoCreateAddresses; + } + if (autoDeleteAddresses == null) { + autoDeleteAddresses = merged.autoDeleteAddresses; + } if (managementBrowsePageSize == null) { managementBrowsePageSize = merged.managementBrowsePageSize; } @@ -532,10 +612,18 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable autoDeleteJmsQueues = BufferHelper.readNullableBoolean(buffer); -// autoCreateJmsTopics = BufferHelper.readNullableBoolean(buffer); + autoCreateJmsTopics = BufferHelper.readNullableBoolean(buffer); autoDeleteJmsTopics = BufferHelper.readNullableBoolean(buffer); + autoCreateQueues = BufferHelper.readNullableBoolean(buffer); + + autoDeleteQueues = BufferHelper.readNullableBoolean(buffer); + + autoCreateAddresses = BufferHelper.readNullableBoolean(buffer); + + autoDeleteAddresses = BufferHelper.readNullableBoolean(buffer); + managementBrowsePageSize = BufferHelper.readNullableInteger(buffer); maxSizeBytesRejectThreshold = BufferHelper.readNullableLong(buffer); @@ -565,8 +653,12 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable BufferHelper.sizeOfNullableSimpleString(slowConsumerPolicy != null ? slowConsumerPolicy.toString() : null) + BufferHelper.sizeOfNullableBoolean(autoCreateJmsQueues) + BufferHelper.sizeOfNullableBoolean(autoDeleteJmsQueues) + -// BufferHelper.sizeOfNullableBoolean(autoCreateJmsTopics) + + BufferHelper.sizeOfNullableBoolean(autoCreateJmsTopics) + BufferHelper.sizeOfNullableBoolean(autoDeleteJmsTopics) + + BufferHelper.sizeOfNullableBoolean(autoCreateQueues) + + BufferHelper.sizeOfNullableBoolean(autoDeleteQueues) + + BufferHelper.sizeOfNullableBoolean(autoCreateAddresses) + + BufferHelper.sizeOfNullableBoolean(autoDeleteAddresses) + BufferHelper.sizeOfNullableInteger(managementBrowsePageSize) + BufferHelper.sizeOfNullableLong(maxSizeBytesRejectThreshold); } @@ -615,10 +707,18 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable BufferHelper.writeNullableBoolean(buffer, autoDeleteJmsQueues); -// BufferHelper.writeNullableBoolean(buffer, autoCreateJmsTopics); + BufferHelper.writeNullableBoolean(buffer, autoCreateJmsTopics); BufferHelper.writeNullableBoolean(buffer, autoDeleteJmsTopics); + BufferHelper.writeNullableBoolean(buffer, autoCreateQueues); + + BufferHelper.writeNullableBoolean(buffer, autoDeleteQueues); + + BufferHelper.writeNullableBoolean(buffer, autoCreateAddresses); + + BufferHelper.writeNullableBoolean(buffer, autoDeleteAddresses); + BufferHelper.writeNullableInteger(buffer, managementBrowsePageSize); BufferHelper.writeNullableLong(buffer, maxSizeBytesRejectThreshold); @@ -652,8 +752,12 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable result = prime * result + ((slowConsumerPolicy == null) ? 0 : slowConsumerPolicy.hashCode()); result = prime * result + ((autoCreateJmsQueues == null) ? 0 : autoCreateJmsQueues.hashCode()); result = prime * result + ((autoDeleteJmsQueues == null) ? 0 : autoDeleteJmsQueues.hashCode()); -// result = prime * result + ((autoCreateJmsTopics == null) ? 0 : autoCreateJmsTopics.hashCode()); + result = prime * result + ((autoCreateJmsTopics == null) ? 0 : autoCreateJmsTopics.hashCode()); result = prime * result + ((autoDeleteJmsTopics == null) ? 0 : autoDeleteJmsTopics.hashCode()); + result = prime * result + ((autoCreateQueues == null) ? 0 : autoCreateQueues.hashCode()); + result = prime * result + ((autoDeleteQueues == null) ? 0 : autoDeleteQueues.hashCode()); + result = prime * result + ((autoCreateAddresses == null) ? 0 : autoCreateAddresses.hashCode()); + result = prime * result + ((autoDeleteAddresses == null) ? 0 : autoDeleteAddresses.hashCode()); result = prime * result + ((managementBrowsePageSize == null) ? 0 : managementBrowsePageSize.hashCode()); result = prime * result + ((queuePrefetch == null) ? 0 : queuePrefetch.hashCode()); result = prime * result + ((maxSizeBytesRejectThreshold == null) ? 0 : queuePrefetch.hashCode()); @@ -777,18 +881,36 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable return false; } else if (!autoDeleteJmsQueues.equals(other.autoDeleteJmsQueues)) return false; - -// if (autoCreateJmsTopics == null) { -// if (other.autoCreateJmsTopics != null) -// return false; -// } else if (!autoCreateJmsTopics.equals(other.autoCreateJmsTopics)) -// return false; + if (autoCreateJmsTopics == null) { + if (other.autoCreateJmsTopics != null) + return false; + } else if (!autoCreateJmsTopics.equals(other.autoCreateJmsTopics)) + return false; if (autoDeleteJmsTopics == null) { if (other.autoDeleteJmsTopics != null) return false; } else if (!autoDeleteJmsTopics.equals(other.autoDeleteJmsTopics)) return false; - + if (autoCreateQueues == null) { + if (other.autoCreateQueues != null) + return false; + } else if (!autoCreateQueues.equals(other.autoCreateQueues)) + return false; + if (autoDeleteQueues == null) { + if (other.autoDeleteQueues != null) + return false; + } else if (!autoDeleteQueues.equals(other.autoDeleteQueues)) + return false; + if (autoCreateAddresses == null) { + if (other.autoCreateAddresses != null) + return false; + } else if (!autoCreateAddresses.equals(other.autoCreateAddresses)) + return false; + if (autoDeleteAddresses == null) { + if (other.autoDeleteAddresses != null) + return false; + } else if (!autoDeleteAddresses.equals(other.autoDeleteAddresses)) + return false; if (managementBrowsePageSize == null) { if (other.managementBrowsePageSize != null) return false; @@ -854,11 +976,20 @@ public class AddressSettings implements Mergeable<AddressSettings>, Serializable slowConsumerPolicy + ", autoCreateJmsQueues=" + autoCreateJmsQueues + - ", autoDeleteJmsQueues=" + autoDeleteJmsQueues + + ", autoDeleteJmsQueues=" + + autoDeleteJmsQueues + ", autoCreateJmsTopics=" + -// autoCreateJmsTopics + -// ", autoDeleteJmsTopics=" + + autoCreateJmsTopics + + ", autoDeleteJmsTopics=" + autoDeleteJmsTopics + + ", autoCreateQueues=" + + autoCreateQueues + + ", autoDeleteQueues=" + + autoDeleteQueues + + ", autoCreateAddresses=" + + autoCreateAddresses + + ", autoDeleteAddresses=" + + autoDeleteAddresses + ", managementBrowsePageSize=" + managementBrowsePageSize + "]"; http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/main/resources/schema/artemis-configuration.xsd ---------------------------------------------------------------------- diff --git a/artemis-server/src/main/resources/schema/artemis-configuration.xsd b/artemis-server/src/main/resources/schema/artemis-configuration.xsd index b40c92c..bfb0054 100644 --- a/artemis-server/src/main/resources/schema/artemis-configuration.xsd +++ b/artemis-server/src/main/resources/schema/artemis-configuration.xsd @@ -2399,7 +2399,7 @@ <xsd:element name="auto-create-jms-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> <xsd:annotation> <xsd:documentation> - whether or not to automatically create JMS queues when a producer sends or a consumer connects to a + DEPRECATED: whether or not to automatically create JMS queues when a producer sends or a consumer connects to a queue </xsd:documentation> </xsd:annotation> @@ -2408,7 +2408,7 @@ <xsd:element name="auto-delete-jms-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> <xsd:annotation> <xsd:documentation> - whether or not to delete auto-created JMS queues when the queue has 0 consumers and 0 messages + DEPRECATED: whether or not to delete auto-created JMS queues when the queue has 0 consumers and 0 messages </xsd:documentation> </xsd:annotation> </xsd:element> @@ -2416,7 +2416,7 @@ <xsd:element name="auto-create-jms-topics" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> <xsd:annotation> <xsd:documentation> - whether or not to automatically create JMS topics when a producer sends or a consumer subscribes to + DEPRECATED: whether or not to automatically create JMS topics when a producer sends or a consumer subscribes to a topic </xsd:documentation> </xsd:annotation> @@ -2425,7 +2425,42 @@ <xsd:element name="auto-delete-jms-topics" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> <xsd:annotation> <xsd:documentation> - whether or not to delete auto-created JMS topics when the last subscription is closed + DEPRECATED: whether or not to delete auto-created JMS topics when the last subscription is closed + </xsd:documentation> + </xsd:annotation> + </xsd:element> + + <xsd:element name="auto-create-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> + <xsd:annotation> + <xsd:documentation> + whether or not to automatically create a queue when a client sends a message to or attempts to consume + a message from a queue + </xsd:documentation> + </xsd:annotation> + </xsd:element> + + <xsd:element name="auto-delete-queues" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> + <xsd:annotation> + <xsd:documentation> + whether or not to delete auto-created queues when the queue has 0 consumers and 0 messages + </xsd:documentation> + </xsd:annotation> + </xsd:element> + + <xsd:element name="auto-create-addresses" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> + <xsd:annotation> + <xsd:documentation> + whether or not to automatically create addresses when a client sends a message to or attempts to + consume a message from a queue mapped to an address that doesn't exist + a queue + </xsd:documentation> + </xsd:annotation> + </xsd:element> + + <xsd:element name="auto-delete-addresses" type="xsd:boolean" default="true" maxOccurs="1" minOccurs="0"> + <xsd:annotation> + <xsd:documentation> + whether or not to delete auto-created addresses when it no longer has any queues </xsd:documentation> </xsd:annotation> </xsd:element> http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/test/java/org/apache/activemq/artemis/core/settings/AddressSettingsTest.java ---------------------------------------------------------------------- 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 4041a16..6a6ec55 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 @@ -41,8 +41,12 @@ public class AddressSettingsTest extends ActiveMQTestBase { Assert.assertEquals(AddressSettings.DEFAULT_SLOW_CONSUMER_POLICY, addressSettings.getSlowConsumerPolicy()); Assert.assertEquals(AddressSettings.DEFAULT_AUTO_CREATE_JMS_QUEUES, addressSettings.isAutoCreateJmsQueues()); Assert.assertEquals(AddressSettings.DEFAULT_AUTO_DELETE_JMS_QUEUES, addressSettings.isAutoDeleteJmsQueues()); -// Assert.assertEquals(AddressSettings.DEFAULT_AUTO_CREATE_TOPICS, addressSettings.isAutoCreateJmsTopics()); -// Assert.assertEquals(AddressSettings.DEFAULT_AUTO_DELETE_TOPICS, addressSettings.isAutoDeleteJmsTopics()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_CREATE_TOPICS, addressSettings.isAutoCreateJmsTopics()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_DELETE_TOPICS, addressSettings.isAutoDeleteJmsTopics()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_CREATE_QUEUES, addressSettings.isAutoCreateQueues()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_DELETE_QUEUES, addressSettings.isAutoDeleteQueues()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_CREATE_ADDRESSES, addressSettings.isAutoCreateAddresses()); + Assert.assertEquals(AddressSettings.DEFAULT_AUTO_DELETE_ADDRESSES, addressSettings.isAutoDeleteAddresses()); } @Test http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/artemis-server/src/test/resources/ConfigurationTest-full-config.xml ---------------------------------------------------------------------- diff --git a/artemis-server/src/test/resources/ConfigurationTest-full-config.xml b/artemis-server/src/test/resources/ConfigurationTest-full-config.xml index 87dbd90..f0eaa36 100644 --- a/artemis-server/src/test/resources/ConfigurationTest-full-config.xml +++ b/artemis-server/src/test/resources/ConfigurationTest-full-config.xml @@ -261,6 +261,10 @@ <auto-delete-jms-queues>true</auto-delete-jms-queues> <auto-create-jms-topics>true</auto-create-jms-topics> <auto-delete-jms-topics>true</auto-delete-jms-topics> + <auto-create-queues>true</auto-create-queues> + <auto-delete-queues>true</auto-delete-queues> + <auto-create-addresses>true</auto-create-addresses> + <auto-delete-addresses>true</auto-delete-addresses> </address-setting> <address-setting match="a2"> <dead-letter-address>a2.1</dead-letter-address> @@ -277,6 +281,10 @@ <auto-delete-jms-queues>false</auto-delete-jms-queues> <auto-create-jms-topics>false</auto-create-jms-topics> <auto-delete-jms-topics>false</auto-delete-jms-topics> + <auto-create-queues>false</auto-create-queues> + <auto-delete-queues>false</auto-delete-queues> + <auto-create-addresses>false</auto-create-addresses> + <auto-delete-addresses>false</auto-delete-addresses> </address-setting> </address-settings> <resource-limit-settings> http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/docs/user-manual/en/queue-attributes.md ---------------------------------------------------------------------- diff --git a/docs/user-manual/en/queue-attributes.md b/docs/user-manual/en/queue-attributes.md index 22184aa..7a8fe78 100644 --- a/docs/user-manual/en/queue-attributes.md +++ b/docs/user-manual/en/queue-attributes.md @@ -88,6 +88,10 @@ entry that would be found in the `broker.xml` file. <slow-consumer-threshold>-1</slow-consumer-threshold> <slow-consumer-policy>NOTIFY</slow-consumer-policy> <slow-consumer-check-period>5</slow-consumer-check-period> + <auto-create-jms-queues>true</auto-create-jms-queues> <!-- DEPRECATED see auto-create-queues> + <auto-delete-jms-queues>true</auto-delete-jms-queues> <!-- DEPRECATED see auto-delete-queues> + <auto-create-jms-topics>true</auto-create-jms-topics> <!-- DEPRECATED see auto-create-addresses> + <auto-delete-jms-topics>true</auto-delete-jms-topics> <!-- DEPRECATED see auto-delete-addresses> <auto-create-jms-queues>true</auto-create-jms-queues> <auto-delete-jms-queues>true</auto-delete-jms-queues> <auto-create-jms-topics>true</auto-create-jms-topics> @@ -179,18 +183,38 @@ create a JMS queue when a JMS message is sent to a queue whose name fits the address `match` (remember, a JMS queue is just a core queue which has the same address and queue name) or a JMS consumer tries to connect to a queue whose name fits the address `match`. Queues which are auto-created -are durable, non-temporary, and non-transient. Default is `true`. +are durable, non-temporary, and non-transient. Default is `true`. This is +_DEPRECATED_. See `auto-create-queues`. `auto-delete-jms-queues`. Whether or not the broker should automatically delete auto-created JMS queues when they have both 0 consumers and 0 messages. -Default is `true`. +Default is `true`. This is _DEPRECATED_. See `auto-delete-queues`. `auto-create-jms-topics`. Whether or not the broker should automatically create a JMS topic when a JMS message is sent to a topic whose name fits the address `match` (remember, a JMS topic is just a core address which has one or more core queues mapped to it) or a JMS consumer tries to subscribe -to a topic whose name fits the address `match`. Default is `true`. +to a topic whose name fits the address `match`. Default is `true`. This is +_DEPRECATED_. See `auto-create-addresses`. `auto-delete-jms-topics`. Whether or not the broker should automatically delete auto-created JMS topics once the last subscription on the topic has -been closed. Default is `true`. +been closed. Default is `true`. This is _DEPRECATED_. See `auto-delete-addresses`. + +`auto-create-queues`. Whether or not the broker should automatically +create a queue when a message is sent or a consumer tries to connect to a +queue whose name fits the address `match`. Queues which are auto-created +are durable, non-temporary, and non-transient. Default is `true`. + +`auto-delete-queues`. Whether or not the broker should automatically +delete auto-created queues when they have both 0 consumers and 0 messages. +Default is `true`. + +`auto-create-addresses`. Whether or not the broker should automatically +create an address when a message is sent to or a consumer tries to consume +from a queue which is mapped to an address whose name fits the address `match`. +Default is `true`. + +`auto-delete-addresses`. Whether or not the broker should automatically +delete auto-created addresses once the address no longer has any queues. +Default is `true`. http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlUsingCoreTest.java ---------------------------------------------------------------------- diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlUsingCoreTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlUsingCoreTest.java index cb2d9b0..931089c 100644 --- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlUsingCoreTest.java +++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlUsingCoreTest.java @@ -16,12 +16,13 @@ */ package org.apache.activemq.artemis.tests.integration.management; +import java.util.Map; + import org.apache.activemq.artemis.api.core.ActiveMQAddressDoesNotExistException; import org.apache.activemq.artemis.api.core.management.ActiveMQServerControl; import org.apache.activemq.artemis.api.core.management.Parameter; import org.apache.activemq.artemis.api.core.management.ResourceNames; - -import java.util.Map; +import org.apache.activemq.artemis.core.settings.impl.AddressSettings; public class ActiveMQServerControlUsingCoreTest extends ActiveMQServerControlTest { @@ -650,7 +651,37 @@ public class ActiveMQServerControlUsingCoreTest extends ActiveMQServerControlTes @Parameter(desc = "allow auto-created queues to be deleted automatically", name = "autoDeleteJmsQueues") boolean autoDeleteJmsQueues, @Parameter(desc = "allow topics to be created automatically", name = "autoCreateJmsTopics") boolean autoCreateJmsTopics, @Parameter(desc = "allow auto-created topics to be deleted automatically", name = "autoDeleteJmsTopics") boolean autoDeleteJmsTopics) throws Exception { - proxy.invokeOperation("addAddressSettings", addressMatch, DLA, expiryAddress, expiryDelay, lastValueQueue, deliveryAttempts, maxSizeBytes, pageSizeBytes, pageMaxCacheSize, redeliveryDelay, redeliveryMultiplier, maxRedeliveryDelay, redistributionDelay, sendToDLAOnNoRoute, addressFullMessagePolicy, slowConsumerThreshold, slowConsumerCheckPeriod, slowConsumerPolicy, autoCreateJmsQueues, autoDeleteJmsQueues, autoCreateJmsTopics, autoDeleteJmsTopics); + addAddressSettings(addressMatch, DLA, expiryAddress, expiryDelay, lastValueQueue, deliveryAttempts, maxSizeBytes, pageSizeBytes, pageMaxCacheSize, redeliveryDelay, redeliveryMultiplier, maxRedeliveryDelay, redistributionDelay, sendToDLAOnNoRoute, addressFullMessagePolicy, slowConsumerThreshold, slowConsumerCheckPeriod, slowConsumerPolicy, autoCreateJmsQueues, autoDeleteJmsQueues, autoCreateJmsTopics, autoDeleteJmsTopics, AddressSettings.DEFAULT_AUTO_CREATE_QUEUES, AddressSettings.DEFAULT_AUTO_DELETE_QUEUES, AddressSettings.DEFAULT_AUTO_CREATE_ADDRESSES, AddressSettings.DEFAULT_AUTO_DELETE_ADDRESSES); + } + + @Override + public void addAddressSettings(@Parameter(desc = "an address match", name = "addressMatch") String addressMatch, + @Parameter(desc = "the dead letter address setting", name = "DLA") String DLA, + @Parameter(desc = "the expiry address setting", name = "expiryAddress") String expiryAddress, + @Parameter(desc = "the expiry delay setting", name = "expiryDelay") long expiryDelay, + @Parameter(desc = "are any queues created for this address a last value queue", name = "lastValueQueue") boolean lastValueQueue, + @Parameter(desc = "the delivery attempts", name = "deliveryAttempts") int deliveryAttempts, + @Parameter(desc = "the max size in bytes", name = "maxSizeBytes") long maxSizeBytes, + @Parameter(desc = "the page size in bytes", name = "pageSizeBytes") int pageSizeBytes, + @Parameter(desc = "the max number of pages in the soft memory cache", name = "pageMaxCacheSize") int pageMaxCacheSize, + @Parameter(desc = "the redelivery delay", name = "redeliveryDelay") long redeliveryDelay, + @Parameter(desc = "the redelivery delay multiplier", name = "redeliveryMultiplier") double redeliveryMultiplier, + @Parameter(desc = "the maximum redelivery delay", name = "maxRedeliveryDelay") long maxRedeliveryDelay, + @Parameter(desc = "the redistribution delay", name = "redistributionDelay") long redistributionDelay, + @Parameter(desc = "do we send to the DLA when there is no where to route the message", name = "sendToDLAOnNoRoute") boolean sendToDLAOnNoRoute, + @Parameter(desc = "the policy to use when the address is full", name = "addressFullMessagePolicy") String addressFullMessagePolicy, + @Parameter(desc = "when a consumer falls below this threshold in terms of messages consumed per second it will be considered 'slow'", name = "slowConsumerThreshold") long slowConsumerThreshold, + @Parameter(desc = "how often (in seconds) to check for slow consumers", name = "slowConsumerCheckPeriod") long slowConsumerCheckPeriod, + @Parameter(desc = "the policy to use when a slow consumer is detected", name = "slowConsumerPolicy") String slowConsumerPolicy, + @Parameter(desc = "allow jms queues to be created automatically", name = "autoCreateJmsQueues") boolean autoCreateJmsQueues, + @Parameter(desc = "allow auto-created jms queues to be deleted automatically", name = "autoDeleteJmsQueues") boolean autoDeleteJmsQueues, + @Parameter(desc = "allow jms topics to be created automatically", name = "autoCreateJmsTopics") boolean autoCreateJmsTopics, + @Parameter(desc = "allow auto-created jms topics to be deleted automatically", name = "autoDeleteJmsTopics") boolean autoDeleteJmsTopics, + @Parameter(desc = "allow queues to be created automatically", name = "autoCreateQueues") boolean autoCreateQueues, + @Parameter(desc = "allow auto-created queues to be deleted automatically", name = "autoDeleteQueues") boolean autoDeleteQueues, + @Parameter(desc = "allow topics to be created automatically", name = "autoCreateAddresses") boolean autoCreateAddresses, + @Parameter(desc = "allow auto-created topics to be deleted automatically", name = "autoDeleteAddresses") boolean autoDeleteAddresses) throws Exception { + proxy.invokeOperation("addAddressSettings", addressMatch, DLA, expiryAddress, expiryDelay, lastValueQueue, deliveryAttempts, maxSizeBytes, pageSizeBytes, pageMaxCacheSize, redeliveryDelay, redeliveryMultiplier, maxRedeliveryDelay, redistributionDelay, sendToDLAOnNoRoute, addressFullMessagePolicy, slowConsumerThreshold, slowConsumerCheckPeriod, slowConsumerPolicy, autoCreateJmsQueues, autoDeleteJmsQueues, autoCreateJmsTopics, autoDeleteJmsTopics, autoCreateQueues, autoDeleteQueues, autoCreateAddresses, autoDeleteAddresses); } @Override http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/tests/integration-tests/src/test/resources/reload-test-jms.xml ---------------------------------------------------------------------- diff --git a/tests/integration-tests/src/test/resources/reload-test-jms.xml b/tests/integration-tests/src/test/resources/reload-test-jms.xml index e914942..5ff7184 100644 --- a/tests/integration-tests/src/test/resources/reload-test-jms.xml +++ b/tests/integration-tests/src/test/resources/reload-test-jms.xml @@ -99,7 +99,7 @@ under the License. <address-settings> <!--default for catch all--> <address-setting match="#"> - <auto-create-jms-queues>false</auto-create-jms-queues> + <auto-create-queues>false</auto-create-queues> <dead-letter-address>DLQ</dead-letter-address> <expiry-address>ExpiryQueue</expiry-address> <redelivery-delay>0</redelivery-delay> http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/aefdc671/tests/integration-tests/src/test/resources/reload-test-updated-jms.xml ---------------------------------------------------------------------- diff --git a/tests/integration-tests/src/test/resources/reload-test-updated-jms.xml b/tests/integration-tests/src/test/resources/reload-test-updated-jms.xml index 5195fed..1a67013 100644 --- a/tests/integration-tests/src/test/resources/reload-test-updated-jms.xml +++ b/tests/integration-tests/src/test/resources/reload-test-updated-jms.xml @@ -109,7 +109,7 @@ under the License. <address-settings> <!--default for catch all--> <address-setting match="#"> - <auto-create-jms-queues>false</auto-create-jms-queues> + <auto-create-queues>false</auto-create-queues> <dead-letter-address>NewQueue</dead-letter-address> <expiry-address>NewQueue</expiry-address> <redelivery-delay>0</redelivery-delay>
