1 22 23 package org.continuent.sequoia.console.text.commands.sqlconsole; 24 25 import java.io.BufferedReader ; 26 import java.io.FileReader ; 27 import java.io.IOException ; 28 import java.sql.Connection ; 29 30 import org.continuent.sequoia.common.i18n.ConsoleTranslate; 31 import org.continuent.sequoia.console.text.ConsoleException; 32 import org.continuent.sequoia.console.text.commands.ConsoleCommand; 33 import org.continuent.sequoia.console.text.module.VirtualDatabaseConsole; 34 35 40 public class Load extends ConsoleCommand 41 { 42 43 48 public Load(VirtualDatabaseConsole module) 49 { 50 super(module); 51 } 52 53 56 public void parse(String commandText) throws IOException , ConsoleException 57 { 58 String fileName = commandText.trim(); 59 if ("".equals(fileName)) { 61 console.printError(getUsage()); 62 return; 63 } 64 load(commandText.trim()); 65 } 66 67 73 public void load(String fileName) 74 { 75 Connection connection = ((VirtualDatabaseConsole)module).getConnection(); 76 77 BufferedReader file = null; 78 try 79 { 80 file = new BufferedReader (new FileReader (fileName)); 81 } 82 catch (Exception e) 83 { 84 console.printError( 85 ConsoleTranslate.get("sql.command.load.file.error", e), e); return; 87 } 88 89 console.println(ConsoleTranslate.get("sql.command.loading.file", fileName)); try 91 { 92 String request; 93 94 while ((request = file.readLine()) != null) 95 { 96 request = request.trim(); 97 console.println(request); 98 99 if (request.equalsIgnoreCase("begin")) connection.setAutoCommit(false); 101 else if (request.equalsIgnoreCase("commit")) connection.commit(); 103 else if (request.equalsIgnoreCase("rollback")) connection.rollback(); 105 else 106 { ((VirtualDatabaseConsole)module).execSQL(request, false); 108 } 109 } 110 } 111 catch (Exception e) 112 { 113 console.printError(ConsoleTranslate.get("sql.command.load.execute.error", e), e); 115 } 116 finally 117 { 118 try 119 { 120 file.close(); 121 } 122 catch (IOException ignore) 123 { 124 } 125 } 126 } 127 128 131 public String getCommandName() 132 { 133 return "load"; } 135 136 139 public String getCommandParameters() 140 { 141 return ConsoleTranslate.get("sql.command.load.params"); } 143 144 147 public String getCommandDescription() 148 { 149 return ConsoleTranslate.get("sql.command.load.description"); } 151 } | Popular Tags |