Author: [log in to unmask]
Date: Sat Mar 7 16:32:24 2015
New Revision: 2361
Log:
Open db connection in load if necessary.
Modified:
java/trunk/conditions/src/main/java/org/hps/conditions/cli/LoadCommand.java
Modified: java/trunk/conditions/src/main/java/org/hps/conditions/cli/LoadCommand.java
=============================================================================
--- java/trunk/conditions/src/main/java/org/hps/conditions/cli/LoadCommand.java (original)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/cli/LoadCommand.java Sat Mar 7 16:32:24 2015
@@ -42,7 +42,7 @@
@Override
public void execute(String[] arguments) {
super.execute(arguments);
-
+
String fileName = commandLine.getOptionValue("f");
if (fileName == null) {
throw new IllegalArgumentException("Missing file argument.");
@@ -58,6 +58,11 @@
DatabaseConditionsManager conditionsManager = DatabaseConditionsManager.getInstance();
+ boolean openedConnection = false;
+ if (!conditionsManager.isConnected()) {
+ openedConnection = conditionsManager.openConnection();
+ }
+
int collectionID;
if (commandLine.getOptionValue("c") != null) {
collectionID = Integer.parseInt(commandLine.getOptionValue("c"));
@@ -78,6 +83,7 @@
// FIXME: This call should go through an object API like ConditionsObjectCollection.insert rather than the manager directly.
List<Integer> IDs = conditionsManager.updateQuery(insertSql);
System.out.println("Inserted " + IDs.size() + " new rows into table " + tableName + " with collection_id " + collectionID);
+ conditionsManager.closeConnection(openedConnection);
}
void parseFile(String fileName, List<String> columnNames, List<List<String>> rows) {
|