This is an automated email from the ASF dual-hosted git repository.
mattrpav pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/main by this push:
new e7f023ce8 [AMQ-9324] Convert activemq-jdbc-store to use j.util.Base64
e7f023ce8 is described below
commit e7f023ce8bafb9c40778bb7cbf7af6684da2c50c
Author: Matt Pavlovich <[email protected]>
AuthorDate: Fri Oct 6 10:22:17 2023 -0500
[AMQ-9324] Convert activemq-jdbc-store to use j.util.Base64
- No need to drag JAXB dependency just for a base64 converter
---
activemq-jdbc-store/pom.xml | 4 ----
.../activemq/store/jdbc/adapter/DefaultJDBCAdapter.java | 16 +++++++---------
2 files changed, 7 insertions(+), 13 deletions(-)
diff --git a/activemq-jdbc-store/pom.xml b/activemq-jdbc-store/pom.xml
index 410c10654..1e7a3c1ce 100644
--- a/activemq-jdbc-store/pom.xml
+++ b/activemq-jdbc-store/pom.xml
@@ -39,10 +39,6 @@
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-broker</artifactId>
</dependency>
- <dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- </dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
diff --git
a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
index 031d976e3..47823ee64 100644
---
a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
+++
b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
@@ -16,9 +16,6 @@
*/
package org.apache.activemq.store.jdbc.adapter;
-import static javax.xml.bind.DatatypeConverter.parseBase64Binary;
-import static javax.xml.bind.DatatypeConverter.printBase64Binary;
-
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
@@ -26,6 +23,7 @@ import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
+import java.util.Base64;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Set;
@@ -239,7 +237,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
if (xid != null) {
byte[] xidVal = xid.getEncodedXidBytes();
xidVal[0] = '+';
- String xidString = printBase64Binary(xidVal);
+ String xidString = Base64.getEncoder().encodeToString(xidVal);
s.setString(8, xidString);
} else {
s.setString(8, null);
@@ -381,7 +379,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
} else {
byte[] xidVal = xid.getEncodedXidBytes();
xidVal[0] = '-';
- String xidString = printBase64Binary(xidVal);
+ String xidString = Base64.getEncoder().encodeToString(xidVal);
s.setString(1, xidString);
s.setLong(2, seq);
}
@@ -466,7 +464,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
}
if (xid != null) {
byte[] xidVal = encodeXid(xid, seq, priority);
- String xidString = printBase64Binary(xidVal);
+ String xidString = Base64.getEncoder().encodeToString(xidVal);
s.setString(1, xidString);
} else {
s.setLong(1, seq);
@@ -503,7 +501,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
}
if (xid != null) {
byte[] xidVal = encodeXid(xid, seq, priority);
- String xidString = printBase64Binary(xidVal);
+ String xidString = Base64.getEncoder().encodeToString(xidVal);
s.setString(1, xidString);
} else {
s.setLong(1, seq);
@@ -991,7 +989,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
while (rs.next()) {
long id = rs.getLong(1);
String encodedString = rs.getString(2);
- byte[] encodedXid = parseBase64Binary(encodedString);
+ byte[] encodedXid = Base64.getDecoder().decode(encodedString);
if (encodedXid[0] == '+') {
jdbcMemoryTransactionStore.recoverAdd(id,
getBinaryData(rs, 3));
} else {
@@ -1006,7 +1004,7 @@ public class DefaultJDBCAdapter implements JDBCAdapter {
rs = s.executeQuery();
while (rs.next()) {
String encodedString = rs.getString(1);
- byte[] encodedXid = parseBase64Binary(encodedString);
+ byte[] encodedXid = Base64.getDecoder().decode(encodedString);
String destination = rs.getString(2);
String subId = rs.getString(3);
String subName = rs.getString(4);