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) {