Skip to content

Commit 742552f

Browse files
committed
- Added support for Oracle in the sql Class
- Fixed Java compiler issues git-svn-id: svn://192.168.0.80/JavaXT/javaxt-core@1478 2c7b0aa6-e0b2-3c4e-bb4a-8b65b6c465ff
1 parent b5026cc commit 742552f

File tree

4 files changed

+20
-11
lines changed

4 files changed

+20
-11
lines changed

src/javaxt/sql/Connection.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ public Generator<Recordset> getRecordset(String sql, boolean readOnly) throws SQ
204204
public void run() {
205205
while (rs.hasNext()){
206206
try{
207-
yield(rs);
207+
this.yield(rs);
208208
}
209209
catch(InterruptedException e){
210210
return;

src/javaxt/sql/Database.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,9 @@ protected String getURL(){
362362
if (vendor.equals("SQLServer")){
363363
database = ";databaseName=" + name;
364364
}
365+
else if (vendor.equals("Oracle")){
366+
database = ":" + name; //only tested with thin driver
367+
}
365368
else if (vendor.equals("Derby")){
366369
database = ";databaseName=" + name;
367370
}
@@ -387,14 +390,17 @@ else if (vendor.equals("Derby")){
387390
path = driver.getProtocol() + "Tds:";
388391
}
389392
}
393+
else if (vendor.equals("Oracle")){
394+
path = driver.getProtocol() + ":thin:@"; //only tested with thin driver
395+
}
390396
else if (vendor.equals("Derby") || vendor.equals("SQLite")){
391397
path = driver.getProtocol();
392398
}
393399

394400

395401

396402
//Set properties
397-
StringBuffer props = new StringBuffer();
403+
StringBuilder props = new StringBuilder();
398404
if (properties!=null){
399405
java.util.Iterator it = properties.keySet().iterator();
400406
while (it.hasNext()){

src/javaxt/sql/Driver.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,20 @@
1010
******************************************************************************/
1111

1212
public class Driver {
13-
13+
1414
private String vendor;
1515
private String driver;
1616
private String protocol;
1717
private java.sql.Driver Driver = null;
18-
19-
18+
19+
2020
/** Static list of drivers and corresponding metadata */
2121
private static Driver[] drivers = new Driver[]{
2222
new Driver("SQLServer","com.microsoft.sqlserver.jdbc.SQLServerDriver","jdbc:sqlserver"),
2323
new Driver("DB2","com.ibm.db2.jcc.DB2Driver","jdbc:db2"), //"COM.ibm.db2.jdbc.net.DB2Driver"
2424
new Driver("Sybase","com.sybase.jdbc3.jdbc.SybDriver","jdbc:sybase"),
2525
new Driver("PostgreSQL","org.postgresql.Driver","jdbc:postgresql"),
26+
new Driver("Oracle", "oracle.jdbc.driver.OracleDriver", "jdbc:oracle"),
2627
new Driver("Derby","org.apache.derby.jdbc.EmbeddedDriver","jdbc:derby"),
2728
new Driver("SQLite","org.sqlite.JDBC","jdbc:sqlite"),
2829
new Driver("Microsoft Access","sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)}"),
@@ -41,7 +42,6 @@ public class Driver {
4142
new Driver("Daffodil", "in.co.daffodil.db.jdbc.DaffodilDBDriver", "jdbc:daffodil"),
4243
new Driver("daffodilDB", "in.co.daffodil.db.rmi.RmiDaffodilDBDriver", "jdbc:daffodilDB"),
4344
new Driver("JTDS", "net.sourceforge.jtds.jdbc.Driver", "jdbc:jtds"), //Open source JDBC 3.0 type 4 driver for Microsoft SQL Server and Sybase ASE
44-
new Driver("Oracle", "oracle.jdbc.driver.OracleDriver", "jdbc:oracle"),
4545
new Driver("derby net", "org.apache.derby.jdbc.ClientDriver", "jdbc:derby:net"),
4646
//new Driver("derby //", "org.apache.derby.jdbc.ClientDriver", "jdbc:derby://"),
4747
new Driver("Firebird", "org.firebirdsql.jdbc.FBDriver", "jdbc:firebirdsql"),
@@ -206,7 +206,7 @@ public boolean equals(Object obj){
206206
if (driver.getClassName().equalsIgnoreCase(this.getClassName()) &&
207207
driver.getProtocol().toLowerCase().startsWith(this.getProtocol()) &&
208208
driver.getVendor().equalsIgnoreCase(this.getVendor())
209-
){
209+
){
210210
return true;
211211
}
212212
else{
@@ -215,11 +215,11 @@ public boolean equals(Object obj){
215215
}
216216
else if(obj instanceof java.lang.String){
217217
String driverName = obj.toString();
218-
218+
219219
//Fetch/update protocol to avoid NPE
220220
String protocol = this.getProtocol();
221221
if (protocol==null) protocol = "";
222-
222+
223223
if (driverName.equalsIgnoreCase(this.getClassName()) ||
224224
driverName.toLowerCase().startsWith(protocol.toLowerCase()) ||
225225
driverName.equalsIgnoreCase(this.getVendor())
@@ -256,7 +256,7 @@ public static Driver findDriver(String driverName){
256256
e.printStackTrace();
257257
}
258258
}
259-
259+
260260
return null;
261261
}
262262

src/javaxt/utils/Java.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,10 @@ private static int getJavaVersion(){
3434
}
3535
catch (Throwable t){
3636
try{
37-
version = getVersion(java.lang.Runtime.version().toString());
37+
version = getVersion(
38+
java.lang.Runtime.class.getMethod("version").invoke(null).toString());
39+
40+
//version = getVersion(java.lang.Runtime.version().toString());
3841
}
3942
catch (Throwable t2){
4043
version = -1;

0 commit comments

Comments
 (0)