home *** CD-ROM | disk | FTP | other *** search
- import com.sun.java.swing.event.TableModelEvent;
- import com.sun.java.swing.table.AbstractTableModel;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.ResultSetMetaData;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.Vector;
-
- public class JDBCAdapter extends AbstractTableModel {
- Connection connection;
- Statement statement;
- ResultSet resultSet;
- String[] columnNames = new String[0];
- Class[] columnTpyes = new Class[0];
- Vector rows = new Vector();
- ResultSetMetaData metaData;
- // $FF: synthetic field
- static Class class$java$lang$String;
- // $FF: synthetic field
- static Class class$java$lang$Boolean;
- // $FF: synthetic field
- static Class class$java$lang$Integer;
- // $FF: synthetic field
- static Class class$java$lang$Long;
- // $FF: synthetic field
- static Class class$java$lang$Double;
- // $FF: synthetic field
- static Class class$java$sql$Date;
-
- public JDBCAdapter(String var1, String var2, String var3, String var4) {
- try {
- Class.forName(var2);
- System.out.println("Opening db connection");
- this.connection = DriverManager.getConnection(var1, var3, var4);
- this.statement = this.connection.createStatement();
- } catch (ClassNotFoundException var6) {
- System.err.println("Cannot find the database driver classes.");
- System.err.println(var6);
- } catch (SQLException var7) {
- System.err.println("Cannot connect to this database.");
- System.err.println(var7);
- }
- }
-
- public void executeQuery(String var1) {
- if (this.connection != null && this.statement != null) {
- try {
- this.resultSet = this.statement.executeQuery(var1);
- this.metaData = this.resultSet.getMetaData();
- int var2 = this.metaData.getColumnCount();
- this.columnNames = new String[var2];
-
- for(int var3 = 0; var3 < var2; ++var3) {
- this.columnNames[var3] = this.metaData.getColumnLabel(var3 + 1);
- }
-
- this.rows = new Vector();
-
- while(this.resultSet.next()) {
- Vector var4 = new Vector();
-
- for(int var5 = 1; var5 <= this.getColumnCount(); ++var5) {
- var4.addElement(this.resultSet.getObject(var5));
- }
-
- this.rows.addElement(var4);
- }
-
- ((AbstractTableModel)this).fireTableChanged((TableModelEvent)null);
- } catch (SQLException var6) {
- System.err.println(var6);
- }
- } else {
- System.err.println("There is no database to execute the query.");
- }
- }
-
- public void close() throws SQLException {
- System.out.println("Closing db connection");
- this.resultSet.close();
- this.statement.close();
- this.connection.close();
- }
-
- protected void finalize() throws Throwable {
- this.close();
- super.finalize();
- }
-
- public String getColumnName(int var1) {
- return this.columnNames[var1] != null ? this.columnNames[var1] : "";
- }
-
- public Class getColumnClass(int var1) {
- int var2;
- try {
- var2 = this.metaData.getColumnType(var1 + 1);
- } catch (SQLException var3) {
- return super.getColumnClass(var1);
- }
-
- switch (var2) {
- case -7:
- if (class$java$lang$Boolean != null) {
- return class$java$lang$Boolean;
- }
-
- return class$java$lang$Boolean = class$("java.lang.Boolean");
- case -6:
- case 4:
- case 5:
- if (class$java$lang$Integer != null) {
- return class$java$lang$Integer;
- }
-
- return class$java$lang$Integer = class$("java.lang.Integer");
- case -5:
- if (class$java$lang$Long != null) {
- return class$java$lang$Long;
- }
-
- return class$java$lang$Long = class$("java.lang.Long");
- case -1:
- case 1:
- case 12:
- if (class$java$lang$String != null) {
- return class$java$lang$String;
- }
-
- return class$java$lang$String = class$("java.lang.String");
- case 6:
- case 8:
- if (class$java$lang$Double != null) {
- return class$java$lang$Double;
- }
-
- return class$java$lang$Double = class$("java.lang.Double");
- case 91:
- if (class$java$sql$Date != null) {
- return class$java$sql$Date;
- }
-
- return class$java$sql$Date = class$("java.sql.Date");
- default:
- return AbstractTableModel.class$java$lang$Object != null ? AbstractTableModel.class$java$lang$Object : (AbstractTableModel.class$java$lang$Object = class$("java.lang.Object"));
- }
- }
-
- public boolean isCellEditable(int var1, int var2) {
- try {
- return this.metaData.isWritable(var2 + 1);
- } catch (SQLException var3) {
- return false;
- }
- }
-
- public int getColumnCount() {
- return this.columnNames.length;
- }
-
- public int getRowCount() {
- return this.rows.size();
- }
-
- public Object getValueAt(int var1, int var2) {
- Vector var3 = (Vector)this.rows.elementAt(var1);
- return var3.elementAt(var2);
- }
-
- public String dbRepresentation(int var1, Object var2) {
- if (var2 == null) {
- return "null";
- } else {
- int var3;
- try {
- var3 = this.metaData.getColumnType(var1 + 1);
- } catch (SQLException var4) {
- return var2.toString();
- }
-
- switch (var3) {
- case -7:
- if ((Boolean)var2) {
- return "1";
- }
-
- return "0";
- case 4:
- case 6:
- case 8:
- return var2.toString();
- case 91:
- return var2.toString();
- default:
- return "\"" + var2.toString() + "\"";
- }
- }
- }
-
- public void setValueAt(Object var1, int var2, int var3) {
- try {
- String var4 = this.metaData.getTableName(var3 + 1);
- if (var4 == null) {
- System.out.println("Table name returned null.");
- }
-
- String var5 = this.getColumnName(var3);
- String var6 = "update " + var4 + " set " + var5 + " = " + this.dbRepresentation(var3, var1) + " where ";
-
- for(int var7 = 0; var7 < this.getColumnCount(); ++var7) {
- String var8 = this.getColumnName(var7);
- if (!var8.equals("")) {
- if (var7 != 0) {
- var6 = var6 + " and ";
- }
-
- var6 = var6 + var8 + " = " + this.dbRepresentation(var7, this.getValueAt(var2, var7));
- }
- }
-
- System.out.println(var6);
- System.out.println("Not sending update to database");
- } catch (SQLException var9) {
- System.err.println("Update failed");
- }
-
- Vector var10 = (Vector)this.rows.elementAt(var2);
- var10.setElementAt(var1, var3);
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
- }
-