/*
* Copyright (C) 2006 Davy Vanherbergen
* dvanherbergen@users.sourceforge.net
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package net.sourceforge.sqlexplorer.dbdetail.tab;
import java.sql.DatabaseMetaData;
import net.sourceforge.sqlexplorer.Messages;
import net.sourceforge.sqlexplorer.dataset.DataSet;
import net.sourceforge.sqlexplorer.dbproduct.SQLConnection;
import net.sourceforge.sqlexplorer.dbstructure.nodes.INode;
import net.sourceforge.squirrel_sql.fw.sql.SQLDatabaseMetaData;
/**
* @author Davy Vanherbergen
*
*/
public class ConnectionInfoTab extends AbstractDataSetTab {
public String getLabelText() {
return Messages.getString("DatabaseDetailView.Tab.ConnectionInfo");
}
public String getStatusMessage() {
return Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.status") + " " + getNode().getSession().getUser().getDescription();//$NON-NLS-2$
}
public DataSet getDataSet() throws Exception {
INode node = getNode();
if (node == null) {
return null;
}
SQLDatabaseMetaData sqlMetaData = node.getSession().getMetaData();
DatabaseMetaData jdbcMetaData = sqlMetaData.getJDBCMetaData();
String[] header = new String[2];
header[0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.Property");
header[1] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.Value");
String[][] data = new String[124][2];
SQLConnection connection = node.getSession().grabConnection();
boolean commitOnClose = false;
try {
commitOnClose = connection.getCommitOnClose();
} finally{
node.getSession().releaseConnection(connection);
}
data[0][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.DatabaseProductName");
try {data[0][1] = sqlMetaData.getDatabaseProductName();} catch (Throwable e) {}
data[1][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.DriverMajor");
try {
data[1][1] = "" + jdbcMetaData.getDriverMajorVersion();} catch (Throwable e) {} //$NON-NLS-1$
data[2][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.DriverMinor");
try {
data[2][1] = "" + jdbcMetaData.getDriverMinorVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[3][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.DriverName");
try {
data[3][1] = "" + sqlMetaData.getDriverName();} catch (Throwable e) {}//$NON-NLS-1$
data[4][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.DriverVersion");
try {
data[4][1] = "" + jdbcMetaData.getDriverVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[5][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.UserName");
try {
data[5][1] = "" + sqlMetaData.getUserName();} catch (Throwable e) {}//$NON-NLS-1$
data[6][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.URL");
try {
data[6][1] = "" + jdbcMetaData.getURL();} catch (Throwable e) {}//$NON-NLS-1$
data[7][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.AutocommitMode");
try {
data[7][1] = "" + jdbcMetaData.getConnection().getAutoCommit();} catch (Throwable e) {}//$NON-NLS-1$
data[8][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.CommitOnClose");
data[8][1] = "" + commitOnClose;//$NON-NLS-1$
data[9][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.ProceduresCallable");
try {
data[9][1] = "" + jdbcMetaData.allProceduresAreCallable();} catch (Throwable e) {}//$NON-NLS-1$
data[10][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.TablesSelectable");
try {
data[10][1] = "" + jdbcMetaData.allTablesAreSelectable();} catch (Throwable e) {}//$NON-NLS-1$
data[11][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.NullsSortedHigh");
try {
data[11][1] = "" + jdbcMetaData.nullsAreSortedHigh();} catch (Throwable e) {}//$NON-NLS-1$
data[12][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.NullsSortedLow");
try {
data[12][1] = "" + jdbcMetaData.nullsAreSortedLow();} catch (Throwable e) {}//$NON-NLS-1$
data[13][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.NullsSortedStart");
try {
data[13][1] = "" + jdbcMetaData.nullsAreSortedAtStart();} catch (Throwable e) {}//$NON-NLS-1$
data[14][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.NullsSortedEnd");
try {
data[14][1] = "" + jdbcMetaData.nullsAreSortedAtEnd();} catch (Throwable e) {}//$NON-NLS-1$
data[15][0] = Messages.getString("ConnectionInfoTab.data[15]");
try {
data[15][1] = "" + jdbcMetaData.getResultSetHoldability();} catch (Throwable e) {}//$NON-NLS-1$
data[16][0] = Messages.getString("ConnectionInfoTab.data[16]");
try {
data[16][1] = "" + jdbcMetaData.usesLocalFiles();} catch (Throwable e) {}//$NON-NLS-1$
data[17][0] = Messages.getString("ConnectionInfoTab.data[17]");
try {
data[17][1] = "" + jdbcMetaData.usesLocalFilePerTable();} catch (Throwable e) {}//$NON-NLS-1$
data[18][0] = Messages.getString("ConnectionInfoTab.data[18]");
try {
data[18][1] = "" + jdbcMetaData.supportsMixedCaseIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[19][0] = Messages.getString("ConnectionInfoTab.data[19]");
try {
data[19][1] = "" + jdbcMetaData.storesUpperCaseIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[20][0] = Messages.getString("ConnectionInfoTab.data[20]");
try {data[20][1] = "" + jdbcMetaData.storesLowerCaseIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[21][0] = Messages.getString("ConnectionInfoTab.data[21]");
try {data[21][1] = "" + jdbcMetaData.storesMixedCaseIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[22][0] = Messages.getString("ConnectionInfoTab.data[22]");
try {data[22][1] = "" + jdbcMetaData.supportsMixedCaseQuotedIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[23][0] = Messages.getString("ConnectionInfoTab.data[23]");
try {data[23][1] = "" + jdbcMetaData.storesUpperCaseQuotedIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[24][0] = Messages.getString("ConnectionInfoTab.data[24]");
try {data[24][1] = "" + jdbcMetaData.storesLowerCaseQuotedIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[25][0] = Messages.getString("ConnectionInfoTab.data[25]");
try {data[25][1] = "" + jdbcMetaData.storesMixedCaseQuotedIdentifiers();} catch (Throwable e) {}//$NON-NLS-1$
data[26][0] = Messages.getString("ConnectionInfoTab.data[26]");
try { data[26][1] = "" + jdbcMetaData.getIdentifierQuoteString();} catch (Throwable e) {}//$NON-NLS-1$
data[27][0] = Messages.getString("ConnectionInfoTab.data[27]");
try {data[27][1] = "" + jdbcMetaData.getSearchStringEscape();} catch (Throwable e) {}//$NON-NLS-1$
data[28][0] = Messages.getString("ConnectionInfoTab.data[28]");
try {data[28][1] = "" + jdbcMetaData.getExtraNameCharacters();} catch (Throwable e) {}//$NON-NLS-1$
data[29][0] = Messages.getString("ConnectionInfoTab.data[29]");
try {
data[29][1] = "" + jdbcMetaData.supportsAlterTableWithAddColumn();//$NON-NLS-1$
} catch (Throwable e) {
}
data[30][0] = Messages.getString("ConnectionInfoTab.data[30]");
try {
data[30][1] = "" + jdbcMetaData.supportsAlterTableWithDropColumn();//$NON-NLS-1$
} catch (Throwable e) {
}
data[31][0] = Messages.getString("ConnectionInfoTab.data[31]");
try {
data[31][1] = "" + jdbcMetaData.supportsColumnAliasing();//$NON-NLS-1$
} catch (Throwable e) {
}
data[32][0] = Messages.getString("ConnectionInfoTab.data[32]");
try {
data[32][1] = "" + jdbcMetaData.nullPlusNonNullIsNull();//$NON-NLS-1$
} catch (Throwable e) {
}
data[33][0] = Messages.getString("ConnectionInfoTab.data[33]");
try {
data[33][1] = "" + jdbcMetaData.supportsConvert();//$NON-NLS-1$
} catch (Throwable e) {
}
data[34][0] = Messages.getString("ConnectionInfoTab.data[34]");
try {
data[34][1] = "" + jdbcMetaData.supportsTableCorrelationNames();//$NON-NLS-1$
} catch (Throwable e) {
}
data[35][0] = Messages.getString("ConnectionInfoTab.data[35]");
try {
data[35][1] = "" + jdbcMetaData.supportsDifferentTableCorrelationNames();//$NON-NLS-1$
} catch (Throwable e) {
}
data[36][0] = Messages.getString("ConnectionInfoTab.data[36]");
try {
data[36][1] = "" + jdbcMetaData.supportsExpressionsInOrderBy();} catch (Throwable e) {}//$NON-NLS-1$
data[37][0] = Messages.getString("ConnectionInfoTab.data[37]");
try {
data[37][1] = "" + jdbcMetaData.supportsOrderByUnrelated();} catch (Throwable e) {}//$NON-NLS-1$
data[38][0] = Messages.getString("ConnectionInfoTab.data[38]");
try {
data[38][1] = "" + jdbcMetaData.supportsGroupBy();} catch (Throwable e) {}//$NON-NLS-1$
data[39][0] = Messages.getString("ConnectionInfoTab.data[39]");
try {
data[39][1] = "" + jdbcMetaData.supportsGroupByUnrelated();} catch (Throwable e) {}//$NON-NLS-1$
data[40][0] = Messages.getString("ConnectionInfoTab.data[40]");
try {
data[40][1] = "" + jdbcMetaData.supportsGroupByBeyondSelect();} catch (Throwable e) {}//$NON-NLS-1$
data[41][0] = Messages.getString("ConnectionInfoTab.data[41]");
try {
data[41][1] = "" + jdbcMetaData.supportsLikeEscapeClause();} catch (Throwable e) {}//$NON-NLS-1$
data[42][0] = Messages.getString("ConnectionInfoTab.data[42]");
try {
data[42][1] = "" + jdbcMetaData.supportsMultipleResultSets();} catch (Throwable e) {}//$NON-NLS-1$
data[43][0] = Messages.getString("ConnectionInfoTab.data[43]");
try {
data[43][1] = "" + jdbcMetaData.supportsMultipleOpenResults();} catch (Throwable e) {}//$NON-NLS-1$
data[44][0] = Messages.getString("ConnectionInfoTab.data[44]");
try {
data[44][1] = "" + jdbcMetaData.supportsMultipleTransactions();} catch (Throwable e) {}//$NON-NLS-1$
data[45][0] = Messages.getString("ConnectionInfoTab.data[45]");
try {
data[45][1] = "" + jdbcMetaData.supportsNonNullableColumns();} catch (Throwable e) {}//$NON-NLS-1$
data[46][0] = Messages.getString("ConnectionInfoTab.data[46]");
try {
data[46][1] = "" + jdbcMetaData.supportsMinimumSQLGrammar();} catch (Throwable e) {}//$NON-NLS-1$
data[47][0] = Messages.getString("ConnectionInfoTab.data[47]");
try {
data[47][1] = "" + jdbcMetaData.supportsCoreSQLGrammar();} catch (Throwable e) {}//$NON-NLS-1$
data[48][0] = Messages.getString("ConnectionInfoTab.data[48]");
try {
data[48][1] = "" + jdbcMetaData.supportsExtendedSQLGrammar();} catch (Throwable e) {}//$NON-NLS-1$
data[49][0] = Messages.getString("ConnectionInfoTab.data[49]");
try {
data[49][1] = "" + jdbcMetaData.supportsANSI92EntryLevelSQL();} catch (Throwable e) {}//$NON-NLS-1$
data[50][0] = Messages.getString("ConnectionInfoTab.data[50]");
try {
data[50][1] = "" + jdbcMetaData.supportsANSI92IntermediateSQL();} catch (Throwable e) {}//$NON-NLS-1$
data[51][0] = Messages.getString("ConnectionInfoTab.data[51]");
try {
data[51][1] = "" + jdbcMetaData.supportsANSI92FullSQL();} catch (Throwable e) {}//$NON-NLS-1$
data[52][0] = Messages.getString("ConnectionInfoTab.data[52]");
try {
data[52][1] = "" + jdbcMetaData.supportsIntegrityEnhancementFacility();} catch (Throwable e) {}//$NON-NLS-1$
data[53][0] = Messages.getString("ConnectionInfoTab.data[53]");
try {
data[53][1] = "" + jdbcMetaData.supportsOuterJoins();} catch (Throwable e) {}//$NON-NLS-1$
data[54][0] = Messages.getString("ConnectionInfoTab.data[54]");
try {
data[54][1] = "" + jdbcMetaData.supportsFullOuterJoins();} catch (Throwable e) {}//$NON-NLS-1$
data[55][0] = Messages.getString("ConnectionInfoTab.data[55]");
try {
data[55][1] = "" + jdbcMetaData.supportsLimitedOuterJoins();} catch (Throwable e) {}//$NON-NLS-1$
data[56][0] = Messages.getString("ConnectionInfoTab.data[56]");
try {
data[56][1] = "" + jdbcMetaData.getSchemaTerm();} catch (Throwable e) {}//$NON-NLS-1$
data[57][0] = Messages.getString("ConnectionInfoTab.data[57]");
try {
data[57][1] = "" + jdbcMetaData.getProcedureTerm();} catch (Throwable e) {}//$NON-NLS-1$
data[58][0] = Messages.getString("ConnectionInfoTab.data[58]");
try {
data[58][1] = "" + jdbcMetaData.getCatalogTerm();} catch (Throwable e) {}//$NON-NLS-1$
data[59][0] = Messages.getString("ConnectionInfoTab.data[59]");
try {
data[59][1] = "" + jdbcMetaData.isCatalogAtStart();} catch (Throwable e) {}//$NON-NLS-1$
data[60][0] = Messages.getString("ConnectionInfoTab.data[60]");
try {
data[60][1] = "" + jdbcMetaData.getCatalogSeparator();} catch (Throwable e) {}//$NON-NLS-1$
data[61][0] = Messages.getString("ConnectionInfoTab.data[61]");
try {
data[61][1] = "" + jdbcMetaData.supportsSchemasInDataManipulation();} catch (Throwable e) {}//$NON-NLS-1$
data[62][0] = Messages.getString("ConnectionInfoTab.data[62]");
try {
data[62][1] = "" + jdbcMetaData.supportsSchemasInProcedureCalls();} catch (Throwable e) {}//$NON-NLS-1$
data[63][0] = Messages.getString("ConnectionInfoTab.data[63]");
try {
data[63][1] = "" + jdbcMetaData.supportsSchemasInTableDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[64][0] = Messages.getString("ConnectionInfoTab.data[64]");
try {
data[64][1] = "" + jdbcMetaData.supportsSchemasInIndexDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[65][0] = Messages.getString("ConnectionInfoTab.data[65]");
try {
data[65][1] = "" + jdbcMetaData.supportsSchemasInPrivilegeDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[66][0] = Messages.getString("ConnectionInfoTab.data[66]");
try {
data[66][1] = "" + jdbcMetaData.supportsCatalogsInDataManipulation();} catch (Throwable e) {}//$NON-NLS-1$
data[67][0] = Messages.getString("ConnectionInfoTab.data[67]");
try {
data[67][1] = "" + jdbcMetaData.supportsCatalogsInProcedureCalls();} catch (Throwable e) {}//$NON-NLS-1$
data[68][0] = Messages.getString("ConnectionInfoTab.data[68]");
try {
data[68][1] = "" + jdbcMetaData.supportsCatalogsInTableDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[69][0] = Messages.getString("ConnectionInfoTab.data[69]");
try {
data[69][1] = "" + jdbcMetaData.supportsCatalogsInIndexDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[70][0] = Messages.getString("ConnectionInfoTab.data[70]");
try {
data[70][1] = "" + jdbcMetaData.supportsCatalogsInPrivilegeDefinitions();} catch (Throwable e) {}//$NON-NLS-1$
data[71][0] = Messages.getString("ConnectionInfoTab.data[71]");
try {
data[71][1] = "" + jdbcMetaData.supportsPositionedDelete();} catch (Throwable e) {}//$NON-NLS-1$
data[72][0] = Messages.getString("ConnectionInfoTab.data[72]");
try {
data[72][1] = "" + jdbcMetaData.supportsPositionedUpdate();} catch (Throwable e) {}//$NON-NLS-1$
data[73][0] = Messages.getString("ConnectionInfoTab.data[73]");
try {
data[73][1] = "" + jdbcMetaData.supportsStoredProcedures();} catch (Throwable e) {}//$NON-NLS-1$
data[74][0] = Messages.getString("ConnectionInfoTab.data[74]");
try {
data[74][1] = "" + jdbcMetaData.supportsSubqueriesInComparisons();} catch (Throwable e) {}//$NON-NLS-1$
data[75][0] = Messages.getString("ConnectionInfoTab.data[75]");
try {
data[75][1] = "" + jdbcMetaData.supportsSubqueriesInExists();} catch (Throwable e) {}//$NON-NLS-1$
data[76][0] = Messages.getString("ConnectionInfoTab.data[76]");
try {
data[76][1] = "" + jdbcMetaData.supportsSubqueriesInIns();} catch (Throwable e) {}//$NON-NLS-1$
data[77][0] = Messages.getString("ConnectionInfoTab.data[77]");
try {
data[77][1] = "" + jdbcMetaData.supportsSubqueriesInQuantifieds();} catch (Throwable e) {}//$NON-NLS-1$
data[78][0] = Messages.getString("ConnectionInfoTab.data[78]");
try {
data[78][1] = "" + jdbcMetaData.supportsCorrelatedSubqueries();} catch (Throwable e) {}//$NON-NLS-1$
data[79][0] = Messages.getString("ConnectionInfoTab.data[79]");
try {
data[79][1] = "" + jdbcMetaData.supportsUnion();} catch (Throwable e) {}//$NON-NLS-1$
data[80][0] = Messages.getString("ConnectionInfoTab.data[80]");
try {
data[80][1] = "" + jdbcMetaData.supportsUnionAll();} catch (Throwable e) {}//$NON-NLS-1$
data[81][0] = Messages.getString("ConnectionInfoTab.data[81]");
try {
data[81][1] = "" + jdbcMetaData.supportsOpenCursorsAcrossCommit();} catch (Throwable e) {}//$NON-NLS-1$
data[82][0] = Messages.getString("ConnectionInfoTab.data[82]");
try {
data[82][1] = "" + jdbcMetaData.supportsOpenCursorsAcrossRollback();} catch (Throwable e) {}//$NON-NLS-1$
data[83][0] = Messages.getString("ConnectionInfoTab.data[83]");
try {
data[83][1] = "" + jdbcMetaData.supportsOpenStatementsAcrossCommit();} catch (Throwable e) {}//$NON-NLS-1$
data[84][0] = Messages.getString("ConnectionInfoTab.data[84]");
try {
data[84][1] = "" + jdbcMetaData.supportsOpenStatementsAcrossRollback();} catch (Throwable e) {}//$NON-NLS-1$
data[85][0] = Messages.getString("ConnectionInfoTab.data[85]");
try {
data[85][1] = "" + jdbcMetaData.getMaxBinaryLiteralLength();} catch (Throwable e) {}//$NON-NLS-1$
data[86][0] = Messages.getString("ConnectionInfoTab.data[86]");
try {
data[86][1] = "" + jdbcMetaData.getMaxCharLiteralLength();} catch (Throwable e) {}//$NON-NLS-1$
data[87][0] = Messages.getString("ConnectionInfoTab.data[87]");
try {
data[87][1] = "" + jdbcMetaData.getMaxColumnNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[88][0] = Messages.getString("ConnectionInfoTab.data[88]");
try {
data[88][1] = "" + jdbcMetaData.getMaxColumnsInGroupBy();} catch (Throwable e) {}//$NON-NLS-1$
data[89][0] = Messages.getString("ConnectionInfoTab.data[89]");
try {
data[89][1] = "" + jdbcMetaData.getMaxColumnsInIndex();} catch (Throwable e) {}//$NON-NLS-1$
data[90][0] = Messages.getString("ConnectionInfoTab.data[90]");
try {
data[90][1] = "" + jdbcMetaData.getMaxColumnsInOrderBy();} catch (Throwable e) {}//$NON-NLS-1$
data[91][0] = Messages.getString("ConnectionInfoTab.data[91]");
try {
data[91][1] = "" + jdbcMetaData.getMaxColumnsInSelect();} catch (Throwable e) {}//$NON-NLS-1$
data[92][0] = Messages.getString("ConnectionInfoTab.data[92]");
try {
data[92][1] = "" + jdbcMetaData.getMaxColumnsInTable();} catch (Throwable e) {}//$NON-NLS-1$
data[93][0] = Messages.getString("ConnectionInfoTab.data[93]");
try {
data[93][1] = "" + jdbcMetaData.getMaxConnections();} catch (Throwable e) {}//$NON-NLS-1$
data[94][0] = Messages.getString("ConnectionInfoTab.data[94]");
try {
data[94][1] = "" + jdbcMetaData.getMaxCursorNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[95][0] = Messages.getString("ConnectionInfoTab.data[95]");
try {
data[95][1] = "" + jdbcMetaData.getMaxIndexLength();} catch (Throwable e) {}//$NON-NLS-1$
data[96][0] = Messages.getString("ConnectionInfoTab.data[96]");
try {
data[96][1] = "" + jdbcMetaData.getMaxSchemaNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[97][0] = Messages.getString("ConnectionInfoTab.data[97]");
try {
data[97][1] = "" + jdbcMetaData.getMaxProcedureNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[98][0] = Messages.getString("ConnectionInfoTab.data[98]");
try {
data[98][1] = "" + jdbcMetaData.getMaxCatalogNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[99][0] = Messages.getString("ConnectionInfoTab.data[99]");
try {
data[99][1] = "" + jdbcMetaData.getMaxRowSize();} catch (Throwable e) {}//$NON-NLS-1$
data[100][0] = Messages.getString("ConnectionInfoTab.data[100]");
try {
data[100][1] = "" + jdbcMetaData.doesMaxRowSizeIncludeBlobs();} catch (Throwable e) {}//$NON-NLS-1$
data[101][0] = Messages.getString("ConnectionInfoTab.data[101]");
try {
data[101][1] = "" + jdbcMetaData.getMaxStatementLength();} catch (Throwable e) {}//$NON-NLS-1$
data[102][0] = Messages.getString("ConnectionInfoTab.data[102]");
try {
data[102][1] = "" + jdbcMetaData.getMaxStatements();} catch (Throwable e) {}//$NON-NLS-1$
data[103][0] = Messages.getString("ConnectionInfoTab.data[103]");
try {
data[103][1] = "" + jdbcMetaData.getMaxTableNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[104][0] = Messages.getString("ConnectionInfoTab.data[104]");
try {
data[104][1] = "" + jdbcMetaData.getMaxTablesInSelect();} catch (Throwable e) {}//$NON-NLS-1$
data[105][0] = Messages.getString("ConnectionInfoTab.data[105]");
try {
data[105][1] = "" + jdbcMetaData.getMaxUserNameLength();} catch (Throwable e) {}//$NON-NLS-1$
data[106][0] = Messages.getString("ConnectionInfoTab.data[106]");
try {
int isol = jdbcMetaData.getDefaultTransactionIsolation();
String is = null;
switch (isol) {
case java.sql.Connection.TRANSACTION_NONE:
is = "TRANSACTION_NONE";//$NON-NLS-1$
break;
case java.sql.Connection.TRANSACTION_READ_COMMITTED:
is = "TRANSACTION_READ_COMMITTED";//$NON-NLS-1$
break;
case java.sql.Connection.TRANSACTION_READ_UNCOMMITTED:
is = "TRANSACTION_READ_UNCOMMITTED";//$NON-NLS-1$
break;
case java.sql.Connection.TRANSACTION_REPEATABLE_READ:
is = "TRANSACTION_REPEATABLE_READ";//$NON-NLS-1$
break;
case java.sql.Connection.TRANSACTION_SERIALIZABLE:
is = "TRANSACTION_SERIALIZABLE";//$NON-NLS-1$
break;
default:
is = "";//$NON-NLS-1$
break;
}
data[106][1] = is;
} catch (Throwable e) {}
data[107][0] = Messages.getString("ConnectionInfoTab.data[107]");
try {
data[107][1] = "" + jdbcMetaData.supportsTransactions();} catch (Throwable e) {}//$NON-NLS-1$
data[108][0] = Messages.getString("ConnectionInfoTab.data[108]");
try {
data[108][1] = "" + jdbcMetaData.supportsDataDefinitionAndDataManipulationTransactions();} catch (Throwable e) {}//$NON-NLS-1$
data[109][0] = Messages.getString("ConnectionInfoTab.data[109]");
try {
data[109][1] = "" + jdbcMetaData.supportsDataManipulationTransactionsOnly();} catch (Throwable e) {}//$NON-NLS-1$
data[110][0] = Messages.getString("ConnectionInfoTab.data[110]");
try {
data[110][1] = "" + jdbcMetaData.dataDefinitionCausesTransactionCommit();} catch (Throwable e) {}//$NON-NLS-1$
data[111][0] = Messages.getString("ConnectionInfoTab.data[111]");
try {
data[111][1] = "" + jdbcMetaData.dataDefinitionIgnoredInTransactions();} catch (Throwable e) {}//$NON-NLS-1$
data[112][0] = Messages.getString("ConnectionInfoTab.data[112]");
try {
data[112][1] = "" + jdbcMetaData.supportsBatchUpdates();} catch (Throwable e) {}//$NON-NLS-1$
data[113][0] = Messages.getString("ConnectionInfoTab.data[113]");
try {
data[113][1] = "" + jdbcMetaData.supportsSavepoints();} catch (Throwable e) {}//$NON-NLS-1$
data[114][0] = Messages.getString("ConnectionInfoTab.data[114]");
try {
data[114][1] = "" + jdbcMetaData.supportsNamedParameters();} catch (Throwable e) {}//$NON-NLS-1$
data[115][0] = Messages.getString("ConnectionInfoTab.data[115]");
try {
data[115][1] = "" + jdbcMetaData.supportsGetGeneratedKeys();} catch (Throwable e) {}//$NON-NLS-1$
data[116][0] = Messages.getString("ConnectionInfoTab.data[116]");
try {
data[116][1] = "" + jdbcMetaData.getDatabaseMajorVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[117][0] = Messages.getString("ConnectionInfoTab.data[117]");
try {
data[117][1] = "" + jdbcMetaData.getDatabaseMinorVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[118][0] = Messages.getString("ConnectionInfoTab.data[118]");
try {
data[118][1] = "" + jdbcMetaData.getJDBCMinorVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[119][0] = Messages.getString("ConnectionInfoTab.data[119]");
try {
data[119][1] = "" + jdbcMetaData.getJDBCMajorVersion();} catch (Throwable e) {}//$NON-NLS-1$
data[120][0] = Messages.getString("ConnectionInfoTab.data[120]");
try {
data[120][1] = "" + jdbcMetaData.getSQLStateType();} catch (Throwable e) {}//$NON-NLS-1$
data[121][0] = Messages.getString("ConnectionInfoTab.data[121]");
try {
data[121][1] = "" + jdbcMetaData.locatorsUpdateCopy();} catch (Throwable e) {}//$NON-NLS-1$
data[122][0] = Messages.getString("ConnectionInfoTab.data[122]");
try {
data[122][1] = "" + jdbcMetaData.supportsStatementPooling();} catch (Throwable e) {}//$NON-NLS-1$
data[123][0] = Messages.getString("DatabaseDetailView.Tab.ConnectionInfo.ReadOnly");
try {
data[123][1] = "" + jdbcMetaData.isReadOnly();} catch (Throwable e) {}//$NON-NLS-1$
DataSet dataSet = new DataSet(header, data);
return dataSet;
}
}