src/org/objectweb/cjdbc/console/gui/session/GuiSession.java

説明を見る。
00001 00025 package org.objectweb.cjdbc.console.gui.session; 00026 00027 import java.io.BufferedWriter; 00028 import java.io.File; 00029 import java.io.FileInputStream; 00030 import java.io.FileWriter; 00031 import java.io.IOException; 00032 import java.util.ArrayList; 00033 import java.util.Enumeration; 00034 import java.util.Hashtable; 00035 import java.util.Properties; 00036 00037 import org.objectweb.cjdbc.common.util.ReadWrite; 00038 00045 public class GuiSession 00046 { 00047 private final boolean saveDatabaseInfoToDisk = true; 00048 ArrayList controllerItems; 00049 ArrayList configurationFiles; 00050 Hashtable databaseItems; 00051 00055 public GuiSession() 00056 { 00057 controllerItems = new ArrayList(); 00058 configurationFiles = new ArrayList(); 00059 databaseItems = new Hashtable(); 00060 } 00061 00068 public void saveSessionToFile(File sessionFile) throws IOException 00069 { 00070 BufferedWriter writer = new BufferedWriter(new FileWriter(sessionFile)); 00071 if (saveDatabaseInfoToDisk) 00072 { 00073 writer.write("### DATABASES ###" 00074 + System.getProperty("line.separator")); 00075 writer.write(ReadWrite.write(databaseItems, false)); 00076 } 00077 writer.write("### CONTROLLERS ###" 00078 + System.getProperty("line.separator")); 00079 writer.write(ReadWrite.write(controllerItems, "controller", false)); 00080 writer.write("### CONFIGURATION FILES ###" 00081 + System.getProperty("line.separator")); 00082 writer.write(ReadWrite.write(configurationFiles, "configuration", false)); 00083 writer.close(); 00084 } 00085 00092 public void loadSessionFromFile(File sessionFile) throws IOException 00093 { 00094 if (sessionFile.exists()) 00095 { 00096 Properties session = new Properties(); 00097 session.load(new FileInputStream(sessionFile)); 00098 Enumeration enume = session.keys(); 00099 String key; 00100 String value; 00101 while (enume.hasMoreElements()) 00102 { 00103 key = (String) enume.nextElement(); 00104 value = (String) session.get(key); 00105 if (key.startsWith("controller")) 00106 controllerItems.add(value); 00107 else if (key.startsWith("database")) 00108 databaseItems.put(key, value); 00109 else if (key.startsWith("configuration")) 00110 addFileToConfigurationFiles(new File(value)); 00111 } 00112 } 00113 else 00114 { 00115 controllerItems.add("0.0.0.0:1090"); 00116 // URL url = this.getClass().getResource("/virtualdatabase"); 00117 // System.out.println(url.getFile()); 00118 // if (url != null) 00119 // { 00120 // File f = new File(url.getFile()); 00121 // File[] list = f.listFiles(); 00122 // 00123 // for (int i = 0; i < list.length; i++) 00124 // addFileToConfigurationFiles(list[i]); 00125 // } 00126 } 00127 } 00128 00134 public ArrayList getControllerItems() 00135 { 00136 return controllerItems; 00137 } 00138 00144 public void addControllerToList(String controller) 00145 { 00146 if (!controllerItems.contains(controller)) 00147 controllerItems.add(controller); 00148 } 00149 00156 public boolean checkControllerInSession(String controller) 00157 { 00158 return controllerItems.contains(controller); 00159 } 00160 00166 public ArrayList getConfigurationFiles() 00167 { 00168 return configurationFiles; 00169 } 00170 00177 public void addFileToConfigurationFiles(File newFile) 00178 { 00179 if (!configurationFiles.contains(newFile)) 00180 configurationFiles.add(newFile); 00181 } 00182 00190 public void addDatabaseToSession(String databaseName, String login, 00191 String password) 00192 { 00193 databaseItems.put("database." + databaseName + ".login", login); 00194 databaseItems.put("database." + databaseName + ".password", password); 00195 } 00196 00204 public boolean isAuthenticatedDatabase(String databaseName) 00205 { 00206 return databaseItems.containsKey("database." + databaseName + ".login"); 00207 } 00208 00215 public String getAuthenticatedDatabaseLogin(String databaseName) 00216 { 00217 return (String) databaseItems.get("database." + databaseName + ".login"); 00218 } 00219 00226 public String getAuthenticatedDatabasePassword(String databaseName) 00227 { 00228 return (String) databaseItems.get("database." + databaseName + ".password"); 00229 } 00230 00236 public Hashtable getDatabaseItems() 00237 { 00238 return databaseItems; 00239 } 00240 }

CJDBCversion1.0.4に対してTue Oct 12 15:15:59 2004に生成されました。 doxygen 1.3.8