Skip to content
Snippets Groups Projects
Commit 7cbeeb7e authored by Greg DiCristofaro's avatar Greg DiCristofaro
Browse files

commenting

parent 07135929
No related branches found
No related tags found
No related merge requests found
...@@ -138,6 +138,7 @@ public void runIntegrationTests() throws IntegrationTestDiffException, Integrati ...@@ -138,6 +138,7 @@ public void runIntegrationTests() throws IntegrationTestDiffException, Integrati
} }
EnvConfig envConfig = config.getEnvConfig(); EnvConfig envConfig = config.getEnvConfig();
// setup external connections preserving old settings for reverting later.
AllConnectionInfo oldSettings = null; AllConnectionInfo oldSettings = null;
try { try {
oldSettings = pushNewMultiUserSettings(new AllConnectionInfo(envConfig.getDbConnection(), envConfig.getMqConnection(), envConfig.getSolrConnection())); oldSettings = pushNewMultiUserSettings(new AllConnectionInfo(envConfig.getDbConnection(), envConfig.getMqConnection(), envConfig.getSolrConnection()));
...@@ -188,31 +189,59 @@ public void runIntegrationTests() throws IntegrationTestDiffException, Integrati ...@@ -188,31 +189,59 @@ public void runIntegrationTests() throws IntegrationTestDiffException, Integrati
} }
} }
/**
* Represents all connection information.
*/
private static class AllConnectionInfo { private static class AllConnectionInfo {
private final ConnectionConfig dbConnection; private final ConnectionConfig dbConnection;
private final ConnectionConfig mqConnection; private final ConnectionConfig mqConnection;
private final ConnectionConfig solrConnection; private final ConnectionConfig solrConnection;
/**
* Main constructor.
*
* @param dbConnection A postgres database connection configuration.
* @param mqConnection An active mq connection configuration.
* @param solrConnection A solr connection configuration.
*/
public AllConnectionInfo(ConnectionConfig dbConnection, ConnectionConfig mqConnection, ConnectionConfig solrConnection) { public AllConnectionInfo(ConnectionConfig dbConnection, ConnectionConfig mqConnection, ConnectionConfig solrConnection) {
this.dbConnection = dbConnection; this.dbConnection = dbConnection;
this.mqConnection = mqConnection; this.mqConnection = mqConnection;
this.solrConnection = solrConnection; this.solrConnection = solrConnection;
} }
/**
* @return The postgres database connection configuration.
*/
public ConnectionConfig getDbConnection() { public ConnectionConfig getDbConnection() {
return dbConnection; return dbConnection;
} }
/**
* @return The active mq database connection configuration.
*/
public ConnectionConfig getMqConnection() { public ConnectionConfig getMqConnection() {
return mqConnection; return mqConnection;
} }
/**
* @return The solr connection configuration.
*/
public ConnectionConfig getSolrConnection() { public ConnectionConfig getSolrConnection() {
return solrConnection; return solrConnection;
} }
} }
/**
* Updates all multi user settings to those provided in connectionInfo. If
* connectionInfo or child items (i.e. postgres/mq/solr) are null, they are
* ignored and null is returned.
*
* @param connectionInfo The connection info or null if no setup to be done.
* @return The old settings (used for reverting).
* @throws UserPreferencesException
*/
private AllConnectionInfo pushNewMultiUserSettings(AllConnectionInfo connectionInfo) throws UserPreferencesException { private AllConnectionInfo pushNewMultiUserSettings(AllConnectionInfo connectionInfo) throws UserPreferencesException {
// take no action if no settings // take no action if no settings
if (connectionInfo == null) { if (connectionInfo == null) {
...@@ -228,6 +257,15 @@ private AllConnectionInfo pushNewMultiUserSettings(AllConnectionInfo connectionI ...@@ -228,6 +257,15 @@ private AllConnectionInfo pushNewMultiUserSettings(AllConnectionInfo connectionI
return new AllConnectionInfo(oldPostgresSettings, oldActiveMqSettings, oldSolrSettings); return new AllConnectionInfo(oldPostgresSettings, oldActiveMqSettings, oldSolrSettings);
} }
/**
* Updates postgres connection settings returning the previous settings. If
* connectionInfo is null or missing necessary data, no update occurs and
* null is returned.
*
* @param connectionInfo The connection configuration or null.
* @return The previous settings.
* @throws UserPreferencesException
*/
private ConnectionConfig pushPostgresSettings(ConnectionConfig connectionInfo) throws UserPreferencesException { private ConnectionConfig pushPostgresSettings(ConnectionConfig connectionInfo) throws UserPreferencesException {
// take no action if no database settings. // take no action if no database settings.
if (connectionInfo == null) { if (connectionInfo == null) {
...@@ -259,6 +297,15 @@ private ConnectionConfig pushPostgresSettings(ConnectionConfig connectionInfo) t ...@@ -259,6 +297,15 @@ private ConnectionConfig pushPostgresSettings(ConnectionConfig connectionInfo) t
return oldConnectionInfo; return oldConnectionInfo;
} }
/**
* Updates active mq connection settings returning the previous settings. If
* connectionInfo is null or missing necessary data, no update occurs and
* null is returned.
*
* @param connectionInfo The connection configuration or null.
* @return The previous settings.
* @throws UserPreferencesException
*/
private ConnectionConfig pushActiveMqSettings(ConnectionConfig connectionInfo) throws UserPreferencesException { private ConnectionConfig pushActiveMqSettings(ConnectionConfig connectionInfo) throws UserPreferencesException {
// take no action if no database settings. // take no action if no database settings.
if (connectionInfo == null) { if (connectionInfo == null) {
...@@ -285,6 +332,14 @@ private ConnectionConfig pushActiveMqSettings(ConnectionConfig connectionInfo) t ...@@ -285,6 +332,14 @@ private ConnectionConfig pushActiveMqSettings(ConnectionConfig connectionInfo) t
return oldConnectionInfo; return oldConnectionInfo;
} }
/**
* Updates solr connection settings returning the previous settings. If
* connectionInfo is null or missing necessary data, no update occurs and
* null is returned. Username and password are currently ignored.
*
* @param connectionInfo The connection configuration or null.
* @return The previous settings.
*/
private ConnectionConfig pushSolrSettings(ConnectionConfig connectionInfo) { private ConnectionConfig pushSolrSettings(ConnectionConfig connectionInfo) {
// take no action if no database settings. // take no action if no database settings.
if (connectionInfo == null) { if (connectionInfo == null) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment