package hsfulda.de; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.HashMap; public class FedConnection implements FedConnectionInterface { HashMap connections = new HashMap(); String connectionStrings[] = { "jdbc:oracle:thin:@pinatubo.informatik.hs-fulda.de:1521:ORALV8A", "jdbc:oracle:thin:@mtsthelens.informatik.hs-fulda.de:1521:ORALV9A", "jdbc:oracle:thin:@krakatau.informatik.hs-fulda.de:1521:ORALV10A" }; public FedConnection(String username, String password) throws FedException { try { DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); for (int i = 0; i < connectionStrings.length; i++) { connections.put(i, DriverManager.getConnection(connectionStrings[i], username, password)); } } catch (SQLException sqlException) { throw new FedException(sqlException); } } public void setAutoCommit(boolean autoCommit) throws FedException { try { for (Object i : connections.keySet()) { connections.get(i).setAutoCommit(autoCommit); } } catch (SQLException sqlException) { throw new FedException(sqlException); } } public boolean getAutoCommit() throws FedException { boolean autoCommit = false; try { autoCommit = connections.get(0).getAutoCommit(); } catch (SQLException sqlException) { throw new FedException(sqlException); } return autoCommit; } public void commit() throws FedException { try { for (Object i : connections.keySet()) { connections.get(i).commit(); } } catch (SQLException sqlException) { throw new FedException(sqlException); } } public void rollback() throws FedException { try { for (Object i : connections.keySet()) { connections.get(i).rollback(); } } catch (SQLException sqlException) { throw new FedException(sqlException); } } public void close() throws FedException { try { for (Object i : connections.keySet()) { connections.get(i).close(); } } catch (SQLException sqlException) { throw new FedException(sqlException); } } public FedStatement getStatement() { return new FedStatement(this); } }