(activemq-artemis-console) branch main updated: ARTEMIS-4680 - Upgrade the console to use HawtIO 4

2024-05-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git


The following commit(s) were added to refs/heads/main by this push:
 new b788f5b  ARTEMIS-4680 - Upgrade the console to use HawtIO 4
b788f5b is described below

commit b788f5b65fa07f49ccf322cb6293edc38b28cc98
Author: Andy Taylor 
AuthorDate: Wed May 29 10:20:21 2024 +0100

ARTEMIS-4680 - Upgrade the console to use HawtIO 4

Tidy up the license files
---
 LICENSE| 154 +
 .../.yarn/releases/LICENSE-yarn.txt| 143 +++
 2 files changed, 150 insertions(+), 147 deletions(-)

diff --git a/LICENSE b/LICENSE
index 30e4551..34638d2 100644
--- a/LICENSE
+++ b/LICENSE
@@ -201,150 +201,10 @@
See the License for the specific language governing permissions and
limitations under the License.
 
-
-= For The Node cjs file for yarn under 
artemis-extension/.yarn/releases/yarn-.cjs =
-
-
-*
- * Copyright (c) 2014-present, Jon Schlinkert.
- * Licensed under the MIT License.
- */
-/*!
- * is-extglob <https://github.com/jonschlinkert/is-extglob>
- *
- * Copyright (c) 2014-2016, Jon Schlinkert.
- * Licensed under the MIT License.
- */
-/*!
- * is-glob <https://github.com/jonschlinkert/is-glob>
- *
- * Copyright (c) 2014-2017, Jon Schlinkert.
- * Released under the MIT License.
- */
-/*!
- * is-number <https://github.com/jonschlinkert/is-number>
- *
- * Copyright (c) 2014-present, Jon Schlinkert.
- * Released under the MIT License.
- */
-/*!
- * is-windows <https://github.com/jonschlinkert/is-windows>
- *
- * Copyright © 2015-2018, Jon Schlinkert.
- * Released under the MIT License.
- */
-/*!
- * to-regex-range <https://github.com/micromatch/to-regex-range>
- *
- * Copyright (c) 2015-present, Jon Schlinkert.
- * Released under the MIT License.
- */
-/**
-  @license
-  Copyright (c) 2015, Rebecca Turner
-
-  Permission to use, copy, modify, and/or distribute this software for any
-  purpose with or without fee is hereby granted, provided that the above
-  copyright notice and this permission notice appear in all copies.
-
-  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
-  REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 
AND
-  FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
-  INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
-  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-  PERFORMANCE OF THIS SOFTWARE.
- */
-/**
-  @license
-  Copyright Joyent, Inc. and other Node contributors.
-
-  Permission is hereby granted, free of charge, to any person obtaining a
-  copy of this software and associated documentation files (the
-  "Software"), to deal in the Software without restriction, including
-  without limitation the rights to use, copy, modify, merge, publish,
-  distribute, sublicense, and/or sell copies of the Software, and to permit
-  persons to whom the Software is furnished to do so, subject to the
-  following conditions:
-
-  The above copyright notice and this permission notice shall be included
-  in all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-  OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-  NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-  DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-  OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-  USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-/**
-  @license
-  Copyright Node.js contributors. All rights reserved.
-
-  Permission is hereby granted, free of charge, to any person obtaining a copy
-  of this software and associated documentation files (the "Software"), to
-  deal in the Software without restriction, including without limitation the
-  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-  sell copies of the Software, and to permit persons to whom the Software is
-  furnished to do so, subject to the following conditions:
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNES

(activemq-artemis) branch main updated: NO-JIRA Fix random test failures if flow is omitted

2024-05-28 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 f4d9cfdca8 NO-JIRA Fix random test failures if flow is omitted
f4d9cfdca8 is described below

commit f4d9cfdca8fce27efac9242d80864a91fe815335
Author: Timothy Bish 
AuthorDate: Tue May 28 10:44:00 2024 -0400

NO-JIRA Fix random test failures if flow is omitted

If the remote detach arrives fast enough it can suppress the flow from
being sent by the broker so the test should mark that as an optional frame.
---
 .../tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java | 2 +-
 .../tests/integration/amqp/connect/AMQPFederationQueuePolicyTest.java   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
index 4f9dfe18f1..6e82e370b9 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
@@ -3155,7 +3155,7 @@ public class AMQPFederationAddressPolicyTest extends 
AmqpClientTestSupport {
  peer.remoteDetach().withClosed(true)
 
.withErrorCondition(AmqpError.NOT_FOUND.toString(), "Address not found")
 .queue();
- peer.expectFlow();
+ peer.expectFlow().optional();
  peer.expectDetach();
 
  server.createQueue(new 
QueueConfiguration("test").setRoutingType(RoutingType.MULTICAST)
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationQueuePolicyTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationQueuePolicyTest.java
index 4cb32f385d..f32e032c4a 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationQueuePolicyTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationQueuePolicyTest.java
@@ -3394,7 +3394,7 @@ public class AMQPFederationQueuePolicyTest extends 
AmqpClientTestSupport {
  peer.remoteDetach().withClosed(true)
 
.withErrorCondition(AmqpError.NOT_FOUND.toString(), "Queue not found")
 .queue();
- peer.expectFlow();
+ peer.expectFlow().optional();
  peer.expectDetach();
 
  final ConnectionFactory factory = 
CFUtil.createConnectionFactory("AMQP", "tcp://localhost:" + AMQP_PORT);


-
To unsubscribe, e-mail: commits-unsubscr...@activemq.apache.org
For additional commands, e-mail: commits-h...@activemq.apache.org
For further information, visit: https://activemq.apache.org/contact




(activemq-artemis) branch main updated: ARTEMIS-4771 AMQP Large Message Writer no-op staged write if already closed

2024-05-23 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 3244965155 ARTEMIS-4771 AMQP Large Message Writer no-op staged write 
if already closed
3244965155 is described below

commit 3244965155406f6b1904f9ba0e73d0ced4eda298
Author: Timothy Bish 
AuthorDate: Thu May 23 11:01:47 2024 -0400

ARTEMIS-4771 AMQP Large Message Writer no-op staged write if already closed

If the writer is closed while flow controlled write attempts are pending in 
the
connection executor an NPE is thrown which should be avoided as the closed 
state
should trigger the writes to stop. Add fix and test that checks that this 
works
as it should.
---
 .../amqp/proton/AMQPLargeMessageWriter.java|   5 +
 .../amqp/proton/AMQPLargeMessageWriterTest.java| 255 +
 2 files changed, 260 insertions(+)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java
index b2cffb483b..1425476408 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java
@@ -170,6 +170,11 @@ public class AMQPLargeMessageWriter implements 
MessageWriter {
}
 
private void tryDelivering() {
+  if (closed) {
+ logger.trace("AMQP Large Message Writer was closed before queued 
write attempt was executed");
+ return;
+  }
+
   // This is discounting some bytes due to Transfer payload
   final int frameSize = 
protonSender.getSession().getConnection().getTransport().getOutboundFrameSizeLimit()
 - 50 - (delivery.getTag() != null ? delivery.getTag().length : 0);
 
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/test/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriterTest.java
 
b/artemis-protocols/artemis-amqp-protocol/src/test/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriterTest.java
new file mode 100644
index 00..2122fd3200
--- /dev/null
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/test/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriterTest.java
@@ -0,0 +1,255 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.protocol.amqp.proton;
+
+import static org.junit.Assert.fail;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoInteractions;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
+import static org.mockito.Mockito.when;
+
+import org.apache.activemq.artemis.core.message.LargeBodyReader;
+import 
org.apache.activemq.artemis.core.persistence.impl.nullpm.NullStorageManager;
+import org.apache.activemq.artemis.core.server.MessageReference;
+import org.apache.activemq.artemis.protocol.amqp.broker.AMQPLargeMessage;
+import org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback;
+import 
org.apache.activemq.artemis.protocol.amqp.broker.ActiveMQProtonRemotingConnection;
+import org.apache.activemq.artemis.spi.core.remoting.ReadyListener;
+import org.apache.qpid.proton.engine.Connection;
+import org.apache.qpid.proton.engine.Delivery;
+import org.apache.qpid.proton.engine.EndpointState;
+import org.apache.qpid.proton.engine.Sender;
+import org.apache.qpid.proton.engine.Session;
+import org.apache.qpid.proton.engine.impl.TransportImpl;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnota

(activemq-artemis) branch main updated (3c058e98f1 -> f64d918406)

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


from 3c058e98f1 ARTEMIS-3622 MQTT can deadlock on client cxn/discxn
 new 98e1389a6e ARTEMIS-4778: clean up configuration test heirarchy, remove 
hundreds of duplicate tests, isolate parameterized tests
 new 3e20687cf3 ARTEMIS-4778: replace various assertEquals checks with more 
apropriate assertTrue / assertFalse / assertNull
 new 243ea9aa01 ARTEMIS-4778: remove spawn check rule, not needed as the 
tests dont spawn
 new 3c84f26413 ARTEMIS-4778: split two Nested test classes (one 
parameterized, other not) into their own class files
 new 7849e2dcbf ARTEMIS-4778: extract base class and classes from 
parameterized test with subclass that skips to de-parameterize itself
 new f64d918406 ARTEMIS-4778: rework tests manipulating Xxe config so it is 
reset after class, and not updated at all for skipped tests

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../activemq/artemis/utils/XmlProviderTest.java|  41 +-
 .../config/impl/AbstractConfigurationTestBase.java | 490 +
 .../core/config/impl/ConfigurationImplTest.java| 473 +---
 .../config/impl/DefaultsFileConfigurationTest.java |  24 +-
 ...ConfigurationBrokerConnectionEncryptedTest.java |  34 +-
 .../impl/FileConfigurationDbEncryptedPassTest.java |  37 +-
 .../impl/FileConfigurationSecurityPluginTest.java  |  37 +-
 .../core/config/impl/FileConfigurationTest.java| 102 -
 .../config/impl/FileXIncludeConfigurationTest.java |  28 +-
 .../impl/FileXIncludeSchemaConfigurationTest.java  |  34 +-
 .../activemq/ActiveMQXAConnectionFactoryTest.java  |   2 +-
 .../activemq/command/ActiveMQMessageTest.java  |   2 +-
 .../amqp/AmqpFlowControlFailDispositionTests.java  | 103 +
 .../amqp/AmqpFlowControlFailOrdinaryTests.java |  94 
 .../integration/amqp/AmqpFlowControlFailTest.java  | 175 
 ...ibutionTest.java => NettyFailoverInVMTest.java} |   7 +-
 ...ibutionTest.java => NettyFailoverJdbcTest.java} |   7 +-
 ...ailoverTest.java => NettyFailoverTestBase.java} |  18 +-
 .../failover/NettyReplicatedFailoverTest.java  |   2 +-
 .../artemis/amqpJMS/JoramAMQPAggregationTest.java  |   6 -
 .../artemis/jms/JoramCoreAggregationTest.java  |   5 -
 .../message/properties/JMSXPropertyTest.java   |   8 +-
 .../properties/MessagePropertyConversionTest.java  |   6 +-
 .../message/properties/MessagePropertyTest.java|   2 +-
 .../jms/conform/session/QueueSessionTest.java  |   8 +-
 .../jtests/jms/conform/session/SessionTest.java|  20 +-
 .../jms/conform/session/TopicSessionTest.java  |   4 +-
 27 files changed, 982 insertions(+), 787 deletions(-)
 create mode 100644 
artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/AbstractConfigurationTestBase.java
 create mode 100644 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailDispositionTests.java
 create mode 100644 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailOrdinaryTests.java
 delete mode 100644 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailTest.java
 copy 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/{SharedStoreDistributionTest.java
 => NettyFailoverInVMTest.java} (85%)
 copy 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/{SharedStoreDistributionTest.java
 => NettyFailoverJdbcTest.java} (85%)
 rename 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/{NettyFailoverTest.java
 => NettyFailoverTestBase.java} (93%)



(activemq-artemis) 05/06: ARTEMIS-4778: extract base class and classes from parameterized test with subclass that skips to de-parameterize itself

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 7849e2dcbff19da774f3027b619c56516d8ac628
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:18:22 2024 +0100

ARTEMIS-4778: extract base class and classes from parameterized test with 
subclass that skips to de-parameterize itself
---
 .../cluster/failover/NettyFailoverInVMTest.java| 24 ++
 .../cluster/failover/NettyFailoverJdbcTest.java| 24 ++
 ...ailoverTest.java => NettyFailoverTestBase.java} | 18 +---
 .../failover/NettyReplicatedFailoverTest.java  |  2 +-
 4 files changed, 54 insertions(+), 14 deletions(-)

diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverInVMTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverInVMTest.java
new file mode 100644
index 00..947048c8e3
--- /dev/null
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverInVMTest.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.tests.integration.cluster.failover;
+
+public class NettyFailoverInVMTest extends NettyFailoverTestBase {
+
+   public NettyFailoverInVMTest() {
+  super(NodeManagerType.InVM);
+   }
+}
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverJdbcTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverJdbcTest.java
new file mode 100644
index 00..2d2469694c
--- /dev/null
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverJdbcTest.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.tests.integration.cluster.failover;
+
+public class NettyFailoverJdbcTest extends NettyFailoverTestBase {
+
+   public NettyFailoverJdbcTest() {
+  super(NodeManagerType.Jdbc);
+   }
+}
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTestBase.java
similarity index 93%
rename from 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
rename to 
tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTestBase.java
index c07949ed7f..3bef6a4c1a 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTestBase.java
@@ -17,7 +17,6 @@
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -52,25 +51,18 @@ impor

(activemq-artemis) 01/06: ARTEMIS-4778: clean up configuration test heirarchy, remove hundreds of duplicate tests, isolate parameterized tests

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 98e1389a6e9803554186e0b44cb0be58b9cff276
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:15:12 2024 +0100

ARTEMIS-4778: clean up configuration test heirarchy, remove hundreds of 
duplicate tests, isolate parameterized tests
---
 .../config/impl/AbstractConfigurationTestBase.java | 490 +
 .../core/config/impl/ConfigurationImplTest.java| 473 +---
 .../config/impl/DefaultsFileConfigurationTest.java |  24 +-
 ...ConfigurationBrokerConnectionEncryptedTest.java |  34 +-
 .../impl/FileConfigurationDbEncryptedPassTest.java |  37 +-
 .../impl/FileConfigurationSecurityPluginTest.java  |  37 +-
 .../core/config/impl/FileConfigurationTest.java|  41 +-
 .../config/impl/FileXIncludeConfigurationTest.java |  10 +-
 .../impl/FileXIncludeSchemaConfigurationTest.java  |  16 +-
 9 files changed, 632 insertions(+), 530 deletions(-)

diff --git 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/AbstractConfigurationTestBase.java
 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/AbstractConfigurationTestBase.java
new file mode 100644
index 00..01babe492c
--- /dev/null
+++ 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/AbstractConfigurationTestBase.java
@@ -0,0 +1,490 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.core.config.impl;
+
+import java.util.Properties;
+
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.config.Configuration;
+import 
org.apache.activemq.artemis.core.config.ha.PrimaryOnlyPolicyConfiguration;
+import 
org.apache.activemq.artemis.core.config.routing.ConnectionRouterConfiguration;
+import org.apache.activemq.artemis.core.server.JournalType;
+import 
org.apache.activemq.artemis.core.server.plugin.impl.LoggingActiveMQServerPlugin;
+import org.apache.activemq.artemis.core.server.routing.KeyType;
+import 
org.apache.activemq.artemis.core.server.routing.policies.ConsistentHashModuloPolicy;
+import 
org.apache.activemq.artemis.core.server.routing.policies.ConsistentHashPolicy;
+import org.apache.activemq.artemis.tests.util.ServerTestBase;
+import org.apache.activemq.artemis.utils.RandomUtil;
+import org.junit.Before;
+
+public abstract class AbstractConfigurationTestBase extends ServerTestBase {
+
+   protected Configuration conf;
+
+   @Override
+   @Before
+   public void setUp() throws Exception {
+  super.setUp();
+
+  conf = createConfiguration();
+   }
+
+   protected abstract Configuration createConfiguration() throws Exception;
+
+   // Utility method, not itself a test; call it from actual test method
+   public static void doSetGetAttributesTestImpl(Configuration configuration) 
throws Exception {
+  for (int j = 0; j < 100; j++) {
+ int i = RandomUtil.randomInt();
+ configuration.setScheduledThreadPoolMaxSize(i);
+ assertEquals(i, configuration.getScheduledThreadPoolMaxSize());
+
+ long l = RandomUtil.randomLong();
+ configuration.setSecurityInvalidationInterval(l);
+ assertEquals(l, configuration.getSecurityInvalidationInterval());
+
+ boolean b = RandomUtil.randomBoolean();
+ configuration.setSecurityEnabled(b);
+ assertEquals(b, configuration.isSecurityEnabled());
+
+ String s = RandomUtil.randomString();
+ configuration.setBindingsDirectory(s);
+ assertEquals(s, configuration.getBindingsDirectory());
+
+ b = RandomUtil.randomBoolean();
+ configuration.setCreateBindingsDir(b);
+ assertEquals(b, configuration.isCreateBindingsDir());
+
+ s = RandomUtil.randomString();
+ configuration.setJournalDirectory(s);
+ assertEquals(s, configuration.getJournalDirectory());
+
+ b = RandomUtil.randomBoolean();
+ configuration.setCreateJournalDir(b);
+ assertEquals(b, configuration.isCreateJournalDir());
+
+ i = RandomUtil.randomInt() % 2

(activemq-artemis) 02/06: ARTEMIS-4778: replace various assertEquals checks with more apropriate assertTrue / assertFalse / assertNull

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 3e20687cf3637a941c9199275ed6be51163dc6a8
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:15:51 2024 +0100

ARTEMIS-4778: replace various assertEquals checks with more apropriate 
assertTrue / assertFalse / assertNull
---
 .../activemq/ActiveMQXAConnectionFactoryTest.java|  2 +-
 .../apache/activemq/command/ActiveMQMessageTest.java |  2 +-
 .../conform/message/properties/JMSXPropertyTest.java |  8 
 .../properties/MessagePropertyConversionTest.java|  6 +++---
 .../message/properties/MessagePropertyTest.java  |  2 +-
 .../jtests/jms/conform/session/QueueSessionTest.java |  8 
 .../jtests/jms/conform/session/SessionTest.java  | 20 ++--
 .../jtests/jms/conform/session/TopicSessionTest.java |  4 ++--
 8 files changed, 26 insertions(+), 26 deletions(-)

diff --git 
a/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/ActiveMQXAConnectionFactoryTest.java
 
b/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/ActiveMQXAConnectionFactoryTest.java
index 892125f744..286dd0d5c9 100644
--- 
a/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/ActiveMQXAConnectionFactoryTest.java
+++ 
b/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/ActiveMQXAConnectionFactoryTest.java
@@ -106,7 +106,7 @@ public class ActiveMQXAConnectionFactoryTest extends 
CombinationTestSupport {
   assertEquals(10, cf.getRedeliveryPolicy().getMaximumRedeliveries());
   assertEquals(1, 
cf.getRedeliveryPolicy().getInitialRedeliveryDelay());
   assertEquals(1, cf.getRedeliveryPolicy().getRedeliveryDelay());
-  assertEquals(true, cf.getRedeliveryPolicy().isUseExponentialBackOff());
+  assertTrue(cf.getRedeliveryPolicy().isUseExponentialBackOff());
   assertEquals(2.0, cf.getRedeliveryPolicy().getBackOffMultiplier(), 0.1);
 
   // the broker url have been adjusted.
diff --git 
a/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQMessageTest.java
 
b/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQMessageTest.java
index 706261adb2..c0cdb15962 100644
--- 
a/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQMessageTest.java
+++ 
b/tests/activemq5-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQMessageTest.java
@@ -531,7 +531,7 @@ public class ActiveMQMessageTest extends TestCase {
   assertEquals("Cheddar", msg.getStringProperty(name));
 
   msg.setStringProperty(name, null);
-  assertEquals(null, msg.getStringProperty(name));
+  assertNull(msg.getStringProperty(name));
}
 
public void testSetNullPropertyName() throws JMSException {
diff --git 
a/tests/joram-tests/src/test/java/org/objectweb/jtests/jms/conform/message/properties/JMSXPropertyTest.java
 
b/tests/joram-tests/src/test/java/org/objectweb/jtests/jms/conform/message/properties/JMSXPropertyTest.java
index 188d212022..c04451c618 100644
--- 
a/tests/joram-tests/src/test/java/org/objectweb/jtests/jms/conform/message/properties/JMSXPropertyTest.java
+++ 
b/tests/joram-tests/src/test/java/org/objectweb/jtests/jms/conform/message/properties/JMSXPropertyTest.java
@@ -91,7 +91,7 @@ public class JMSXPropertyTest extends PTPTestCase {
  // senderSession has been created as non transacted
  // we create it again but as a transacted session
  senderSession = senderConnection.createQueueSession(true, 0);
- Assert.assertEquals(true, senderSession.getTransacted());
+ Assert.assertTrue(senderSession.getTransacted());
  // we create again the sender
  sender = senderSession.createSender(senderQueue);
  senderConnection.start();
@@ -100,7 +100,7 @@ public class JMSXPropertyTest extends PTPTestCase {
  // receiverSession has been created as non transacted
  // we create it again but as a transacted session
  receiverSession = receiverConnection.createQueueSession(true, 0);
- Assert.assertEquals(true, receiverSession.getTransacted());
+ Assert.assertTrue(receiverSession.getTransacted());
  // we create again the receiver
  if (receiver != null) {
 receiver.close();
@@ -123,7 +123,7 @@ public class JMSXPropertyTest extends PTPTestCase {
  // ... which is the one which was sent...
  Assert.assertEquals("testJMSXDeliveryCount", msg.getText());
  // ...and has not been redelivered
- Assert.assertEquals(false, msg.getJMSRedelivered());
+ Assert.assertFalse(msg.getJMSRedelivered());
  // ... so it has been delivered once
  int jmsxDeliveryCount = msg.getIntProperty("JMSXDeliveryCount");
  Assert.assertEquals(1, jmsxDeliveryCount);
@@ -138,7 +138,7 @@ public class JMSXPr

(activemq-artemis) 03/06: ARTEMIS-4778: remove spawn check rule, not needed as the tests dont spawn

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 243ea9aa01db65b4c9f1bdf1698dcb5569fa7ba6
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:16:08 2024 +0100

ARTEMIS-4778: remove spawn check rule, not needed as the tests dont spawn
---
 .../apache/activemq/artemis/amqpJMS/JoramAMQPAggregationTest.java   | 6 --
 .../org/apache/activemq/artemis/jms/JoramCoreAggregationTest.java   | 5 -
 2 files changed, 11 deletions(-)

diff --git 
a/tests/joram-tests/src/test/java/org/apache/activemq/artemis/amqpJMS/JoramAMQPAggregationTest.java
 
b/tests/joram-tests/src/test/java/org/apache/activemq/artemis/amqpJMS/JoramAMQPAggregationTest.java
index a703e75b59..1c5f6a3c07 100644
--- 
a/tests/joram-tests/src/test/java/org/apache/activemq/artemis/amqpJMS/JoramAMQPAggregationTest.java
+++ 
b/tests/joram-tests/src/test/java/org/apache/activemq/artemis/amqpJMS/JoramAMQPAggregationTest.java
@@ -19,11 +19,9 @@ package org.apache.activemq.artemis.amqpJMS;
 import java.io.IOException;
 import java.util.Properties;
 
-import org.apache.activemq.artemis.tests.rules.SpawnedVMCheck;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
-import org.junit.Rule;
 import org.junit.runner.RunWith;
 import org.junit.runners.Suite;
 import org.junit.runners.Suite.SuiteClasses;
@@ -53,10 +51,6 @@ import org.objectweb.jtests.jms.framework.JMSTestCase;
 @SuiteClasses({TopicConnectionTest.class, ConnectionTest.class, 
MessageBodyTest.class, MessageDefaultTest.class, MessageTypeTest.class, 
MessageHeaderTest.class, JMSXPropertyTest.class, 
MessagePropertyConversionTest.class, MessagePropertyTest.class, 
QueueBrowserTest.class, TemporaryQueueTest.class, SelectorSyntaxTest.class, 
SelectorTest.class, QueueSessionTest.class, SessionTest.class, 
TopicSessionTest.class, UnifiedSessionTest.class, TemporaryTopicTest.class,})
 public class JoramAMQPAggregationTest extends Assert {
 
-
-   @Rule
-   public SpawnedVMCheck check = new SpawnedVMCheck();
-
/**
 * Should be overridden
 *
diff --git 
a/tests/joram-tests/src/test/java/org/apache/activemq/artemis/jms/JoramCoreAggregationTest.java
 
b/tests/joram-tests/src/test/java/org/apache/activemq/artemis/jms/JoramCoreAggregationTest.java
index 9875b493db..7448b9ca04 100644
--- 
a/tests/joram-tests/src/test/java/org/apache/activemq/artemis/jms/JoramCoreAggregationTest.java
+++ 
b/tests/joram-tests/src/test/java/org/apache/activemq/artemis/jms/JoramCoreAggregationTest.java
@@ -19,11 +19,9 @@ package org.apache.activemq.artemis.jms;
 import java.io.IOException;
 import java.util.Properties;
 
-import org.apache.activemq.artemis.tests.rules.SpawnedVMCheck;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
-import org.junit.Rule;
 import org.junit.runner.RunWith;
 import org.junit.runners.Suite;
 import org.junit.runners.Suite.SuiteClasses;
@@ -53,9 +51,6 @@ import org.objectweb.jtests.jms.framework.JMSTestCase;
 @SuiteClasses({TopicConnectionTest.class, ConnectionTest.class, 
MessageBodyTest.class, MessageDefaultTest.class, MessageTypeTest.class, 
MessageHeaderTest.class, JMSXPropertyTest.class, 
MessagePropertyConversionTest.class, MessagePropertyTest.class, 
QueueBrowserTest.class, TemporaryQueueTest.class, SelectorSyntaxTest.class, 
SelectorTest.class, QueueSessionTest.class, SessionTest.class, 
TopicSessionTest.class, UnifiedSessionTest.class, TemporaryTopicTest.class,})
 public class JoramCoreAggregationTest extends Assert {
 
-   @Rule
-   public SpawnedVMCheck check = new SpawnedVMCheck();
-
/**
 * Should be overridden
 *



(activemq-artemis) 04/06: ARTEMIS-4778: split two Nested test classes (one parameterized, other not) into their own class files

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 3c84f26413bf140244beda32eb46dc5559cecf08
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:17:55 2024 +0100

ARTEMIS-4778: split two Nested test classes (one parameterized, other not) 
into their own class files
---
 .../amqp/AmqpFlowControlFailDispositionTests.java  | 103 
 .../amqp/AmqpFlowControlFailOrdinaryTests.java |  94 +++
 .../integration/amqp/AmqpFlowControlFailTest.java  | 175 -
 3 files changed, 197 insertions(+), 175 deletions(-)

diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailDispositionTests.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailDispositionTests.java
new file mode 100644
index 00..484386aed6
--- /dev/null
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpFlowControlFailDispositionTests.java
@@ -0,0 +1,103 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.tests.integration.amqp;
+
+import org.apache.activemq.artemis.core.server.ActiveMQServer;
+import org.apache.activemq.artemis.core.settings.impl.AddressFullMessagePolicy;
+import org.apache.activemq.artemis.core.settings.impl.AddressSettings;
+import org.apache.activemq.transport.amqp.client.AmqpClient;
+import org.apache.activemq.transport.amqp.client.AmqpConnection;
+import org.apache.activemq.transport.amqp.client.AmqpMessage;
+import org.apache.activemq.transport.amqp.client.AmqpSender;
+import org.apache.activemq.transport.amqp.client.AmqpSession;
+import org.apache.qpid.proton.amqp.Symbol;
+import org.apache.qpid.proton.amqp.messaging.Accepted;
+import org.apache.qpid.proton.amqp.messaging.Modified;
+import org.apache.qpid.proton.amqp.messaging.Rejected;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Map;
+
+@RunWith(Parameterized.class)
+public class AmqpFlowControlFailDispositionTests extends JMSClientTestSupport {
+
+   @Parameterized.Parameter()
+   public boolean useModified;
+
+   @Parameterized.Parameter(1)
+   public Symbol[] outcomes;
+
+   @Parameterized.Parameter(2)
+   public String expectedMessage;
+
+   @Parameterized.Parameters(name = "useModified={0}")
+   public static Collection parameters() {
+  return Arrays.asList(new Object[][] {
+{true, new Symbol[]{Accepted.DESCRIPTOR_SYMBOL, 
Rejected.DESCRIPTOR_SYMBOL, Modified.DESCRIPTOR_SYMBOL}, "failure at remote"},
+{true, new Symbol[]{Accepted.DESCRIPTOR_SYMBOL, 
Rejected.DESCRIPTOR_SYMBOL}, "[condition = amqp:resource-limit-exceeded]"},
+{false, new Symbol[]{Accepted.DESCRIPTOR_SYMBOL, 
Rejected.DESCRIPTOR_SYMBOL, Modified.DESCRIPTOR_SYMBOL}, "[condition = 
amqp:resource-limit-exceeded]"},
+{false, new Symbol[]{}, "[condition = 
amqp:resource-limit-exceeded]"}
+  });
+   }
+
+   @Override
+   protected void configureAddressPolicy(ActiveMQServer server) {
+  AddressSettings addressSettings = 
server.getAddressSettingsRepository().getMatch("#");
+  
addressSettings.setAddressFullMessagePolicy(AddressFullMessagePolicy.FAIL);
+  addressSettings.setMaxSizeBytes(1000);
+  server.getAddressSettingsRepository().addMatch("#", addressSettings);
+   }
+
+   @Override
+   protected void configureAMQPAcceptorParameters(Map params) {
+  params.put("amqpUseModifiedForTransientDeliveryErrors", useModified);
+   }
+
+
+   @Test(timeout = 10_000)
+   public void testAddressFullDisposition() throws Exception {
+  AmqpClient client = createAmqpClient(getBrokerAmqpConnectionURI());
+  AmqpConnection connection = client.connect();
+  try {
+ AmqpSession session = connection.createSession();
+ AmqpSen

(activemq-artemis) 06/06: ARTEMIS-4778: rework tests manipulating Xxe config so it is reset after class, and not updated at all for skipped tests

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit f64d9184066f33a08bf04d6ce75a7649af17b87e
Author: Robbie Gemmell 
AuthorDate: Tue May 21 16:18:38 2024 +0100

ARTEMIS-4778: rework tests manipulating Xxe config so it is reset after 
class, and not updated at all for skipped tests
---
 .../activemq/artemis/utils/XmlProviderTest.java| 41 ++-
 .../core/config/impl/FileConfigurationTest.java| 61 ++
 .../config/impl/FileXIncludeConfigurationTest.java | 18 ---
 .../impl/FileXIncludeSchemaConfigurationTest.java  | 18 ---
 4 files changed, 115 insertions(+), 23 deletions(-)

diff --git 
a/artemis-commons/src/test/java/org/apache/activemq/artemis/utils/XmlProviderTest.java
 
b/artemis-commons/src/test/java/org/apache/activemq/artemis/utils/XmlProviderTest.java
index 989ae50f6e..86ce633949 100644
--- 
a/artemis-commons/src/test/java/org/apache/activemq/artemis/utils/XmlProviderTest.java
+++ 
b/artemis-commons/src/test/java/org/apache/activemq/artemis/utils/XmlProviderTest.java
@@ -21,30 +21,67 @@ import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamSource;
 import javax.xml.validation.Validator;
 import java.io.File;
+import java.lang.invoke.MethodHandles;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.activemq.artemis.tests.util.ArtemisTestCase;
+import org.junit.AfterClass;
 import org.junit.Assert;
+import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
 @RunWith(Parameterized.class)
-public class XmlProviderTest {
+public class XmlProviderTest extends ArtemisTestCase {
+
+   private static final Logger logger = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+
+   private static Boolean origXxeEnabled;
+
+   protected boolean xxeEnabled;
 
@Parameterized.Parameters(name = "xxeEnabled={0}")
public static Collection getParameters() {
   return Arrays.asList(new Boolean[]{true, false});
}
 
-   public XmlProviderTest(boolean xxeEnabled) {
+   @BeforeClass
+   public static void beforeAll() {
+  if (origXxeEnabled == null) {
+ origXxeEnabled = XmlProvider.isXxeEnabled();
+  }
+
+  logger.trace("BeforeAll - origXxeEnabled={}, isXxeEnabled={}", 
origXxeEnabled, XmlProvider.isXxeEnabled());
+   }
+
+   @AfterClass
+   public static void afterAll() {
+  logger.trace("AfterAll - origXxeEnabled={}, isXxeEnabled={} ", 
origXxeEnabled, XmlProvider.isXxeEnabled());
+  if (origXxeEnabled != null) {
+ logger.trace("AfterAll - Resetting XxeEnabled={}", origXxeEnabled);
+ XmlProvider.setXxeEnabled(origXxeEnabled);
+  }
+   }
+
+   @Before
+   public void setUp() {
+  logger.trace("Running setUp - xxeEnabled={}", xxeEnabled);
   XmlProvider.setXxeEnabled(xxeEnabled);
}
 
+   public XmlProviderTest(boolean xxeEnabled) {
+  this.xxeEnabled = xxeEnabled;
+   }
+
@Test
public void testDocument() throws Exception {
   DocumentBuilder documentBuilder = XmlProvider.newDocumentBuilder();
diff --git 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/FileConfigurationTest.java
 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/FileConfigurationTest.java
index 214b6e7b65..f9d4958336 100644
--- 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/FileConfigurationTest.java
+++ 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/FileConfigurationTest.java
@@ -24,6 +24,7 @@ import java.nio.file.Path;
 import java.nio.file.StandardCopyOption;
 import java.util.Arrays;
 import java.util.Collection;
+import java.lang.invoke.MethodHandles;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
@@ -76,39 +77,81 @@ import 
org.apache.activemq.artemis.logs.AssertionLoggerHandler;
 import org.apache.activemq.artemis.utils.RandomUtil;
 import org.apache.activemq.artemis.utils.XmlProvider;
 import org.apache.activemq.artemis.utils.critical.CriticalAnalyzerPolicy;
+import org.junit.After;
 import org.junit.AfterClass;
 import org.junit.Assert;
+import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @RunWith(Parameterized.class)
 public class FileConfigurationTest extends AbstractConfigurationTestBase {
 
+   private static final Logger logger = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupCla

(activemq-artemis) branch main updated: ARTEMIS-3622 MQTT can deadlock on client cxn/discxn

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 3c058e98f1 ARTEMIS-3622 MQTT can deadlock on client cxn/discxn
3c058e98f1 is described below

commit 3c058e98f1e332987aff026e4026758df6ca2785
Author: Justin Bertram 
AuthorDate: Tue Apr 30 08:08:37 2024 -0500

ARTEMIS-3622 MQTT can deadlock on client cxn/discxn

This commit fixes the deadlock described on ARTEMIS-3622 by moving the
synchronization "up" a level from the MQTTSession to the
MQTTConnectionManager. It also eliminates the synchronization on the
MQTTSessionState in the MQTTConnectionManager because it's no longer
needed. This change should not only eliminate the deadlock, but improve
performance relatively as well.

There is no test associated with this commit as I wasn't able to
reproduce the deadlock with any kind of straight-forward test. There was
a test linked on the Jira, but it involved intrusive and fragile
scaffolding and wasn't ultimately tenable. That said, I did test this
fix with that test and it was successful. In any case, I think static
analysis should be sufficient here as the changes are pretty
straight-forward.
---
 .../core/protocol/mqtt/MQTTConnectionManager.java  | 142 ++---
 .../artemis/core/protocol/mqtt/MQTTSession.java|  13 +-
 2 files changed, 77 insertions(+), 78 deletions(-)

diff --git 
a/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTConnectionManager.java
 
b/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTConnectionManager.java
index eecc76166d..cedd8153c5 100644
--- 
a/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTConnectionManager.java
+++ 
b/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTConnectionManager.java
@@ -51,7 +51,7 @@ public class MQTTConnectionManager {
   session.getConnection().addFailureListener(failureListener);
}
 
-   void connect(MqttConnectMessage connect, String validatedUser, String 
username, String password) throws Exception {
+   synchronized void connect(MqttConnectMessage connect, String validatedUser, 
String username, String password) throws Exception {
   if (session.getVersion() == MQTTVersion.MQTT_5) {
  
session.getConnection().setProtocolVersion(Byte.toString(MqttVersion.MQTT_5.protocolLevel()));
  String authenticationMethod = MQTTUtil.getProperty(String.class, 
connect.variableHeader().properties(), AUTHENTICATION_METHOD);
@@ -68,67 +68,65 @@ public class MQTTConnectionManager {
 
   String clientId = session.getConnection().getClientID();
   boolean sessionPresent = 
session.getStateManager().getSessionStates().containsKey(clientId);
-  MQTTSessionState sessionState = getSessionState(clientId);
-  synchronized (sessionState) {
- session.setSessionState(sessionState);
- sessionState.setFailed(false);
- ServerSessionImpl serverSession = createServerSession(username, 
password, validatedUser);
- serverSession.start();
- ServerSessionImpl internalServerSession = 
createServerSession(username, password, validatedUser);
- internalServerSession.disableSecurity();
- internalServerSession.start();
- session.setServerSession(serverSession, internalServerSession);
-
- if (cleanStart) {
-/* [MQTT-3.1.2-6] If CleanSession is set to 1, the Client and 
Server MUST discard any previous Session and
- * start a new one. This Session lasts as long as the Network 
Connection. State data associated with this Session
- * MUST NOT be reused in any subsequent Session */
-session.clean(true);
-session.setClean(true);
- }
+  MQTTSessionState sessionState = 
session.getStateManager().getSessionState(clientId);
+  session.setSessionState(sessionState);
+  sessionState.setFailed(false);
+  ServerSessionImpl serverSession = createServerSession(username, 
password, validatedUser);
+  serverSession.start();
+  ServerSessionImpl internalServerSession = createServerSession(username, 
password, validatedUser);
+  internalServerSession.disableSecurity();
+  internalServerSession.start();
+  session.setServerSession(serverSession, internalServerSession);
+
+  if (cleanStart) {
+ /* [MQTT-3.1.2-6] If CleanSession is set to 1, the Client and Server 
MUST discard any previous Session and
+  * start a new one. This Session lasts as long as the Network 
Connection. State data associated with this Session
+  * MUST NOT be reused in any subseque

(activemq-artemis) branch main updated: ARTEMIS-4772: fix build failure from modified PR #4935 commit f7b15e351ef712213e0db1d072a2f0ce84f7bb8e

2024-05-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 3474a39301 ARTEMIS-4772: fix build failure from modified PR #4935 
commit f7b15e351ef712213e0db1d072a2f0ce84f7bb8e
3474a39301 is described below

commit 3474a393010feb6207c66277dfffa6635ed58166
Author: Robbie Gemmell 
AuthorDate: Tue May 21 10:39:47 2024 +0100

ARTEMIS-4772: fix build failure from modified PR #4935 commit 
f7b15e351ef712213e0db1d072a2f0ce84f7bb8e
---
 .../artemis/core/management/impl/ActiveMQServerControlImpl.java | 2 --
 1 file changed, 2 deletions(-)

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 ee31b5186f..895ead7c69 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
@@ -49,7 +49,6 @@ import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicLong;
 import java.util.concurrent.atomic.AtomicReference;
-import java.util.function.Function;
 import java.util.stream.Collectors;
 
 import org.apache.activemq.artemis.api.config.ActiveMQDefaultConfiguration;
@@ -126,7 +125,6 @@ import 
org.apache.activemq.artemis.core.server.group.GroupingHandler;
 import org.apache.activemq.artemis.core.server.impl.Activation;
 import org.apache.activemq.artemis.core.server.impl.AddressInfo;
 import 
org.apache.activemq.artemis.core.server.impl.SharedNothingPrimaryActivation;
-import org.apache.activemq.artemis.core.server.plugin.ActiveMQServerBasePlugin;
 import org.apache.activemq.artemis.core.server.replay.ReplayManager;
 import org.apache.activemq.artemis.core.settings.impl.AddressFullMessagePolicy;
 import org.apache.activemq.artemis.core.settings.impl.AddressSettings;



(activemq-artemis-console) 01/02: ARTEMIS-4680 - Upgrade the console to use HawtIO 4

2024-05-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git

commit 39ede8153dd5943e59891be8fa3be814ce175c02
Author: Andy Taylor 
AuthorDate: Fri May 10 10:05:30 2024 +0100

ARTEMIS-4680 - Upgrade the console to use HawtIO 4

Some general tidying up, adding ids and a few fixes
---
 .../src/artemis-extension/artemis/artemis-service.ts   |  2 +-
 .../src/artemis-extension/artemis/messages/MessageView.tsx |  4 ++--
 .../src/artemis-extension/artemis/messages/MessagesTable.tsx   |  7 +--
 .../src/artemis-extension/artemis/queues/QueuesTable.tsx   |  2 +-
 .../src/artemis-extension/artemis/table/ArtemisTable.tsx   |  6 +++---
 .../src/artemis-extension/artemis/views/ArtemisTabView.tsx |  2 +-
 artemis-console-extension/pom.xml  | 10 --
 pom.xml|  2 --
 8 files changed, 21 insertions(+), 14 deletions(-)

diff --git 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/artemis-service.ts
 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/artemis-service.ts
index 5f4a4a7..21f37e5 100644
--- 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/artemis-service.ts
+++ 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/artemis-service.ts
@@ -413,7 +413,7 @@ class ArtemisService {
 return this.formatPersistentSize(size);
 }
 if (columnID === "originalQueue" && message["StringProperties"]) {
-const originalQueue = message["StringProperties"]._AMQ_ORIG_QUEUE;
+var originalQueue = message["StringProperties"]._AMQ_ORIG_QUEUE != 
null ? message["StringProperties"]._AMQ_ORIG_QUEUE : 
message["StringProperties"]["extraProperties._AMQ_ORIG_QUEUE"]
 return originalQueue ? originalQueue : "";
 }
 return message[columnID] ? "" + message[columnID] : "";
diff --git 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessageView.tsx
 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessageView.tsx
index 59fe57b..29300ab 100644
--- 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessageView.tsx
+++ 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessageView.tsx
@@ -225,8 +225,8 @@ export const MessageView: 
React.FunctionComponent = props => {
   
   
 {props.back &&
-<> { if (props.back) { props.back(0); } } 
}>Queues
- { if (props.back) { props.back(1); } 
}}>Browse
+<> { if 
(props.back) { props.back(0); } } }>Queues
+ { if 
(props.back) { props.back(1); } }}>Browse
 }
 
   )
diff --git 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessagesTable.tsx
 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessagesTable.tsx
index d0d7d7b..f0cd6a7 100644
--- 
a/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessagesTable.tsx
+++ 
b/artemis-console-extension/artemis-extension/src/artemis-extension/artemis/messages/MessagesTable.tsx
@@ -113,6 +113,7 @@ export const MessagesTable: 
React.FunctionComponent = props => {
 return [
   {
 title: 'Delete',
+id: 'message-dropdown-delete',
 onClick: () => {
   setSelectedMessages([row.messageID]);
   setShowDeleteMessagesModal(true);
@@ -120,12 +121,14 @@ export const MessagesTable: 
React.FunctionComponent = props => {
   },
   {
 title: 'View',
+id: 'message-dropdown-view',
 onClick: () => {
   if (props.selectMessage) { props.selectMessage(row); }
 }
   },
   {
 title: 'Resend',
+id: 'message-dropdown-resend',
 onClick: () => {
   if (props.selectMessage) { 
 setResendMessage(row);
@@ -260,7 +263,7 @@ export const MessagesTable: 
React.FunctionComponent = props => {
   
 
   
-  
+  
 
   
 
@@ -316,7 +319,7 @@ export const MessagesTable: 
React.FunctionComponent = props => {
 }}
   />
   {props.back &&
- { if (props.back) { props.back(0) } 
}}>Queues
+ { if 
(props.back) { props.back(0) } }}>Queues
   }
= navigate => {
 { id: 'maxConsumers', name: 'Max Consumers', visible: true, sortable: 
true, filterable: true },
 { id: 'purgeOnNoConsumers', name: 'Purge On No Consumers', visible: true, 
sortable: true, filterable: true },
  

(activemq-artemis-console) 02/02: ARTEMIS-4680 - Upgrade the console to use HawtIO 4

2024-05-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git

commit 2deba43bdcf9c2cb77936fe856e9b173cee3ddbc
Author: Andy Taylor 
AuthorDate: Wed May 15 11:06:14 2024 +0100

ARTEMIS-4680 - Upgrade the console to use HawtIO 4

Update HawtIO dependency
---
 .../artemis-extension/package.json |   2 +-
 .../artemis-extension/yarn.lock| 177 +++--
 2 files changed, 96 insertions(+), 83 deletions(-)

diff --git a/artemis-console-extension/artemis-extension/package.json 
b/artemis-console-extension/artemis-extension/package.json
index 309eebb..2eca436 100644
--- a/artemis-console-extension/artemis-extension/package.json
+++ b/artemis-console-extension/artemis-extension/package.json
@@ -12,7 +12,7 @@
 "replace-version": "replace __PACKAGE_VERSION_PLACEHOLDER__ 
$npm_package_version ./build/static/js -r --include=\"*.js\""
   },
   "dependencies": {
-"@hawtio/react": "^1.2.2",
+"@hawtio/react": "1.2.5",
 "@patternfly/react-charts": "^7.1.1",
 "@patternfly/react-core": "^4.278.0",
 "@patternfly/react-icons": "^4.93.5",
diff --git a/artemis-console-extension/artemis-extension/yarn.lock 
b/artemis-console-extension/artemis-extension/yarn.lock
index 3ff70e3..f5b1b2c 100644
--- a/artemis-console-extension/artemis-extension/yarn.lock
+++ b/artemis-console-extension/artemis-extension/yarn.lock
@@ -2285,32 +2285,32 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@hawtio/react@npm:^1.2.2":
-  version: 1.2.2
-  resolution: "@hawtio/react@npm:1.2.2"
+"@hawtio/react@npm:1.2.5":
+  version: 1.2.5
+  resolution: "@hawtio/react@npm:1.2.5"
   dependencies:
 "@hawtio/camel-model-v4_0": "npm:@hawtio/camel-model@~4.0.4"
 "@hawtio/camel-model-v4_4": "npm:@hawtio/camel-model@~4.4.0"
-"@module-federation/utilities": ^3.0.7
+"@module-federation/utilities": ^3.0.11
 "@patternfly/react-charts": ~6.94.21
 "@patternfly/react-code-editor": ~4.82.122
 "@patternfly/react-core": ~4.278.1
 "@patternfly/react-table": ~4.113.7
 "@testing-library/jest-dom": ^6.4.2
-"@testing-library/react": ^14.3.0
+"@testing-library/react": ^15.0.2
 "@testing-library/user-event": ^14.5.2
 "@thumbmarkjs/thumbmarkjs": ^0.14.6
 "@types/dagre": ^0.7.52
 "@types/dagre-layout": ^0.8.5
 "@types/jest": ^29.5.12
 "@types/jquery": ^3.5.29
-"@types/node": ^18.19.30
+"@types/node": ^18.19.31
 "@types/react": ^18.2.23
-"@types/react-dom": ^18.2.24
+"@types/react-dom": ^18.2.25
 "@types/react-router-dom": ^5.3.3
 dagre: ^0.8.5
 eventemitter3: ^5.0.1
-jolokia.js: ^2.0.0
+jolokia.js: ^2.0.1
 jquery: ^3.7.1
 js-logger: ^1.6.1
 jwt-decode: ^4.0.0
@@ -2323,7 +2323,7 @@ __metadata:
 react-monaco-editor: ^0.55.0
 react-router-dom: ^6.22.3
 react-split: ^2.0.14
-reactflow: ^11.11.0
+reactflow: ^11.11.1
 superstruct: ^1.0.4
 typescript: ^5.3.3
 xml-formatter: ^3.6.2
@@ -2335,7 +2335,7 @@ __metadata:
   peerDependenciesMeta:
 keycloak-js:
   optional: true
-  checksum: 
d133fb5b70700fe6cd6012ee087f7c500bf94c6e359db119e5e3fdc7da6a2136a2963dfaa822a26295076b00fbb3466f339def9fc7556feb27b8cf1e32144f7a
+  checksum: 
5a87b939b22d828eb829cc44cdf5eaf044b6eaa7077ece86433500af7cf45b82296ef67ac840c944cfd8dba963ea0d1d1c229d461ae1f5032b39f3de0015b07c
   languageName: node
   linkType: hard
 
@@ -2823,18 +2823,18 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@module-federation/sdk@npm:0.1.4":
-  version: 0.1.4
-  resolution: "@module-federation/sdk@npm:0.1.4"
-  checksum: 
7a8758172654eb5a536d40c89032391ad0552e77aaa769d1ab46e1fa27e752bd3e445c164de23b2497407131304d6b9dc2e905aefd36e85f877ae8ffb7380e4c
+"@module-federation/sdk@npm:0.1.13":
+  version: 0.1.13
+  resolution: "@module-federation/sdk@npm:0.1.13"
+  checksum: 
5c5ca369f1fad768722ae79786b6396975164a6623cf0182126260b2e1a93978fce3b3d565aefd56a69bfe72e51f3100d1a3a4b6d8a790b7c1c1e866745e03f7
   languageName: node
   linkType: hard
 
-"@module-federation/utilities@npm:^3.0.7":
-  version: 3.0.9
-  resolution: "@module-federation/utilities@npm:3.0.9"
+"@module-federation/utilities@npm:^3.0.11":
+  version: 3.0.18
+  resolution: "@module-federation/utilities@npm:3.0.18"
   dependencies:
-"@module-federation/sdk": 0.1.4
+"@module-fed

(activemq-artemis-console) branch main updated (930a7d5 -> 2deba43)

2024-05-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git


from 930a7d5  ARTEMIS-4680 - Upgrade the console to use HawtIO 4
 new 39ede81  ARTEMIS-4680 - Upgrade the console to use HawtIO 4
 new 2deba43  ARTEMIS-4680 - Upgrade the console to use HawtIO 4

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../artemis-extension/package.json |   2 +-
 .../artemis-extension/artemis/artemis-service.ts   |   2 +-
 .../artemis/messages/MessageView.tsx   |   4 +-
 .../artemis/messages/MessagesTable.tsx |   7 +-
 .../artemis/queues/QueuesTable.tsx |   2 +-
 .../artemis/table/ArtemisTable.tsx |   6 +-
 .../artemis/views/ArtemisTabView.tsx   |   2 +-
 .../artemis-extension/yarn.lock| 177 +++--
 artemis-console-extension/pom.xml  |  10 +-
 pom.xml|   2 -
 10 files changed, 117 insertions(+), 97 deletions(-)



(activemq-artemis) 01/02: ARTEMIS-4769: update to pem-keystore 2.4.0

2024-05-10 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit daf37ab0e194607e5afcc430b1723251af23339a
Author: Robbie Gemmell 
AuthorDate: Fri May 10 10:55:21 2024 +0100

ARTEMIS-4769: update to pem-keystore 2.4.0
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 86ef43c496..c9370141cf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -118,7 +118,7 @@
   5.6.0
   3.9.1
   4.4.0
-  2.3.0
+  2.4.0
 
   



(activemq-artemis) 02/02: ARTEMIS-4770: Upgrade BouncyCastle to 1.78

2024-05-10 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 77076452f29799b2e6d36e21b1c433f1334c6bd6
Author: Frederico Alves <5428003+fredbal...@users.noreply.github.com>
AuthorDate: Wed May 8 10:11:17 2024 +0100

ARTEMIS-4770: Upgrade BouncyCastle to 1.78

This closes #4927
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index c9370141cf..6e68a39b15 100644
--- a/pom.xml
+++ b/pom.xml
@@ -252,7 +252,7 @@
 
   2.0.0.AM25
   2.0.0-M1
-  1.77
+  1.78
 
   
linux-x86_64
   
osx-x86_64



(activemq-artemis) branch main updated (cd563b49ad -> 77076452f2)

2024-05-10 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


from cd563b49ad ARTEMIS-4765 DuplicateIDCache on Mirror Target is using 20K 
elements instead of amqpCredits
 new daf37ab0e1 ARTEMIS-4769: update to pem-keystore 2.4.0
 new 77076452f2 ARTEMIS-4770: Upgrade BouncyCastle to 1.78

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)



(activemq-artemis) branch main updated (d7a7116a4c -> b209dd013d)

2024-05-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


from d7a7116a4c ARTEMIS-4754 Structure the names used for federation 
internal queues
 add b209dd013d ARTEMIS-1769 mitigate null

No new revisions were added by this update.

Summary of changes:
 .../apache/activemq/artemis/core/management/impl/view/SessionView.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



(activemq-artemis) branch main updated: ARTEMIS-4754 Structure the names used for federation internal queues

2024-05-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 d7a7116a4c ARTEMIS-4754 Structure the names used for federation 
internal queues
d7a7116a4c is described below

commit d7a7116a4c31bdd830e66f54240b7204a83101ae
Author: Timothy Bish 
AuthorDate: Wed May 1 16:39:23 2024 -0400

ARTEMIS-4754 Structure the names used for federation internal queues

When creating internal temporary queues for the federation control links 
and the
events link we should use a structured naming convention to ease in 
configuring
security for the federation user where all internal names fall under a root 
prefix
which can be used to grant read and write access for the federation user. 
This
change allows security on the wildcarded address 
"$ACTIVEMQ_ARTEMIS_FEDERATION.#".
This change also includes some further restrictions added to federation 
resources
and adds support for wildcarding '$' prefixed addresses.
---
 .../protocol/amqp/broker/AMQPSessionCallback.java  |  21 +-
 .../amqp/connect/federation/AMQPFederation.java|  48 
 .../AMQPFederationCommandDispatcher.java   |  25 +-
 .../federation/AMQPFederationConstants.java|  37 ++-
 .../federation/AMQPFederationEventDispatcher.java  |  19 +-
 .../amqp/proton/AMQPConnectionContext.java |   4 +-
 .../activemq/artemis/core/settings/impl/Match.java |   5 +
 .../artemis/core/settings/impl/MatchTest.java  |  23 ++
 .../amqp/connect/AMQPFederationConnectTest.java| 265 -
 9 files changed, 412 insertions(+), 35 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPSessionCallback.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPSessionCallback.java
index c67cac0a1d..4612f7873b 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPSessionCallback.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPSessionCallback.java
@@ -263,15 +263,32 @@ public class AMQPSessionCallback implements 
SessionCallback {
}
 
public void createTemporaryQueue(SimpleString queueName, RoutingType 
routingType) throws Exception {
-  createTemporaryQueue(queueName, queueName, routingType, null);
+  createTemporaryQueue(queueName, queueName, routingType, null, null);
+   }
+
+   public void createTemporaryQueue(SimpleString queueName, RoutingType 
routingType, Integer maxConsumers) throws Exception {
+  createTemporaryQueue(queueName, queueName, routingType, null, 
maxConsumers);
}
 
public void createTemporaryQueue(SimpleString address,
 SimpleString queueName,
 RoutingType routingType,
 SimpleString filter) throws Exception {
+  createTemporaryQueue(address, queueName, routingType, filter, null);
+   }
+
+   public void createTemporaryQueue(SimpleString address,
+SimpleString queueName,
+RoutingType routingType,
+SimpleString filter,
+Integer maxConsumers) throws Exception {
   try {
- serverSession.createQueue(new 
QueueConfiguration(queueName).setAddress(address).setRoutingType(routingType).setFilterString(filter).setTemporary(true).setDurable(false));
+ serverSession.createQueue(new 
QueueConfiguration(queueName).setAddress(address)
+
.setRoutingType(routingType)
+
.setFilterString(filter)
+
.setTemporary(true)
+
.setDurable(false)
+
.setMaxConsumers(maxConsumers));
   } catch (ActiveMQSecurityException se) {
  throw 
ActiveMQAMQPProtocolMessageBundle.BUNDLE.securityErrorCreatingTempDestination(se.getMessage());
   }
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
index 1f3c818155..891e264111 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
+++ 

(activemq-artemis-console) branch main updated: ARTEMIS-4680 - Upgrade the console to use HawtIO 4

2024-05-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git


The following commit(s) were added to refs/heads/main by this push:
 new 930a7d5  ARTEMIS-4680 - Upgrade the console to use HawtIO 4
930a7d5 is described below

commit 930a7d549e0868df650a3cd35c05b64dc6d4b448
Author: Andy Taylor 
AuthorDate: Thu May 2 12:00:02 2024 +0100

ARTEMIS-4680 - Upgrade the console to use HawtIO 4

more upgrades to components in extension
---
 .../artemis-extension/package.json |   8 +-
 .../artemis-extension/yarn.lock| 125 +
 2 files changed, 34 insertions(+), 99 deletions(-)

diff --git a/artemis-console-extension/artemis-extension/package.json 
b/artemis-console-extension/artemis-extension/package.json
index 82a7b89..309eebb 100644
--- a/artemis-console-extension/artemis-extension/package.json
+++ b/artemis-console-extension/artemis-extension/package.json
@@ -49,7 +49,13 @@
 "victory-shared-events": "36.8.6",
 "victory-voronoi-container": "36.8.6",
 "victory-zoom-container": "36.8.6",
-"fork-ts-checker-webpack-plugin": "6.5.3"
+"fork-ts-checker-webpack-plugin": "6.5.3",
+"d3-color": "3.1.0",
+"nth-check": "2.0.1",
+"tough-cookie": "4.1.3",
+"semver": "7.5.2",
+"word-wrap": "1.2.4",
+"postcss": "8.4.31"
   },
   "eslintConfig": {
 "extends": [
diff --git a/artemis-console-extension/artemis-extension/yarn.lock 
b/artemis-console-extension/artemis-extension/yarn.lock
index c7772ea..3ff70e3 100644
--- a/artemis-console-extension/artemis-extension/yarn.lock
+++ b/artemis-console-extension/artemis-extension/yarn.lock
@@ -6109,7 +6109,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"boolbase@npm:^1.0.0, boolbase@npm:~1.0.0":
+"boolbase@npm:^1.0.0":
   version: 1.0.0
   resolution: "boolbase@npm:1.0.0"
   checksum: 
3e25c80ef626c3a3487c73dbfc70ac322ec830666c9ad915d11b701142fab25ec1e63eff2c450c74347acfd2de854ccde865cd79ef4db1683f7c7b046ea43bb0
@@ -7258,14 +7258,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"d3-color@npm:1":
-  version: 1.4.1
-  resolution: "d3-color@npm:1.4.1"
-  checksum: 
a214b61458b5fcb7ad1a84faed0e02918037bab6be37f2d437bf0e2915cbd854d89fbf93754f17b0781c89e39d46704633d05a2bfae77e6209f0f4b140f9894b
-  languageName: node
-  linkType: hard
-
-"d3-color@npm:1 - 3":
+"d3-color@npm:3.1.0":
   version: 3.1.0
   resolution: "d3-color@npm:3.1.0"
   checksum: 
4931fbfda5d7c4b5cfa283a13c91a954f86e3b69d75ce588d06cde6c3628cebfc3af2069ccf225e982e8987c612aa7948b3932163ce15eb3c11cd7c003f3ee3b
@@ -12866,12 +12859,12 @@ __metadata:
   languageName: node
   linkType: hard
 
-"nanoid@npm:^3.3.4":
-  version: 3.3.4
-  resolution: "nanoid@npm:3.3.4"
+"nanoid@npm:^3.3.6":
+  version: 3.3.7
+  resolution: "nanoid@npm:3.3.7"
   bin:
 nanoid: bin/nanoid.cjs
-  checksum: 
2fddd6dee994b7676f008d3ffa4ab16035a754f4bb586c61df5a22cf8c8c94017aadd360368f47d653829e0569a92b129979152ff97af23a558331e47e37cd9c
+  checksum: 
d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2
   languageName: node
   linkType: hard
 
@@ -13051,21 +13044,12 @@ __metadata:
   languageName: node
   linkType: hard
 
-"nth-check@npm:^1.0.2":
-  version: 1.0.2
-  resolution: "nth-check@npm:1.0.2"
-  dependencies:
-boolbase: ~1.0.0
-  checksum: 
59e115fdd75b971d0030f42ada3aac23898d4c03aa13371fa8b3339d23461d1badf3fde5aad251fb956aaa75c0a3b9bfcd07c08a34a83b4f9dadfdce1d19337c
-  languageName: node
-  linkType: hard
-
-"nth-check@npm:^2.0.1":
-  version: 2.1.1
-  resolution: "nth-check@npm:2.1.1"
+"nth-check@npm:2.0.1":
+  version: 2.0.1
+  resolution: "nth-check@npm:2.0.1"
   dependencies:
 boolbase: ^1.0.0
-  checksum: 
5afc3dafcd1573b08877ca8e6148c52abd565f1d06b1eb08caf982e3fa289a82f2cae697ffb55b5021e146d60443f1590a5d6b944844e944714a5b549675bcd3
+  checksum: 
5386d035c48438ff304fe687704d93886397349d1bed136de97aeae464caba10e8ffac55a04b215b86b3bc8897f33e0a5aa1045a9d8b2f251ae61b2a3ad3e450
   languageName: node
   linkType: hard
 
@@ -13514,13 +13498,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"picocolors@npm:^0.2.1":
-  version: 0.2.1
-  resolution: "picocolors@npm:0.2.1"
-  checksum: 
3b0f441f0062def0c0f39e87b898ae7461c3a16ffc9f974f320b44c799418cabff17780ee647fda42b856a1dc45897e2c62047e1b546d94d6d5c6962f45427

(activemq-artemis-console) branch main updated: ARTEMIS-4680 - Upgrade the console to use HawtIO 4

2024-05-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-console.git


The following commit(s) were added to refs/heads/main by this push:
 new c86fbdf  ARTEMIS-4680 - Upgrade the console to use HawtIO 4
c86fbdf is described below

commit c86fbdfd440184d220b6365448629d9295381418
Author: Andy Taylor 
AuthorDate: Thu May 2 10:31:48 2024 +0100

ARTEMIS-4680 - Upgrade the console to use HawtIO 4

upgrade components in extension

https://issues.apache.org/jira/browse/ARTEMIS-4680
---
 .../artemis-extension/yarn.lock| 245 +++--
 1 file changed, 173 insertions(+), 72 deletions(-)

diff --git a/artemis-console-extension/artemis-extension/yarn.lock 
b/artemis-console-extension/artemis-extension/yarn.lock
index 590c4b3..c7772ea 100644
--- a/artemis-console-extension/artemis-extension/yarn.lock
+++ b/artemis-console-extension/artemis-extension/yarn.lock
@@ -54,6 +54,16 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/code-frame@npm:^7.24.2":
+  version: 7.24.2
+  resolution: "@babel/code-frame@npm:7.24.2"
+  dependencies:
+"@babel/highlight": ^7.24.2
+picocolors: ^1.0.0
+  checksum: 
70e867340cfe09ca5488b2f36372c45cabf43c79a5b6426e6df5ef0611ff5dfa75a57dda841895693de6008f32c21a7c97027a8c7bcabd63a7d17416cbead6f8
+  languageName: node
+  linkType: hard
+
 "@babel/compat-data@npm:^7.17.7, @babel/compat-data@npm:^7.20.1, 
@babel/compat-data@npm:^7.20.5":
   version: 7.21.0
   resolution: "@babel/compat-data@npm:7.21.0"
@@ -152,6 +162,18 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/generator@npm:^7.24.5":
+  version: 7.24.5
+  resolution: "@babel/generator@npm:7.24.5"
+  dependencies:
+"@babel/types": ^7.24.5
+"@jridgewell/gen-mapping": ^0.3.5
+"@jridgewell/trace-mapping": ^0.3.25
+jsesc: ^2.5.1
+  checksum: 
a08c0ab900b36e1a17863e18e3216153322ea993246fd7a358ba38a31cfb15bab2af1dc178b2adafe4cb8a9f3ab0e0ceafd3fe6e8ca870dffb435b53b2b2a803
+  languageName: node
+  linkType: hard
+
 "@babel/helper-annotate-as-pure@npm:^7.18.6":
   version: 7.18.6
   resolution: "@babel/helper-annotate-as-pure@npm:7.18.6"
@@ -460,6 +482,15 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/helper-split-export-declaration@npm:^7.24.5":
+  version: 7.24.5
+  resolution: "@babel/helper-split-export-declaration@npm:7.24.5"
+  dependencies:
+"@babel/types": ^7.24.5
+  checksum: 
f23ab6942568084a57789462ce55dc9631aef1d2142ffa2ee28fc411ab55ed3ca65adf109e48655aa349bf8df7ca6dd81fd91c8c229fee1dc77e283189dc83c2
+  languageName: node
+  linkType: hard
+
 "@babel/helper-string-parser@npm:^7.19.4":
   version: 7.19.4
   resolution: "@babel/helper-string-parser@npm:7.19.4"
@@ -474,6 +505,13 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/helper-string-parser@npm:^7.24.1":
+  version: 7.24.1
+  resolution: "@babel/helper-string-parser@npm:7.24.1"
+  checksum: 
8404e865b06013979a12406aab4c0e8d2e377199deec09dfe9f57b833b0c9ce7b6e8c1c553f2da8d0bcd240c5005bd7a269f4fef0d628aeb7d5fe035c436fb67
+  languageName: node
+  linkType: hard
+
 "@babel/helper-validator-identifier@npm:^7.18.6, 
@babel/helper-validator-identifier@npm:^7.19.1":
   version: 7.19.1
   resolution: "@babel/helper-validator-identifier@npm:7.19.1"
@@ -488,6 +526,13 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/helper-validator-identifier@npm:^7.24.5":
+  version: 7.24.5
+  resolution: "@babel/helper-validator-identifier@npm:7.24.5"
+  checksum: 
75d6f9f475c08f3be87bae4953e9b8d8c72983e16ed2860870b328d048cb20dccb4fcbf85eacbdd817ea1efbb38552a6db9046e2e37bfe13bdec44ac8939024c
+  languageName: node
+  linkType: hard
+
 "@babel/helper-validator-option@npm:^7.18.6, 
@babel/helper-validator-option@npm:^7.21.0":
   version: 7.21.0
   resolution: "@babel/helper-validator-option@npm:7.21.0"
@@ -558,6 +603,18 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@babel/highlight@npm:^7.24.2":
+  version: 7.24.5
+  resolution: "@babel/highlight@npm:7.24.5"
+  dependencies:
+"@babel/helper-validator-identifier": ^7.24.5
+chalk: ^2.4.2
+js-tokens: ^4.0.0
+picocolors: ^1.0.0
+  checksum: 
eece0e63e9210e902f1ee88f15cabfa31d2693bd2e56806eb849478b859d274c24477081c649cee6a241c4aed7da6f3e05c7afa5c3cd70094006ed095292b0d0
+  languageName: node
+  linkType: hard
+
 "@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, 
@babel/parser@npm:^7.20.7, @babel/parser@npm:^7.21.3":
   version: 7.21.3
   resolution: "@babel/parser@npm:7.21.3"
@@ -576,6 +633,15 @@ __metadata:
   languageName: node
   linkType: hard
 
+"@ba

(activemq-artemis) branch main updated: ARTEMIS-4752 upgrade ErrorProne to 2.27.0

2024-05-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 8b73335b46 ARTEMIS-4752 upgrade ErrorProne to 2.27.0
8b73335b46 is described below

commit 8b73335b464adf9cb79c762c0ca30910228a09db
Author: Justin Bertram 
AuthorDate: Wed May 1 14:40:57 2024 -0500

ARTEMIS-4752 upgrade ErrorProne to 2.27.0

The upgraded ErrorProne found some new issues so this commit fixes those
as well.
---
 pom.xml   | 2 +-
 .../tests/integration/management/ActiveMQServerControlTest.java   | 8 
 .../artemis/tests/integration/server/ConfigurationTest.java   | 4 ++--
 .../tests/integration/stomp/StompWithLargeMessagesTest.java   | 6 +++---
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/pom.xml b/pom.xml
index 63cfab396c..9b530dfef1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -105,7 +105,7 @@
   10.0.20
   4.0.6
   5.3.4.Final
-  2.24.1
+  2.27.0
   5.1.9
   3.3.2
   2.16.1
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
index be1cb95741..3c50732111 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
@@ -2620,7 +2620,7 @@ public class ActiveMQServerControlTest extends 
ManagementTestBase {
  second = array.getJsonObject(0);
   }
 
-  
Assert.assertNotNull(first.getJsonNumber(ConsumerField.ID.getAlternativeName()).longValue());
+  
Assert.assertNotNull(first.getJsonNumber(ConsumerField.ID.getAlternativeName()));
   
Assert.assertTrue(first.getString(ConsumerField.CONNECTION.getAlternativeName()).length()
 > 0);
   Assert.assertEquals(factory.getConnection().getID().toString(), 
first.getString(ConsumerField.CONNECTION.getAlternativeName()));
   
Assert.assertTrue(first.getString(ConsumerField.SESSION.getAlternativeName()).length()
 > 0);
@@ -2633,7 +2633,7 @@ public class ActiveMQServerControlTest extends 
ManagementTestBase {
   // test the old version that has been replaced for backward compatibility
   Assert.assertEquals(0, 
first.getJsonNumber(ConsumerField.MESSAGES_IN_TRANSIT.getAlternativeName()).longValue());
 
-  
Assert.assertNotNull(second.getJsonNumber(ConsumerField.ID.getAlternativeName()).longValue());
+  
Assert.assertNotNull(second.getJsonNumber(ConsumerField.ID.getAlternativeName()));
   
Assert.assertTrue(second.getString(ConsumerField.CONNECTION.getAlternativeName()).length()
 > 0);
   Assert.assertEquals(factory.getConnection().getID().toString(), 
second.getString(ConsumerField.CONNECTION.getAlternativeName()));
   
Assert.assertTrue(second.getString(ConsumerField.SESSION.getAlternativeName()).length()
 > 0);
@@ -2704,7 +2704,7 @@ public class ActiveMQServerControlTest extends 
ManagementTestBase {
   JsonObject second = sorted[1];
 
   
Assert.assertTrue(first.getJsonNumber(ConsumerField.CREATION_TIME.getName()).longValue()
 > 0);
-  
Assert.assertNotNull(first.getJsonNumber(ConsumerField.ID.getAlternativeName()).longValue());
+  
Assert.assertNotNull(first.getJsonNumber(ConsumerField.ID.getAlternativeName()));
   
Assert.assertTrue(first.getString(ConsumerField.CONNECTION.getAlternativeName()).length()
 > 0);
   Assert.assertEquals(factory.getConnection().getID().toString(), 
first.getString(ConsumerField.CONNECTION.getAlternativeName()));
   
Assert.assertTrue(first.getString(ConsumerField.SESSION.getAlternativeName()).length()
 > 0);
@@ -2719,7 +2719,7 @@ public class ActiveMQServerControlTest extends 
ManagementTestBase {
   Assert.assertEquals(0, 
first.getJsonNumber(ConsumerField.LAST_ACKNOWLEDGED_TIME.getName()).longValue());
 
   
Assert.assertTrue(second.getJsonNumber(ConsumerField.CREATION_TIME.getName()).longValue()
 > 0);
-  
Assert.assertNotNull(second.getJsonNumber(ConsumerField.ID.getAlternativeName()).longValue());
+  
Assert.assertNotNull(second.getJsonNumber(ConsumerField.ID.getAlternativeName()));
   
Assert.assertTrue(second.getString(ConsumerField.CONNECTION.getAlternativeName()).length()
 > 0);
   Assert.assertEquals(factory2.getConnection().getID().toString(), 
second.getString(ConsumerField.CONNECTION.getAlternativeName()));
   
Assert.assertTrue(second.getString(ConsumerField.SESSION.getAlternativeName()).length()
 > 0);
diff --git 
a/tests/integration-tests/src/test/java/org

(activemq-artemis) branch main updated: ARTEMIS-4745 Allow configuration of the pull consumer batch size

2024-04-26 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 659b17c3a9 ARTEMIS-4745 Allow configuration of the pull consumer batch 
size
659b17c3a9 is described below

commit 659b17c3a933a7d80f9148836d7b9bbd4275932f
Author: Timothy Bish 
AuthorDate: Fri Apr 26 11:00:26 2024 -0400

ARTEMIS-4745 Allow configuration of the pull consumer batch size

Allow for configuration of the batch size granted to the remote when an
AMQP federation queue receiver is pulling messages only when there is
local capacity to handle them. Some code housekeeping is done here to
make adding future properties a bit simpler and require fewer changes.
---
 .../amqp/connect/federation/AMQPFederation.java| 35 +-
 .../federation/AMQPFederationAddressConsumer.java  |  4 +-
 .../AMQPFederationAddressPolicyManager.java|  2 +-
 .../federation/AMQPFederationConfiguration.java| 21 ++
 .../federation/AMQPFederationConstants.java|  8 +++
 .../AMQPFederationConsumerConfiguration.java   | 30 +++--
 .../federation/AMQPFederationQueueConsumer.java| 10 ++-
 .../connect/federation/AMQPFederationSource.java   | 57 +---
 .../connect/federation/AMQPFederationTarget.java   | 34 +-
 .../amqp/connect/AMQPFederationConnectTest.java|  4 ++
 .../connect/AMQPFederationQueuePolicyTest.java | 76 +++---
 11 files changed, 136 insertions(+), 145 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
index d2a8cf3542..1f3c818155 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
@@ -36,7 +36,6 @@ import 
org.apache.activemq.artemis.protocol.amqp.federation.internal.FederationQ
 import org.apache.activemq.artemis.protocol.amqp.proton.AMQPConnectionContext;
 import org.apache.activemq.artemis.protocol.amqp.proton.AMQPSessionContext;
 import org.apache.qpid.proton.engine.Link;
-import org.apache.qpid.proton.engine.Receiver;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -132,39 +131,9 @@ public abstract class AMQPFederation implements 
FederationInternal {
public abstract AMQPSessionContext getSessionContext();
 
/**
-* @return the timeout before signaling an error when creating remote link 
(0 mean disable).
+* @return the federation configuration that is in effect.
 */
-   public abstract int getLinkAttachTimeout();
-
-   /**
-* @return the configured {@link Receiver} link credit batch size.
-*/
-   public abstract int getReceiverCredits();
-
-   /**
-* @return the configured {@link Receiver} link credit low value.
-*/
-   public abstract int getReceiverCreditsLow();
-
-   /**
-* @return the size in bytes before a message is considered large.
-*/
-   public abstract int getLargeMessageThreshold();
-
-   /**
-* @return the true if the federation should ignore filters on queue 
consumers.
-*/
-   public abstract boolean isIgnoreQueueConsumerFilters();
-
-   /**
-* @return the true if the federation should ignore priorities on queue 
consumers.
-*/
-   public abstract boolean isIgnoreQueueConsumerPriorities();
-
-   /**
-* @return the true if the federation should support core message tunneling.
-*/
-   public abstract boolean isCoreMessageTunnelingEnabled();
+   public abstract AMQPFederationConfiguration getConfiguration();
 
@Override
public final synchronized void start() throws ActiveMQException {
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
index 777452c708..2e8346a63f 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
@@ -321,11 +321,11 @@ public class AMQPFederationAddressConsumer implements 
FederationConsumerInternal
 final ScheduledFuture openTimeoutTask;
 final AtomicBoolean openTimedOut = new AtomicBoolean(false

(activemq-artemis) branch main updated: ARTEMIS-4744 Fully support multple host broker connections URIs

2024-04-25 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 ee7a2c0944 ARTEMIS-4744 Fully support multple host broker connections 
URIs
ee7a2c0944 is described below

commit ee7a2c0944843bf8b3ebb939f5833aa26b1e1868
Author: Timothy Bish 
AuthorDate: Thu Apr 25 13:01:00 2024 -0400

ARTEMIS-4744 Fully support multple host broker connections URIs

Create a new NettyConnector for each connection attempt that is configured 
from
distinct broker connection URIs which allows for differing TLS configuration
per remote connection configuration.
---
 .../amqp/connect/AMQPBrokerConnection.java | 109 +---
 .../amqp/connect/AMQPBrokerConnectionManager.java  |  17 +-
 .../connect/mirror/AMQPMirrorControllerSource.java |   5 +-
 .../amqp/connect/AMQPConnectSaslTest.java  | 189 -
 4 files changed, 276 insertions(+), 44 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/AMQPBrokerConnection.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/AMQPBrokerConnection.java
index 0223f9ac8b..5b4c1c9892 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/AMQPBrokerConnection.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/AMQPBrokerConnection.java
@@ -49,8 +49,11 @@ import 
org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPMirror
 import org.apache.activemq.artemis.core.postoffice.Binding;
 import org.apache.activemq.artemis.core.postoffice.QueueBinding;
 import org.apache.activemq.artemis.core.remoting.CertificateUtil;
+import org.apache.activemq.artemis.core.remoting.CloseListener;
+import org.apache.activemq.artemis.core.remoting.FailureListener;
 import org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnection;
 import org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnector;
+import 
org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnectorFactory;
 import org.apache.activemq.artemis.core.remoting.impl.netty.TransportConstants;
 import org.apache.activemq.artemis.core.server.ActiveMQComponent;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
@@ -65,10 +68,13 @@ import 
org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage;
 import org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback;
 import 
org.apache.activemq.artemis.protocol.amqp.broker.ActiveMQProtonRemotingConnection;
 import org.apache.activemq.artemis.protocol.amqp.broker.ProtonProtocolManager;
+import 
org.apache.activemq.artemis.protocol.amqp.broker.ProtonProtocolManagerFactory;
+import 
org.apache.activemq.artemis.protocol.amqp.connect.AMQPBrokerConnectionManager.ClientProtocolManagerWithAMQP;
 import 
org.apache.activemq.artemis.protocol.amqp.connect.federation.AMQPFederationPolicySupport;
 import 
org.apache.activemq.artemis.protocol.amqp.connect.federation.AMQPFederationSource;
 import 
org.apache.activemq.artemis.protocol.amqp.connect.mirror.AMQPMirrorControllerAggregation;
 import 
org.apache.activemq.artemis.protocol.amqp.connect.mirror.AMQPMirrorControllerSource;
+import 
org.apache.activemq.artemis.protocol.amqp.connect.mirror.ReferenceIDSupplier;
 import 
org.apache.activemq.artemis.protocol.amqp.logger.ActiveMQAMQPProtocolLogger;
 import 
org.apache.activemq.artemis.protocol.amqp.logger.ActiveMQAMQPProtocolMessageBundle;
 import org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter;
@@ -120,10 +126,13 @@ public class AMQPBrokerConnection implements 
ClientConnectionLifeCycleListener,
 */
public static final boolean DEFAULT_CORE_MESSAGE_TUNNELING_ENABLED = true;
 
+   private static final NettyConnectorFactory CONNECTOR_FACTORY = new 
NettyConnectorFactory().setServerConnector(true);
+
+   private final ProtonProtocolManagerFactory protonProtocolManagerFactory;
+   private final ReferenceIDSupplier referenceIdSupplier;
private final AMQPBrokerConnectConfiguration brokerConnectConfiguration;
-   private final ProtonProtocolManager protonProtocolManager;
private final ActiveMQServer server;
-   private final NettyConnector bridgesConnector;
+   private final List configurations;
private NettyConnection connection;
private Session session;
private AMQPSessionContext sessionContext;
@@ -134,6 +143,7 @@ public class AMQPBrokerConnection implements 
ClientConnectionLifeCycleListener,
private AMQPFederationSource brokerFederation;
private int retryCounter = 0;
private int lastRetryCounter;
+   private int connectionTimeout;
private boolean connecting = false;
private volatile

(activemq-artemis) branch main updated: ARTEMIS-1921 setting client ID on core JMS should be reflected in broker RemotingConnection

2024-04-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 791630fa86 ARTEMIS-1921 setting client ID on core JMS should be 
reflected in broker RemotingConnection
791630fa86 is described below

commit 791630fa861f868beb3e2d778eb44f92117b0220
Author: Justin Bertram 
AuthorDate: Mon Apr 15 13:00:48 2024 -0500

ARTEMIS-1921 setting client ID on core JMS should be reflected in broker 
RemotingConnection
---
 .../core/management/impl/view/ConnectionView.java  | 10 +
 .../core/management/impl/view/ConsumerView.java| 13 ++-
 .../core/management/impl/view/ProducerView.java| 12 +-
 .../core/server/impl/ServerSessionImpl.java|  4 ++
 .../jms/multiprotocol/JMSClientIDTest.java | 44 ++
 .../MultiprotocolJMSClientTestSupport.java |  9 -
 .../management/ActiveMQServerControlTest.java  | 36 --
 7 files changed, 71 insertions(+), 57 deletions(-)

diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConnectionView.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConnectionView.java
index 6f38df3922..6f0a72b7b3 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConnectionView.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConnectionView.java
@@ -16,16 +16,15 @@
  */
 package org.apache.activemq.artemis.core.management.impl.view;
 
-import org.apache.activemq.artemis.json.JsonObjectBuilder;
 import java.util.Date;
 import java.util.List;
 import java.util.Set;
 import java.util.TreeSet;
 
-import org.apache.activemq.artemis.api.core.client.ClientSession;
 import 
org.apache.activemq.artemis.core.management.impl.view.predicate.ConnectionFilterPredicate;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.core.server.ServerSession;
+import org.apache.activemq.artemis.json.JsonObjectBuilder;
 import org.apache.activemq.artemis.spi.core.protocol.RemotingConnection;
 import org.apache.activemq.artemis.utils.JsonLoader;
 import org.apache.activemq.artemis.utils.StringUtil;
@@ -52,14 +51,9 @@ public class ConnectionView extends 
ActiveMQAbstractView {
 
   List sessions = 
server.getSessions(connection.getID().toString());
   Set users = new TreeSet<>();
-  String jmsSessionClientID = null;
   for (ServerSession session : sessions) {
  String username = session.getUsername() == null ? "" : 
session.getUsername();
  users.add(username);
- //for the special case for JMS
- if 
(session.getMetaData(ClientSession.JMS_SESSION_IDENTIFIER_PROPERTY) != null) {
-jmsSessionClientID = session.getMetaData("jms-client-id");
- }
   }
 
   return JsonLoader.createObjectBuilder()
@@ -69,7 +63,7 @@ public class ConnectionView extends 
ActiveMQAbstractView {
  .add(ConnectionField.CREATION_TIME.getName(), new 
Date(connection.getCreationTime()).toString())
  .add(ConnectionField.IMPLEMENTATION.getName(), 
toString(connection.getClass().getSimpleName()))
  .add(ConnectionField.PROTOCOL.getName(), 
toString(connection.getProtocolName()))
- .add(ConnectionField.CLIENT_ID.getName(), 
toString(connection.getClientID() != null ? connection.getClientID() : 
jmsSessionClientID))
+ .add(ConnectionField.CLIENT_ID.getName(), 
toString(connection.getClientID()))
  .add(ConnectionField.LOCAL_ADDRESS.getName(), 
toString(connection.getTransportLocalAddress()))
  .add(ConnectionField.SESSION_COUNT.getName(), sessions.size());
}
diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConsumerView.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConsumerView.java
index 48c6293330..c3a5013faa 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConsumerView.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/ConsumerView.java
@@ -16,15 +16,14 @@
  */
 package org.apache.activemq.artemis.core.management.impl.view;
 
-import 
org.apache.activemq.artemis.core.management.impl.ActiveMQServerControlImpl;
-import org.apache.activemq.artemis.json.JsonObjectBuilder;
 import java.util.Date;
 
-import org.apache.activemq.artemis.api.core.client.ClientSession;
+import 
org.apache.activemq.artemis.core.management.impl.ActiveMQServerControlImpl;
 import 
org.apache.activemq.artemis.core.management.impl.view.predicate.ConsumerFilterPredicate;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.

(activemq-artemis) branch main updated: ARTEMIS-4625 upgrade CheckStyle to 10.15.0

2024-04-16 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 7072eb187a ARTEMIS-4625 upgrade CheckStyle to 10.15.0
7072eb187a is described below

commit 7072eb187ac4dea1a68414823e7b883a38ee319a
Author: Justin Bertram 
AuthorDate: Fri Apr 12 16:32:48 2024 -0500

ARTEMIS-4625 upgrade CheckStyle to 10.15.0
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index f3f0133348..40d2049206 100644
--- a/pom.xml
+++ b/pom.xml
@@ -110,7 +110,7 @@
   3.3.2
   2.16.1
   1.44.1
-  10.12.7
+  10.15.0
   5.10.0
   4.0.2
   4.1.108.Final



svn commit: r68543 - /dev/activemq/KEYS

2024-04-15 Thread robbie
Author: robbie
Date: Mon Apr 15 17:56:08 2024
New Revision: 68543

Log:
remove KEYS file copy, the newly added content from r68541 was copied to the 
release area file in r68542

Removed:
dev/activemq/KEYS



svn commit: r68542 - /release/activemq/KEYS

2024-04-15 Thread robbie
Author: robbie
Date: Mon Apr 15 17:33:32 2024
New Revision: 68542

Log:
copy addition from Andy Taylor in r68541 from dev area into dist area KEYS file

Modified:
release/activemq/KEYS

Modified: release/activemq/KEYS
==
--- release/activemq/KEYS (original)
+++ release/activemq/KEYS Mon Apr 15 17:33:32 2024
@@ -1853,3 +1853,64 @@ BQ/qsDfimZpqwyLW2+4BgFxLgOE8bZTPiJTEmfAC
 v3bFHTk24dCc3QHRqFozGvNQyTzeTxtyIZ0Rsq9TKOBfRNmSTy+0hvHd5Q==
 =+QeH
 -END PGP PUBLIC KEY BLOCK-
+
+pub   rsa4096 2024-04-15 [SC]
+  89F10275838B9CE605FB5F92C057DA235E620327
+uid   [ultimate] Andy Taylor (CODE SIGNING KEY) 
+sig 3C057DA235E620327 2024-04-15  [self-signature]
+sub   rsa4096 2024-04-15 [E]
+sig  C057DA235E620327 2024-04-15  [self-signature]
+
+-BEGIN PGP PUBLIC KEY BLOCK-
+
+mQINBGYdR3oBEADAKb0pvVreVS4BNGkf3WUzjpyGryERQb7CWBN+f4jeBFkC542+
+ckjRznKfbB7Bhk00rIBe4SSj/PgilNeICnELvvmWKfKWsBVIQMYBm2mQwfv9i2WX
+cFmUdhh/M5KaaJHXtXrpVCVrRkfpR8HIUAHy3lppyhJq74Hus6azw1mghkF8jirc
+COAAdtJ49cYoRAW/H3+yXrqaVn576mETySJLhvrND7xSkCYuvi25GIorkOkFtaRR
+mdwY7r0B8QBJnpS0grGy8okbGCFOOkCcYi6Jl55ycq8VWI8rjpPcip56b7iAOeeq
+QIS8m9RwvMF4vVrEirBb4oR+o6A81ZoeoBMPtxkqsBR265WbuNY9GO6wBm63g9UG
+lL2+4PB55ugC5qvWdX3DxEw9FyUKXVNoIwVr+gDVlfr/2magLWx7zKiVbTeWEU7n
+qCMDy1daRcbDr/fDfrObtpeHv0h07Tb53Y7EBIL7PoqB/n3+aZRtLD8Y8WJ8qcFV
+te7CeSp+acVdaX+QzjhMTTNUp2UHcA4pv3ZOo2ZSxyGtpdloTP6qzPmfd7PVmfr3
+VxU1q8ghUKY28bvxwwajDMwi9tfR0MWSGgXWM/G/oiy42vsmB1bKpYP+1gcsgRqZ
+vCwJzzf3Zd4+jE/ZNKD1jnaPYqrkNQS32HyfeeKONCVTbjmLxM4QAs1vXQARAQAB
+tDZBbmR5IFRheWxvciAoQ09ERSBTSUdOSU5HIEtFWSkgPGFuZHl0YXlsb3JAYXBh
+Y2hlLm9yZz6JAlEEEwEIADsWIQSJ8QJ1g4uc5gX7X5LAV9ojXmIDJwUCZh1HegIb
+AwULCQgHAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRDAV9ojXmIDJ2udD/9Rsnu5
+OZRaICMELt93ulzGbuJs1EXbtDPQfTH0h0XD58C3mEJArK446pDbO2tJ0JFuDTDA
+IO/mETloioq7QznZJsZubygnnDqV/qkyNmqjaPKyY008kDvtCFJPMJgye2wfvNn+
+iY4dNr+X6gHJ0b9/RimlLTTf+8CdCI2DxkyVBuxP4mDJFAQBM4royfm0SNrlitnu
+IKSgel68p9Km1maTL0yA/khy9a4Vk63wvC0eKj22x94Bsk3vEejSi3kaJf/LJwFX
+IyOF/2BpCOhRctFq3+h8NFvH2QQDOEwO6/YGxq3Er7/8s3QySNE1GtfBOMYAxpt0
+dW02yw7HI+XoBaB3SeG6JGTDHfN/ic8p9SPyMsvlfdBFVPfvVQ+eespJJ99v1Air
+8BnVGbQ3dUyxZyVR8tTPb2rI96oMTa5IUUODfEGeRKC5fEvO5qtZKjqgYICiSNrb
+HfjEzK1Ec3Xe7ctQkG9PWSDXysyjAzk5GM4gAdZ1PWG33VVOAXW0ozRYJO4Cyixg
+Xfa/QsTHcdewa9HWrjdq1WVC5rJGH+QRh2yVPINRXYuwJ8n0RMdShZaFxray6Zi9
+7Qh35hzBpCcxnX/i6V8EdyyTXwu64tXheHofHvRXQBCKFJcaYN0tu1GqvLyzZ7fu
+E7QUg7vFMIKNAb+fdzDlvVeaV5Q2sdARBvhLnLkCDQRmHUd6ARAAuUov0xp53wae
+sl1A3HBzYlBdAPBbH+lv2FkQEjnkNgTzbe1wppCtidU635pDikYEu2Py1BM3o/3p
+p9P0RfzzM3xn98vP+k3noaWU9A0poUC1ZoCHkrj6alfssYM4bzjsiyP0cmsho0tM
+9jJz+OkoYaCIdBxZNSqCkiN3JCt+gQ8KPY4btTwLM28CBTvMRMrZQKQMUPaKts5X
+ECnB6RJporddB7GTd3Xyi1ehCTUkaE82bzGSTygYCmvbcFZPWpoX5HZdgjVDjYyM
+4CJuUPpNbGlN3BRQZZx/0Gw0oa4XkIMaHa6+M3CzaDIcwYx151eAIdklO7+KTwpM
+eZdMFjeseynVWyf7kHno3CNlNCcNNmnIiMs5CXTyJ/+XALg2a/c1x39weJVDLYXG
+XK4T+PmbeTY73cDLFiO2+AGnbvBIkDeWCVF6mFHiW02gjXKytaojATYH3cKXieHX
+WnUbUN7SM2v2KR8/5a6SEYKwLh2LVXKsedgBIk2AN/dUeraQX9/Rk4F5O7Gd+YFh
+X7PqrvtC3cfR8CUXt6oPWSLg2Dq3elQVnpDSA6zH7ajhV40di3C8dHyUMF8US+EQ
+BaIY7SM6YvdaZ8vlf515fm5ZNqIIQAMsgzWcZn0yWNo4Q0+c5jENjSukmWYYSJX0
+J88WHWv2Pk8P7PMhEUwOcEfYd7awDqcAEQEAAYkCNgQYAQgAIBYhBInxAnWDi5zm
+BftfksBX2iNeYgMnBQJmHUd6AhsMAAoJEMBX2iNeYgMnnZEQALXU4Pj9xln6QKxf
+zxKdHEfCjeEuhUkL4I6YFlMk2CiKkGFTKn7mbFzBt5lA5FqOvpcIjloMcFPu2QUF
+lmR+AV4Ma3PEwZwczq1WKHYI6Gjo4X9L+dXFPM00H3q4ERZhvvobjRDbQMBFVOeA
+6mxc4jA5SBVM7SpVpKscbivrouCrb0PgUZbD7/i5nwhU29lT5Xi+FzQLI7IOhWiz
+c7zb+xJhD9Hnp+9PBLC5c06n9z3rFKzxAPJ8+ZM17isCuaSpfa0Do7RnJC6gDu3j
+8uEEWYnxIZmaqNZs8WOfRirfsFUOQG/gxmfc+WKVx3ZTViiSnHPvCqStLGhopNEM
+10QqUNvKmmVwyTFSsuEv+XqLetQO4wALOEiYXLSFiBANLXdmBwRVUkkQeD+fkpHs
+ZwLwV0Fm75BmUva2LyMXvYTC7g/Hz1+LFJbopdGLhsrcp7g2J/hfmUSUdYPTsHjB
+Lz2UZazFsswX67+iFIp3p8m0nHRizqaIIWYosnaoo3SZ0PnPYa41NXeTFDMN9Gz6
+qPGtab/XgvvDLrJVn3XCmdHMRcv8fQnpe4b549Uq961YrGmd0TvfdyfnzrvCwGaa
+w2z057iagHT1ZgThhk0yCLYsXHgsQ+7YcdCuHkV/ucJ0Xn9izviPtGXPXEJpjYYs
+sByw5smKL7dj3h7n3v4RX3Hllkov
+=2x6z
+-END PGP PUBLIC KEY BLOCK-
+




(activemq-artemis-examples) branch development updated: ARTEMIS-4720 Add an example of AMQP federation over SSL

2024-04-11 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 064b177  ARTEMIS-4720 Add an example of AMQP federation over SSL
064b177 is described below

commit 064b177decaa9c9920e17c9514ab73b68e0c12cc
Author: Timothy Bish 
AuthorDate: Thu Apr 11 09:17:54 2024 -0400

ARTEMIS-4720 Add an example of AMQP federation over SSL

Adds an example that shows how to configure broker connections for AMQP
federation over an SSL connection.
---
 .../amqp-federation-over-ssl/pom.xml   | 158 +
 .../amqp-federation-over-ssl/readme.md |  19 +++
 .../jms/example/BrokerFederationExample.java   |  86 +++
 .../src/main/resources/activemq/server0/broker.xml | 123 
 .../activemq/server0/server-ca-truststore.p12  | Bin 0 -> 1270 bytes
 .../resources/activemq/server0/server-keystore.p12 | Bin 0 -> 5000 bytes
 .../src/main/resources/activemq/server1/broker.xml | 106 ++
 .../activemq/server1/server-ca-truststore.p12  | Bin 0 -> 1270 bytes
 .../resources/activemq/server1/server-keystore.p12 | Bin 0 -> 5000 bytes
 .../amqp-federation-over-ssl/store-generation.txt  |  62 
 examples/features/broker-connection/pom.xml|   2 +
 scripts/run-examples.sh|   2 +
 12 files changed, 558 insertions(+)

diff --git 
a/examples/features/broker-connection/amqp-federation-over-ssl/pom.xml 
b/examples/features/broker-connection/amqp-federation-over-ssl/pom.xml
new file mode 100644
index 000..28dd50d
--- /dev/null
+++ b/examples/features/broker-connection/amqp-federation-over-ssl/pom.xml
@@ -0,0 +1,158 @@
+
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
+   4.0.0
+
+   
+  org.apache.activemq.examples.broker-connection
+  broker-connections
+  2.34.0-SNAPSHOT
+   
+
+   amqp-federation-over-ssl
+   jar
+   amqp-federation-over-ssl
+
+   
+  ${project.basedir}/../../../..
+   
+
+   
+  
+ org.apache.qpid
+ qpid-jms-client
+  
+   
+
+   
+  
+ 
+org.apache.activemq
+artemis-maven-plugin
+
+   
+  create0
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/server0
+ true
+ 
${basedir}/target/classes/activemq/server0
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  create1
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/server1
+ true
+ 
${basedir}/target/classes/activemq/server1
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+   
+  start1
+  
+ cli
+  
+  
+ ${noServer}
+ true
+ ${basedir}/target/server1
+ 
tcp://localhost:5770?sslEnabled=truetrustStorePath=activemq/server1/server-ca-truststore.p12trustStorePassword=securepasstrustStoreType=PKCS12
+ 
+run
+ 
+ server1
+  
+   
+   
+  start0
+  
+ cli
+  
+  
+ true
+ ${noServer}
+ ${basedir}/target/server0
+ 
tcp://localhost:5660?sslEnabled=truetrustStorePath=activemq/server0/server-ca-truststore.p12trustStorePassword=securepasstrustStoreType=PKCS12
+ 
+run
+ 
+ server0
+  
+   
+   
+  runClient
+  
+ runClient
+  
+  
+ 
+ 
org.apache.activemq.artemis.jms.example.BrokerFederationExample
+  
+   
+   
+  stop0
+  
+ stop
+  
+  
+ ${noServer}
+ 

(activemq-artemis) branch main updated: ARTEMIS-4710 Keep pem-keystore dependencies as is; make it really optional

2024-04-02 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 bf1ea41287 ARTEMIS-4710 Keep pem-keystore dependencies as is; make it 
really optional
bf1ea41287 is described below

commit bf1ea4128775c97e6c6fc6a0ab6921feaf8197d5
Author: Alexey Markevich 
AuthorDate: Tue Apr 2 10:34:59 2024 +0200

ARTEMIS-4710 Keep pem-keystore dependencies as is; make it really
optional

The latest version already uses bcprov-jdk18on.
Avoid global imports to be able to exclude dependency when not used.
---
 artemis-core-client/pom.xml   |  9 -
 .../activemq/artemis/core/remoting/impl/ssl/SSLSupport.java   |  4 ++--
 artemis-pom/pom.xml   | 11 ---
 3 files changed, 2 insertions(+), 22 deletions(-)

diff --git a/artemis-core-client/pom.xml b/artemis-core-client/pom.xml
index 844d97879b..94dce4ab12 100644
--- a/artemis-core-client/pom.xml
+++ b/artemis-core-client/pom.xml
@@ -124,15 +124,6 @@
  de.dentrassi.crypto
  pem-keystore
   
-  
-  
- org.bouncycastle
- bcprov-jdk18on
-  
-  
- org.bouncycastle
- bcpkix-jdk18on
-  
 
   
-
-   
-   
-  org.bouncycastle
-  bcprov-jdk15on
-   
-   
-  org.bouncycastle
-  bcpkix-jdk15on
-   
-
  
  
 org.bouncycastle



(activemq-artemis-examples) branch development updated: ARTEMIS-4703 Add example of Queue federation with multiple brokers

2024-04-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 374f543  ARTEMIS-4703 Add example of Queue federation with multiple 
brokers
374f543 is described below

commit 374f543e79acc9de117d304d1420de9c3898294b
Author: Timothy Bish 
AuthorDate: Thu Mar 28 16:21:32 2024 -0400

ARTEMIS-4703 Add example of Queue federation with multiple brokers

Adds an example that demonstrates moving messages through an intermediary
broker which has no consumer demand.
---
 .../amqp-federation-queue-multiple-brokers/pom.xml | 198 +
 .../readme.md  |  12 ++
 .../jms/example/BrokerFederationExample.java   |  73 
 .../src/main/resources/activemq/serverA/broker.xml | 102 +++
 .../src/main/resources/activemq/serverB/broker.xml | 116 
 .../src/main/resources/activemq/serverC/broker.xml | 112 
 examples/features/broker-connection/pom.xml|   2 +
 7 files changed, 615 insertions(+)

diff --git 
a/examples/features/broker-connection/amqp-federation-queue-multiple-brokers/pom.xml
 
b/examples/features/broker-connection/amqp-federation-queue-multiple-brokers/pom.xml
new file mode 100644
index 000..d43716e
--- /dev/null
+++ 
b/examples/features/broker-connection/amqp-federation-queue-multiple-brokers/pom.xml
@@ -0,0 +1,198 @@
+
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
+   4.0.0
+
+   
+  org.apache.activemq.examples.broker-connection
+  broker-connections
+  2.34.0-SNAPSHOT
+   
+
+   amqp-federation-queue-multiple-brokers
+   jar
+   amqp-federation Queue Multiple Brokers
+
+   
+  ${project.basedir}/../../../..
+   
+
+   
+  
+ org.apache.qpid
+ qpid-jms-client
+  
+   
+
+   
+  
+ 
+org.apache.activemq
+artemis-maven-plugin
+
+   
+  createA
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/serverA
+ true
+ 
${basedir}/target/classes/activemq/serverA
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  createB
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/serverB
+ true
+ 
${basedir}/target/classes/activemq/serverB
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  createC
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/serverC
+ true
+ 
${basedir}/target/classes/activemq/serverC
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+   
+  startA
+  
+ cli
+  
+  
+ ${noServer}
+ true
+ ${basedir}/target/serverA
+ tcp://localhost:5670
+ 
+run
+ 
+ serverA
+  
+   
+   
+  startB
+  
+ cli
+  
+  
+ true
+ ${noServer}
+ ${basedir}/target/serverB
+ tcp://localhost:5671
+ 
+run
+ 
+ serverB
+  
+   
+   
+  startC
+  
+ cli
+  
+  
+ true
+ ${noServer}
+ ${basedir}/target/serverC
+ tcp://localhost:5672
+ 
+run
+ 
+ serverC
+  
+   
+   
+  runClient
+  
+ 

(activemq-artemis) branch main updated: ARTEMIS-4657 support better correlation ID compat b/w JMS clients

2024-03-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 50fae08b09 ARTEMIS-4657 support better correlation ID compat b/w JMS 
clients
50fae08b09 is described below

commit 50fae08b09a76e200ef107d06cc867231f644ccd
Author: Justin Bertram 
AuthorDate: Tue Feb 27 11:25:51 2024 -0600

ARTEMIS-4657 support better correlation ID compat b/w JMS clients
---
 .../activemq/artemis/reader/MessageUtil.java   |   1 +
 .../artemis/protocol/amqp/broker/AMQPMessage.java  |   4 +-
 .../amqp/converter/AMQPMessageIdHelper.java|   7 +-
 .../protocol/amqp/converter/AmqpCoreConverter.java |   2 +-
 .../protocol/amqp/converter/CoreAmqpConverter.java |   2 +
 .../converter/message/AMQPMessageIdHelperTest.java |  62 ---
 .../openwire/OpenWireMessageConverter.java |  19 ++-
 .../openwire/OpenWireMessageConverterTest.java |  55 ++
 .../artemis/core/server/ActiveMQServerLogger.java  |   3 +
 .../jms/multiprotocol/JMSCorrelationIDTest.java| 184 +
 10 files changed, 306 insertions(+), 33 deletions(-)

diff --git 
a/artemis-core-client/src/main/java/org/apache/activemq/artemis/reader/MessageUtil.java
 
b/artemis-core-client/src/main/java/org/apache/activemq/artemis/reader/MessageUtil.java
index 4e4d3e5928..780085f4fd 100644
--- 
a/artemis-core-client/src/main/java/org/apache/activemq/artemis/reader/MessageUtil.java
+++ 
b/artemis-core-client/src/main/java/org/apache/activemq/artemis/reader/MessageUtil.java
@@ -21,6 +21,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Objects;
 import java.util.Set;
+
 import org.apache.activemq.artemis.api.core.ActiveMQException;
 import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
 import org.apache.activemq.artemis.api.core.Message;
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPMessage.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPMessage.java
index 018d0a27e6..e10ae2b9e2 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPMessage.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPMessage.java
@@ -20,6 +20,7 @@ import javax.management.openmbean.CompositeData;
 import javax.management.openmbean.CompositeDataSupport;
 import javax.management.openmbean.OpenDataException;
 import javax.management.openmbean.SimpleType;
+import java.lang.invoke.MethodHandles;
 import java.nio.charset.Charset;
 import java.nio.charset.StandardCharsets;
 import java.util.Collections;
@@ -80,7 +81,6 @@ import org.apache.qpid.proton.message.Message;
 import org.apache.qpid.proton.message.impl.MessageImpl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import java.lang.invoke.MethodHandles;
 
 import static 
org.apache.activemq.artemis.protocol.amqp.converter.AMQPMessageSupport.getCharsetForTextualContent;
 
@@ -1562,7 +1562,7 @@ public abstract class AMQPMessage extends RefCountMessage 
implements org.apache.
 return getAMQPUserID();
  case MessageUtil.CORRELATIONID_HEADER_NAME_STRING:
 if (properties != null && properties.getCorrelationId() != null) {
-   return 
AMQPMessageIdHelper.INSTANCE.toCorrelationIdString(properties.getCorrelationId());
+   return 
AMQPMessageIdHelper.INSTANCE.toCorrelationIdStringOrBytes(properties.getCorrelationId());
 }
 return null;
  default:
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/converter/AMQPMessageIdHelper.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/converter/AMQPMessageIdHelper.java
index baf08aeefb..06f97f1d3a 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/converter/AMQPMessageIdHelper.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/converter/AMQPMessageIdHelper.java
@@ -113,7 +113,7 @@ public class AMQPMessageIdHelper {
   }
}
 
-   public String toCorrelationIdString(Object idObject) {
+   public Object toCorrelationIdStringOrBytes(Object idObject) {
   if (idObject instanceof String) {
  final String stringId = (String) idObject;
 
@@ -130,6 +130,11 @@ public class AMQPMessageIdHelper {
 // It has "ID:" prefix and doesn't have encoding prefix, use it 
as-is.
 return stringId;
  }
+  } else if (idObject instanceof Binary) {
+ ByteBuffer dup = ((Binary) idObject).asByteBuffer

(activemq-artemis) branch main updated: ARTEMIS-4631: update to spring 5.3.33

2024-03-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 a3cde08681 ARTEMIS-4631: update to spring 5.3.33
a3cde08681 is described below

commit a3cde086817203ab9ce53c6da3b9ff0c0875761b
Author: Robbie Gemmell 
AuthorDate: Fri Mar 15 10:42:13 2024 +

ARTEMIS-4631: update to spring 5.3.33
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index ff35bc5ffd..1c55a54413 100644
--- a/pom.xml
+++ b/pom.xml
@@ -190,7 +190,7 @@
   5.15.0
 
   9.0.9
-  5.3.32
+  5.3.33
 
   2.16.1
   ${jackson.version}



(activemq-artemis) branch main updated: ARTEMIS-4648 support typed properties from CLI producer

2024-03-11 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 009687ef7c ARTEMIS-4648 support typed properties from CLI producer
009687ef7c is described below

commit 009687ef7cdad7b734a49cca546cb7fce37eb90c
Author: Justin Bertram 
AuthorDate: Thu Mar 7 20:47:49 2024 -0600

ARTEMIS-4648 support typed properties from CLI producer
---
 artemis-cli/pom.xml|   5 +
 .../artemis/cli/commands/messages/Producer.java|  13 ++
 .../cli/commands/messages/ProducerThread.java  |  53 +
 .../cli/commands/messages/ProducerThreadTest.java  | 234 +
 .../apache/activemq/cli/test/CliProducerTest.java  |  29 +++
 5 files changed, 334 insertions(+)

diff --git a/artemis-cli/pom.xml b/artemis-cli/pom.xml
index c5d71a340f..13b182dfc4 100644
--- a/artemis-cli/pom.xml
+++ b/artemis-cli/pom.xml
@@ -154,6 +154,11 @@
  junit
  test
   
+  
+ org.mockito
+ mockito-core
+ test
+  
 
   

(activemq-artemis) branch main updated: ARTEMIS-4672 - Upgrade Netty to 4.107.Final

2024-03-07 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 56ec308045 ARTEMIS-4672 - Upgrade Netty to 4.107.Final
56ec308045 is described below

commit 56ec3080455e5810466cadcbf90fae4b29f0216e
Author: Emmanuel Hugonnet 
AuthorDate: Wed Mar 6 18:31:21 2024 +0100

ARTEMIS-4672 - Upgrade Netty to 4.107.Final

 * Upgrading netty-tcpnative to 2.0.63
 * Upgrading netty to 4.107.Final

Signed-off-by: Emmanuel Hugonnet 
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index b931f9c41f..ff35bc5ffd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -114,7 +114,7 @@
   10.12.7
   5.10.0
   4.0.2
-  4.1.106.Final
+  4.1.107.Final
   2.1.12
   5.6.0
   3.9.1
@@ -133,7 +133,7 @@
   2.3.9
 
   
-  2.0.61.Final
+  2.0.63.Final
   0.34.1
   1.0.0-M19
   2.0.11



(activemq-artemis) branch main updated: ARTEMIS-4655 report logging metrics

2024-03-05 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 661a4e6fdc ARTEMIS-4655 report logging metrics
661a4e6fdc is described below

commit 661a4e6fdc1d10b115c209a25e96e6b97e75e8e6
Author: Justin Bertram 
AuthorDate: Thu Feb 22 15:25:05 2024 -0600

ARTEMIS-4655 report logging metrics

It may be useful to configure alerts for ERROR or WARN events in the log
which may go unnoticed otherwise.
---
 .../api/config/ActiveMQDefaultConfiguration.java   | 10 +++
 .../artemis/core/config/MetricsConfiguration.java  | 10 +++
 .../deployers/impl/FileConfigurationParser.java|  2 +
 .../core/server/metrics/MetricsManager.java|  4 +
 .../resources/schema/artemis-configuration.xsd |  8 ++
 .../config/impl/DefaultsFileConfigurationTest.java |  2 +
 .../core/config/impl/FileConfigurationTest.java|  1 +
 .../resources/ConfigurationTest-full-config.xml|  1 +
 .../ConfigurationTest-xinclude-config.xml  |  1 +
 ...gurationTest-xinclude-schema-config-metrics.xml |  1 +
 artemis-server/src/test/resources/metrics.xml  |  1 +
 docs/user-manual/metrics.adoc  | 13 ++-
 .../integration/plugin/LoggingMetricsTest.java | 99 ++
 13 files changed, 152 insertions(+), 1 deletion(-)

diff --git 
a/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/config/ActiveMQDefaultConfiguration.java
 
b/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/config/ActiveMQDefaultConfiguration.java
index 1a6a8f47e7..0fe9cd90bb 100644
--- 
a/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/config/ActiveMQDefaultConfiguration.java
+++ 
b/artemis-core-client/src/main/java/org/apache/activemq/artemis/api/config/ActiveMQDefaultConfiguration.java
@@ -676,6 +676,9 @@ public final class ActiveMQDefaultConfiguration {
// Whether or not to report uptime metrics
private static final boolean DEFAULT_UPTIME_METRICS = false;
 
+   // Whether or not to report logging metrics
+   private static final boolean DEFAULT_LOGGING_METRICS = false;
+
// How often (in ms) to scan for expired MQTT sessions
private static long DEFAULT_MQTT_SESSION_SCAN_INTERVAL = 500;
 
@@ -1865,6 +1868,13 @@ public final class ActiveMQDefaultConfiguration {
   return DEFAULT_UPTIME_METRICS;
}
 
+   /**
+* Whether or not to report logging metrics
+*/
+   public static Boolean getDefaultLoggingMetrics() {
+  return DEFAULT_LOGGING_METRICS;
+   }
+
/**
 * How often (in ms) to scan for expired MQTT sessions
 */
diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/MetricsConfiguration.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/MetricsConfiguration.java
index aa1173048e..566b1a25bd 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/MetricsConfiguration.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/MetricsConfiguration.java
@@ -30,6 +30,7 @@ public class MetricsConfiguration implements Serializable {
private boolean fileDescriptors = 
ActiveMQDefaultConfiguration.getDefaultFileDescriptorsMetrics();
private boolean processor = 
ActiveMQDefaultConfiguration.getDefaultProcessorMetrics();
private boolean uptime = 
ActiveMQDefaultConfiguration.getDefaultUptimeMetrics();
+   private boolean logging = 
ActiveMQDefaultConfiguration.getDefaultLoggingMetrics();
private ActiveMQMetricsPlugin plugin;
 
public boolean isJvmMemory() {
@@ -95,6 +96,15 @@ public class MetricsConfiguration implements Serializable {
   return this;
}
 
+   public boolean isLogging() {
+  return logging;
+   }
+
+   public MetricsConfiguration setLogging(boolean logging) {
+  this.logging = logging;
+  return this;
+   }
+
public ActiveMQMetricsPlugin getPlugin() {
   return plugin;
}
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 7ec64918f4..527afd5f37 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
@@ -1012,6 +1012,8 @@ public final class FileConfigurationParser extends 
XMLConfigurationUtil {
metricsConfiguration.setProcessor(XMLUtil.parseBoolean(child));
 } else if (child.getNodeName().equals("uptime")) {
metricsConfiguration.setUptime(XMLUtil.parseBoolean(child));
+} else if (child.getNodeName().equal

(activemq-artemis-examples) branch development updated: ARTEMIS-4658 AMQP federation example for multicast over hub and spoke

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 46e506e  ARTEMIS-4658 AMQP federation example for multicast over hub 
and spoke
46e506e is described below

commit 46e506ee9e2aed70444baa684fff8fd4b62c0cd2
Author: Timothy Bish 
AuthorDate: Thu Feb 29 11:47:00 2024 -0500

ARTEMIS-4658 AMQP federation example for multicast over hub and spoke

Adds an example showing how AMQP federation can be used to federate 
multicast
messages over a hub and spoke topology with bi-directional federation.

Also adds the AMQP federation examples to the run script
---
 .../amqp-federation-multicast-hub-spoke/pom.xml| 237 +
 .../amqp-federation-multicast-hub-spoke/readme.md  |   5 +
 .../jms/example/BrokerFederationExample.java   | 231 
 .../src/main/resources/activemq/hub/broker.xml | 101 +
 .../src/main/resources/activemq/spoke1/broker.xml  | 118 ++
 .../src/main/resources/activemq/spoke2/broker.xml  | 118 ++
 .../src/main/resources/activemq/spoke3/broker.xml  | 118 ++
 examples/features/broker-connection/pom.xml|   2 +
 scripts/run-examples.sh|   2 +
 9 files changed, 932 insertions(+)

diff --git 
a/examples/features/broker-connection/amqp-federation-multicast-hub-spoke/pom.xml
 
b/examples/features/broker-connection/amqp-federation-multicast-hub-spoke/pom.xml
new file mode 100644
index 000..1118423
--- /dev/null
+++ 
b/examples/features/broker-connection/amqp-federation-multicast-hub-spoke/pom.xml
@@ -0,0 +1,237 @@
+
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
+   4.0.0
+
+   
+  org.apache.activemq.examples.broker-connection
+  broker-connections
+  2.33.0-SNAPSHOT
+   
+
+   amqp-federation-multicast-hub-spoke
+   jar
+   amqp-federation
+
+   
+  ${project.basedir}/../../../..
+   
+
+   
+  
+ org.apache.qpid
+ qpid-jms-client
+  
+   
+
+   
+  
+ 
+org.apache.activemq
+artemis-maven-plugin
+
+   
+  createHub
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/hub
+ true
+ 
${basedir}/target/classes/activemq/hub
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  createSpoke1
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/spoke1
+ true
+ 
${basedir}/target/classes/activemq/spoke1
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  createSpoke2
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/spoke2
+ true
+ 
${basedir}/target/classes/activemq/spoke2
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  createSpoke3
+  
+ create
+  
+  
+ ${noServer}
+ ${basedir}/target/spoke3
+ true
+ 
${basedir}/target/classes/activemq/spoke3
+ 
+ -Djava.net.preferIPv4Stack=true
+  
+   
+   
+  startHub
+  
+ cli
+  
+  
+ ${noServer}
+ true
+ ${basedir}/target/hub
+ tcp://localhost:5460
+ 
+run
+ 
+ hub
+  
+   
+   
+  startSpoke3
+  
+ cli
+  
+  
+ ${noServer}
+ true
+ ${basedir}/target/spoke3
+ tcp://localhost:5860
+ 
+run
+ 
+  

(activemq-artemis) branch main updated (6fe603f717 -> c7f536c8b8)

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


from 6fe603f717 NO-JIRA add comment on current directory to the image build 
readme
 new 155634b115 ARTEMIS-4621: update to PostgreSQL 42.7.2
 new c7f536c8b8 ARTEMIS-4631: update to Spring 5.3.32

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)



(activemq-artemis) 02/02: ARTEMIS-4631: update to Spring 5.3.32

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit c7f536c8b8202d54eacff4851e92f367a511c60b
Author: Robbie Gemmell 
AuthorDate: Thu Feb 29 14:02:52 2024 +

ARTEMIS-4631: update to Spring 5.3.32
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 639381b4d2..b931f9c41f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -190,7 +190,7 @@
   5.15.0
 
   9.0.9
-  5.3.31
+  5.3.32
 
   2.16.1
   ${jackson.version}



(activemq-artemis) 01/02: ARTEMIS-4621: update to PostgreSQL 42.7.2

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 155634b11540fa9e0ec3e5cb8de143523d5ee712
Author: Robbie Gemmell 
AuthorDate: Thu Feb 29 13:52:46 2024 +

ARTEMIS-4621: update to PostgreSQL 42.7.2
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 67cc250555..639381b4d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -171,7 +171,7 @@
   2.22.2
   2.3.3
   1.2.5
-  42.7.1
+  42.7.2
   1.19.4
   4.17.0
   3.0.0



(activemq-artemis-examples) branch development updated: add note to CONTRIBUTING.md about Jiras and commit log references

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new f2cffdc  add note to CONTRIBUTING.md about Jiras and commit log 
references
f2cffdc is described below

commit f2cffdcdf5fb52033377de64a2a6e20e21393e46
Author: Robbie Gemmell 
AuthorDate: Thu Feb 29 15:17:11 2024 +

add note to CONTRIBUTING.md about Jiras and commit log references
---
 CONTRIBUTING.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 62e4906..20512ed 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -5,6 +5,8 @@ Contributions should target the 
[`development`](https://github.com/apache/active
 * The 
[`development`](https://github.com/apache/activemq-artemis-examples/tree/development)
 branch is used for all development toward the next Artemis release and the 
related Examples, whether it be improving existing examples, creating new 
examples, or most especially for making any updates needed to match 
as-yet-unreleased changes in the upcoming Artemis version.
 * The [`main`](https://github.com/apache/activemq-artemis-examples/tree/main) 
branch contains examples for use with the latest ActiveMQ Artemis release.
 
+Like with the main repository, most examples changes should have an [ARTEMIS 
Jira issue](https://issues.apache.org/jira/projects/ARTEMIS) which should be 
referenced in the commit log message. See 
[https://activemq.apache.org/issues](https://activemq.apache.org/issues) for 
more details.
+
 ## Testing Changes
 
 The [GitHub Actions 
build](https://github.com/apache/activemq-artemis-examples/actions) for the 
Examples repo can also be used in your fork to test out changes. In order to 
enable the build in your repository, go to e.g:



(activemq-website) branch main updated: add examples repo to list on contributing page, and update gitbox clone URLs from old git-wip-us name

2024-02-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git


The following commit(s) were added to refs/heads/main by this push:
 new 62d207d38 add examples repo to list on contributing page, and update 
gitbox clone URLs from old git-wip-us name
62d207d38 is described below

commit 62d207d3859c6bd2d151191d3381be61c0354f11
Author: Robbie Gemmell 
AuthorDate: Thu Feb 29 15:37:37 2024 +

add examples repo to list on contributing page, and update gitbox clone 
URLs from old git-wip-us name
---
 src/contributing.md | 31 ---
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/src/contributing.md b/src/contributing.md
index 231ff63c6..a74ed697c 100644
--- a/src/contributing.md
+++ b/src/contributing.md
@@ -16,24 +16,25 @@ If anything in any component's documentation is confusing 
or not clear please [l
 
  Code
 
-If you want to get your hands on the code here are the repos for all our 
components. It's typically best to use the GitHub mirror as that will allow you 
to easily send pull requests which can be reviewed by project committers and 
merged.
+If you want to get your hands on the code here are the repos for all our 
components. It's typically best to use the GitHub mirror as that will allow you 
to easily send pull requests which can be reviewed by project committers and 
merged. The Gitbox links redirect to GitHub for browsing.
 
 |Component|Apache Git Repository|GitHub Mirror|
 |---|---|
-|Classic|[activemq](https://git-wip-us.apache.org/repos/asf?p=activemq.git)|[activemq](https://github.com/apache/activemq)|
-|Artemis|[activemq-artemis](https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git)|[activemq-artemis](https://github.com/apache/activemq-artemis)|
-|Artemis 
Native|[activemq-artemis-native](https://git-wip-us.apache.org/repos/asf?p=activemq-artemis-native.git)|[activemq-artemis-native](https://github.com/apache/activemq-artemis-native)|
-|NMS 
API|[activemq-nms-api](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-api.git)|[activemq-nms-api](https://github.com/apache/activemq-nms-api)|
-|NMS 
AMQP|[activemq-nms-amqp](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-amqp.git)|[activemq-nms-amqp](https://github.com/apache/activemq-nms-amqp)|
-|NMS 
EMS|[activemq-nms-ems](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-ems.git)|[activemq-nms-ems](https://github.com/apache/activemq-nms-ems)|
-|NMS 
OpenWire|[activemq-nms-openwire](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-openwire.git)|[activemq-nms-openwire](https://github.com/apache/activemq-nms-openwire)|
-|NMS 
MSMQ|[activemq-nms-msmq](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-msmq.git)|[activemq-nms-msmq](https://github.com/apache/activemq-nms-msmq)|
-|NMS 
STOMP|[activemq-nms-stomp](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-stomp.git)|[activemq-nms-stomp](https://github.com/apache/activemq-nms-stomp)|
-|NMS 
XMS|[activemq-nms-xms](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-xms.git)|[activemq-nms-xms](https://github.com/apache/activemq-nms-xms)|
-|NMS 
ZMQ|[activemq-nms-zmq](https://git-wip-us.apache.org/repos/asf?p=activemq-nms-zmq.git)|[activemq-nms-zmq](https://github.com/apache/activemq-nms-zmq)|
-|CLI 
Tools|[activemq-cli-tools](https://git-wip-us.apache.org/repos/asf?p=activemq-cli-tools.git)|[activemq-cli-tools](https://github.com/apache/activemq-cli-tools)|
-|CPP|[activemq-cpp](https://git-wip-us.apache.org/repos/asf?p=activemq-cpp.git)|[activemq-cpp](https://github.com/apache/activemq-cpp)|
-|Website|[activemq-website](https://git-wip-us.apache.org/repos/asf?p=activemq-website.git)|[activemq-website](https://github.com/apache/activemq-website)|
+|Classic|[activemq](https://gitbox.apache.org/repos/asf/activemq.git)|[activemq](https://github.com/apache/activemq)|
+|Artemis|[activemq-artemis](https://gitbox.apache.org/repos/asf/activemq-artemis.git)|[activemq-artemis](https://github.com/apache/activemq-artemis)|
+|Artemis 
Examples|[activemq-artemis-examples](https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git)|[activemq-artemis-examples](https://github.com/apache/activemq-artemis-examples)|
+|Artemis 
Native|[activemq-artemis-native](https://gitbox.apache.org/repos/asf/activemq-artemis-native.git)|[activemq-artemis-native](https://github.com/apache/activemq-artemis-native)|
+|NMS 
API|[activemq-nms-api](https://gitbox.apache.org/repos/asf/activemq-nms-api.git)|[activemq-nms-api](https://github.com/apache/activemq-nms-api)|
+|NMS 
AMQP|[activemq-nms-amqp](https://gitbox.apache.org/repos/asf/activemq-nms-amqp.git)|[activemq-nms-amqp](https://github.com/apache/activemq-nms-amqp)|
+|NMS 
EMS|[activemq-nms-ems](https://gitbox.apache.org/repos/asf/activemq-nms-ems.git)|[activemq-nms-ems](https://github.com/apache/activemq-nms-ems)|
+|NMS 
OpenWire|[activemq-nms-openwire](https

(activemq-artemis) branch main updated: ARTEMIS-4658 Prevent reflections when using dual address federation

2024-02-28 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 fd5d9b9ad0 ARTEMIS-4658 Prevent reflections when using dual address 
federation
fd5d9b9ad0 is described below

commit fd5d9b9ad03e15d8b90b4861358ab55c67207525
Author: Timothy Bish 
AuthorDate: Wed Feb 28 11:03:59 2024 -0500

ARTEMIS-4658 Prevent reflections when using dual address federation

When federation is configured in two directions between nodes for an address
the message can reflect from one node to another if max hops is not set or 
not
set correctly and in some federation topologies the max hops value can't 
solve
the issue and still result in a working configuration. This reflection 
should
be prevented at the federation consumer level for address consumers.
---
 .../amqp/broker/ProtonProtocolManager.java |   2 +-
 .../federation/AMQPFederationAddressConsumer.java  |  23 ++-
 .../AMQPFederationAddressSenderController.java |  44 +++-
 .../federation/AMQPFederationPolicySupport.java|   8 +-
 .../amqp/AmqpInboundConnectionTest.java|   4 +-
 .../connect/AMQPFederationAddressPolicyTest.java   |  57 +-
 .../connect/AMQPFederationServerToServerTest.java  | 226 +
 7 files changed, 339 insertions(+), 25 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManager.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManager.java
index 07bb6ed407..6f246531e1 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManager.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManager.java
@@ -238,7 +238,7 @@ public class ProtonProtocolManager extends 
AbstractProtocolManager filtersMap = new HashMap<>();
+filtersMap.put(AmqpSupport.NO_LOCAL_NAME, 
AmqpNoLocalFilter.NO_LOCAL);
 
 if (consumerInfo.getFilterString() != null && 
!consumerInfo.getFilterString().isEmpty()) {
final AmqpJmsSelectorFilter jmsFilter = new 
AmqpJmsSelectorFilter(consumerInfo.getFilterString());
-   final Map filtersMap = new HashMap<>();
-   filtersMap.put(AmqpSupport.JMS_SELECTOR_KEY, jmsFilter);
 
-   source.setFilter(filtersMap);
+   filtersMap.put(AmqpSupport.JMS_SELECTOR_KEY, jmsFilter);
 }
 
+source.setOutcomes(Arrays.copyOf(DEFAULT_OUTCOMES, 
DEFAULT_OUTCOMES.length));
+source.setDurable(TerminusDurability.NONE);
+source.setExpiryPolicy(TerminusExpiryPolicy.LINK_DETACH);
+source.setAddress(address);
+source.setFilter(filtersMap);
+
 target.setAddress(address);
 
 final Map addressSourceProperties = new 
HashMap<>();
@@ -526,6 +530,11 @@ public class AMQPFederationAddressConsumer implements 
FederationConsumerInternal
 
 if (message instanceof ICoreMessage) {
baseMessage = incrementCoreMessageHops((ICoreMessage) message);
+
+   // Add / Update the connection Id value to reflect the remote 
container Id so that the
+   // no-local filter of a federation address receiver directed 
back to the source of this
+   // message will exclude it as intended.
+   
baseMessage.putStringProperty(MessageUtil.CONNECTION_ID_PROPERTY_NAME_STRING, 
getConnection().getRemoteContainer());
 } else {
baseMessage = incrementAMQPMessageHops((AMQPMessage) message);
 }
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressSenderController.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressSenderController.java
index 2ac48d55a4..56759303f6 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressSenderController.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressSenderController.java
@@ -48,6 +48,7 @@ import 
org.apache.activemq.artemis.protocol.amqp.proton.AMQPSessionContext;
 import org.apache.activemq.artemis.protocol.amqp.proton.AmqpSupport;
 import 
org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext;
 import org.apache.activemq.artemis.protocol.amqp.proton

(activemq-artemis) branch main updated: ARTEMIS-4656: remove superflous artemis-spring-integration module

2024-02-27 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 723c11ac15 ARTEMIS-4656: remove superflous artemis-spring-integration 
module
723c11ac15 is described below

commit 723c11ac15ebb086b1ede805254dda24908c8452
Author: Robbie Gemmell 
AuthorDate: Tue Feb 27 15:58:53 2024 +

ARTEMIS-4656: remove superflous artemis-spring-integration module
---
 artemis-bom/pom.xml|  5 --
 integration/activemq-spring-integration/pom.xml| 51 ---
 .../integration/spring/SpringBindingRegistry.java  | 59 --
 .../integration/spring/SpringJmsBootstrap.java | 40 ---
 pom.xml|  1 -
 tests/compatibility-tests/pom.xml  |  4 --
 6 files changed, 160 deletions(-)

diff --git a/artemis-bom/pom.xml b/artemis-bom/pom.xml
index 27b4aafcfc..a44ffac759 100644
--- a/artemis-bom/pom.xml
+++ b/artemis-bom/pom.xml
@@ -218,11 +218,6 @@
 artemis-service-extensions
 ${project.version}
  
- 
-org.apache.activemq
-artemis-spring-integration
-${project.version}
- 
  
 org.apache.activemq
 artemis-stomp-protocol
diff --git a/integration/activemq-spring-integration/pom.xml 
b/integration/activemq-spring-integration/pom.xml
deleted file mode 100644
index 690542d8ee..00
--- a/integration/activemq-spring-integration/pom.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;>
-   4.0.0
-
-   
-  org.apache.activemq
-  artemis-pom
-  2.33.0-SNAPSHOT
-  ../../artemis-pom/pom.xml
-   
-
-   artemis-spring-integration
-   jar
-   ActiveMQ Artemis Spring Integration
-
-   
-  ${project.basedir}/../..
-   
-
-   
-  
- org.apache.activemq
- artemis-server
-  
-  
- org.apache.activemq
- artemis-jms-server
-  
-  
- org.springframework
- spring-beans
-  
-   
-
-
diff --git 
a/integration/activemq-spring-integration/src/main/java/org/apache/activemq/artemis/integration/spring/SpringBindingRegistry.java
 
b/integration/activemq-spring-integration/src/main/java/org/apache/activemq/artemis/integration/spring/SpringBindingRegistry.java
deleted file mode 100644
index 892eb6ffa3..00
--- 
a/integration/activemq-spring-integration/src/main/java/org/apache/activemq/artemis/integration/spring/SpringBindingRegistry.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.activemq.artemis.integration.spring;
-
-import org.apache.activemq.artemis.spi.core.naming.BindingRegistry;
-import org.springframework.beans.factory.NoSuchBeanDefinitionException;
-import org.springframework.beans.factory.config.ConfigurableBeanFactory;
-
-/**
- * This has been deprecated since 
org.apache.activemq.artemis.integration.spring.SpringJmsBootstrap was also 
deprecated.
- */
-@Deprecated
-public class SpringBindingRegistry implements BindingRegistry {
-
-   private ConfigurableBeanFactory factory;
-
-   public SpringBindingRegistry(ConfigurableBeanFactory factory) {
-  this.factory = factory;
-   }
-
-   @Override
-   public Object lookup(String name) {
-  Object obj = null;
-  try {
- obj = factory.getBean(name);
-  } catch (NoSuchBeanDefinitionException e) {
- //ignore
-  }
-  return obj;
-   }
-
-   @Override
-   public boolean bind(String name, Object obj) {
-  factory.registerSingleton(name, obj);
-  return true;
-   }
-
-   @Override
-   public void unbind(String name) {
-   }
-
-   @Override
-   public void close() {
-   }
-}
diff --git 
a/integration/activemq-spring-integration/src/main/java/org/apache/activemq/artemis/integration/spring/SpringJmsBootstrap.jav

(activemq-artemis-examples) branch development updated: ARTEMIS-4656: remove unused artemis-spring-integration module dep, add used artemis-server and artemis-jms-client deps

2024-02-27 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 328ca27  ARTEMIS-4656: remove unused artemis-spring-integration module 
dep, add used artemis-server and artemis-jms-client deps
328ca27 is described below

commit 328ca274d96c31a9c03705dad2f8bf6807a3f650
Author: Robbie Gemmell 
AuthorDate: Tue Feb 27 15:52:33 2024 +

ARTEMIS-4656: remove unused artemis-spring-integration module dep, add used 
artemis-server and artemis-jms-client deps
---
 examples/features/standard/spring-integration/pom.xml | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/examples/features/standard/spring-integration/pom.xml 
b/examples/features/standard/spring-integration/pom.xml
index a0967bc..7ea1d47 100644
--- a/examples/features/standard/spring-integration/pom.xml
+++ b/examples/features/standard/spring-integration/pom.xml
@@ -38,8 +38,11 @@ under the License.

   
  org.apache.activemq
- artemis-spring-integration
- ${project.version}
+ artemis-jms-client
+  
+  
+ org.apache.activemq
+ artemis-server
   
   
  jakarta.jms



(activemq-artemis) branch main updated: ARTEMIS-4653 Create federation consumers for specific queue consumer filters

2024-02-21 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 91556729f1 ARTEMIS-4653 Create federation consumers for specific queue 
consumer filters
91556729f1 is described below

commit 91556729f13c8d1e6a9d077ddacf63e00ffb46dc
Author: Timothy Bish 
AuthorDate: Wed Feb 21 11:48:08 2024 -0500

ARTEMIS-4653 Create federation consumers for specific queue consumer filters

When Queue consumers attach with filters use those instead of the Queue
filter to filter the messages that are federated to avoid stranding of
messages on the local broker. This will result in multiple federation
consumers if the various attached local consumers all use different
filters but does keep unwanted messages on the remote so that consumers
there can consume those.
---
 .../amqp/connect/federation/AMQPFederation.java|  10 +
 .../AMQPFederationAddressPolicyManager.java|  19 +-
 .../federation/AMQPFederationConfiguration.java|  46 
 .../federation/AMQPFederationConstants.java|  21 ++
 .../AMQPFederationConsumerConfiguration.java   |  24 ++
 .../federation/AMQPFederationQueueConsumer.java|   9 +-
 .../AMQPFederationQueuePolicyManager.java  |  36 +++
 .../AMQPFederationQueueSenderController.java   |  39 ++--
 .../connect/federation/AMQPFederationSource.java   |  19 ++
 .../connect/federation/AMQPFederationTarget.java   |  10 +
 .../internal/FederationGenericConsumerInfo.java|  41 +---
 .../internal/FederationQueuePolicyManager.java |  40 ++--
 .../AMQPFederationConfigurationReloadTest.java |  22 +-
 .../amqp/connect/AMQPFederationConnectTest.java|   6 +
 .../connect/AMQPFederationQueuePolicyTest.java | 260 +
 .../connect/AMQPFederationServerToServerTest.java  |  94 
 16 files changed, 607 insertions(+), 89 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
index 362ea8ef8e..d2a8cf3542 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederation.java
@@ -151,6 +151,16 @@ public abstract class AMQPFederation implements 
FederationInternal {
 */
public abstract int getLargeMessageThreshold();
 
+   /**
+* @return the true if the federation should ignore filters on queue 
consumers.
+*/
+   public abstract boolean isIgnoreQueueConsumerFilters();
+
+   /**
+* @return the true if the federation should ignore priorities on queue 
consumers.
+*/
+   public abstract boolean isIgnoreQueueConsumerPriorities();
+
/**
 * @return the true if the federation should support core message tunneling.
 */
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressPolicyManager.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressPolicyManager.java
index c551a4ae7f..f6bc4f9e2d 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressPolicyManager.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressPolicyManager.java
@@ -23,6 +23,7 @@ import java.lang.invoke.MethodHandles;
 import java.util.Objects;
 import java.util.concurrent.atomic.AtomicBoolean;
 
+import org.apache.activemq.artemis.api.config.ActiveMQDefaultConfiguration;
 import org.apache.activemq.artemis.api.core.ActiveMQException;
 import org.apache.activemq.artemis.core.server.ActiveMQServerLogger;
 import org.apache.activemq.artemis.core.server.Divert;
@@ -31,9 +32,11 @@ import 
org.apache.activemq.artemis.core.server.impl.AddressInfo;
 import org.apache.activemq.artemis.protocol.amqp.federation.FederationConsumer;
 import 
org.apache.activemq.artemis.protocol.amqp.federation.FederationConsumerInfo;
 import 
org.apache.activemq.artemis.protocol.amqp.federation.FederationReceiveFromAddressPolicy;
+import 
org.apache.activemq.artemis.protocol.amqp.federation.FederationConsumerInfo.Role;
 import 
org.apache.activemq.artemis.protocol.amqp.federation.internal.FederationAddressPolicyManager;
 import 
org.apache.activemq.artemis.protocol.amqp.federation.internal.FederationConsumerInternal;
 import

(activemq-artemis) branch main updated: ARTEMIS-4645 Update broker connection tests to use unique broker names

2024-02-16 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 ddbf357625 ARTEMIS-4645 Update broker connection tests to use unique 
broker names
ddbf357625 is described below

commit ddbf357625d77695b6eec3433e9c2964b62f2ddd
Author: Timothy Bish 
AuthorDate: Thu Feb 15 15:24:25 2024 -0500

ARTEMIS-4645 Update broker connection tests to use unique broker names

Use the test name to create unique names for broker connections in the 
tests and
the associated test logs
---
 .../connect/AMQPFederationAddressPolicyTest.java   | 160 ++--
 .../connect/AMQPFederationBrokerPliuginTest.java   |  22 +--
 .../AMQPFederationConfigurationReloadTest.java |  38 ++---
 .../amqp/connect/AMQPFederationConnectTest.java|  42 +++---
 .../connect/AMQPFederationQueuePolicyTest.java | 166 ++---
 .../connect/AMQPFederationServerToServerTest.java  |  44 +++---
 .../amqp/connect/AMQPMirrorConnectionTest.java |  24 +--
 7 files changed, 248 insertions(+), 248 deletions(-)

diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
index e267dc7757..21c4b55b12 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPFederationAddressPolicyTest.java
@@ -173,11 +173,11 @@ public class AMQPFederationAddressPolicyTest extends 
AmqpClientTestSupport {
  receiveFromAddress.setAutoDeleteMessageCount(-1L);
 
  final AMQPFederatedBrokerConnectionElement element = new 
AMQPFederatedBrokerConnectionElement();
- element.setName("sample-federation");
+ element.setName(getTestName());
  element.addLocalAddressPolicy(receiveFromAddress);
 
  final AMQPBrokerConnectConfiguration amqpConnection =
-new AMQPBrokerConnectConfiguration("test-address-federation", 
"tcp://" + remoteURI.getHost() + ":" + remoteURI.getPort());
+new AMQPBrokerConnectConfiguration(getTestName(), "tcp://" + 
remoteURI.getHost() + ":" + remoteURI.getPort());
  amqpConnection.setReconnectAttempts(0);// No reconnects
  amqpConnection.addElement(element);
 
@@ -193,7 +193,7 @@ public class AMQPFederationAddressPolicyTest extends 
AmqpClientTestSupport {
 
  peer.expectAttach().ofReceiver()
 
.withDesiredCapability(FEDERATION_ADDRESS_RECEIVER.toString())
-
.withName(allOf(containsString("sample-federation"),
+.withName(allOf(containsString(getTestName()),
 containsString("test"),
 containsString("address-receiver"),
 
containsString(server.getNodeID().toString(
@@ -268,11 +268,11 @@ public class AMQPFederationAddressPolicyTest extends 
AmqpClientTestSupport {
  receiveFromAddress.setAutoDeleteMessageCount(-1L);
 
  final AMQPFederatedBrokerConnectionElement element = new 
AMQPFederatedBrokerConnectionElement();
- element.setName("sample-federation");
+ element.setName(getTestName());
  element.addLocalAddressPolicy(receiveFromAddress);
 
  final AMQPBrokerConnectConfiguration amqpConnection =
-new AMQPBrokerConnectConfiguration("test-address-federation", 
"tcp://" + remoteURI.getHost() + ":" + remoteURI.getPort());
+new AMQPBrokerConnectConfiguration(getTestName(), "tcp://" + 
remoteURI.getHost() + ":" + remoteURI.getPort());
  amqpConnection.setReconnectAttempts(0);// No reconnects
  amqpConnection.addElement(element);
 
@@ -288,7 +288,7 @@ public class AMQPFederationAddressPolicyTest extends 
AmqpClientTestSupport {
  peer.waitForScriptToComplete(5, TimeUnit.SECONDS);
  peer.expectAttach().ofReceiver()
 
.withDesiredCapability(FEDERATION_ADDRESS_RECEIVER.toString())
-
.withName(allOf(containsString("sample-federation"),
+.withName(allOf(containsString(getTestName()),
 containsString("test"),
 containsString("address-receiver"),
   

(activemq-artemis) branch main updated: ARTEMIS-4642 Fix tracked federated demand when links are rejected or blocked

2024-02-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 b8800337df ARTEMIS-4642 Fix tracked federated demand when links are 
rejected or blocked
b8800337df is described below

commit b8800337df4b2e9a7ab7fde42a1a0bd8c342a6ba
Author: Timothy Bish 
AuthorDate: Thu Feb 15 12:02:06 2024 -0500

ARTEMIS-4642 Fix tracked federated demand when links are rejected or blocked

Under some scenarios federation demand tracking is losing track of total 
demand
for a federated resource leading to teardown of federated links before all 
local
demand has been removed from the resource. This occurs most often if the 
attempts
to establish a federation link are refused because the resource hasn't yet 
been
created and an eventual attach succeeds, but can also occur in combination 
with
a plugin blocking or not blocking federation link creation in some cases.
---
 .../federation/AMQPFederationAddressConsumer.java  |   4 +-
 .../federation/AMQPFederationQueueConsumer.java|   4 +-
 .../amqp/federation/FederationConsumerInfo.java|   5 +
 .../internal/FederationAddressEntry.java   |  65 -
 .../internal/FederationAddressPolicyManager.java   | 139 +-
 .../internal/FederationGenericConsumerInfo.java|   8 +
 .../federation/internal/FederationQueueEntry.java  |  62 -
 .../internal/FederationQueuePolicyManager.java | 145 ++-
 .../connect/AMQPFederationAddressPolicyTest.java   | 191 ++
 .../connect/AMQPFederationQueuePolicyTest.java | 285 +
 10 files changed, 770 insertions(+), 138 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
index 9338bd18a1..dda6e95cd3 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationAddressConsumer.java
@@ -165,7 +165,7 @@ public class AMQPFederationAddressConsumer implements 
FederationConsumerInternal
  if (started) {
 started = false;
 connection.runLater(() -> {
-   federation.removeLinkClosedInterceptor(consumerInfo.getFqqn());
+   federation.removeLinkClosedInterceptor(consumerInfo.getId());
 
if (receiver != null) {
   try {
@@ -350,7 +350,7 @@ public class AMQPFederationAddressConsumer implements 
FederationConsumerInternal
   // Intercept remote close and check for valid reasons for 
remote closure such as
   // the remote peer not having a matching queue for this 
subscription or from an
   // operator manually closing the link.
-  federation.addLinkClosedInterceptor(consumerInfo.getFqqn(), 
remoteCloseInterceptor);
+  federation.addLinkClosedInterceptor(consumerInfo.getId(), 
remoteCloseInterceptor);
 
   receiver = new AMQPFederatedAddressDeliveryReceiver(session, 
consumerInfo, protonReceiver);
 
diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationQueueConsumer.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationQueueConsumer.java
index ea2455c30c..8c386ab41f 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationQueueConsumer.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/federation/AMQPFederationQueueConsumer.java
@@ -162,7 +162,7 @@ public class AMQPFederationQueueConsumer implements 
FederationConsumerInternal {
  if (started) {
 started = false;
 connection.runLater(() -> {
-   federation.removeLinkClosedInterceptor(consumerInfo.getFqqn());
+   federation.removeLinkClosedInterceptor(consumerInfo.getId());
 
if (receiver != null) {
   try {
@@ -341,7 +341,7 @@ public class AMQPFederationQueueConsumer implements 
FederationConsumerInternal {
   // Intercept remote close and check for valid reasons for 
remote closure such as
   // the remote peer not having a matching queue for this 
subscription or from an
   // op

(activemq-artemis) branch main updated: ARTEMIS-4644: convert some broker-connection tests to use the ProtonJ2 test peer

2024-02-15 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 42a2e4637f ARTEMIS-4644: convert some broker-connection tests to use 
the ProtonJ2 test peer
42a2e4637f is described below

commit 42a2e4637f9061689a0a383067543a9895fcd234
Author: Robbie Gemmell 
AuthorDate: Thu Feb 15 15:54:24 2024 +

ARTEMIS-4644: convert some broker-connection tests to use the ProtonJ2 test 
peer

Changes from myself and Tim Bish
---
 pom.xml|   1 -
 tests/integration-tests/pom.xml|  13 -
 .../amqp/connect/AMQPConnectSaslTest.java  | 469 +
 .../tests/integration/amqp/connect/MockServer.java |  81 ---
 .../amqp/connect/ValidateAMQPErrorsTest.java   | 580 -
 5 files changed, 343 insertions(+), 801 deletions(-)

diff --git a/pom.xml b/pom.xml
index 264c780a0d..d208f015f4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -187,7 +187,6 @@
 
   
   4.0.13
-  4.5.3
   3.3.1
   5.15.0
 
diff --git a/tests/integration-tests/pom.xml b/tests/integration-tests/pom.xml
index 15d115d79d..198cc8e4a3 100644
--- a/tests/integration-tests/pom.xml
+++ b/tests/integration-tests/pom.xml
@@ -358,19 +358,6 @@
  ${netty-tcnative-version}
   
 
-  
- io.vertx
- vertx-proton
- ${vertx.version}
- test
-  
-  
- io.vertx
- vertx-core
- ${vertx.version}
- test
-  
-
   
   
  org.apache.activemq
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPConnectSaslTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPConnectSaslTest.java
index 7140d75bfe..f8b14b6bf3 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPConnectSaslTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/connect/AMQPConnectSaslTest.java
@@ -16,47 +16,27 @@
  */
 package org.apache.activemq.artemis.tests.integration.amqp.connect;
 
-import java.nio.charset.StandardCharsets;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.SecureRandom;
-import java.util.Objects;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.ExecutionException;
+import java.lang.invoke.MethodHandles;
+import java.net.URI;
 import java.util.concurrent.TimeUnit;
 
-import javax.crypto.Mac;
-import javax.security.auth.login.LoginException;
-
 import 
org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPBrokerConnectConfiguration;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
-import org.apache.activemq.artemis.protocol.amqp.sasl.SASLResult;
-import org.apache.activemq.artemis.protocol.amqp.sasl.scram.SCRAMServerSASL;
-import org.apache.activemq.artemis.spi.core.security.scram.SCRAM;
-import org.apache.activemq.artemis.spi.core.security.scram.ScramUtils;
-import org.apache.activemq.artemis.spi.core.security.scram.UserData;
 import 
org.apache.activemq.artemis.tests.integration.amqp.AmqpClientTestSupport;
-import org.apache.qpid.proton.engine.Sasl;
-import org.apache.qpid.proton.engine.Sasl.SaslOutcome;
-import org.apache.qpid.proton.engine.Transport;
-import org.junit.After;
-import org.junit.Before;
+import org.apache.qpid.protonj2.test.driver.ProtonTestServer;
+import org.apache.qpid.protonj2.test.driver.ProtonTestServerOptions;
+import org.apache.qpid.protonj2.test.driver.codec.security.SaslCode;
 import org.junit.Test;
-
-import io.vertx.core.Handler;
-import io.vertx.core.Vertx;
-import io.vertx.core.http.ClientAuth;
-import io.vertx.core.net.JksOptions;
-import io.vertx.core.net.NetSocket;
-import io.vertx.proton.ProtonConnection;
-import io.vertx.proton.ProtonServerOptions;
-import io.vertx.proton.sasl.ProtonSaslAuthenticator;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * See the tests/security-resources/build.sh script for details on the 
security resources used.
  */
 public class AMQPConnectSaslTest extends AmqpClientTestSupport {
 
+   private static final Logger logger = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+
private static final int BROKER_PORT_NUM = AMQP_PORT + 1;
 
private static final String SERVER_KEYSTORE_NAME = "server-keystore.jks";
@@ -74,9 +54,7 @@ public class AMQPConnectSaslTest extends 
AmqpClientTestSupport {
private static final String PLAIN = "PLAIN";
private static final String ANONYMOUS = "ANONYMOUS";
private static final String EXTERNAL = "EXTERNAL";
-
-   private Vertx vertx;
-   private MockServer moc

(activemq-artemis) branch main updated: update actions to resolve deprecation warnings, and bump OS version

2024-02-13 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 da0287ddba update actions to resolve deprecation warnings, and bump OS 
version
da0287ddba is described below

commit da0287ddba675e0828e6ecebc1e1e1c136a59de6
Author: Robbie Gemmell 
AuthorDate: Tue Feb 13 11:46:19 2024 +

update actions to resolve deprecation warnings, and bump OS version
---
 .github/workflows/build.yml | 18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index eb97238471..46db49b1b1 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -24,20 +24,20 @@ env:
 jobs:
   test:
 name: Test (${{ matrix.java }})
-runs-on: ubuntu-20.04
+runs-on: ubuntu-22.04
 strategy:
   fail-fast: false
   matrix:
 java: [ 11, 17, 21 ]
 
 steps:
-  - uses: actions/checkout@v3
+  - uses: actions/checkout@v4
 with:
   path: activemq-artemis
 
   - name: Cache Maven Local Repo
 if: ${{ !startsWith(github.ref, 'refs/tags/') }}
-uses: actions/cache@v3
+uses: actions/cache@v4
 with:
   path: |
 ~/.m2/repository/
@@ -46,7 +46,7 @@ jobs:
 ${{ runner.os }}-mvn-
 
   - name: Install JDK ${{ matrix.java }}
-uses: actions/setup-java@v3
+uses: actions/setup-java@v4
 with:
   java-version: ${{ matrix.java }}
   distribution: 'temurin'
@@ -66,20 +66,20 @@ jobs:
 
   checks:
 name: Checks (${{ matrix.java }})
-runs-on: ubuntu-20.04
+runs-on: ubuntu-22.04
 strategy:
   fail-fast: false
   matrix:
 java: [ 11, 17, 21 ]
 
 steps:
-  - uses: actions/checkout@v3
+  - uses: actions/checkout@v4
 with:
   path: activemq-artemis
 
   - name: Cache Maven Local Repo
 if: ${{ !startsWith(github.ref, 'refs/tags/') }}
-uses: actions/cache@v3
+uses: actions/cache@v4
 with:
   path: |
 ~/.m2/repository/
@@ -88,13 +88,13 @@ jobs:
 ${{ runner.os }}-mvn-
 
   - name: Install JDK ${{ matrix.java }}
-uses: actions/setup-java@v3
+uses: actions/setup-java@v4
 with:
   java-version: ${{ matrix.java }}
   distribution: 'temurin'
 
   - name: Checkout Artemis Examples Repo
-uses: actions/checkout@v3
+uses: actions/checkout@v4
 with:
   repository: ${{ env.EXAMPLES_REPO }}
   ref: ${{ env.EXAMPLES_BRANCH }}



(activemq-artemis) branch main updated: ARTEMIS-4628 Upgrade vertx version to 4.5.3

2024-02-13 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 5969c20777 ARTEMIS-4628 Upgrade vertx version to 4.5.3
5969c20777 is described below

commit 5969c207775a90ffa85b1cdb2a2a916917f360cb
Author: Domenico Francesco Bruscino 
AuthorDate: Tue Feb 13 08:52:15 2024 +0100

ARTEMIS-4628 Upgrade vertx version to 4.5.3
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 4bcf1cd70e..35fb5337fd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -185,7 +185,7 @@
 
   
   4.0.13
-  4.5.2
+  4.5.3
   3.3.1
   5.15.0
 



(activemq-artemis) branch main updated: ARTEMIS-4586 Auto reload web binding SSL stores on change

2024-02-09 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 29781bd5da ARTEMIS-4586 Auto reload web binding SSL stores on change
29781bd5da is described below

commit 29781bd5da6f9892a6fb80c2da5dd7eb3c0e4ebd
Author: Domenico Francesco Bruscino 
AuthorDate: Sun Jan 28 13:40:14 2024 +0100

ARTEMIS-4586 Auto reload web binding SSL stores on change
---
 .../apache/activemq/artemis/dto/BindingDTO.java| 11 +++
 .../apache/activemq/artemis/dto/WebServerDTO.java  | 11 +++
 .../artemis/dto/test/WebServerDTOTest.java |  1 +
 artemis-web/pom.xml|  1 +
 .../artemis/component/WebServerComponent.java  | 96 +-
 .../activemq/cli/test/WebServerComponentTest.java  | 69 +++-
 docs/user-manual/web-server.adoc   |  7 ++
 .../integration/web/WebServerDTOConfigTest.java|  4 +
 8 files changed, 198 insertions(+), 2 deletions(-)

diff --git 
a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/BindingDTO.java 
b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/BindingDTO.java
index 261351a06f..64cb3b5f1e 100644
--- a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/BindingDTO.java
+++ b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/BindingDTO.java
@@ -81,6 +81,9 @@ public class BindingDTO {
@XmlAttribute
private Boolean sniRequired;
 
+   @XmlAttribute
+   private Boolean sslAutoReload;
+
public String getKeyStorePassword() throws Exception {
   return getPassword(this.keyStorePassword);
}
@@ -225,6 +228,14 @@ public class BindingDTO {
   this.sniRequired = sniRequired;
}
 
+   public Boolean getSslAutoReload() {
+  return sslAutoReload;
+   }
+
+   public void setSslAutoReload(Boolean sslAutoReload) {
+  this.sslAutoReload = sslAutoReload;
+   }
+
public BindingDTO() {
   apps = new ArrayList<>();
}
diff --git 
a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java 
b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java
index 91f12ad9b5..8f8bbeaeef 100644
--- 
a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java
+++ 
b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java
@@ -104,6 +104,9 @@ public class WebServerDTO extends ComponentDTO {
@XmlAttribute
public Integer idleThreadTimeout = 6;
 
+   @XmlAttribute
+   public Integer scanPeriod;
+
public String getPath() {
   return path;
}
@@ -168,6 +171,14 @@ public class WebServerDTO extends ComponentDTO {
   this.idleThreadTimeout = idleThreadTimeout;
}
 
+   public Integer getScanPeriod() {
+  return scanPeriod;
+   }
+
+   public void setScanPeriod(Integer scanPeriod) {
+  this.scanPeriod = scanPeriod;
+   }
+
public List getBindings() {
   return bindings;
}
diff --git 
a/artemis-dto/src/test/java/org/apache/activemq/artemis/dto/test/WebServerDTOTest.java
 
b/artemis-dto/src/test/java/org/apache/activemq/artemis/dto/test/WebServerDTOTest.java
index f1e636c767..54709d04cc 100644
--- 
a/artemis-dto/src/test/java/org/apache/activemq/artemis/dto/test/WebServerDTOTest.java
+++ 
b/artemis-dto/src/test/java/org/apache/activemq/artemis/dto/test/WebServerDTOTest.java
@@ -49,6 +49,7 @@ public class WebServerDTOTest {
   Assert.assertNull(defaultBinding.getTrustStorePassword());
   Assert.assertNull(defaultBinding.getSniHostCheck());
   Assert.assertNull(defaultBinding.getSniRequired());
+  Assert.assertNull(defaultBinding.getSslAutoReload());
}
 
@Test
diff --git a/artemis-web/pom.xml b/artemis-web/pom.xml
index 9f38ddb676..8428141215 100644
--- a/artemis-web/pom.xml
+++ b/artemis-web/pom.xml
@@ -189,6 +189,7 @@
   server-cert.pem
   server-key.pem
   server-pem-props-config.txt
+  other-server-keystore.p12

 
  
diff --git 
a/artemis-web/src/main/java/org/apache/activemq/artemis/component/WebServerComponent.java
 
b/artemis-web/src/main/java/org/apache/activemq/artemis/component/WebServerComponent.java
index 79f4fcbec5..a67096a5ee 100644
--- 
a/artemis-web/src/main/java/org/apache/activemq/artemis/component/WebServerComponent.java
+++ 
b/artemis-web/src/main/java/org/apache/activemq/artemis/component/WebServerComponent.java
@@ -25,7 +25,9 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.EnumSet;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 import org.apache.activemq.artemis.ActiveMQWebLogger;
@@ -51,8 +53,10 @@ 

(activemq-artemis) branch main updated: ARTEMIS-4639 NPEs when TopologyMember's primary is null

2024-02-09 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 20840cfdf1 ARTEMIS-4639 NPEs when TopologyMember's primary is null
20840cfdf1 is described below

commit 20840cfdf1de78bf6a53aa9a98510cb52456b81a
Author: Justin Bertram 
AuthorDate: Wed Feb 7 09:20:16 2024 -0600

ARTEMIS-4639 NPEs when TopologyMember's primary is null
---
 .../protocol/openwire/OpenWireProtocolManager.java |  7 ++
 .../openwire/amq/OpenWireProtocolManagerTest.java  | 80 ++
 .../server/cluster/impl/ClusterConnectionImpl.java | 11 +--
 .../impl/ClusterConnectionImplMockTest.java| 94 --
 4 files changed, 182 insertions(+), 10 deletions(-)

diff --git 
a/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireProtocolManager.java
 
b/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireProtocolManager.java
index 56ff48552c..4d9a52e434 100644
--- 
a/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireProtocolManager.java
+++ 
b/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireProtocolManager.java
@@ -232,6 +232,13 @@ public class OpenWireProtocolManager  extends 
AbstractProtocolManagerhttp://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.core.protocol.openwire.amq;
+
+import java.util.concurrent.Executors;
+
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.client.TopologyMember;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import org.apache.activemq.artemis.core.client.impl.TopologyMemberImpl;
+import org.apache.activemq.artemis.core.persistence.StorageManager;
+import 
org.apache.activemq.artemis.core.persistence.impl.nullpm.NullStorageManager;
+import org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection;
+import 
org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager;
+import org.apache.activemq.artemis.core.security.SecurityStore;
+import org.apache.activemq.artemis.core.server.ActiveMQServer;
+import org.apache.activemq.artemis.core.server.ServerSession;
+import org.apache.activemq.artemis.core.server.cluster.ClusterManager;
+import org.apache.activemq.artemis.spi.core.remoting.Connection;
+import org.apache.activemq.artemis.utils.ActiveMQThreadFactory;
+import org.apache.activemq.artemis.utils.RandomUtil;
+import org.apache.activemq.artemis.utils.actors.ArtemisExecutor;
+import org.apache.activemq.command.ConnectionId;
+import org.apache.activemq.command.ConnectionInfo;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+public class OpenWireProtocolManagerTest {
+
+   @Test
+   public void testNullPrimaryOnNodeUp() throws Exception {
+
+  ArtemisExecutor executor = 
ArtemisExecutor.delegate(Executors.newSingleThreadExecutor(ActiveMQThreadFactory.defaultThreadFactory(getClass().getName(;
+
+  try {
+ ClusterManager clusterManager = Mockito.mock(ClusterManager.class);
+ ActiveMQServer server = Mockito.mock(ActiveMQServer.class);
+ StorageManager storageManager = new NullStorageManager();
+ Mockito.when(server.getStorageManager()).thenReturn(storageManager);
+ 
Mockito.when(server.newOperationContext()).thenReturn(storageManager.newContext(executor));
+ Mockito.when(server.getClusterManager()).thenReturn(clusterManager);
+ 
Mockito.when(clusterManager.getDefaultConnection(Mockito.any())).thenReturn(null);
+ SecurityStore securityStore = Mockito.mock(SecurityStore.class);
+ Mockito.when(server.getSecurityStore()).thenReturn(securityStore);
+ Mockito.when(securityStore.authenticate(Mockito.any(), Mockito.any(), 
Mockito.any(), Mockito.any())).thenReturn(null);
+ ServerSession serverSession = Mockito.mock(ServerSession.class);
+ Mockito.when(serverSession.getName()).thenReturn("session");
+ 
Mockito.doReturn(serverSession).when(server).createSession(Mockito.anyString(), 
Mockito.any(), Mockito.any(), Mockito.anyInt(), Mockito.any(), 
Mockito.anyBoolean(), Mockito.anyBoolean(), Mockito.anyBoolean(), 
Mockito.anyBoolean(), Mockito.any(), Mockito.any(), Mockito.anyBoolean(), 
Mockito.any(), Mockito.any(), Mockito.anyString(), Mockito.any(),

(activemq-artemis) branch main updated: ARTEMIS-4638 fix bashism in install validation script

2024-02-07 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 04b5585d66 ARTEMIS-4638 fix bashism in install validation script
04b5585d66 is described below

commit 04b5585d662b90543aff91c4e904ba7a673ae1e3
Author: Justin Bertram 
AuthorDate: Tue Feb 6 11:59:01 2024 -0600

ARTEMIS-4638 fix bashism in install validation script
---
 artemis-distribution/src/test/scripts/validate-instalation.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/artemis-distribution/src/test/scripts/validate-instalation.sh 
b/artemis-distribution/src/test/scripts/validate-instalation.sh
index 64a999499d..95465e7d96 100755
--- a/artemis-distribution/src/test/scripts/validate-instalation.sh
+++ b/artemis-distribution/src/test/scripts/validate-instalation.sh
@@ -76,7 +76,7 @@ sleep 5
 
 export HTTP_CODE=$(curl -H "Origin:http://localhost; -u admin:admin 
--write-out '%{http_code}' --silent --output /dev/null 
http://localhost:8161/console/jolokia/read/org.apache.activemq.artemis:broker=%220.0.0.0%22/Version)
 
-if [[ "$HTTP_CODE" -ne 200 ]]
+if [ "$HTTP_CODE" -ne 200 ]
   then
 echo "Artemis Jolokia REST API check failed: " $HTTP_CODE
   else



(activemq-artemis) branch main updated: ARTEMIS-4630 Fix a typo in earlier commit 7ac6f4e99cc8349b378b4ae9d9ecc0970ac5b2b4

2024-02-06 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 306b192e80 ARTEMIS-4630 Fix a typo in earlier commit 
7ac6f4e99cc8349b378b4ae9d9ecc0970ac5b2b4
306b192e80 is described below

commit 306b192e80e0477c837e2dbfcefe555b2bfafe51
Author: Ângelo Galvão 
AuthorDate: Tue Feb 6 06:38:42 2024 -0500

ARTEMIS-4630 Fix a typo in earlier commit 
7ac6f4e99cc8349b378b4ae9d9ecc0970ac5b2b4

This closes #4811
---
 .../org/apache/activemq/artemis/cli/commands/bin/artemis-service| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/artemis-cli/src/main/resources/org/apache/activemq/artemis/cli/commands/bin/artemis-service
 
b/artemis-cli/src/main/resources/org/apache/activemq/artemis/cli/commands/bin/artemis-service
index e412647374..dd15a347ae 100755
--- 
a/artemis-cli/src/main/resources/org/apache/activemq/artemis/cli/commands/bin/artemis-service
+++ 
b/artemis-cli/src/main/resources/org/apache/activemq/artemis/cli/commands/bin/artemis-service
@@ -62,7 +62,7 @@ status() {
 pid_workdir=$ARTEMIS_INSTANCE
 if [ `command -v lsof &> /dev/null` ]; then
   pid_workdir="`lsof -a -d cwd -p ${pid} | awk '{print $9}' | tail -1`"
-if
+fi
 # check to see if it's gone...
 ps -p ${pid} > /dev/null
 if [ $? -eq 0 ] && [ "$pid_workdir" = "$ARTEMIS_INSTANCE" ]; then



(activemq-artemis) branch main updated: ARTEMIS-4592 ignore more currently-invalid potential upgrades

2024-02-06 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 6c251eaa78 ARTEMIS-4592 ignore more currently-invalid potential 
upgrades
6c251eaa78 is described below

commit 6c251eaa782fb27f7b5e20ac1a46ec55453eb7e5
Author: Justin Bertram 
AuthorDate: Mon Feb 5 13:32:12 2024 -0600

ARTEMIS-4592 ignore more currently-invalid potential upgrades
---
 pom.xml | 33 +
 1 file changed, 33 insertions(+)

diff --git a/pom.xml b/pom.xml
index 4f36efba17..1eca540711 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2010,6 +2010,39 @@

 
  
+ 
+ 
+org.apache.activemq
+maven
+
+   
+  regex
+  6\..*
+   
+
+ 
+ 
+ 
+org.apache.qpid
+maven
+
+   
+  regex
+  2\..*
+   
+
+ 
+ 
+ 
+org.apache.johnzon
+maven
+
+   
+  regex
+  2\..*
+   
+
+ 
  
  
 org.springframework



(activemq-artemis-examples) branch development updated: Update CONTRIBUTING.md to cover using the CI job for testing

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 1bdab8a  Update CONTRIBUTING.md to cover using the CI job for testing
1bdab8a is described below

commit 1bdab8a92b04b3a30239b778d3705bf8006a80e1
Author: Robbie Gemmell 
AuthorDate: Thu Feb 1 17:56:12 2024 +

Update CONTRIBUTING.md to cover using the CI job for testing
---
 CONTRIBUTING.md | 19 ---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 95e3348..62e4906 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,6 +1,19 @@
 # Contributing
 
-* The `main` branch contains examples for the latest ActiveMQ Artemis release.
-* The `development` branch is used for development work, such as creating new 
examples and making updates requiring as-yet-unreleased changes from the 
upcoming Artemis release.
+Contributions should target the 
[`development`](https://github.com/apache/activemq-artemis-examples/tree/development)
 branch.
 
-Contributions should target the `development` branch.
+* The 
[`development`](https://github.com/apache/activemq-artemis-examples/tree/development)
 branch is used for all development toward the next Artemis release and the 
related Examples, whether it be improving existing examples, creating new 
examples, or most especially for making any updates needed to match 
as-yet-unreleased changes in the upcoming Artemis version.
+* The [`main`](https://github.com/apache/activemq-artemis-examples/tree/main) 
branch contains examples for use with the latest ActiveMQ Artemis release.
+
+## Testing Changes
+
+The [GitHub Actions 
build](https://github.com/apache/activemq-artemis-examples/actions) for the 
Examples repo can also be used in your fork to test out changes. In order to 
enable the build in your repository, go to e.g:
+`https://github.com//activemq-artemis-examples/actions`
+
+Use an branch name other than _main_ to prepare your changes. Pushing commits 
to the examples repo on a _non-main_ branch name causes the build to check out 
the current revision of the [Artemis main 
branch](https://github.com/apache/activemq-artemis/tree/main/), build Artemis, 
match the examples version to the Artemis main version found, and then 
seperately compile (to give quick feedback when there are issues in later 
examples) and do verification build+run of many of the examples to ch [...]
+
+If your examples updates require matching changes to the Artemis build itself, 
the build upon commit push will likely fail because those changes aren't yet 
available on the Artemis main branch. You can however also trigger the examples 
build _manually_ by going to e.g 
`https://github.com//activemq-artemis-examples/actions/workflows/build.yml`
 and clicking on the Run Workflow dropdown, which will additionally let you 
specify an alternative repository and branch/tag to check [...]
+
+Pushing to the examples main branch does not check out and build Artemis since 
the main branch is only for use with released Artemis versions, so what is 
specified on the branch itself is always used as-is. The same is true for any 
Pull Requests raised that target the examples main branch (though again, Pull 
Requests should target the `development` branch).
+
+The GitHub Actions build in the Artemis repo itself takes a somewhat similar 
but opposing approach, where it normally checks out the examples repo 
development branch and runs the respective compile check (though it does not 
run the examples, use the examples repo build for that).



(activemq-website) branch main updated: update script shebangs to work on MacOS too

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git


The following commit(s) were added to refs/heads/main by this push:
 new b78f616b3 update script shebangs to work on MacOS too
b78f616b3 is described below

commit b78f616b3b146814119bee3b2c69076274adc487
Author: Robbie Gemmell 
AuthorDate: Thu Feb 1 16:51:51 2024 +

update script shebangs to work on MacOS too
---
 scripts/release/create-artemis-release-file  | 2 +-
 scripts/release/create-artemis-release-notes | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/release/create-artemis-release-file 
b/scripts/release/create-artemis-release-file
index d6f1f1bf4..84b846ad4 100755
--- a/scripts/release/create-artemis-release-file
+++ b/scripts/release/create-artemis-release-file
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python3
 #
 # Licensed to the Apache Software Foundation (ASF) under one
 # or more contributor license agreements.  See the NOTICE file
diff --git a/scripts/release/create-artemis-release-notes 
b/scripts/release/create-artemis-release-notes
index 609b72c8c..d941cb66e 100755
--- a/scripts/release/create-artemis-release-notes
+++ b/scripts/release/create-artemis-release-notes
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python3
 #
 # Licensed to the Apache Software Foundation (ASF) under one
 # or more contributor license agreements.  See the NOTICE file



(activemq-artemis) branch main updated (f258b27eb4 -> 5afe289490)

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


from f258b27eb4 ARTEMIS-4601 remove OpenTelemetry deps from main pom
 new 6f6b3e70a3 NO-JIRA: update release steps to around updating examples
 new 5afe289490 NO-JIRA: add note about installing PyYAML to use the site 
release update scripts

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 RELEASING.md | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)



(activemq-artemis) 02/02: NO-JIRA: add note about installing PyYAML to use the site release update scripts

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 5afe289490429d4cef0cce764c3c7efb143d3bb7
Author: Robbie Gemmell 
AuthorDate: Thu Feb 1 12:38:16 2024 +

NO-JIRA: add note about installing PyYAML to use the site release update 
scripts
---
 RELEASING.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/RELEASING.md b/RELEASING.md
index b3a47f2aab..9682e05370 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -309,6 +309,8 @@ cd activemq-website
 ```
 
 **NOTE**: Some of the release scripts use [Python](https://www.python.org/), 
ensure you have it installed before proceeding.
+Also, the [PyYAML](https://pyyaml.org/wiki/PyYAMLDocumentation) lib is used. 
Examples for installing that include
+using `dnf install python3-pyyaml` on Fedora, or installing it using Pip by 
running `pip install pyyaml`.
 
 Once the CDN and Maven Central are up-to-date then update the site as follows:
 



(activemq-artemis) 01/02: NO-JIRA: update release steps to around updating examples

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git

commit 6f6b3e70a3154b43e7522835c1a16bd5197c4bcf
Author: Robbie Gemmell 
AuthorDate: Thu Feb 1 12:21:33 2024 +

NO-JIRA: update release steps to around updating examples

Note to check out the development branch before running the update script, 
to get updates to the scripts
---
 RELEASING.md | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/RELEASING.md b/RELEASING.md
index 0323a3696f..b3a47f2aab 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -339,12 +339,13 @@ Once pushed, the changes should be published 
automatically by the `jekyll_websit
 
 The [examples repo](https://github.com/apache/activemq-artemis-examples) 
should be updated to reflect the new release and development versions.
 
-Take a fresh clone of the repo and run the provided script, then check the 
results and push.
+Take a fresh clone of the repo, check out the development branch, and run the 
provided script, then check the results and push.
 
 ```
 git clone https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git
 
 cd activemq-artemis-examples
+git checkout development
 ./scripts/release/update-branch-versions.sh  
"
 ```
 
@@ -353,6 +354,7 @@ Example from the 2.32.0 release:
 git clone https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git
 
 cd activemq-artemis-examples
+git checkout development
 ./scripts/release/update-branch-versions.sh 2.32.0 2.33.0-SNAPSHOT"
 ```
 



(activemq-artemis-examples) branch development updated: tweak version update script sed usage to also work on MacOS

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 8c5a154  tweak version update script sed usage to also work on MacOS
8c5a154 is described below

commit 8c5a154028ce38cf6425f4cb00c6278a557b9d24
Author: Robbie Gemmell 
AuthorDate: Thu Feb 1 12:12:39 2024 +

tweak version update script sed usage to also work on MacOS
---
 scripts/update-examples-version.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/scripts/update-examples-version.sh 
b/scripts/update-examples-version.sh
index 6ca05b5..dd4d4ae 100755
--- a/scripts/update-examples-version.sh
+++ b/scripts/update-examples-version.sh
@@ -51,7 +51,8 @@ echo "Setting examples version to ${NEW_VERSION}"
 
 # Update root pom parent pom version
 echo "Updating root pom *parent* version"
-sed -i "//,// s~[^<]*~${NEW_VERSION}~g w 
/dev/stdout" ./pom.xml
+sed -i.bak "//,// s~[^<]*~${NEW_VERSION}~g 
w /dev/stdout" ./pom.xml
+rm -f pom.xml.bak
 
 # Update root pom version and all the child modules to match
 echo "Updating root pom version and child modules"



(activemq-artemis) branch main updated: ARTEMIS-4601 remove OpenTelemetry deps from main pom

2024-02-01 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 f258b27eb4 ARTEMIS-4601 remove OpenTelemetry deps from main pom
f258b27eb4 is described below

commit f258b27eb48b78ed8e14d27d2350ef9e7098f0d9
Author: Justin Bertram 
AuthorDate: Tue Jan 30 15:42:49 2024 -0600

ARTEMIS-4601 remove OpenTelemetry deps from main pom

The OpenTelemetry dependencies can be isolated to the `opentelemetry`
example in the `activemq-artemis-examples` repo. They aren't needed here
anymore.
---
 pom.xml | 21 -
 1 file changed, 21 deletions(-)

diff --git a/pom.xml b/pom.xml
index 1024784d39..9cfa150941 100644
--- a/pom.xml
+++ b/pom.xml
@@ -125,10 +125,6 @@
   
2.2.4
   2.3.9
 
-  
-  1.24.0
-  
${opentelemetry.version}-alpha
-
   
   2.0.61.Final
   0.34.1
@@ -586,23 +582,6 @@
  
  
 
- 
- 
-io.opentelemetry
-opentelemetry-bom
-${opentelemetry.version}
-pom
-import
- 
- 
-io.opentelemetry
-opentelemetry-bom-alpha
-${opentelemetry-alpha.version}
-pom
-import
- 
- 
-
  
  
 org.jgroups



(activemq-artemis-examples) branch main updated (52d7ce8 -> 6958316)

2024-01-30 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


from 52d7ce8  update examples version to 2.31.2
 add 3c406e0  Update examples version to 2.32.0-SNAPSHOT
 add f6b880d  copy in empty-dirs/files logging config fixup change 
(requires 2.32.0-SNAPSHOT)
 add 6a749c1  ARTEMIS 4518 exclude slf4j-api from JMS bridge example
 add b75d791  ARTEMIS-4551 Remove interceptor dependency from interceptor 
client (#2)
 add c3cd128  ARTEMIS-4550 Upgrade spring boot version to 2.7.18
 add 2590866  NO-JIRA: update year in NOTICE file
 add c1ff39d  fix up variable name to reflect actual usage
 add b048d17  update non-main branch step gating to handle pull_request 
triggered runs different env, behave in way actually intended
 add c1c40f5  add .gitattributes override to configure linguist, make repo 
language stats reflect the examples
 add 17e7355  ARTEMIS-4584: only create sender for the specific queue 
matching the examples security etc config
 add 834cbde  upgrade actions versions to latest, fix deprecation warnings
 add 0e9deb8  fix problem with cache key definition, causing separate 
caches for the 2 jobs
 add 6958316  Update examples to version 2.32.0

No new revisions were added by this update.

Summary of changes:
 .gitattributes |  4 +++
 .github/workflows/build.yml| 42 +++---
 NOTICE |  2 +-
 artemis-distribution/pom.xml   |  2 +-
 .../broker-connection/amqp-federation/pom.xml  | 12 ++-
 .../amqp-receiving-messages/pom.xml| 12 ++-
 .../amqp-sending-messages-multicast/pom.xml| 12 ++-
 .../amqp-sending-messages/pom.xml  | 12 ++-
 .../broker-connection/amqp-sending-overssl/pom.xml | 12 ++-
 .../src/main/resources/activemq/server0/broker.xml |  2 +-
 .../broker-connection/disaster-recovery/pom.xml| 12 ++-
 examples/features/broker-connection/pom.xml|  2 +-
 .../clustered/client-side-load-balancing/pom.xml   | 17 +++--
 .../clustered-durable-subscription/pom.xml | 12 ++-
 .../features/clustered/clustered-grouping/pom.xml  | 17 +++--
 .../features/clustered/clustered-jgroups/pom.xml   | 12 ++-
 .../features/clustered/clustered-queue/pom.xml | 12 ++-
 .../clustered-static-discovery-uri/pom.xml | 22 +++-
 .../clustered/clustered-static-discovery/pom.xml   | 22 +++-
 .../clustered/clustered-static-oneway/pom.xml  | 17 +++--
 .../features/clustered/clustered-topic-uri/pom.xml | 12 ++-
 .../features/clustered/clustered-topic/pom.xml | 12 ++-
 examples/features/clustered/pom.xml|  2 +-
 .../clustered/queue-message-redistribution/pom.xml | 12 ++-
 .../shared-storage-static-cluster/pom.xml  |  2 +-
 .../features/clustered/symmetric-cluster/pom.xml   | 32 -
 .../connection-router/evenly-redirect/pom.xml  | 17 +++--
 examples/features/connection-router/pom.xml|  2 +-
 .../connection-router/symmetric-redirect/pom.xml   | 12 ++-
 .../connection-router/symmetric-simple/pom.xml | 12 ++-
 .../federation/federated-address-divert/pom.xml| 12 ++-
 .../federated-address-downstream-upstream/pom.xml  | 17 +++--
 .../federated-address-downstream/pom.xml   | 17 +++--
 .../features/federation/federated-address/pom.xml  | 17 +++--
 .../federated-queue-downstream-upstream/pom.xml| 17 +++--
 .../federation/federated-queue-downstream/pom.xml  | 17 +++--
 .../features/federation/federated-queue/pom.xml| 17 +++--
 examples/features/federation/pom.xml   |  2 +-
 .../features/ha/application-layer-failover/pom.xml |  2 +-
 .../ha/client-side-failoverlistener/pom.xml|  2 +-
 .../ha/colocated-failover-scale-down/pom.xml   |  2 +-
 examples/features/ha/colocated-failover/pom.xml|  2 +-
 examples/features/ha/ha-policy-autobackup/pom.xml  |  2 +-
 .../features/ha/multiple-failover-failback/pom.xml |  2 +-
 examples/features/ha/multiple-failover/pom.xml |  2 +-
 .../features/ha/non-transaction-failover/pom.xml   |  2 +-
 examples/features/ha/pom.xml   |  2 +-
 .../features/ha/replicated-failback-static/pom.xml |  2 +-
 examples/features/ha/replicated-failback/pom.xml   |  2 +-
 .../ha/replicated-multiple-failover/pom.xml|  2 +-
 .../ha/replicated-transaction-failover/pom.xml |  2 +-
 examples/features/ha/scale-down/pom.xml|  2 +-
 examples/features/ha/stop-server-failover/pom.xml  | 12 ++-
 examples/features/ha/transaction-failover/pom.xml  |  2 +-
 .../ha/zookeeper-single-pair-failback/pom.xml  |  2 +-
 examples/features/perf/perf/pom.xml|  2 +-
 examples

(activemq-artemis-examples) 01/02: Update examples to version 2.32.0

2024-01-30 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git

commit 6958316d39b01f67add3c2f90a1bf75f62c39020
Author: Robbie Gemmell 
AuthorDate: Tue Jan 30 17:13:07 2024 +

Update examples to version 2.32.0
---
 artemis-distribution/pom.xml  | 2 +-
 examples/features/broker-connection/amqp-federation/pom.xml   | 2 +-
 examples/features/broker-connection/amqp-receiving-messages/pom.xml   | 2 +-
 .../broker-connection/amqp-sending-messages-multicast/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-messages/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-overssl/pom.xml  | 2 +-
 examples/features/broker-connection/disaster-recovery/pom.xml | 2 +-
 examples/features/broker-connection/pom.xml   | 2 +-
 examples/features/clustered/client-side-load-balancing/pom.xml| 2 +-
 examples/features/clustered/clustered-durable-subscription/pom.xml| 2 +-
 examples/features/clustered/clustered-grouping/pom.xml| 2 +-
 examples/features/clustered/clustered-jgroups/pom.xml | 2 +-
 examples/features/clustered/clustered-queue/pom.xml   | 2 +-
 examples/features/clustered/clustered-static-discovery-uri/pom.xml| 2 +-
 examples/features/clustered/clustered-static-discovery/pom.xml| 2 +-
 examples/features/clustered/clustered-static-oneway/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic-uri/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic/pom.xml   | 2 +-
 examples/features/clustered/pom.xml   | 2 +-
 examples/features/clustered/queue-message-redistribution/pom.xml  | 2 +-
 examples/features/clustered/shared-storage-static-cluster/pom.xml | 2 +-
 examples/features/clustered/symmetric-cluster/pom.xml | 2 +-
 examples/features/connection-router/evenly-redirect/pom.xml   | 2 +-
 examples/features/connection-router/pom.xml   | 2 +-
 examples/features/connection-router/symmetric-redirect/pom.xml| 2 +-
 examples/features/connection-router/symmetric-simple/pom.xml  | 2 +-
 examples/features/federation/federated-address-divert/pom.xml | 2 +-
 .../features/federation/federated-address-downstream-upstream/pom.xml | 2 +-
 examples/features/federation/federated-address-downstream/pom.xml | 2 +-
 examples/features/federation/federated-address/pom.xml| 2 +-
 .../features/federation/federated-queue-downstream-upstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue-downstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue/pom.xml  | 2 +-
 examples/features/federation/pom.xml  | 2 +-
 examples/features/ha/application-layer-failover/pom.xml   | 2 +-
 examples/features/ha/client-side-failoverlistener/pom.xml | 2 +-
 examples/features/ha/colocated-failover-scale-down/pom.xml| 2 +-
 examples/features/ha/colocated-failover/pom.xml   | 2 +-
 examples/features/ha/ha-policy-autobackup/pom.xml | 2 +-
 examples/features/ha/multiple-failover-failback/pom.xml   | 2 +-
 examples/features/ha/multiple-failover/pom.xml| 2 +-
 examples/features/ha/non-transaction-failover/pom.xml | 2 +-
 examples/features/ha/pom.xml  | 2 +-
 examples/features/ha/replicated-failback-static/pom.xml   | 2 +-
 examples/features/ha/replicated-failback/pom.xml  | 2 +-
 examples/features/ha/replicated-multiple-failover/pom.xml | 2 +-
 examples/features/ha/replicated-transaction-failover/pom.xml  | 2 +-
 examples/features/ha/scale-down/pom.xml   | 2 +-
 examples/features/ha/stop-server-failover/pom.xml | 2 +-
 examples/features/ha/transaction-failover/pom.xml | 2 +-
 examples/features/ha/zookeeper-single-pair-failback/pom.xml   | 2 +-
 examples/features/perf/perf/pom.xml   | 2 +-
 examples/features/perf/pom.xml| 2 +-
 examples/features/perf/soak/pom.xml   | 2 +-
 examples/features/pom.xml | 2 +-
 examples/features/standard/auto-closeable/pom.xml | 2 +-
 examples/features/standard/broker-msg-auth-plugin/pom.xml | 2 +-
 examples/features/standard/broker-plugin/pom.xml  | 2 +-
 examples/features/standard/browser/pom.xml| 2 +-
 examples/features/standard/camel/camel

(activemq-artemis-examples) 02/02: Update examples to version 2.33.0-SNAPSHOT

2024-01-30 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git

commit 2ac3b9dc1e2028c9ee9354793cc4b09d019abd31
Author: Robbie Gemmell 
AuthorDate: Tue Jan 30 17:13:12 2024 +

Update examples to version 2.33.0-SNAPSHOT
---
 artemis-distribution/pom.xml  | 2 +-
 examples/features/broker-connection/amqp-federation/pom.xml   | 2 +-
 examples/features/broker-connection/amqp-receiving-messages/pom.xml   | 2 +-
 .../broker-connection/amqp-sending-messages-multicast/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-messages/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-overssl/pom.xml  | 2 +-
 examples/features/broker-connection/disaster-recovery/pom.xml | 2 +-
 examples/features/broker-connection/pom.xml   | 2 +-
 examples/features/clustered/client-side-load-balancing/pom.xml| 2 +-
 examples/features/clustered/clustered-durable-subscription/pom.xml| 2 +-
 examples/features/clustered/clustered-grouping/pom.xml| 2 +-
 examples/features/clustered/clustered-jgroups/pom.xml | 2 +-
 examples/features/clustered/clustered-queue/pom.xml   | 2 +-
 examples/features/clustered/clustered-static-discovery-uri/pom.xml| 2 +-
 examples/features/clustered/clustered-static-discovery/pom.xml| 2 +-
 examples/features/clustered/clustered-static-oneway/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic-uri/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic/pom.xml   | 2 +-
 examples/features/clustered/pom.xml   | 2 +-
 examples/features/clustered/queue-message-redistribution/pom.xml  | 2 +-
 examples/features/clustered/shared-storage-static-cluster/pom.xml | 2 +-
 examples/features/clustered/symmetric-cluster/pom.xml | 2 +-
 examples/features/connection-router/evenly-redirect/pom.xml   | 2 +-
 examples/features/connection-router/pom.xml   | 2 +-
 examples/features/connection-router/symmetric-redirect/pom.xml| 2 +-
 examples/features/connection-router/symmetric-simple/pom.xml  | 2 +-
 examples/features/federation/federated-address-divert/pom.xml | 2 +-
 .../features/federation/federated-address-downstream-upstream/pom.xml | 2 +-
 examples/features/federation/federated-address-downstream/pom.xml | 2 +-
 examples/features/federation/federated-address/pom.xml| 2 +-
 .../features/federation/federated-queue-downstream-upstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue-downstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue/pom.xml  | 2 +-
 examples/features/federation/pom.xml  | 2 +-
 examples/features/ha/application-layer-failover/pom.xml   | 2 +-
 examples/features/ha/client-side-failoverlistener/pom.xml | 2 +-
 examples/features/ha/colocated-failover-scale-down/pom.xml| 2 +-
 examples/features/ha/colocated-failover/pom.xml   | 2 +-
 examples/features/ha/ha-policy-autobackup/pom.xml | 2 +-
 examples/features/ha/multiple-failover-failback/pom.xml   | 2 +-
 examples/features/ha/multiple-failover/pom.xml| 2 +-
 examples/features/ha/non-transaction-failover/pom.xml | 2 +-
 examples/features/ha/pom.xml  | 2 +-
 examples/features/ha/replicated-failback-static/pom.xml   | 2 +-
 examples/features/ha/replicated-failback/pom.xml  | 2 +-
 examples/features/ha/replicated-multiple-failover/pom.xml | 2 +-
 examples/features/ha/replicated-transaction-failover/pom.xml  | 2 +-
 examples/features/ha/scale-down/pom.xml   | 2 +-
 examples/features/ha/stop-server-failover/pom.xml | 2 +-
 examples/features/ha/transaction-failover/pom.xml | 2 +-
 examples/features/ha/zookeeper-single-pair-failback/pom.xml   | 2 +-
 examples/features/perf/perf/pom.xml   | 2 +-
 examples/features/perf/pom.xml| 2 +-
 examples/features/perf/soak/pom.xml   | 2 +-
 examples/features/pom.xml | 2 +-
 examples/features/standard/auto-closeable/pom.xml | 2 +-
 examples/features/standard/broker-msg-auth-plugin/pom.xml | 2 +-
 examples/features/standard/broker-plugin/pom.xml  | 2 +-
 examples/features/standard/browser/pom.xml| 2 +-
 examples/features/standard/camel

(activemq-artemis-examples) branch development updated (0e9deb8 -> 2ac3b9d)

2024-01-30 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


from 0e9deb8  fix problem with cache key definition, causing separate 
caches for the 2 jobs
 new 6958316  Update examples to version 2.32.0
 new 2ac3b9d  Update examples to version 2.33.0-SNAPSHOT

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 artemis-distribution/pom.xml  | 2 +-
 examples/features/broker-connection/amqp-federation/pom.xml   | 2 +-
 examples/features/broker-connection/amqp-receiving-messages/pom.xml   | 2 +-
 .../broker-connection/amqp-sending-messages-multicast/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-messages/pom.xml | 2 +-
 examples/features/broker-connection/amqp-sending-overssl/pom.xml  | 2 +-
 examples/features/broker-connection/disaster-recovery/pom.xml | 2 +-
 examples/features/broker-connection/pom.xml   | 2 +-
 examples/features/clustered/client-side-load-balancing/pom.xml| 2 +-
 examples/features/clustered/clustered-durable-subscription/pom.xml| 2 +-
 examples/features/clustered/clustered-grouping/pom.xml| 2 +-
 examples/features/clustered/clustered-jgroups/pom.xml | 2 +-
 examples/features/clustered/clustered-queue/pom.xml   | 2 +-
 examples/features/clustered/clustered-static-discovery-uri/pom.xml| 2 +-
 examples/features/clustered/clustered-static-discovery/pom.xml| 2 +-
 examples/features/clustered/clustered-static-oneway/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic-uri/pom.xml   | 2 +-
 examples/features/clustered/clustered-topic/pom.xml   | 2 +-
 examples/features/clustered/pom.xml   | 2 +-
 examples/features/clustered/queue-message-redistribution/pom.xml  | 2 +-
 examples/features/clustered/shared-storage-static-cluster/pom.xml | 2 +-
 examples/features/clustered/symmetric-cluster/pom.xml | 2 +-
 examples/features/connection-router/evenly-redirect/pom.xml   | 2 +-
 examples/features/connection-router/pom.xml   | 2 +-
 examples/features/connection-router/symmetric-redirect/pom.xml| 2 +-
 examples/features/connection-router/symmetric-simple/pom.xml  | 2 +-
 examples/features/federation/federated-address-divert/pom.xml | 2 +-
 .../features/federation/federated-address-downstream-upstream/pom.xml | 2 +-
 examples/features/federation/federated-address-downstream/pom.xml | 2 +-
 examples/features/federation/federated-address/pom.xml| 2 +-
 .../features/federation/federated-queue-downstream-upstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue-downstream/pom.xml   | 2 +-
 examples/features/federation/federated-queue/pom.xml  | 2 +-
 examples/features/federation/pom.xml  | 2 +-
 examples/features/ha/application-layer-failover/pom.xml   | 2 +-
 examples/features/ha/client-side-failoverlistener/pom.xml | 2 +-
 examples/features/ha/colocated-failover-scale-down/pom.xml| 2 +-
 examples/features/ha/colocated-failover/pom.xml   | 2 +-
 examples/features/ha/ha-policy-autobackup/pom.xml | 2 +-
 examples/features/ha/multiple-failover-failback/pom.xml   | 2 +-
 examples/features/ha/multiple-failover/pom.xml| 2 +-
 examples/features/ha/non-transaction-failover/pom.xml | 2 +-
 examples/features/ha/pom.xml  | 2 +-
 examples/features/ha/replicated-failback-static/pom.xml   | 2 +-
 examples/features/ha/replicated-failback/pom.xml  | 2 +-
 examples/features/ha/replicated-multiple-failover/pom.xml | 2 +-
 examples/features/ha/replicated-transaction-failover/pom.xml  | 2 +-
 examples/features/ha/scale-down/pom.xml   | 2 +-
 examples/features/ha/stop-server-failover/pom.xml | 2 +-
 examples/features/ha/transaction-failover/pom.xml | 2 +-
 examples/features/ha/zookeeper-single-pair-failback/pom.xml   | 2 +-
 examples/features/perf/perf/pom.xml   | 2 +-
 examples/features/perf/pom.xml| 2 +-
 examples/features/perf/soak/pom.xml   | 2 +-
 examples/features/pom.xml | 2 +-
 examples/features/sta

(activemq-artemis) branch main updated: NO-JIRA: remove a bunch of commented out code in util test class

2024-01-30 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 14bbc041d7 NO-JIRA: remove a bunch of commented out code in util test 
class
14bbc041d7 is described below

commit 14bbc041d7d466befd83be58bcd78ffea467795b
Author: Robbie Gemmell 
AuthorDate: Tue Jan 30 15:32:55 2024 +

NO-JIRA: remove a bunch of commented out code in util test class
---
 .../tests/unit/util/NonSerializableFactory.java| 42 --
 1 file changed, 42 deletions(-)

diff --git 
a/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/util/NonSerializableFactory.java
 
b/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/util/NonSerializableFactory.java
index 3b621aedd2..94d955322c 100644
--- 
a/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/util/NonSerializableFactory.java
+++ 
b/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/util/NonSerializableFactory.java
@@ -35,48 +35,6 @@ public class NonSerializableFactory implements ObjectFactory 
{
public NonSerializableFactory() {
}
 
-   //   public static void unbind(final Context ctx, final String strName) 
throws NamingException
-   //   {
-   //  Name name = ctx.getNameParser("").parse(strName);
-   //  int size = name.size();
-   //  String atom = name.get(size - 1);
-   //  Context parentCtx = Util.createSubcontext(ctx, name.getPrefix(size 
- 1));
-   //  String key = new 
StringBuilder().append(parentCtx.getNameInNamespace()).append("/").append(atom).toString();
-   //  NonSerializableFactory.getWrapperMap().remove(key);
-   //  Util.unbind(ctx, strName);
-   //   }
-
-   //   public static void rebind(final Context ctx, final String strName, 
final Object value) throws NamingException
-   //   {
-   //  Name name = ctx.getNameParser("").parse(strName);
-   //  int size = name.size();
-   //  String atom = name.get(size - 1);
-   //  Context parentCtx = Util.createSubcontext(ctx, name.getPrefix(size 
- 1));
-   //  String key = new 
StringBuilder().append(parentCtx.getNameInNamespace()).append("/").append(atom).toString();
-   //  NonSerializableFactory.getWrapperMap().put(key, value);
-   //  String className = value.getClass().getName();
-   //  String factory = NonSerializableFactory.class.getName();
-   //  StringRefAddr addr = new StringRefAddr("nns", key);
-   //  Reference memoryRef = new Reference(className, addr, factory, null);
-   //  parentCtx.rebind(atom, memoryRef);
-   //   }
-
-   //   public static void bind(final Context ctx, final String strName, final 
Object value) throws NamingException
-   //   {
-   //  Name name = ctx.getNameParser("").parse(strName);
-   //  int size = name.size();
-   //  String atom = name.get(size - 1);
-   //  Context parentCtx = Util.createSubcontext(ctx, name.getPrefix(size 
- 1));
-   //  String key = new 
StringBuilder().append(parentCtx.getNameInNamespace()).append("/").append(atom).toString();
-   //  NonSerializableFactory.getWrapperMap().put(key, value);
-   //  String className = value.getClass().getName();
-   //  String factory = NonSerializableFactory.class.getName();
-   //  StringRefAddr addr = new StringRefAddr("nns", key);
-   //  Reference memoryRef = new Reference(className, addr, factory, null);
-   //
-   //  parentCtx.bind(atom, memoryRef);
-   //   }
-
public static Object lookup(final String name) throws NamingException {
   if (NonSerializableFactory.getWrapperMap().get(name) == null) {
  throw new NamingException(name + " not found");



(activemq-artemis) branch main updated: ARTEMIS-4532 MQTT-to-core wildcard conversion is broken

2024-01-29 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 513b7826a4 ARTEMIS-4532 MQTT-to-core wildcard conversion is broken
513b7826a4 is described below

commit 513b7826a440eecbfa0f3d7000360186e35bc43d
Author: Justin Bertram 
AuthorDate: Wed Dec 13 10:36:11 2023 -0600

ARTEMIS-4532 MQTT-to-core wildcard conversion is broken

Currently when an MQTT topic filter contains characters from the
configured wildcard syntax the conversion to/from this syntax breaks.

For example, when using the default wildcard syntax if an MQTT topic
filter contains a . the conversion from the MQTT wildcard syntax to the
core wildcard syntax and back will result in the `.` being replaced with
a `/.`.

This commit fixes that plus a few other things...

 - Implements proper conversions to/from one WildcardConfiguration to
   another.
 - Refactors the MQTT code which invokes these conversion methods. This
   includes simplifying a lot of test code.
 - Adds lots of tests for everything.
 - Clarifies some variable naming to better distinguish between core and
   MQTT.
---
 .../core/protocol/mqtt/MQTTPublishManager.java |  16 +--
 .../protocol/mqtt/MQTTRetainMessageManager.java|   4 +-
 .../core/protocol/mqtt/MQTTSessionState.java   |   4 +-
 .../protocol/mqtt/MQTTSubscriptionManager.java |  51 +++-
 .../artemis/core/protocol/mqtt/MQTTUtil.java   | 110 +++--
 .../artemis/core/protocol/mqtt/MQTTUtilTest.java   | 110 -
 .../core/protocol/openwire/util/OpenWireUtil.java  |  10 +-
 .../artemis/core/config/WildcardConfiguration.java | 130 ++---
 .../core/config/WildcardConfigurationTest.java | 124 
 docs/user-manual/mqtt.adoc |  20 +++-
 docs/user-manual/versions.adoc |  22 
 .../artemis/tests/integration/mqtt/MQTTTest.java   |   8 +-
 .../tests/integration/mqtt/MQTTTestSupport.java|   3 +-
 .../mqtt/MqttWildCardSubAutoCreateTest.java|   6 +-
 .../integration/mqtt/PahoMQTTQOS2SecurityTest.java |   3 +-
 .../artemis/tests/integration/mqtt5/MQTT5Test.java |  40 +--
 .../tests/integration/mqtt5/MQTT5TestSupport.java  |  41 ++-
 .../mqtt5/spec/ControlPacketFormatTests.java   |  25 ++--
 .../mqtt5/spec/MessageReceiptTests.java|   5 +-
 .../tests/integration/mqtt5/spec/QoSTests.java |  60 +-
 .../mqtt5/spec/controlpackets/ConnectTests.java|   4 +-
 .../mqtt5/spec/controlpackets/PublishTests.java|  64 ++
 .../controlpackets/PublishTestsWithSecurity.java   |   6 +-
 .../controlpackets/SubscribeTestsWithSecurity.java |   6 +-
 .../ssl/CertificateAuthenticationSslTests.java |   9 +-
 25 files changed, 641 insertions(+), 240 deletions(-)

diff --git 
a/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTPublishManager.java
 
b/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTPublishManager.java
index 5c79a53b43..eec146287d 100644
--- 
a/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTPublishManager.java
+++ 
b/artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTPublishManager.java
@@ -216,7 +216,7 @@ public class MQTTPublishManager {
}
 }
  }
- String coreAddress = MQTTUtil.convertMqttTopicFilterToCore(topic, 
session.getWildcardConfiguration());
+ String coreAddress = MQTTUtil.getCoreAddressFromMqttTopic(topic, 
session.getWildcardConfiguration());
  SimpleString address = SimpleString.toSimpleString(coreAddress, 
session.getCoreMessageObjectPools().getAddressStringSimpleStringPool());
  Message serverMessage = 
MQTTUtil.createServerMessageFromByteBuf(session, address, message);
  int qos = message.fixedHeader().qosLevel().value();
@@ -392,7 +392,7 @@ public class MQTTPublishManager {
}
 
private boolean publishToClient(int messageId, ICoreMessage message, int 
deliveryCount, int qos, long consumerId) throws Exception {
-  String address = 
MQTTUtil.convertCoreAddressToMqttTopicFilter(message.getAddress() == null ? "" 
: message.getAddress(), session.getWildcardConfiguration());
+  String topic = MQTTUtil.getMqttTopicFromCoreAddress(message.getAddress() 
== null ? "" : message.getAddress(), session.getWildcardConfiguration());
 
   ByteBuf payload;
   switch (message.getType()) {
@@ -418,29 +418,29 @@ public class MQTTPublishManager {
 
   if (session.getVersion() == MQTTVersion.MQTT_5) {
  if (!isRetain &&

(activemq-artemis-examples) branch development updated: fix problem with cache key definition, causing separate caches for the 2 jobs

2024-01-26 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 0e9deb8  fix problem with cache key definition, causing separate 
caches for the 2 jobs
0e9deb8 is described below

commit 0e9deb80cf2df77aec1b90c3a31fdeafeb62d7a4
Author: Robbie Gemmell 
AuthorDate: Fri Jan 26 11:28:36 2024 +

fix problem with cache key definition, causing separate caches for the 2 
jobs
---
 .github/workflows/build.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index c89b563..55ab85a 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -119,7 +119,7 @@ jobs:
 with:
   path: |
 ~/.m2/repository/
-  key: ${{ runner.os }}-mvn-${{ 
hashFiles('activemq-artemis-examples**/pom.xml') }}
+  key: ${{ runner.os }}-mvn-${{ 
hashFiles('activemq-artemis-examples/**/pom.xml') }}
   restore-keys: |
 ${{ runner.os }}-mvn-
 



(activemq-artemis-examples) branch development updated: upgrade actions versions to latest, fix deprecation warnings

2024-01-26 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 834cbde  upgrade actions versions to latest, fix deprecation warnings
834cbde is described below

commit 834cbdeb1ecff2824c5b5e6060cb89ec819937cf
Author: Robbie Gemmell 
AuthorDate: Fri Jan 26 11:11:34 2024 +

upgrade actions versions to latest, fix deprecation warnings
---
 .github/workflows/build.yml | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f5d3c8f..c89b563 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -30,13 +30,13 @@ jobs:
 java: [ 11 ]
 
 steps:
-  - uses: actions/checkout@v3
+  - uses: actions/checkout@v4
 with:
   path: activemq-artemis-examples
 
   - name: Cache Maven Local Repo
 if: ${{ !startsWith(github.ref, 'refs/tags/') }}
-uses: actions/cache@v3
+uses: actions/cache@v4
 with:
   path: |
 ~/.m2/repository/
@@ -45,14 +45,14 @@ jobs:
 ${{ runner.os }}-mvn-
 
   - name: Install JDK ${{ matrix.java }}
-uses: actions/setup-java@v3
+uses: actions/setup-java@v4
 with:
   java-version: ${{ matrix.java }}
   distribution: 'temurin'
 
   - name: Checkout Artemis Repo (non-main Examples)
 if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
-uses: actions/checkout@v3
+uses: actions/checkout@v4
 with:
   repository: ${{ env.ARTEMIS_REPO }}
   ref: ${{ env.ARTEMIS_BRANCH }}
@@ -109,13 +109,13 @@ jobs:
 java: [ 11 ]
 
 steps:
-  - uses: actions/checkout@v3
+  - uses: actions/checkout@v4
 with:
   path: activemq-artemis-examples
 
   - name: Cache Maven Local Repo
 if: ${{ !startsWith(github.ref, 'refs/tags/') }}
-uses: actions/cache@v3
+uses: actions/cache@v4
 with:
   path: |
 ~/.m2/repository/
@@ -124,14 +124,14 @@ jobs:
 ${{ runner.os }}-mvn-
 
   - name: Install JDK ${{ matrix.java }}
-uses: actions/setup-java@v3
+uses: actions/setup-java@v4
 with:
   java-version: ${{ matrix.java }}
   distribution: 'temurin'
 
   - name: Checkout Artemis Repo (non-main Examples)
 if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
-uses: actions/checkout@v3
+uses: actions/checkout@v4
 with:
   repository: ${{ env.ARTEMIS_REPO }}
   ref: ${{ env.ARTEMIS_BRANCH }}



(activemq-artemis-examples) branch development updated: ARTEMIS-4584: only create sender for the specific queue matching the examples security etc config

2024-01-25 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 17e7355  ARTEMIS-4584: only create sender for the specific queue 
matching the examples security etc config
17e7355 is described below

commit 17e73558d629e6619c47d2ed72c0a2772d246edf
Author: Robbie Gemmell 
AuthorDate: Thu Jan 25 18:29:29 2024 +

ARTEMIS-4584: only create sender for the specific queue matching the 
examples security etc config
---
 .../amqp-sending-overssl/src/main/resources/activemq/server0/broker.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/examples/features/broker-connection/amqp-sending-overssl/src/main/resources/activemq/server0/broker.xml
 
b/examples/features/broker-connection/amqp-sending-overssl/src/main/resources/activemq/server0/broker.xml
index c1143c5..8b4e34d 100644
--- 
a/examples/features/broker-connection/amqp-sending-overssl/src/main/resources/activemq/server0/broker.xml
+++ 
b/examples/features/broker-connection/amqp-sending-overssl/src/main/resources/activemq/server0/broker.xml
@@ -37,7 +37,7 @@ under the License.
 
   
  
-
+
  
   
 



(activemq-artemis) branch main updated: ARTEMIS-4583: remove the artemis-server test-jar, do related cleanup

2024-01-25 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 83eb03c665 ARTEMIS-4583: remove the artemis-server test-jar, do 
related cleanup
83eb03c665 is described below

commit 83eb03c665f579f643edaad1ae3aa1deb53c9c6c
Author: Robbie Gemmell 
AuthorDate: Thu Jan 25 14:49:57 2024 +

ARTEMIS-4583: remove the artemis-server test-jar, do related cleanup

- Move ActiveMQTestBase to artemis-test-support.
- Add reduced parent for current artemis-server tests.
- Add a simpler test case parent class unit tests can use.
- Convert some existing checks into a rule for reuse.
- Move various rules/utils to artemis[-unit]-test-support module from where 
they can be used instead of from artemis-server.
---
 artemis-server/pom.xml |  16 -
 .../core/config/impl/ConfigurationImplTest.java|   4 +-
 .../config/impl/ConfigurationValidationTest.java   |   7 +-
 .../impl/DatabaseStoreConfigurationTest.java   |   4 +-
 .../config/impl/FileConfigurationParserTest.java   |   4 +-
 .../config/impl/HAPolicyConfigurationTest.java |   4 +-
 .../impl/WrongRoleFileConfigurationParserTest.java |   4 +-
 .../core/paging/cursor/impl/ConcurrentAckTest.java |   4 +-
 .../impl/journal/JournalStorageManagerTest.java|   4 +-
 .../impl/journal/LargeServerMessageImplTest.java   |   4 +-
 .../impl/journal/OperationContextUnitTest.java |   4 +-
 .../artemis/core/reload/ReloadManagerTest.java |   4 +-
 .../artemis/core/security/jaas/StatusTest.java |   4 +-
 .../cluster/impl/BroadcastGroupImplTest.java   |   4 +-
 .../impl/ClusterConnectionImplMockTest.java|   4 +-
 .../core/server/files/FileStoreMonitorTest.java|   4 +-
 .../server/group/impl/ClusteredResetMockTest.java  |   4 +-
 .../core/server/impl/ActiveMQServerImplTest.java   |   4 +-
 .../server/impl/ActiveMQServerStartupTest.java |   4 +-
 .../core/server/impl/jdbc/JdbcLeaseLockTest.java   |   4 +-
 .../core/server/impl/jdbc/JdbcNodeManagerTest.java |   4 +-
 .../impl/jdbc/JdbcSharedStateManagerTest.java  |   4 +-
 .../server/management/JMXRMIRegistryPortTest.java  |   4 +-
 .../artemis/core/settings/AddressSettingsTest.java |   4 +-
 .../artemis/core/settings/RepositoryTest.java  |   4 +-
 .../core/transaction/impl/TransactionImplTest.java |   9 +-
 .../activemq/artemis/tests/util/RemoveFolder.java  |   3 +-
 .../artemis/tests/util/ServerTestBase.java | 706 +
 .../artemis/tests/util/SimpleStringTest.java   |   3 +-
 artemis-unit-test-support/pom.xml  |   6 +
 .../artemis/tests/rules/LibaioContextCheck.java| 107 
 .../artemis/tests/rules}/NoFilesBehind.java|  40 +-
 .../artemis/tests/rules}/NoProcessFilesBehind.java |  61 +-
 .../artemis/tests/util/ArtemisTestCase.java| 169 +
 .../activemq/artemis/tests/util/DBSupportUtil.java |  64 ++
 .../src/main}/resources/test.ldif  |   0
 tests/artemis-test-support/pom.xml |  14 +-
 .../impl/PageCursorProviderTestAccessor.java   |   2 +-
 .../core/paging/impl/PagingStoreTestAccessor.java  |   0
 .../artemis/tests/rules}/RemoveFolder.java |   8 +-
 .../artemis/tests/util/ActiveMQTestBase.java   | 254 +---
 .../tests/util/ColocatedActiveMQServer.java|   0
 .../util/CountDownSessionFailureListener.java  |   0
 .../artemis/tests/util/InVMNodeManagerServer.java  |   0
 .../artemis/tests/util/SingleServerTestBase.java   |   0
 .../artemis/tests/db/paging/PagingTest.java|  30 +-
 tests/integration-tests-isolated/pom.xml   |  12 -
 .../paging/impl/PagingManagerTestAccessor.java |   0
 .../postoffice/impl/PostOfficeTestAccessor.java|   0
 .../server/cluster/impl/BridgeTestAccessor.java|   0
 .../core/server/impl/QueueImplTestAccessor.java|   0
 .../integration-tests/src/test/resources/test.ldif |  39 --
 tests/leak-tests/pom.xml   |  14 +-
 .../core/message/impl/MessagePropertyTest.java |   2 +-
 .../unit/core/paging/impl/PagingStoreImplTest.java |  12 +-
 .../util/ObjectInputStreamWithClassLoaderTest.java |   7 +-
 56 files changed, 1180 insertions(+), 497 deletions(-)

diff --git a/artemis-server/pom.xml b/artemis-server/pom.xml
index 262558a756..bbfbce71dd 100644
--- a/artemis-server/pom.xml
+++ b/artemis-server/pom.xml
@@ -328,20 +328,4 @@
  
   

-   
-  
- 
-org.apache.maven.plugins
-maven-jar-plugin
-
-   
-  test
-  
- test-jar
-  
-   
-
- 
-  
-   
 
diff --git 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
 
b

(activemq-artemis) branch main updated: ARTEMIS-4567 support OpenWire clients for broker embedded in Jakarta environment

2024-01-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 eb7d131a8b ARTEMIS-4567 support OpenWire clients for broker embedded 
in Jakarta environment
eb7d131a8b is described below

commit eb7d131a8b436ade1a64f0247fcd79afd844f96e
Author: Justin Bertram 
AuthorDate: Mon Jan 15 13:50:04 2024 -0600

ARTEMIS-4567 support OpenWire clients for broker embedded in Jakarta 
environment

If the broker is embedded into a Jakarta environment then the existing
artemis-openwire-protocol module won't work because it uses javax
classes.

This commit adds a new Jakarta-specific module that can be used to
support OpenWire clients in Jakarta environments (e.g. Spring Boot 3).
Users will simply need to include this version on their classpath to
enable support.
---
 .../artemis-jakarta-openwire-protocol/pom.xml  | 152 +
 artemis-protocols/pom.xml  |   1 +
 pom.xml|   6 +
 tests/compatibility-tests/pom.xml  |   3 +
 .../openWireJakarta/artemisJakartaServer.groovy|  31 +
 .../resources/openWireJakarta/sendReceiveOW.groovy |  46 +++
 .../tests/compatibility/OpenWireJakartaTest.java   |  35 +
 7 files changed, 274 insertions(+)

diff --git a/artemis-protocols/artemis-jakarta-openwire-protocol/pom.xml 
b/artemis-protocols/artemis-jakarta-openwire-protocol/pom.xml
new file mode 100644
index 00..6a8d02efcc
--- /dev/null
+++ b/artemis-protocols/artemis-jakarta-openwire-protocol/pom.xml
@@ -0,0 +1,152 @@
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+   4.0.0
+
+   
+  artemis-protocols
+  org.apache.activemq
+  2.32.0-SNAPSHOT
+   
+
+   artemis-jakarta-openwire-protocol
+   bundle
+   ActiveMQ Artemis Jakarta OpenWire Protocol
+   To support OpenWire clients from an embedded broker deployed 
in a Jakarta environment (e.g. Spring Boot 3)
+
+   
+  ${project.basedir}/../..
+  
${jakarta.jms-api.version.alt}
+  
${jakarta.transaction-api.version.alt}
+  
${jakarta.resource-api.version.alt}
+   
+
+   
+  
+  
+ org.slf4j
+ slf4j-api
+  
+  
+ org.apache.logging.log4j
+ log4j-slf4j2-impl
+ test
+  
+  
+ org.apache.activemq
+ activemq-client-jakarta
+  
+  
+ org.apache.activemq
+ artemis-jakarta-server
+ ${project.version}
+  
+  
+ org.apache.activemq
+ artemis-jakarta-client
+ ${project.version}
+  
+  
+ org.apache.activemq
+ artemis-core-client
+ ${project.version}
+  
+  
+ org.apache.activemq
+ artemis-commons
+ ${project.version}
+  
+  
+ org.apache.activemq
+ artemis-journal
+ ${project.version}
+  
+  
+ org.apache.activemq
+ artemis-selector
+ ${project.version}
+  
+  
+ jakarta.jms
+ jakarta.jms-api
+  
+  
+ org.fusesource.hawtbuf
+ hawtbuf
+  
+  
+ io.netty
+ netty-buffer
+  
+  
+ io.netty
+ netty-transport
+  
+  
+ io.netty
+ netty-codec
+  
+  
+ org.osgi
+ osgi.cmpn
+  
+  
+ junit
+ junit
+ test
+  
+  
+ org.mockito
+ mockito-core
+ test
+  
+  
+ org.apache.activemq
+ artemis-unit-test-support
+ ${project.version}
+ test
+  
+   
+
+   
+  
+ 
+org.wildfly.extras.batavia
+transformer-tools-mvn
+
+   
+  transform-sources
+  generate-sources
+  
+ transform-sources
+  
+  
+ 
${project.basedir}/../artemis-openwire-protocol
+  
+   
+
+
+   
+  org.wildfly.extras.batavia
+  transformer-impl-eclipse
+  ${version.batavia}
+   
+
+ 
+  
+   
+
diff --git a/artemis-protocols/pom.xml b/artemis-protocols/pom.xml
index 32b16f0778..e09bf95dc9 100644
--- a/artemis-protocols/pom.xml
+++ b/artemis-protocols/pom.xml
@@ -36,6 +36,7 @@
   artemis-amqp-protocol
   artemis-stomp-protocol
   artemis-openwire-protocol
+  artemis-jakarta-openwire-protocol
   artemis-hornetq-protocol
   artemis-hqclient-protocol
  

(activemq-artemis) branch main updated: ARTEMIS-4578 upgrade Jackson to 2.16.1

2024-01-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 0906369584 ARTEMIS-4578 upgrade Jackson to 2.16.1
0906369584 is described below

commit 0906369584f861d9817acfc9b3b8a692635f6d50
Author: Justin Bertram 
AuthorDate: Thu Jan 18 10:06:31 2024 -0600

ARTEMIS-4578 upgrade Jackson to 2.16.1
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index d97519f7c2..61a46bc9dd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -191,7 +191,7 @@
   8.4.0
   5.3.27
 
-  2.14.1
+  2.16.1
   ${jackson.version}
 
   
${project.version}



(activemq-artemis) branch main updated: ARTEMIS-4552 Config all connection-router settings by using broker properties

2024-01-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 2b331427d8 ARTEMIS-4552 Config all connection-router settings by using 
broker properties
2b331427d8 is described below

commit 2b331427d8e2278064314a9412ae0adcef144ce0
Author: Domenico Francesco Bruscino 
AuthorDate: Thu Jan 18 13:41:16 2024 +0100

ARTEMIS-4552 Config all connection-router settings by using broker 
properties
---
 .../core/config/impl/ConfigurationImpl.java| 33 -
 .../core/config/impl/ConfigurationImplTest.java| 81 +-
 2 files changed, 108 insertions(+), 6 deletions(-)

diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
index f2c9b6ae6b..993717c45f 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
@@ -614,6 +614,31 @@ public class ConfigurationImpl implements Configuration, 
Serializable {
public void populateWithProperties(final Object target, final String 
propsId, Map beanProperties) throws InvocationTargetException, 
IllegalAccessException {
   CollectionAutoFillPropertiesUtil autoFillCollections = new 
CollectionAutoFillPropertiesUtil(getBrokerPropertiesRemoveValue(beanProperties));
   BeanUtilsBean beanUtils = new BeanUtilsBean(new ConvertUtilsBean(), 
autoFillCollections) {
+
+ // initialize the given property of the given bean with a new 
instance of the property class
+ private Object initProperty(Object bean, String name) throws 
InvocationTargetException, IllegalAccessException, NoSuchMethodException {
+PropertyDescriptor descriptor = 
getPropertyUtils().getPropertyDescriptor(bean, name);
+if (descriptor == null) {
+   throw new InvocationTargetException(null, "No accessor method 
descriptor for: " + name + " on: " + bean.getClass());
+}
+
+Method writeMethod = descriptor.getWriteMethod();
+if (writeMethod == null) {
+   throw new InvocationTargetException(null, "No Write method for: 
" + name + " on: " + bean.getClass());
+}
+
+Object propertyInstance;
+try {
+   propertyInstance = 
descriptor.getPropertyType().getDeclaredConstructor().newInstance();
+} catch (InstantiationException e) {
+   throw new InvocationTargetException(e);
+}
+
+writeMethod.invoke(bean, propertyInstance);
+
+return propertyInstance;
+ }
+
  // override to treat missing properties as errors, not skip as the 
default impl does
  @Override
  public void setProperty(final Object bean, String name, final Object 
value) throws InvocationTargetException, IllegalAccessException {
@@ -626,10 +651,12 @@ public class ConfigurationImpl implements Configuration, 
Serializable {
final Resolver resolver = getPropertyUtils().getResolver();
while (resolver.hasNested(name)) {
   try {
- target = getPropertyUtils().getProperty(target, 
resolver.next(name));
- if (target == null) {
-throw new InvocationTargetException(null, "Resolved 
nested property for:" + name + ", on: " + bean + " was null");
+ String nextName = resolver.next(name);
+ Object nextTarget = 
getPropertyUtils().getProperty(target, nextName);
+ if (nextTarget == null) {
+nextTarget = initProperty(target, nextName);
  }
+ target = nextTarget;
  name = resolver.remove(name);
   } catch (final NoSuchMethodException e) {
  throw new InvocationTargetException(e, "No getter for 
property:" + name + ", on: " + bean);
diff --git 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
index a567984fae..e0b1ded173 100644
--- 
a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
+++ 
b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
@@ -53,6 +53,7 @@ import 
org.apache.activemq.artemis.core.config.federation.FederationAddressPol

(activemq-artemis) branch main updated: ARTEMIS-4568 Configuration reload for AMQP federation broker connections

2024-01-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 4ea55cd611 ARTEMIS-4568 Configuration reload for AMQP federation 
broker connections
4ea55cd611 is described below

commit 4ea55cd611fde8664104158b42690958809a2716
Author: Timothy Bish 
AuthorDate: Tue Jan 16 15:03:34 2024 -0500

ARTEMIS-4568 Configuration reload for AMQP federation broker connections

Allows the configuration of AMQP Federation broker connections to be 
updated and
reloaded. This allows for update, add or remove of AMQP federation broker 
connections
as well as the basic AMQP sender and receiver broker connections. It checks 
for and
ignores changes in AMQP broker connections that are performing Mirroring as 
that
would lead to issues that can break mirroring.
---
 .../amqp/broker/ProtonProtocolManagerFactory.java  |  57 +-
 .../amqp/connect/AMQPBrokerConnection.java |   8 +-
 .../amqp/connect/AMQPBrokerConnectionManager.java  | 178 -
 .../artemis/core/config/Configuration.java |  18 +
 .../AMQPBrokerConnectConfiguration.java|  35 +-
 .../AMQPBrokerConnectionElement.java   |  32 +-
 .../AMQPFederatedBrokerConnectionElement.java  |  33 +
 .../AMQPMirrorBrokerConnectionElement.java |  38 +
 .../BrokerConnectConfiguration.java|  48 +-
 .../core/config/impl/ConfigurationImpl.java|  13 +
 .../core/remoting/server/RemotingService.java  |  14 +
 .../remoting/server/impl/RemotingServiceImpl.java  |   7 +
 .../artemis/core/server/ActiveMQServer.java|  10 +
 .../artemis/core/server/BrokerConnection.java  |  15 +
 .../core/server/impl/ActiveMQServerImpl.java   |  18 +-
 .../protocol/AbstractProtocolManagerFactory.java   |   4 +
 .../spi/core/protocol/ProtocolManagerFactory.java  |  15 +
 .../AMQPBrokerConnectConfigurationTest.java| 149 
 .../AMQPBrokerConnectionElementTest.java   | 104 +++
 .../AMQPFederatedBrokerConnectionElementTest.java  | 113 +++
 .../AMQPMirrorBrokerConnectionElementTest.java | 126 
 pom.xml|   2 +-
 .../AMQPFederationConfigurationReloadTest.java | 840 +
 .../amqp/connect/AMQPFederationConnectTest.java|   1 +
 .../connect/AMQPFederationQueuePolicyTest.java |   1 +
 .../amqp/connect/AMQPMirrorConnectionTest.java | 166 
 .../management/ActiveMQServerControlTest.java  |   6 +
 .../reload-amqp-federated-addresses-reload.xml |  88 +++
 .../resources/reload-amqp-federated-addresses.xml  |  87 +++
 .../test/resources/reload-amqp-federated-basic.xml |  77 ++
 .../reload-amqp-federated-queues-reload.properties |  28 +
 .../reload-amqp-federated-queues-reload.xml|  88 +++
 .../reload-amqp-federated-queues.properties|  26 +
 .../resources/reload-amqp-federated-queues.xml |  87 +++
 34 files changed, 2489 insertions(+), 43 deletions(-)

diff --git 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManagerFactory.java
 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManagerFactory.java
index e0b6a2b9e1..fa8fc0414b 100644
--- 
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManagerFactory.java
+++ 
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/ProtonProtocolManagerFactory.java
@@ -18,7 +18,6 @@ package org.apache.activemq.artemis.protocol.amqp.broker;
 
 import java.util.List;
 import java.util.Map;
-
 import org.apache.activemq.artemis.api.core.BaseInterceptor;
 import org.apache.activemq.artemis.api.core.Message;
 import 
org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPBrokerConnectConfiguration;
@@ -41,6 +40,8 @@ public class ProtonProtocolManagerFactory extends 
AbstractProtocolManagerFactory
 
private static String[] SUPPORTED_PROTOCOLS = {AMQP_PROTOCOL_NAME};
 
+   private AMQPBrokerConnectionManager brokerConnectionManager;
+
@Override
public Persister[] getPersister() {
 
@@ -72,14 +73,56 @@ public class ProtonProtocolManagerFactory extends 
AbstractProtocolManagerFactory
   return MODULE_NAME;
}
 
-   /** AMQP integration with the broker on this case needs to be soft.
-*  As the broker may choose to not load the AMQP Protocol */
+   /**
+* AMQP integration with the broker on this case needs to be soft as the
+* broker may choose to not load the AMQP Protocol module.
+*/
@Override
public void loadProtocolServices(ActiveMQServer server, 
List services) {
-  List amqpServicesConfiguration = 
server.getConfiguration().getAMQPConnection

(activemq-artemis) branch main updated: ARTEMIS-4572 upgrade to Apache parent 31

2024-01-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 fb2c76ad65 ARTEMIS-4572 upgrade to Apache parent 31
fb2c76ad65 is described below

commit fb2c76ad65b8806ab8fc9a22fc6da8bf48222466
Author: Justin Bertram 
AuthorDate: Wed Jan 17 16:41:07 2024 -0600

ARTEMIS-4572 upgrade to Apache parent 31
---
 etc/checkstyle.xml | 8 
 pom.xml| 7 ---
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/etc/checkstyle.xml b/etc/checkstyle.xml
index 9378752b6b..fa90de4608 100644
--- a/etc/checkstyle.xml
+++ b/etc/checkstyle.xml
@@ -100,14 +100,14 @@ under the License.
  
   
 
-  
+  
+
+  
   
   
  
  
   
-
-  
-
+  

 
diff --git a/pom.xml b/pom.xml
index e63f5777ef..9ef58ded2c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@

   org.apache
   apache
-  30
+  31
   org.apache:apache

 
@@ -106,7 +106,6 @@
   5.3.0.Final
   2.20.0
   5.1.9
-  3.2.2
   3.3.2
   1.44.1
   10.12.7
@@ -118,6 +117,9 @@
   3.8.3
   4.4.0
   2.2.2
+  
+  3.4.1
 
   
   
2.2.4
@@ -1753,7 +1755,6 @@
 
org.apache.maven.plugins
maven-checkstyle-plugin
-   ${maven.checkstyle.plugin.version}

   
  com.github.sevntu-checkstyle



(activemq-artemis) branch main updated: ARTEMIS-4573 upgrade Checkstyle to 10.12.7 & Sevntu to 1.44.1

2024-01-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 19fd26c790 ARTEMIS-4573 upgrade Checkstyle to 10.12.7 & Sevntu to 
1.44.1
19fd26c790 is described below

commit 19fd26c790391f929ad84eda6e6e05ca286e038f
Author: Justin Bertram 
AuthorDate: Wed Jan 17 16:47:53 2024 -0600

ARTEMIS-4573 upgrade Checkstyle to 10.12.7 & Sevntu to 1.44.1
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index 2fdf999a3e..e63f5777ef 100644
--- a/pom.xml
+++ b/pom.xml
@@ -108,8 +108,8 @@
   5.1.9
   3.2.2
   3.3.2
-  1.39.0
-  10.11.0
+  1.44.1
+  10.12.7
   5.4.0
   2.1.2
   4.1.101.Final



(activemq-artemis) branch main updated: ARTEMIS-4556 support release of multi-platform Docker images

2024-01-11 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 e3c6531bfd ARTEMIS-4556 support release of multi-platform Docker images
e3c6531bfd is described below

commit e3c6531bfdcdda5e96404c0a80e621440d73819f
Author: Justin Bertram 
AuthorDate: Sat Jan 6 17:29:17 2024 -0600

ARTEMIS-4556 support release of multi-platform Docker images
---
 RELEASING.md |  8 
 artemis-docker/prepare-docker.sh |  4 ++--
 scripts/release-docker.sh| 14 --
 3 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/RELEASING.md b/RELEASING.md
index 9514269875..327f56f1da 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -364,15 +364,15 @@ NOTE: The `main` branch CI build does not build Artemis, 
so the release must be
 
 1. If you don't have an account on https://hub.docker.com/ then create one.
 2. [Install `docker`](https://docs.docker.com/engine/install/) in your 
environment.
-3. Ensure you have access to push images to `apache/activemq-artemis`. If you 
don't have access you can request it by
-   creating an INFRA Jira ticket (e.g. 
https://issues.apache.org/jira/browse/INFRA-24831).
-4. Go to the `scripts` directory and run `release-docker.sh` with the proper 
parameters, e.g.:
+3. If you don't already have it, then install the [`buildx` Docker 
plugin](https://github.com/docker/buildx#installing) to support multi-platform 
builds because `release-docker.sh` will create images for both `linux/amd64` 
and `linux/arm64`. This, of course, requires the base images from Eclipse 
Temurin to support these platforms as well (which they do).
+4. Ensure you have access to push images to `apache/activemq-artemis`. If you 
don't have access you can request it by creating an INFRA Jira ticket (e.g. 
https://issues.apache.org/jira/browse/INFRA-24831).
+5. Go to the `scripts` directory and run `release-docker.sh` with the proper 
parameters, e.g.:
```shell
$ ./release-docker.sh 2.31.0 apache
```
You can easily perform a test run by using your personal account, e.g.:
```shell
-   $ ./release-docker.sh 2.31.0 jbertram
+   $ ./release-docker.sh 2.31.0 myUsername
```
 
 ## Send announcement to user list
diff --git a/artemis-docker/prepare-docker.sh b/artemis-docker/prepare-docker.sh
index 31e7eeba49..2b3eaf01e0 100755
--- a/artemis-docker/prepare-docker.sh
+++ b/artemis-docker/prepare-docker.sh
@@ -108,9 +108,9 @@ key="$1"
   shift
 done
 
-# TMPDIR must be contained within the working directory so it is part of the
+# BASE_TMPDIR must be contained within the working directory so it is part of 
the
 # Docker context. (i.e. it can't be in /tmp)
-BASE_TMPDIR="_TMP_/artemis"
+BASE_TMPDIR="target/artemis"
 
 if [ -n "${FROM_RELEASE}" ] && [ -z "${ARTEMIS_VERSION}" ]; then
   usage "You must specify the release version (e.g. --artemis-version 2.16.0)"
diff --git a/scripts/release-docker.sh b/scripts/release-docker.sh
index 4352bab967..4a79c39b6d 100755
--- a/scripts/release-docker.sh
+++ b/scripts/release-docker.sh
@@ -28,17 +28,11 @@ VERSION=$1
 REPO=$2
 
 cd ../artemis-docker
-rm -Rf _TMP_/
+rm -Rf target/
 ./prepare-docker.sh --from-release --artemis-version ${VERSION}
-cd _TMP_/artemis/${VERSION}
+cd target/artemis/${VERSION}
 docker pull eclipse-temurin:21-jre-alpine
 docker pull eclipse-temurin:21-jre
-docker build -f ./docker/Dockerfile-alpine-21-jre -t 
${REPO}/activemq-artemis:${VERSION}-alpine .
-docker tag ${REPO}/activemq-artemis:${VERSION}-alpine 
${REPO}/activemq-artemis:latest-alpine
-docker build -f ./docker/Dockerfile-ubuntu-21-jre -t 
${REPO}/activemq-artemis:${VERSION} .
-docker tag ${REPO}/activemq-artemis:${VERSION} ${REPO}/activemq-artemis:latest
 docker login
-docker push ${REPO}/activemq-artemis:${VERSION}-alpine
-docker push ${REPO}/activemq-artemis:${VERSION}
-docker push ${REPO}/activemq-artemis:latest-alpine
-docker push ${REPO}/activemq-artemis:latest
\ No newline at end of file
+docker buildx build --platform linux/amd64,linux/arm64 -f 
./docker/Dockerfile-alpine-21-jre -t ${REPO}/activemq-artemis:${VERSION}-alpine 
-t ${REPO}/activemq-artemis:latest-alpine --push .
+docker buildx build --platform linux/amd64,linux/arm64 -f 
./docker/Dockerfile-ubuntu-21-jre -t ${REPO}/activemq-artemis:${VERSION} -t 
${REPO}/activemq-artemis:latest --push .
\ No newline at end of file



(activemq-artemis) branch main updated: ARTEMIS-4548 refactor MQTT tests

2024-01-11 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 99d43dab01 ARTEMIS-4548 refactor MQTT tests
99d43dab01 is described below

commit 99d43dab016f6340984ce6bd0a9b7bf431b9c62d
Author: Justin Bertram 
AuthorDate: Fri Dec 22 13:33:55 2023 -0600

ARTEMIS-4548 refactor MQTT tests

Many MQTT tests are run twice - once using TCP and once using
WebSockets. This is essentially a big waste of time since once the
connection is established to the broker the tests are identical. The
tests should be refactored to run just once and then there can be a
small number of tests specifically for WebSockets.

This should knock several minutes off the test-suite.
---
 .../artemis/tests/integration/mqtt5/MQTT5Test.java |  4 --
 .../tests/integration/mqtt5/MQTT5TestSupport.java  | 29 -
 .../mqtt5/MQTTRetainMessageManagerTest.java|  4 --
 .../mqtt5/spec/ControlPacketFormatTests.java   |  4 --
 .../integration/mqtt5/spec/DataFormatTests.java|  4 --
 .../mqtt5/spec/EnhancedAuthenticationTests.java|  4 --
 .../integration/mqtt5/spec/FlowControlTests.java   |  4 --
 .../integration/mqtt5/spec/HandlingErrorTests.java |  8 
 .../mqtt5/spec/MessageDeliveryRetryTests.java  |  4 --
 .../mqtt5/spec/MessageOrderingTests.java   |  4 --
 .../mqtt5/spec/MessageReceiptTests.java|  4 --
 .../mqtt5/spec/NetworkConnectionTests.java |  4 --
 .../tests/integration/mqtt5/spec/QoSTests.java |  4 --
 .../integration/mqtt5/spec/SessionStateTests.java  |  4 --
 .../integration/mqtt5/spec/SubscriptionTests.java  |  4 --
 .../mqtt5/spec/TopicNameAndFilterTests.java|  4 --
 .../integration/mqtt5/spec/WebSocketTests.java |  4 --
 .../mqtt5/spec/controlpackets/AuthTests.java   |  4 --
 .../mqtt5/spec/controlpackets/ConnAckTests.java|  9 
 .../mqtt5/spec/controlpackets/ConnectTests.java| 13 +-
 .../controlpackets/ConnectTestsWithSecurity.java   |  4 --
 .../mqtt5/spec/controlpackets/DisconnectTests.java |  4 --
 .../mqtt5/spec/controlpackets/PingReqTests.java|  4 --
 .../mqtt5/spec/controlpackets/PingRespTests.java   |  4 --
 .../mqtt5/spec/controlpackets/PubAckTests.java |  4 --
 .../mqtt5/spec/controlpackets/PubCompTests.java|  4 --
 .../mqtt5/spec/controlpackets/PubRecTests.java |  4 --
 .../mqtt5/spec/controlpackets/PubRelTests.java |  4 --
 .../mqtt5/spec/controlpackets/PublishTests.java|  4 --
 .../controlpackets/PublishTestsWithSecurity.java   |  4 --
 .../mqtt5/spec/controlpackets/SubAckTests.java |  4 --
 .../mqtt5/spec/controlpackets/SubscribeTests.java  |  4 --
 .../controlpackets/SubscribeTestsWithSecurity.java |  4 --
 .../mqtt5/spec/controlpackets/UnsubAckTests.java   |  4 --
 .../spec/controlpackets/UnsubscribeTests.java  |  4 --
 .../integration/mqtt5/{ => ssl}/BasicSslTests.java | 39 ++
 .../CertificateAuthenticationSslTests.java | 45 +---
 .../BasicWebSocketTests.java}  | 48 +-
 38 files changed, 101 insertions(+), 214 deletions(-)

diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5Test.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5Test.java
index fd3a1f5e38..247fdb68ae 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5Test.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5Test.java
@@ -61,10 +61,6 @@ public class MQTT5Test extends MQTT5TestSupport {
 
private static final Logger logger = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
 
-   public MQTT5Test(String protocol) {
-  super(protocol);
-   }
-
@Test(timeout = DEFAULT_TIMEOUT)
public void testSimpleSendReceive() throws Exception {
   String topic = RandomUtil.randomString();
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5TestSupport.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5TestSupport.java
index 70b0a34733..a4f106a2fd 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5TestSupport.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/mqtt5/MQTT5TestSupport.java
@@ -21,8 +21,6 @@ import java.io.File;
 import java.io.IOException;
 import java.lang.invoke.MethodHandles;
 import java.security.ProtectionDomain;
-import java.util.Arrays;
-import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Hash

(activemq-artemis) branch main updated: ARTEMIS-4563 Remove auto-created addresses upon restart

2024-01-10 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 a7f18777a3 ARTEMIS-4563 Remove auto-created addresses upon restart
a7f18777a3 is described below

commit a7f18777a32cde23e490e5d162b90e5724146f8b
Author: Domenico Francesco Bruscino 
AuthorDate: Wed Jan 10 15:02:22 2024 +0100

ARTEMIS-4563 Remove auto-created addresses upon restart
---
 .../core/postoffice/impl/SimpleAddressManager.java  |  2 +-
 .../tests/integration/client/AutoCreateTest.java| 21 +
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/postoffice/impl/SimpleAddressManager.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/postoffice/impl/SimpleAddressManager.java
index 3b96de204c..e1256f276a 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/postoffice/impl/SimpleAddressManager.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/postoffice/impl/SimpleAddressManager.java
@@ -371,7 +371,7 @@ public class SimpleAddressManager implements AddressManager 
{
public boolean checkAutoRemoveAddress(AddressInfo addressInfo,
  AddressSettings settings,
  boolean ignoreDelay) throws Exception 
{
-  return settings.isAutoDeleteAddresses() && addressInfo != null && 
addressInfo.isAutoCreated() && 
!bindingsFactory.isAddressBound(addressInfo.getName()) && 
addressWasUsed(addressInfo, settings) && (ignoreDelay || 
delayCheck(addressInfo, settings));
+  return settings.isAutoDeleteAddresses() && addressInfo != null && 
addressInfo.isAutoCreated() && 
!bindingsFactory.isAddressBound(addressInfo.getName()) && (ignoreDelay || 
addressWasUsed(addressInfo, settings)) && (ignoreDelay || 
delayCheck(addressInfo, settings));
}
 
private boolean delayCheck(AddressInfo addressInfo, AddressSettings 
settings) {
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java
index 18a3fac951..a256ec9aad 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java
@@ -353,7 +353,8 @@ public class AutoCreateTest extends ActiveMQTestBase {
 
   server.getConfiguration().setAddressQueueScanPeriod(-1); // disabling 
scanner, we will perform it manually
   server.start();
-  String QUEUE_NAME = getName();
+  String QUEUE_NAME = "QUEUE_" + getName();
+  String TOPIC_NAME = "TOPIC_" + getName();
 
   ConnectionFactory cf = CFUtil.createConnectionFactory(protocol, 
"tcp://localhost:61616");
   try (Connection connection = cf.createConnection()) {
@@ -381,26 +382,38 @@ public class AutoCreateTest extends ActiveMQTestBase {
   try (Connection connection = cf.createConnection()) {
  Session session = connection.createSession(false, 
Session.AUTO_ACKNOWLEDGE);
  Queue queue = session.createQueue(QUEUE_NAME);
- MessageProducer producer = session.createProducer(queue);
- producer.send(session.createTextMessage(randomString));
+ Topic topic = session.createTopic(TOPIC_NAME);
+ MessageProducer producer = session.createProducer(null);
+ producer.send(queue, session.createTextMessage(randomString));
+ producer.send(topic, session.createTextMessage(randomString));
   }
 
   info = 
server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(QUEUE_NAME));
   Assert.assertNotNull(info);
   Assert.assertTrue(info.isAutoCreated());
 
+  info = 
server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(TOPIC_NAME));
+  Assert.assertNotNull(info);
+  Assert.assertTrue(info.isAutoCreated());
+
   server.stop();
   try (AssertionLoggerHandler loggerHandler = new 
AssertionLoggerHandler()) {
  server.start();
 
- Assert.assertFalse(loggerHandler.findText("AMQ224113")); // this time 
around the queue had messages, it has to exist
+ // this time around the address QUEUE_NAME had a queue with messages, 
it has to exist
+ Assert.assertFalse(loggerHandler.matchText("AMQ224113.*" + 
QUEUE_NAME));
  Assert.assertFalse(loggerHandler.findText("AMQ224112"));
+ // the address TOPIC_NAME had no queues, it has to be removed
+ Assert.assertTrue(logger

(activemq-artemis) branch main updated: ARTEMIS-4554 upgrade to latest Java for Docker images

2024-01-10 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 8b2255d78d ARTEMIS-4554 upgrade to latest Java for Docker images
8b2255d78d is described below

commit 8b2255d78df7bd863aaeacaabe5f71488124443f
Author: Justin Bertram 
AuthorDate: Fri Jan 5 15:51:11 2024 -0600

ARTEMIS-4554 upgrade to latest Java for Docker images
---
 ...ckerfile-alpine-11-jre => Dockerfile-alpine-21} |  2 +-
 ...ckerfile-alpine-17 => Dockerfile-alpine-21-jre} |  2 +-
 ...Dockerfile-centos7-11 => Dockerfile-centos7-17} |  2 +-
 ...ckerfile-ubuntu-11-jre => Dockerfile-ubuntu-21} |  2 +-
 ...ckerfile-ubuntu-11 => Dockerfile-ubuntu-21-jre} |  2 +-
 artemis-docker/prepare-docker.sh   | 24 +++---
 scripts/release-docker.sh  |  8 
 7 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/artemis-docker/Dockerfile-alpine-11-jre 
b/artemis-docker/Dockerfile-alpine-21
similarity index 98%
rename from artemis-docker/Dockerfile-alpine-11-jre
rename to artemis-docker/Dockerfile-alpine-21
index c72799cd5c..105b4c9b2c 100644
--- a/artemis-docker/Dockerfile-alpine-11-jre
+++ b/artemis-docker/Dockerfile-alpine-21
@@ -17,7 +17,7 @@
 
 # ActiveMQ Artemis
 
-FROM eclipse-temurin:11-jre-alpine
+FROM eclipse-temurin:21-jdk-alpine
 LABEL maintainer="Apache ActiveMQ Team"
 
 # add user and group for artemis
diff --git a/artemis-docker/Dockerfile-alpine-17 
b/artemis-docker/Dockerfile-alpine-21-jre
similarity index 98%
rename from artemis-docker/Dockerfile-alpine-17
rename to artemis-docker/Dockerfile-alpine-21-jre
index b462b73f75..9ccd1844a9 100644
--- a/artemis-docker/Dockerfile-alpine-17
+++ b/artemis-docker/Dockerfile-alpine-21-jre
@@ -17,7 +17,7 @@
 
 # ActiveMQ Artemis
 
-FROM eclipse-temurin:17-jdk-alpine
+FROM eclipse-temurin:21-jre-alpine
 LABEL maintainer="Apache ActiveMQ Team"
 
 # add user and group for artemis
diff --git a/artemis-docker/Dockerfile-centos7-11 
b/artemis-docker/Dockerfile-centos7-17
similarity index 98%
rename from artemis-docker/Dockerfile-centos7-11
rename to artemis-docker/Dockerfile-centos7-17
index 5c8fb723da..7d2fc35418 100644
--- a/artemis-docker/Dockerfile-centos7-11
+++ b/artemis-docker/Dockerfile-centos7-17
@@ -17,7 +17,7 @@
 
 # ActiveMQ Artemis
 
-FROM eclipse-temurin:11-centos7
+FROM eclipse-temurin:17-jdk-centos7
 LABEL maintainer="Apache ActiveMQ Team"
 # Make sure pipes are considered to determine success, see: 
https://github.com/hadolint/hadolint/wiki/DL4006
 SHELL ["/bin/bash", "-o", "pipefail", "-c"]
diff --git a/artemis-docker/Dockerfile-ubuntu-11-jre 
b/artemis-docker/Dockerfile-ubuntu-21
similarity index 98%
rename from artemis-docker/Dockerfile-ubuntu-11-jre
rename to artemis-docker/Dockerfile-ubuntu-21
index 8751d4d707..53e6c26913 100644
--- a/artemis-docker/Dockerfile-ubuntu-11-jre
+++ b/artemis-docker/Dockerfile-ubuntu-21
@@ -17,7 +17,7 @@
 
 # ActiveMQ Artemis
 
-FROM eclipse-temurin:11-jre
+FROM eclipse-temurin:21-jdk
 LABEL maintainer="Apache ActiveMQ Team"
 # Make sure pipes are considered to determine success, see: 
https://github.com/hadolint/hadolint/wiki/DL4006
 SHELL ["/bin/bash", "-o", "pipefail", "-c"]
diff --git a/artemis-docker/Dockerfile-ubuntu-11 
b/artemis-docker/Dockerfile-ubuntu-21-jre
similarity index 98%
rename from artemis-docker/Dockerfile-ubuntu-11
rename to artemis-docker/Dockerfile-ubuntu-21-jre
index 71145cd937..d4a6f95ed2 100644
--- a/artemis-docker/Dockerfile-ubuntu-11
+++ b/artemis-docker/Dockerfile-ubuntu-21-jre
@@ -17,7 +17,7 @@
 
 # ActiveMQ Artemis
 
-FROM eclipse-temurin:11
+FROM eclipse-temurin:21-jre
 LABEL maintainer="Apache ActiveMQ Team"
 # Make sure pipes are considered to determine success, see: 
https://github.com/hadolint/hadolint/wiki/DL4006
 SHELL ["/bin/bash", "-o", "pipefail", "-c"]
diff --git a/artemis-docker/prepare-docker.sh b/artemis-docker/prepare-docker.sh
index e58c15f66d..31e7eeba49 100755
--- a/artemis-docker/prepare-docker.sh
+++ b/artemis-docker/prepare-docker.sh
@@ -53,23 +53,23 @@ Well done! Now you can continue with building the Docker 
image:
   # Go to $ARTEMIS_DIST_DIR
   $ cd $ARTEMIS_DIST_DIR
 
-  # For CentOS with full JDK 11
-  $ docker build -f ./docker/Dockerfile-centos7-11 -t artemis-centos .
+  # For CentOS with full JDK 17
+  $ docker build -f ./docker/Dockerfile-centos7-17 -t artemis-centos .
 
-  # For Ubuntu with full JDK 11
-  $ docker build -f ./docker/Dockerfile-ubuntu-11 -t artemis-ubuntu .
+  # For Ubuntu with full JDK 21
+  $ docker build -f ./docker/Dockerfile-ubuntu-21 -t artemis-ubuntu .
 
-  # For Ubuntu with just JRE 11
-  $ docker build -f ./docker/Dockerfile

(activemq-artemis-examples) branch development updated: add .gitattributes override to configure linguist, make repo language stats reflect the examples

2024-01-09 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new c1c40f5  add .gitattributes override to configure linguist, make repo 
language stats reflect the examples
c1c40f5 is described below

commit c1c40f5f69f0960e972c91119a47f4413fb4c432
Author: Robbie Gemmell 
AuthorDate: Tue Jan 9 17:07:29 2024 +

add .gitattributes override to configure linguist, make repo language stats 
reflect the examples
---
 .gitattributes |  4 
 pom.xml| 15 +++
 2 files changed, 19 insertions(+)

diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 000..32b4da4
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,4 @@
+# Since the examples are actually the main/only content of this repo,
+# un-ignore them in linguist so repo language stats reflect the
+# examples and not just some helper scripts.
+examples/** -linguist-documentation
diff --git a/pom.xml b/pom.xml
index 0ddce70..c80340b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,4 +57,19 @@ under the License.
   

 
+   
+  
+ 
+
+   org.apache.rat
+   apache-rat-plugin
+   
+  
+ .gitattributes
+  
+   
+
+ 
+  
+   
 



(activemq-artemis-examples) branch development updated (2590866 -> b048d17)

2024-01-08 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


from 2590866  NO-JIRA: update year in NOTICE file
 new c1ff39d  fix up variable name to reflect actual usage
 new b048d17  update non-main branch step gating to handle pull_request 
triggered runs different env, behave in way actually intended

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/build.yml | 24 
 1 file changed, 12 insertions(+), 12 deletions(-)



(activemq-artemis-examples) 01/02: fix up variable name to reflect actual usage

2024-01-08 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git

commit c1ff39dbdbef7412fe5ec6bb1704a2ea7a583a90
Author: Robbie Gemmell 
AuthorDate: Mon Jan 8 12:15:40 2024 +

fix up variable name to reflect actual usage
---
 .github/workflows/build.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e945033..c19ccdd 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -5,7 +5,7 @@ on:
   pull_request:
   workflow_dispatch:
 inputs:
-  examplesRepoUserOrOrg:
+  examplesRepo:
 description: '(For non-main Examples) Artemis repo'
 required: true
 default: 'apache/activemq-artemis'
@@ -17,7 +17,7 @@ on:
 type: string
 
 env:
-  ARTEMIS_REPO: ${{ inputs.examplesRepoUserOrOrg || 'apache/activemq-artemis' 
}}
+  ARTEMIS_REPO: ${{ inputs.examplesRepo || 'apache/activemq-artemis' }}
   ARTEMIS_BRANCH: ${{ inputs.examplesRepoBranch || 'main' }}
 
 jobs:



(activemq-artemis-examples) 02/02: update non-main branch step gating to handle pull_request triggered runs different env, behave in way actually intended

2024-01-08 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git

commit b048d1714c39853c5e66c9b25dc88789036560fb
Author: Robbie Gemmell 
AuthorDate: Mon Jan 8 16:41:16 2024 +

update non-main branch step gating to handle pull_request triggered runs 
different env, behave in way actually intended
---
 .github/workflows/build.yml | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index c19ccdd..f5d3c8f 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -51,7 +51,7 @@ jobs:
   distribution: 'temurin'
 
   - name: Checkout Artemis Repo (non-main Examples)
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 uses: actions/checkout@v3
 with:
   repository: ${{ env.ARTEMIS_REPO }}
@@ -60,7 +60,7 @@ jobs:
 
   - name: Identify Artemis Version (non-main Examples)
 id: identify-artemis-version
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 run: |
   cd activemq-artemis
   CURRENT_ARTEMIS_BUILD_VERSION=$(mvn help:evaluate 
-Dexpression=project.version -q -DforceStdout)
@@ -68,14 +68,14 @@ jobs:
   echo "artemis-build-version=${CURRENT_ARTEMIS_BUILD_VERSION}" >> 
$GITHUB_OUTPUT
 
   - name: Build Artemis (non-main Examples)
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 run: |
   cd activemq-artemis
   mvn -s ../activemq-artemis-examples/.github/maven-settings.xml 
install -DskipTests -T1C
 
   - name: Identify Examples Version (non-main Examples)
 id: identify-examples-version
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 run: |
   cd activemq-artemis-examples
   sed -i "//,// s~[^<]*~${{ 
steps.identify-artemis-version.outputs.artemis-build-version }}~g" ./pom.xml
@@ -84,7 +84,7 @@ jobs:
   echo "examples-build-version=${CURRENT_EXAMPLES_BUILD_VERSION}" >> 
$GITHUB_OUTPUT
 
   - name: Set Examples Version to Artemis Version (non-main Examples)
-if: ${{ github.ref != 'refs/heads/main' && 
steps.identify-artemis-version.outputs.artemis-build-version != 
steps.identify-examples-version.outputs.examples-build-version }}
+if: ${{ ((github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main')) && 
steps.identify-artemis-version.outputs.artemis-build-version != 
steps.identify-examples-version.outputs.examples-build-version }}
 run: |
   cd activemq-artemis-examples
   ./scripts/update-examples-version.sh ${{ 
steps.identify-artemis-version.outputs.artemis-build-version }}
@@ -130,7 +130,7 @@ jobs:
   distribution: 'temurin'
 
   - name: Checkout Artemis Repo (non-main Examples)
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 uses: actions/checkout@v3
 with:
   repository: ${{ env.ARTEMIS_REPO }}
@@ -139,7 +139,7 @@ jobs:
 
   - name: Identify Artemis Version (non-main Examples)
 id: identify-artemis-version
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pull_request' && github.ref != 
'refs/heads/main') }}
 run: |
   cd activemq-artemis
   CURRENT_ARTEMIS_BUILD_VERSION=$(mvn help:evaluate 
-Dexpression=project.version -q -DforceStdout)
@@ -147,14 +147,14 @@ jobs:
   echo "artemis-build-version=${CURRENT_ARTEMIS_BUILD_VERSION}" >> 
$GITHUB_OUTPUT
 
   - name: Build Artemis (non-main Examples)
-if: ${{ github.ref != 'refs/heads/main' }}
+if: ${{ (github.event_name == 'pull_request' && github.base_ref != 
'main') || (github.event_name != 'pul

(activemq-artemis) branch main updated: ARTEMIS-4533: fix up variable name to reflect actual usage

2024-01-08 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 ff8f45de07 ARTEMIS-4533: fix up variable name to reflect actual usage
ff8f45de07 is described below

commit ff8f45de070c4a19655e56a0077278ca814a0d2b
Author: Robbie Gemmell 
AuthorDate: Mon Jan 8 15:27:47 2024 +

ARTEMIS-4533: fix up variable name to reflect actual usage
---
 .github/workflows/build.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 51bf1f16fe..eb97238471 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -5,7 +5,7 @@ on:
   pull_request:
   workflow_dispatch:
 inputs:
-  examplesRepoUserOrOrg:
+  examplesRepo:
 description: 'The examples repo to use'
 required: true
 default: 'apache/activemq-artemis-examples'
@@ -17,7 +17,7 @@ on:
 type: string
 
 env:
-  EXAMPLES_REPO: ${{ inputs.examplesRepoUserOrOrg || 
'apache/activemq-artemis-examples' }}
+  EXAMPLES_REPO: ${{ inputs.examplesRepo || 'apache/activemq-artemis-examples' 
}}
   EXAMPLES_BRANCH: ${{ inputs.examplesRepoBranch || 'development' }}
 
 



(activemq-artemis-examples) branch development updated: NO-JIRA: update year in NOTICE file

2024-01-08 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new 2590866  NO-JIRA: update year in NOTICE file
2590866 is described below

commit 2590866d52009155e434db87f5a7a69fa7bf9ea2
Author: Robbie Gemmell 
AuthorDate: Mon Jan 8 10:03:32 2024 +

NO-JIRA: update year in NOTICE file
---
 NOTICE | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/NOTICE b/NOTICE
index 3b82b00..3b03325 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache ActiveMQ Artemis Examples
-Copyright [2014-2023] The Apache Software Foundation
+Copyright [2014-2024] The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).



(activemq-artemis-examples) branch development updated: ARTEMIS-4550 Upgrade spring boot version to 2.7.18

2024-01-03 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git


The following commit(s) were added to refs/heads/development by this push:
 new c3cd128  ARTEMIS-4550 Upgrade spring boot version to 2.7.18
c3cd128 is described below

commit c3cd12840153c7cfd99d32506a16a06209a76854
Author: Domenico Francesco Bruscino 
AuthorDate: Wed Jan 3 10:29:01 2024 +0100

ARTEMIS-4550 Upgrade spring boot version to 2.7.18
---
 examples/features/standard/spring-boot-integration/pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/examples/features/standard/spring-boot-integration/pom.xml 
b/examples/features/standard/spring-boot-integration/pom.xml
index 8bfc436..5878f69 100644
--- a/examples/features/standard/spring-boot-integration/pom.xml
+++ b/examples/features/standard/spring-boot-integration/pom.xml
@@ -27,8 +27,8 @@

${project.basedir}/../../../..
 

-   2.5.8
-   2.6.15
+   2.5.25
+   2.7.18

 




(activemq-artemis) branch main updated: ARTEMIS-4539: update website steps for adding release, use new aggregating script in website repo

2023-12-20 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 28a917f4e7 ARTEMIS-4539: update website steps for adding release, use 
new aggregating script in website repo
28a917f4e7 is described below

commit 28a917f4e747aaf2622a2585e1f50347f384122d
Author: Robbie Gemmell 
AuthorDate: Wed Dec 20 15:31:12 2023 +

ARTEMIS-4539: update website steps for adding release, use new aggregating 
script in website repo

- Initial script added in website repo commit 
https://github.com/apache/activemq-website/commit/b0f987e3c1308e483fc8a770d8c7b0b24ed36279
---
 RELEASING.md | 29 +++--
 1 file changed, 19 insertions(+), 10 deletions(-)

diff --git a/RELEASING.md b/RELEASING.md
index 2e4c20cb6b..9514269875 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -308,20 +308,29 @@ git clone 
https://gitbox.apache.org/repos/asf/activemq-website.git
 cd activemq-website
 ```
 
-Once the mirrors are up-to-date then update the following:
-1. Generate the new release collection file at 
`src/_artemis_releases/artemis-.md` by running the 
following command, then open the file and update shortDescription as 
appropriate:
-```
-./scripts/release/create-artemis-release-file 
-```
-2. Update the _artemis_ list within the `src/_data/current_releases.yml` file 
if needed.
-3. Generate the new release notes file at 
`src/components/artemis/download/release-notes-.md` by running the 
command:
+**NOTE**: Some of the release scripts use [Python](https://www.python.org/), 
ensure you have it installed before proceeding.
+
+Once the CDN and Maven Central are up-to-date then update the site as follows:
+
+1. Run the release addition script to generate/perform most of the updates by 
running command of form:
 ```
-./scripts/release/create-artemis-release-notes 
+./scripts/release/add-artemis-release.sh  
 
 ```
-3. Make the documentation updates, taking output from the artemis checkout 
used to run the maven release process originally, by running the command:
+
+This does the following:
+- Creates the new release collection file at 
`src/_artemis_releases/artemis-.md`.
+- Creates the new release notes file at 
`src/components/artemis/download/release-notes-.md`.
+- Creates the git-report if it wasnt already present (as it should be, at 
`src/components/artemis/download/commit-report-.html`).
+- Moves the prior latest documentation content to 
`src/components/artemis/documentation/`.
+- Replaces the latest documentation at 
`src/components/artemis/documentation/latest` with those from the new release.
+- Replaces the javadaoc at 
`src/components/artemis/documentation/javadocs/javadoc-latest` with those from 
the new release.
+
+Example from the 2.32.0 release:
 ```
-./scripts/release/update-artemis-docs.sh  
 
+./scripts/release/add-artemis-release.sh ../activemq-artemis 2.31.2 2.32.0
 ```
+2. Open the release collection file at 
`src/_artemis_releases/artemis-.md` and update 
_shortDescription_ as appropriate to the release content.
+3. Update the _artemis_ list within the `src/_data/current_releases.yml` file 
if needed to set the new version stream as current.
 
 Check over `git status` etc. Run `git add` for all the added directories & 
files and then `git commit -m "updates for  release"`.
 Once pushed, the changes should be published automatically by the 
`jekyll_websites` builder of the [apache 
buildbot](https://ci2.apache.org/#/builders).



(activemq-website) branch main updated: add script to aggregate the step-specific scripts, allow adding new release with one main call

2023-12-20 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git


The following commit(s) were added to refs/heads/main by this push:
 new b0f987e3c add script to aggregate the step-specific scripts, allow 
adding new release with one main call
b0f987e3c is described below

commit b0f987e3c1308e483fc8a770d8c7b0b24ed36279
Author: Robbie Gemmell 
AuthorDate: Wed Dec 20 14:27:05 2023 +

add script to aggregate the step-specific scripts, allow adding new release 
with one main call
---
 ...date-artemis-docs.sh => add-artemis-release.sh} | 37 ++
 scripts/release/update-artemis-docs.sh |  3 +-
 2 files changed, 17 insertions(+), 23 deletions(-)

diff --git a/scripts/release/update-artemis-docs.sh 
b/scripts/release/add-artemis-release.sh
similarity index 67%
copy from scripts/release/update-artemis-docs.sh
copy to scripts/release/add-artemis-release.sh
index 3416f3bb7..7f50638bb 100755
--- a/scripts/release/update-artemis-docs.sh
+++ b/scripts/release/add-artemis-release.sh
@@ -24,13 +24,13 @@ error () {
echo ""
echo "** ERROR: $@ **"
echo ""
-   echo "Usage: ./scripts/release/update-artemis-docs.sh 
  "
+   echo "Usage: ./scripts/release/add-artemis-release.sh 
  "
echo ""
echo "Must be run from within an activemq-website checkout root."
echo ""
echo "Example:"
echo "cd /activemq-website"
-   echo "./scripts/release/update-artemis-docs.sh 
../release-work/activemq-artemis 2.30.0 2.31.0"
+   echo "./scripts/release/add-artemis-release.sh 
../release-work/activemq-artemis 2.30.0 2.31.0"
echo ""
exit 64
 }
@@ -60,30 +60,25 @@ if [ ! -d "$ARTEMIS_DIR/target" ] || [ ! -d 
"$ARTEMIS_DIR/target/checkout" ]; th
 exit 1
 fi
 
-RELEASE_DIR="$ARTEMIS_DIR/target/checkout"
+GIT_REPORT_FILE=$WEBSITE_DIR/src/components/artemis/download/commit-report-$NEW_VERSION.html
 
-LATEST_DOCS=$WEBSITE_DIR/src/components/artemis/documentation/latest/
-PRIOR_DOCS=$WEBSITE_DIR/src/components/artemis/documentation/$PRIOR_VERSION/
 
-LATEST_JAVADOCS=$WEBSITE_DIR/src/components/artemis/documentation/javadocs/javadoc-latest/
-NEW_DOCS=$RELEASE_DIR/artemis-website/target/classes/user-manual/
-NEW_JAVADOCS=$RELEASE_DIR/artemis-website/target/apidocs/
 
+./scripts/release/create-artemis-release-file $NEW_VERSION
 
+./scripts/release/create-artemis-release-notes $NEW_VERSION
 
-echo "Moving previous release docs, from $LATEST_DOCS to $PRIOR_DOCS"
-mv $LATEST_DOCS $PRIOR_DOCS
-
-echo "Copying new release docs, from $NEW_DOCS to $LATEST_DOCS"
-cp -aR $NEW_DOCS. $LATEST_DOCS
-
-echo "Clearing previous release javadocs, from $LATEST_JAVADOCS"
-rm -rf $LATEST_JAVADOCS
-
-echo "Copying new release javadocs, from $NEW_JAVADOCS to $LATEST_JAVADOCS"
-cp -aR $NEW_JAVADOCS. $LATEST_JAVADOCS
+if [ ! -f "$GIT_REPORT_FILE" ]; then
+echo "INFO: Did not find git report file at $GIT_REPORT_FILE so creating 
now"
+./scripts/release/create-artemis-git-report.sh $ARTEMIS_DIR $PRIOR_VERSION 
$NEW_VERSION
+else
+   echo "INFO: Found existing git report file, skipping."
+fi
 
-git add $LATEST_DOCS $PRIOR_DOCS $LATEST_JAVADOCS
+cd $WEBSITE_DIR
+./scripts/release/update-artemis-docs.sh $ARTEMIS_DIR $PRIOR_VERSION 
$NEW_VERSION
 
 echo ""
-echo "Updates complete, check over git status over and commit"
+echo "Files created for adding release. See output above for details."
+echo "Update the artemis list within the src/_data/current_releases.yml file 
if needed."
+echo "Check over git status, add remaining files, commit and push."
diff --git a/scripts/release/update-artemis-docs.sh 
b/scripts/release/update-artemis-docs.sh
index 3416f3bb7..970d5d1f5 100755
--- a/scripts/release/update-artemis-docs.sh
+++ b/scripts/release/update-artemis-docs.sh
@@ -85,5 +85,4 @@ cp -aR $NEW_JAVADOCS. $LATEST_JAVADOCS
 
 git add $LATEST_DOCS $PRIOR_DOCS $LATEST_JAVADOCS
 
-echo ""
-echo "Updates complete, check over git status over and commit"
+echo "Doc updates complete, check over git status"



(activemq-artemis) branch main updated: ARTEMIS-4539: update steps for making docs+javadocs updates, simplify to just using script in website repo

2023-12-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 59b9997c10 ARTEMIS-4539: update steps for making docs+javadocs 
updates, simplify to just using script in website repo
59b9997c10 is described below

commit 59b9997c107e17b83439f3381b640372dca0d28e
Author: Robbie Gemmell 
AuthorDate: Tue Dec 19 16:18:25 2023 +

ARTEMIS-4539: update steps for making docs+javadocs updates, simplify to 
just using script in website repo

- Initial script added in website repo commit 
https://github.com/apache/activemq-website/commit/40470b512092fd612919e724e7b19b176d7e4f07
---
 RELEASING.md | 25 +
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/RELEASING.md b/RELEASING.md
index 8e14ea7024..2e4c20cb6b 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -110,6 +110,8 @@ If the upload fails or is interrupted, remove the 
incomplete repository
 using the "Drop" button on [Nexus 
website](https://repository.apache.org/#stagingRepositories).
 Before starting the upload again, check the release.properties at the root of 
the project.
 
+**_Keep the checkout used to run the release process for later, the website 
update scripts will reference it for documentation output._**
+
 ### Resuming release upload
 
 If something happened during the release upload to nexus, you may need to 
eventually redo the upload.
@@ -307,22 +309,21 @@ cd activemq-website
 ```
 
 Once the mirrors are up-to-date then update the following:
-1. Generate the new release notes file at 
`src/components/artemis/download/release-notes-.md` by running the 
command:
+1. Generate the new release collection file at 
`src/_artemis_releases/artemis-.md` by running the 
following command, then open the file and update shortDescription as 
appropriate:
 ```
-./scripts/release/create-artemis-release-notes 
+./scripts/release/create-artemis-release-file 
 ```
-2. Generate the new release collection file at 
`src/_artemis_releases/artemis-.md` by running the 
following command, then open the file and update shortDescription as 
appropriate:
+2. Update the _artemis_ list within the `src/_data/current_releases.yml` file 
if needed.
+3. Generate the new release notes file at 
`src/components/artemis/download/release-notes-.md` by running the 
command:
 ```
-./scripts/release/create-artemis-release-file 
+./scripts/release/create-artemis-release-notes 
 ```
-3. Update the _artemis_ list within the `src/_data/current_releases.yml` file 
if needed.
-4. Rename `src/components/artemis/documentation/latest` to 
`src/components/artemis/documentation/`.
-5. Build the `artemis-website` module from the new-version release sources 
with `mvn clean package -Prelease`.
-6. Create `src/components/artemis/documentation/latest` and copy into it the 
contents of `target/classes/user-manual` from the `artemis-website` module 
which you just built.
-7. Delete `src/components/artemis/documentation/javadocs/javadoc-latest` to 
clear the old/existing content (in case any files are being moved/removed by 
the new version).
-8. Create `src/components/artemis/documentation/javadocs/javadoc-latest` again 
and copy into it the contents of `target/apidocs` from the `artemis-website` 
module which you just built.
-   
-Run `git add` for all the added directories & files and then `git commit -m 
"updates for  release"`.
+3. Make the documentation updates, taking output from the artemis checkout 
used to run the maven release process originally, by running the command:
+```
+./scripts/release/update-artemis-docs.sh  
 
+```
+
+Check over `git status` etc. Run `git add` for all the added directories & 
files and then `git commit -m "updates for  release"`.
 Once pushed, the changes should be published automatically by the 
`jekyll_websites` builder of the [apache 
buildbot](https://ci2.apache.org/#/builders).
 
 ## Update Examples Repo



(activemq-website) branch main updated (0851d8338 -> 40470b512)

2023-12-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git


from 0851d8338 add script to generate initial release collections file 
during artemis release updates
 new 6da374d20 remove some leftover prints
 new 40470b512 add script to peform docs + javadocs changes while adding 
new artemis release

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 scripts/release/create-artemis-git-report.sh |  3 -
 scripts/release/update-artemis-docs.sh   | 89 
 2 files changed, 89 insertions(+), 3 deletions(-)
 create mode 100755 scripts/release/update-artemis-docs.sh



(activemq-website) 01/02: remove some leftover prints

2023-12-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git

commit 6da374d2008ab683486bd4c0419fde66a3d57247
Author: Robbie Gemmell 
AuthorDate: Tue Dec 19 15:35:04 2023 +

remove some leftover prints
---
 scripts/release/create-artemis-git-report.sh | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/scripts/release/create-artemis-git-report.sh 
b/scripts/release/create-artemis-git-report.sh
index 1f9756d91..3f55683b4 100755
--- a/scripts/release/create-artemis-git-report.sh
+++ b/scripts/release/create-artemis-git-report.sh
@@ -50,9 +50,6 @@ ARTEMIS_DIR="$( cd -- "$1" >/dev/null 2>&1 ; pwd -P )"
 PRIOR_VERSION="$2"
 NEW_VERSION="$3"
 
-echo "The website dir: $WEBSITE_DIR"
-echo "The artemis dir: $ARTEMIS_DIR"
-
 if [ ! -d "$ARTEMIS_DIR" ] || [ ! -d "$ARTEMIS_DIR/artemis-server" ] || [ ! -f 
"$ARTEMIS_DIR/.asf.yaml" ]; then
 error "ERROR: The provided activemq-artemis checkout path does not point 
to an activemq-artemis checkout"
 exit 1



(activemq-website) 02/02: add script to peform docs + javadocs changes while adding new artemis release

2023-12-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git

commit 40470b512092fd612919e724e7b19b176d7e4f07
Author: Robbie Gemmell 
AuthorDate: Tue Dec 19 15:55:58 2023 +

add script to peform docs + javadocs changes while adding new artemis 
release
---
 scripts/release/update-artemis-docs.sh | 89 ++
 1 file changed, 89 insertions(+)

diff --git a/scripts/release/update-artemis-docs.sh 
b/scripts/release/update-artemis-docs.sh
new file mode 100755
index 0..3416f3bb7
--- /dev/null
+++ b/scripts/release/update-artemis-docs.sh
@@ -0,0 +1,89 @@
+#!/bin/bash
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# Setting the script to fail if anything goes wrong
+set -e -u -o pipefail
+shopt -s failglob
+
+error () {
+   echo ""
+   echo "** ERROR: $@ **"
+   echo ""
+   echo "Usage: ./scripts/release/update-artemis-docs.sh 
  "
+   echo ""
+   echo "Must be run from within an activemq-website checkout root."
+   echo ""
+   echo "Example:"
+   echo "cd /activemq-website"
+   echo "./scripts/release/update-artemis-docs.sh 
../release-work/activemq-artemis 2.30.0 2.31.0"
+   echo ""
+   exit 64
+}
+
+if [ ! -f serve.sh ] || [ ! -f _config.yml ]; then
+error "This script has to be run from inside the root of an 
activemq-website checkout"
+exit 1
+fi
+WEBSITE_DIR="$( pwd )"
+
+if [ "$#" -lt 3 ]; then
+  error "The Artemis release process checkout, prior Artemis release, and new 
Artemis release versions must all be specified"
+  exit 1
+fi
+
+ARTEMIS_DIR="$( cd -- "$1" >/dev/null 2>&1 ; pwd -P )"
+PRIOR_VERSION="$2"
+NEW_VERSION="$3"
+
+if [ ! -d "$ARTEMIS_DIR" ] || [ ! -d "$ARTEMIS_DIR/artemis-server" ] || [ ! -f 
"$ARTEMIS_DIR/.asf.yaml" ]; then
+error "ERROR: The provided activemq-artemis release process path does not 
point to an activemq-artemis checkout"
+exit 1
+fi
+
+if [ ! -d "$ARTEMIS_DIR/target" ] || [ ! -d "$ARTEMIS_DIR/target/checkout" ]; 
then
+error "ERROR: The provided activemq-artemis release path does not contain 
the release process target checkout: $ARTEMIS_DIR/target/checkout"
+exit 1
+fi
+
+RELEASE_DIR="$ARTEMIS_DIR/target/checkout"
+
+LATEST_DOCS=$WEBSITE_DIR/src/components/artemis/documentation/latest/
+PRIOR_DOCS=$WEBSITE_DIR/src/components/artemis/documentation/$PRIOR_VERSION/
+
+LATEST_JAVADOCS=$WEBSITE_DIR/src/components/artemis/documentation/javadocs/javadoc-latest/
+NEW_DOCS=$RELEASE_DIR/artemis-website/target/classes/user-manual/
+NEW_JAVADOCS=$RELEASE_DIR/artemis-website/target/apidocs/
+
+
+
+echo "Moving previous release docs, from $LATEST_DOCS to $PRIOR_DOCS"
+mv $LATEST_DOCS $PRIOR_DOCS
+
+echo "Copying new release docs, from $NEW_DOCS to $LATEST_DOCS"
+cp -aR $NEW_DOCS. $LATEST_DOCS
+
+echo "Clearing previous release javadocs, from $LATEST_JAVADOCS"
+rm -rf $LATEST_JAVADOCS
+
+echo "Copying new release javadocs, from $NEW_JAVADOCS to $LATEST_JAVADOCS"
+cp -aR $NEW_JAVADOCS. $LATEST_JAVADOCS
+
+git add $LATEST_DOCS $PRIOR_DOCS $LATEST_JAVADOCS
+
+echo ""
+echo "Updates complete, check over git status over and commit"



(activemq-artemis) branch main updated: ARTEMIS-4541 clarify divert docs

2023-12-19 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 eca77df78f ARTEMIS-4541 clarify divert docs
eca77df78f is described below

commit eca77df78f258f658e4ebca46e2041dacd53cb18
Author: Justin Bertram 
AuthorDate: Mon Dec 18 21:02:10 2023 -0600

ARTEMIS-4541 clarify divert docs
---
 docs/user-manual/diverts.adoc | 21 +
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/docs/user-manual/diverts.adoc b/docs/user-manual/diverts.adoc
index 2bfe4f0224..21d7f8edda 100644
--- a/docs/user-manual/diverts.adoc
+++ b/docs/user-manual/diverts.adoc
@@ -3,12 +3,17 @@
 :idseparator: -
 
 Apache ActiveMQ Artemis allows you to configure objects called _diverts_ with 
some simple server configuration.
-
 Diverts allow you to transparently divert messages routed to one address to 
one or more other addresses, without making any changes to any client 
application logic.
 
-Diverts can be _exclusive_, meaning that the message is diverted to the new 
address(es), and does not go to the old address at all, or they can be 
_non-exclusive_ which means the message continues to go the old address, and a 
_copy_ of it is also sent to the new address(es).
-Non-exclusive diverts can therefore be used for _splitting_ message flows, 
e.g. there may be a requirement to monitor every order sent to an order queue.
+Diverts can be _exclusive_ or _non-exclusive_.
+
+An xref:#exclusive-divert[_exclusive_] divert routes messages the new 
address(es) only.
+Messages are not routed to the old address at all.
 
+A xref:#non-exclusive-divert[_non-exclusive_] divert routes messags to the old 
address and a _copy_ of the messages are also sent to the new address(es).
+Think of non-exclusive divert as _splitting_ message flow, e.g. there may be a 
requirement to monitor every order sent to an order queue.
+
+Multiple diverts can be configured for a single address.
 When an address has both exclusive and non-exclusive diverts configured, the 
exclusive ones are processed first.
 If any of the exclusive diverts diverted the message, the non-exclusive ones 
are not processed.
 
@@ -26,12 +31,12 @@ Diverts can also be configured to apply a 
xref:transformers.adoc#transformers[`T
 If specified, all diverted messages will have the opportunity of being 
transformed by the `Transformer`.
 When an address has multiple diverts configured, all of them receive the same, 
original message.
 This means that the results of a transformer on a message are not directly 
available for other diverts or their filters on the same address.
-
 See the documentation on 
xref:using-server.adoc#adding-runtime-dependencies[adding runtime dependencies] 
to  understand how to make your transformer available to the broker.
 
-A divert will only divert a message to an address on the _same server_, 
however, if you want to divert to an address on a different server, a common 
pattern would be to divert to a local store-and-forward queue, then set up a 
bridge which consumes from that queue and forwards to an address on a different 
server.
+A divert will only divert a message to an address on the _same server_.
+If you want to divert to an address on a different server a common pattern 
would be to divert to a local "store-and-forward" queue and then set up a 
xref:core-bridges#core-bridges[bridge] which consumes from that queue and 
forwards to an address on a different server.
 
-Diverts are therefore a very sophisticated concept, which when combined with 
bridges can be used to create interesting and complex routings.
+Diverts are therefore a very sophisticated concept which when combined with 
bridges can be used to create interesting and complex routings.
 The set of diverts on a server can be thought of as a type of routing table 
for messages.
 Combining diverts with bridges allows you to create a distributed network of 
reliable routing connections between multiple geographically distributed 
servers, creating your global messaging mesh.
 
@@ -42,7 +47,7 @@ Diverted messages get 
xref:copied-message-properties.adoc#properties-for-copied-
 
 Please see the xref:examples.adoc[examples] for a full working example at 
./examples/features/standard/divert/ showing you how to configure and use 
diverts.
 
-Let's take a look at some divert examples:
+Let's take a look at some divert examples...
 
 == Exclusive Divert
 
@@ -98,7 +103,7 @@ Non exclusive diverts can be configured in the same way as 
exclusive diverts wit
 
 
 
-The above divert example takes a copy of every message sent to the address 
'[.code]``orders``' and sends it to a local address called 
'[.code]``spyTopic``'.
+The above divert example takes a copy of every message sent to the address 
`orders` and sends it to a local address called `spyTopic`.
 
 == Composite Divert
 



(activemq-artemis) branch main updated: ARTEMIS-4539: update steps for creating release colletion file, simplify to just using script in website repo

2023-12-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie 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 69e3a1a8a0 ARTEMIS-4539: update steps for creating release colletion 
file, simplify to just using script in website repo
69e3a1a8a0 is described below

commit 69e3a1a8a06cb0e36864e5d046c7ae8de95d102c
Author: Robbie Gemmell 
AuthorDate: Mon Dec 18 17:24:30 2023 +

ARTEMIS-4539: update steps for creating release colletion file, simplify to 
just using script in website repo

- Initial script added in website repo commit 
https://github.com/apache/activemq-website/commit/0851d833824ab4689d0c5781e7c656f7ba31e869
---
 RELEASING.md | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/RELEASING.md b/RELEASING.md
index 4db8110958..8e14ea7024 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -311,7 +311,10 @@ Once the mirrors are up-to-date then update the following:
 ```
 ./scripts/release/create-artemis-release-notes 
 ```
-2. Copy `src/_artemis_releases/artemis--release.md` to 
`src/_artemis_releases/artemis--release.md`. Update the versions 
and dates.
+2. Generate the new release collection file at 
`src/_artemis_releases/artemis-.md` by running the 
following command, then open the file and update shortDescription as 
appropriate:
+```
+./scripts/release/create-artemis-release-file 
+```
 3. Update the _artemis_ list within the `src/_data/current_releases.yml` file 
if needed.
 4. Rename `src/components/artemis/documentation/latest` to 
`src/components/artemis/documentation/`.
 5. Build the `artemis-website` module from the new-version release sources 
with `mvn clean package -Prelease`.



(activemq-website) branch main updated: add script to generate initial release collections file during artemis release updates

2023-12-18 Thread robbie
This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git


The following commit(s) were added to refs/heads/main by this push:
 new 0851d8338 add script to generate initial release collections file 
during artemis release updates
0851d8338 is described below

commit 0851d833824ab4689d0c5781e7c656f7ba31e869
Author: Robbie Gemmell 
AuthorDate: Mon Dec 18 17:06:04 2023 +

add script to generate initial release collections file during artemis 
release updates
---
 scripts/release/create-artemis-release-file | 63 +
 scripts/release/util.py |  4 ++
 2 files changed, 67 insertions(+)

diff --git a/scripts/release/create-artemis-release-file 
b/scripts/release/create-artemis-release-file
new file mode 100755
index 0..d6f1f1bf4
--- /dev/null
+++ b/scripts/release/create-artemis-release-file
@@ -0,0 +1,63 @@
+#!/usr/bin/python
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+import sys as _sys
+from util import *
+
+template = \
+"""
+---
+version: {version}
+release_date: {date_string}
+title: ActiveMQ Artemis {version}
+shortDescription: Bug fix release.
+# Docs subdir name for past-releases and previous-docs pages, 'latest' is 
always used on the main download page.
+docs_version: {version}
+java_version: 11+
+---
+"""
+
+def create_release_notes(version):
+padded_components = [component.zfill(2) for component in 
version.split(".")]
+
+if len(padded_components) < 3:
+exit("Version ({}) must have 3 components to pad, but only have: 
{}".format(version, str(padded_components)))
+
+padded_version = "-".join(padded_components)
+output_path = "src/_artemis_releases/artemis-{}.md".format(padded_version)
+
+date_string = get_date_string()
+
+output = template.format(**locals())
+output = output.strip()
+
+write_utf8(output_path, output)
+
+return output_path
+
+
+ARGS = _sys.argv
+if len(ARGS) < 2:
+exit("Usage: ./scripts/release/create-artemis-release-file ")
+
+version = ARGS[1]
+release_file = create_release_notes(version)
+
+print("Release file generated at {}".format(release_file))
diff --git a/scripts/release/util.py b/scripts/release/util.py
index 4ae4cf653..2f85d6e49 100644
--- a/scripts/release/util.py
+++ b/scripts/release/util.py
@@ -17,10 +17,12 @@
 # under the License.
 #
 
+import datetime
 import urllib
 import yaml
 import codecs as _codecs
 
+from datetime import datetime
 from xml.sax.saxutils import escape as escape_html
 
 def write_utf8(file, string):
@@ -29,6 +31,8 @@ def write_utf8(file, string):
 
 return file
 
+def get_date_string():
+return datetime.today().strftime('%Y-%m-%d')
 
 def render_release_notes(project, release):
 issues = _fetch_issues(project, release)



  1   2   3   4   5   6   7   8   9   10   >