home *** CD-ROM | disk | FTP | other *** search
- package symjava.sql;
-
- import java.io.PrintStream;
- import java.util.Enumeration;
- import java.util.Hashtable;
- import java.util.Properties;
- import java.util.Vector;
-
- public class DriverManager {
- private static Vector drivers = new Vector();
- private static int loginTimeout;
- private static PrintStream logStream = null;
- private static boolean initialized;
-
- public static synchronized Connection getConnection(String var0, Properties var1) throws SQLException {
- if (var0 == null) {
- throw new SQLException("The url cannot be null", "08001");
- } else {
- String var2 = "DriverManager.getConnection(\"" + var0 + "\")";
- if (logStream != null) {
- logStream.println(var2);
- }
-
- if (!initialized && !initialized) {
- initialized = true;
- loadInitialDrivers();
- if (logStream != null) {
- logStream.println("JDBC DriverManager initialized");
- }
- }
-
- Object var9 = getSecurityContext();
- SQLException var3 = null;
-
- for(int var4 = 0; var4 < drivers.size(); ++var4) {
- DriverInfo var5 = (DriverInfo)drivers.elementAt(var4);
- if (var5.securityContext != null && var5.securityContext != var9) {
- String var12 = " skipping: " + var5;
- if (logStream != null) {
- logStream.println(var12);
- }
- } else {
- try {
- String var6 = " trying " + var5;
- if (logStream != null) {
- logStream.println(var6);
- }
-
- Connection var11 = var5.driver.connect(var0, var1);
- if (var11 != null) {
- String var7 = "getConnection returning " + var5;
- if (logStream != null) {
- logStream.println(var7);
- }
-
- return var11;
- }
- } catch (SQLException var8) {
- if (var3 == null) {
- var3 = var8;
- }
- }
- }
- }
-
- if (var3 != null) {
- String var10 = "getConnection failed: " + var3;
- if (logStream != null) {
- logStream.println(var10);
- }
-
- throw var3;
- } else {
- if (logStream != null) {
- logStream.println("getConnection: no suitable driver");
- }
-
- throw new SQLException("No suitable driver", "08001");
- }
- }
- }
-
- public static synchronized Connection getConnection(String var0, String var1, String var2) throws SQLException {
- Properties var3 = new Properties();
- if (var1 != null) {
- ((Hashtable)var3).put("user", var1);
- }
-
- if (var2 != null) {
- ((Hashtable)var3).put("password", var2);
- }
-
- return getConnection(var0, var3);
- }
-
- public static synchronized Connection getConnection(String var0) throws SQLException {
- Properties var1 = new Properties();
- return getConnection(var0, var1);
- }
-
- public static Driver getDriver(String var0) throws SQLException {
- String var1 = "DriverManager.getDriver(\"" + var0 + "\")";
- if (logStream != null) {
- logStream.println(var1);
- }
-
- if (!initialized && !initialized) {
- initialized = true;
- loadInitialDrivers();
- if (logStream != null) {
- logStream.println("JDBC DriverManager initialized");
- }
- }
-
- Object var6 = getSecurityContext();
-
- for(int var2 = 0; var2 < drivers.size(); ++var2) {
- DriverInfo var3 = (DriverInfo)drivers.elementAt(var2);
- if (var3.securityContext != null && var3.securityContext != var6) {
- String var8 = " skipping: " + var3;
- if (logStream != null) {
- logStream.println(var8);
- }
- } else {
- try {
- String var4 = " trying " + var3;
- if (logStream != null) {
- logStream.println(var4);
- }
-
- if (var3.driver.acceptsURL(var0)) {
- var4 = "getDriver returning " + var3;
- if (logStream != null) {
- logStream.println(var4);
- }
-
- return var3.driver;
- }
- } catch (SQLException var5) {
- }
- }
- }
-
- if (logStream != null) {
- logStream.println("getDriver: no suitable driver");
- }
-
- throw new SQLException("No suitable driver", "08001");
- }
-
- public static synchronized void registerDriver(Driver var0) throws SQLException {
- if (!initialized && !initialized) {
- initialized = true;
- loadInitialDrivers();
- if (logStream != null) {
- logStream.println("JDBC DriverManager initialized");
- }
- }
-
- DriverInfo var1 = new DriverInfo();
- var1.driver = var0;
- var1.className = var0.getClass().getName();
- var1.securityContext = getSecurityContext();
- drivers.addElement(var1);
- String var2 = "registerDriver: " + var1;
- if (logStream != null) {
- logStream.println(var2);
- }
-
- }
-
- public static void deregisterDriver(Driver var0) throws SQLException {
- Object var1 = getSecurityContext();
- String var2 = "DriverManager.deregisterDriver: " + var0;
- if (logStream != null) {
- logStream.println(var2);
- }
-
- DriverInfo var3 = null;
-
- for(var4 = 0; var4 < drivers.size(); ++var4) {
- var3 = (DriverInfo)drivers.elementAt(var4);
- if (var3.driver == var0) {
- break;
- }
- }
-
- if (var4 >= drivers.size()) {
- if (logStream != null) {
- logStream.println(" couldn't find driver to unload");
- }
-
- } else if (var1 != null && var3.securityContext != var1) {
- throw new SecurityException();
- } else {
- drivers.removeElementAt(var4);
- }
- }
-
- public static Enumeration getDrivers() {
- Vector var0 = new Vector();
- if (!initialized && !initialized) {
- initialized = true;
- loadInitialDrivers();
- if (logStream != null) {
- logStream.println("JDBC DriverManager initialized");
- }
- }
-
- Object var1 = getSecurityContext();
-
- for(int var2 = 0; var2 < drivers.size(); ++var2) {
- DriverInfo var3 = (DriverInfo)drivers.elementAt(var2);
- if (var3.securityContext != null && var3.securityContext != var1) {
- String var4 = " skipping: " + var3;
- if (logStream != null) {
- logStream.println(var4);
- }
- } else {
- var0.addElement(var3.driver);
- }
- }
-
- return var0.elements();
- }
-
- public static void setLoginTimeout(int var0) {
- loginTimeout = var0;
- }
-
- public static int getLoginTimeout() {
- return loginTimeout;
- }
-
- public static void setLogStream(PrintStream var0) {
- logStream = var0;
- }
-
- public static PrintStream getLogStream() {
- return logStream;
- }
-
- public static void println(String var0) {
- if (logStream != null) {
- logStream.println(var0);
- }
-
- }
-
- private static Object getSecurityContext() {
- SecurityManager var0 = System.getSecurityManager();
- return var0 == null ? null : var0.getSecurityContext();
- }
-
- private static void loadInitialDrivers() {
- String var0;
- try {
- var0 = System.getProperty("jdbc.drivers");
- } catch (Exception var5) {
- var0 = null;
- }
-
- String var1 = "DriverManager.initialize: jdbc.drivers = " + var0;
- if (logStream != null) {
- logStream.println(var1);
- }
-
- if (var0 != null) {
- while(var0.length() != 0) {
- int var7 = var0.indexOf(58);
- String var2;
- if (var7 < 0) {
- var2 = var0;
- var0 = "";
- } else {
- var2 = var0.substring(0, var7);
- var0 = var0.substring(var7 + 1);
- }
-
- if (var2.length() != 0) {
- try {
- String var3 = "DriverManager.Initialize: loading " + var2;
- if (logStream != null) {
- logStream.println(var3);
- }
-
- Class.forName(var2);
- } catch (Exception var6) {
- String var4 = "DriverManager.Initialize: load failed: " + var6;
- if (logStream != null) {
- logStream.println(var4);
- }
- }
- }
- }
-
- }
- }
-
- static void initialize() {
- if (!initialized) {
- initialized = true;
- loadInitialDrivers();
- if (logStream != null) {
- logStream.println("JDBC DriverManager initialized");
- }
-
- }
- }
-
- private DriverManager() {
- }
- }
-