diff --git a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCFileUtils.java b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCFileUtils.java index b5f1aa6de0..1bfdd70020 100644 --- a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCFileUtils.java +++ b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCFileUtils.java @@ -44,8 +44,7 @@ class JDBCFileUtils { static JDBCSequentialFileFactoryDriver getDBFileDriver(DataSource dataSource, SQLProvider provider) throws SQLException { JDBCSequentialFileFactoryDriver dbDriver; if (provider instanceof PostgresSQLProvider) { - dbDriver = new PostgresSequentialSequentialFileDriver(); - dbDriver.setDataSource(dataSource); + dbDriver = new PostgresSequentialSequentialFileDriver(dataSource, provider); } else { dbDriver = new JDBCSequentialFileFactoryDriver(dataSource, provider); } @@ -55,7 +54,7 @@ class JDBCFileUtils { static JDBCSequentialFileFactoryDriver getDBFileDriver(Connection connection, SQLProvider provider) throws SQLException { JDBCSequentialFileFactoryDriver dbDriver; if (provider instanceof PostgresSQLProvider) { - dbDriver = new PostgresSequentialSequentialFileDriver(); + dbDriver = new PostgresSequentialSequentialFileDriver(connection, provider); dbDriver.setConnection(connection); } else { dbDriver = new JDBCSequentialFileFactoryDriver(connection, provider); diff --git a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/PostgresSequentialSequentialFileDriver.java b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/PostgresSequentialSequentialFileDriver.java index cdc167f86e..85d4813136 100644 --- a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/PostgresSequentialSequentialFileDriver.java +++ b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/PostgresSequentialSequentialFileDriver.java @@ -17,14 +17,18 @@ package org.apache.activemq.artemis.jdbc.store.file; import java.nio.ByteBuffer; +import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; +import org.apache.activemq.artemis.jdbc.store.sql.SQLProvider; import org.postgresql.PGConnection; import org.postgresql.largeobject.LargeObject; import org.postgresql.largeobject.LargeObjectManager; +import javax.sql.DataSource; + @SuppressWarnings("SynchronizeOnNonFinalField") public final class PostgresSequentialSequentialFileDriver extends JDBCSequentialFileFactoryDriver { @@ -34,6 +38,18 @@ public final class PostgresSequentialSequentialFileDriver extends JDBCSequential super(); } + public PostgresSequentialSequentialFileDriver(DataSource dataSource, SQLProvider provider) { + super(); + this.setDataSource(dataSource); + this.setSqlProvider(provider); + } + + public PostgresSequentialSequentialFileDriver(Connection connection, SQLProvider provider) { + super(); + this.setConnection(connection); + this.setSqlProvider(provider); + } + @Override protected void prepareStatements() throws SQLException { this.deleteFile = connection.prepareStatement(sqlProvider.getDeleteFileSQL());