Remove unneeded JDBC driver class name
For the two supported databases on this plugin, the JDBC driver class
name can be inferred from the JDBC URL, making redundant to specify it.
Change-Id: I34a851b72c76203dcbf61ba90424d847aa9941ea
diff --git a/src/main/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfig.java b/src/main/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfig.java
index 28ed5d1..f4217bb 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfig.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfig.java
@@ -33,7 +33,6 @@
static final String CONFIG_MAX_AGE = "maxAge";
static final String CONFIG_MAX_TRIES = "maxTries";
static final String CONFIG_RETURN_LIMIT = "returnLimit";
- static final String CONFIG_DRIVER = "storeDriver";
static final String CONFIG_URL = "storeUrl";
static final String CONFIG_LOCAL_PATH = "localStorePath";
static final String CONFIG_URL_OPTIONS = "urlOptions";
@@ -50,7 +49,6 @@
static final int DEFAULT_RETURN_LIMIT = 5000;
static final int DEFAULT_WAIT_TIME = 1000;
static final int DEFAULT_CONN_TIME = 1000;
- static final String DEFAULT_DRIVER = "org.h2.Driver";
static final int DEFAULT_EVICT_IDLE_TIME = 1000 * 60;
static final int DEFAULT_MAX_CONNECTIONS = 8;
@@ -60,7 +58,6 @@
private int returnLimit;
private int waitTime;
private int connectTime;
- private String storeDriver;
private String storeUrl;
private Path localStorePath;
private String urlOptions;
@@ -78,7 +75,6 @@
returnLimit = cfg.getInt(CONFIG_RETURN_LIMIT, DEFAULT_RETURN_LIMIT);
waitTime = cfg.getInt(CONFIG_WAIT_TIME, DEFAULT_WAIT_TIME);
connectTime = cfg.getInt(CONFIG_CONN_TIME, DEFAULT_CONN_TIME);
- storeDriver = cfg.getString(CONFIG_DRIVER, DEFAULT_DRIVER);
storeUrl = cfg.getString(CONFIG_URL, H2_DB_PREFIX + site.data_dir.resolve("db").normalize());
localStorePath =
Paths.get(
@@ -107,10 +103,6 @@
return connectTime;
}
- public String getStoreDriver() {
- return storeDriver;
- }
-
public String getStoreUrl() {
return storeUrl;
}
@@ -131,11 +123,6 @@
return maxTries;
}
- /** @return the local-store (database) driver which happens to be h2 */
- public String getLocalStoreDriver() {
- return DEFAULT_DRIVER;
- }
-
public Path getLocalStorePath() {
return localStorePath;
}
diff --git a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
index 2fdda24..d0e5d94 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLClient.java
@@ -49,9 +49,8 @@
private final Gson gson;
private BasicDataSource ds;
- SQLClient(String storeDriver, String storeUrl, String urlOptions) {
+ SQLClient(String storeUrl, String urlOptions) {
ds = new BasicDataSource();
- ds.setDriverClassName(storeDriver);
ds.setUrl(storeUrl);
ds.setConnectionProperties(urlOptions);
ds.setMaxWait(MILLISECONDS.convert(30, SECONDS));
@@ -107,7 +106,7 @@
* @throws SQLException If there was a problem with the database
*/
void createDBIfNotCreated() throws SQLException {
- boolean postgresql = ds.getDriverClassName().contains("postgresql");
+ boolean postgresql = ds.getUrl().contains("postgresql");
execute(SQLTable.createTableQuery(postgresql));
execute(SQLTable.createIndexes(postgresql));
}
diff --git a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLModule.java b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLModule.java
index 9b14366..1088b15 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLModule.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLModule.java
@@ -40,8 +40,7 @@
@Singleton
@EventsDb
SQLClient provideSqlClient(EventsLogConfig cfg) {
- SQLClient sqlClient =
- new SQLClient(cfg.getStoreDriver(), cfg.getStoreUrl(), cfg.getUrlOptions());
+ SQLClient sqlClient = new SQLClient(cfg.getStoreUrl(), cfg.getUrlOptions());
sqlClient.setUsername(cfg.getStoreUsername());
sqlClient.setPassword(cfg.getStorePassword());
sqlClient.setEvictIdleTime(cfg.getEvictIdleTime());
@@ -55,7 +54,6 @@
SQLClient provideLocalSqlClient(EventsLogConfig cfg) {
SQLClient sqlClient =
new SQLClient(
- cfg.getLocalStoreDriver(),
H2_DB_PREFIX + cfg.getLocalStorePath().resolve(SQLTable.TABLE_NAME),
cfg.getUrlOptions());
sqlClient.setEvictIdleTime(cfg.getEvictIdleTime());
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md
index ce1572c..07654db 100644
--- a/src/main/resources/Documentation/config.md
+++ b/src/main/resources/Documentation/config.md
@@ -23,10 +23,6 @@
: Specify the max amount of events that will be returned for each query.
When not specified, the default value is 5000.
-plugin.@PLUGIN@.storeDriver
-: Specify the driver of the database. When not specified, the default driver is
- org.h2.Driver.
-
plugin.@PLUGIN@.storeUrl
: Specify the path to the directory in which to keep the database. When not
specified, the default path is jdbc:h2:\<gerrit_site>/data/db.
diff --git a/src/test/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfigTest.java b/src/test/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfigTest.java
index ff52ebc..484d156 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfigTest.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/eventslog/EventsLogConfigTest.java
@@ -16,7 +16,6 @@
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_CONN_TIME;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_COPY_LOCAL;
-import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_DRIVER;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_EVICT_IDLE_TIME;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_LOCAL_PATH;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_MAX_AGE;
@@ -29,7 +28,6 @@
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_USERNAME;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.CONFIG_WAIT_TIME;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.DEFAULT_CONN_TIME;
-import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.DEFAULT_DRIVER;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.DEFAULT_EVICT_IDLE_TIME;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.DEFAULT_MAX_AGE;
import static com.ericsson.gerrit.plugins.eventslog.EventsLogConfig.DEFAULT_MAX_CONNECTIONS;
@@ -88,10 +86,8 @@
assertThat(eventsLogConfig.getReturnLimit()).isEqualTo(DEFAULT_RETURN_LIMIT);
assertThat(eventsLogConfig.getConnectTime()).isEqualTo(DEFAULT_CONN_TIME);
assertThat(eventsLogConfig.getWaitTime()).isEqualTo(DEFAULT_WAIT_TIME);
- assertThat(eventsLogConfig.getLocalStoreDriver()).isEqualTo(DEFAULT_DRIVER);
assertThat(eventsLogConfig.getLocalStorePath().toString() + "/")
.isEqualTo(site.site_path.toString() + "/events-db/");
- assertThat(eventsLogConfig.getStoreDriver()).isEqualTo(DEFAULT_DRIVER);
assertThat(eventsLogConfig.getStoreUrl())
.isEqualTo("jdbc:h2:" + site.data_dir.toString() + "/db");
assertThat(eventsLogConfig.getUrlOptions()).isEmpty();
@@ -112,9 +108,7 @@
assertThat(eventsLogConfig.getReturnLimit()).isEqualTo(10000);
assertThat(eventsLogConfig.getConnectTime()).isEqualTo(5000);
assertThat(eventsLogConfig.getWaitTime()).isEqualTo(5000);
- assertThat(eventsLogConfig.getLocalStoreDriver()).isEqualTo(DEFAULT_DRIVER);
assertThat(eventsLogConfig.getLocalStorePath().toString() + "/").isEqualTo(LOCAL_STORE_PATH);
- assertThat(eventsLogConfig.getStoreDriver()).isEqualTo("org.h2.Driver2");
assertThat(eventsLogConfig.getStoreUrl()).isEqualTo("jdbc:h2:~/gerrit/db");
assertThat(eventsLogConfig.getUrlOptions()).isEqualTo(Joiner.on(";").join(urlOptions));
assertThat(eventsLogConfig.getStoreUsername()).isEqualTo("testUsername");
@@ -131,7 +125,6 @@
config.setInt(PLUGIN, PLUGIN_NAME, CONFIG_RETURN_LIMIT, 10000);
config.setInt(PLUGIN, PLUGIN_NAME, CONFIG_CONN_TIME, 5000);
config.setInt(PLUGIN, PLUGIN_NAME, CONFIG_WAIT_TIME, 5000);
- config.setString(PLUGIN, PLUGIN_NAME, CONFIG_DRIVER, "org.h2.Driver2");
config.setString(PLUGIN, PLUGIN_NAME, CONFIG_URL, "jdbc:h2:~/gerrit/db");
config.setString(PLUGIN, PLUGIN_NAME, CONFIG_LOCAL_PATH, LOCAL_STORE_PATH);
config.setStringList(PLUGIN, PLUGIN_NAME, CONFIG_URL_OPTIONS, urlOptions);
diff --git a/src/test/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStoreTest.java b/src/test/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStoreTest.java
index 7f3c81c..c0b4650 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStoreTest.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/eventslog/sql/SQLStoreTest.java
@@ -62,7 +62,6 @@
private static final Logger log = LoggerFactory.getLogger(SQLStoreTest.class);
private static final String TEST_URL = "jdbc:h2:mem:" + TABLE_NAME;
private static final String TEST_LOCAL_URL = "jdbc:h2:mem:test";
- private static final String TEST_DRIVER = "org.h2.Driver";
private static final String TEST_OPTIONS = "DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false";
private static final String TERM_CONN_MSG = "terminating connection";
private static final String MSG = "message";
@@ -97,8 +96,8 @@
}
private void setUpClient() {
- eventsDb = new SQLClient(TEST_DRIVER, TEST_URL, TEST_OPTIONS);
- localEventsDb = new SQLClient(TEST_DRIVER, TEST_LOCAL_URL, TEST_OPTIONS);
+ eventsDb = new SQLClient(TEST_URL, TEST_OPTIONS);
+ localEventsDb = new SQLClient(TEST_LOCAL_URL, TEST_OPTIONS);
store =
new SQLStore(pcFactoryMock, userProviderMock, cfgMock, eventsDb, localEventsDb, poolMock);
store.start();
@@ -269,8 +268,8 @@
when(pc.isVisible()).thenReturn(true);
doThrow(e).when(pcFactoryMock).controlFor((mockEvent3.getProjectNameKey()), userMock);
- eventsDb = new SQLClient(TEST_DRIVER, TEST_URL, TEST_OPTIONS);
- localEventsDb = new SQLClient(TEST_DRIVER, TEST_LOCAL_URL, TEST_OPTIONS);
+ eventsDb = new SQLClient(TEST_URL, TEST_OPTIONS);
+ localEventsDb = new SQLClient(TEST_LOCAL_URL, TEST_OPTIONS);
store =
new SQLStore(pcFactoryMock, userProviderMock, cfgMock, eventsDb, localEventsDb, poolMock);
@@ -332,7 +331,7 @@
*/
@Test
public void testConnectionTask() throws Exception {
- eventsDb = new SQLClient(TEST_DRIVER, TEST_URL, TEST_OPTIONS);
+ eventsDb = new SQLClient(TEST_URL, TEST_OPTIONS);
localEventsDb = mock(SQLClient.class);
when(localEventsDb.dbExists()).thenReturn(true);
when(localEventsDb.getAll()).thenReturn(ImmutableList.of(mock(SQLEntry.class)));
@@ -356,7 +355,7 @@
private void checkConnectionAndRestore(boolean copy) throws Exception {
MockEvent mockEvent = new MockEvent();
eventsDb = mock(SQLClient.class);
- localEventsDb = new SQLClient(TEST_DRIVER, TEST_LOCAL_URL, TEST_OPTIONS);
+ localEventsDb = new SQLClient(TEST_LOCAL_URL, TEST_OPTIONS);
localEventsDb.createDBIfNotCreated();
localEventsDb.storeEvent(mockEvent);
doThrow(new SQLException(new ConnectException()))