[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [dtp-dev] Firebird enablement in DTP
|
Hello,
Recently I have upgraded my development to DTP 1.5, so far things work ok.
I have opened following bug reports:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=175454
https://bugs.eclipse.org/bugs/show_bug.cgi?id=175455
https://bugs.eclipse.org/bugs/show_bug.cgi?id=175456
https://bugs.eclipse.org/bugs/show_bug.cgi?id=175457
https://bugs.eclipse.org/bugs/show_bug.cgi?id=175458
Also I have updated the suggested patches - everything is fine, diffs
are in the attachment - please forward them to the appropriate
developers (I will update also bugs, however that will happen later this
week).
The bug 175454 remains unpatched - suggested patch creates circular
dependencies between plugins. However the good news are that the buggy
method is not used anywhere in DTP - good candidate for deprecation.
Best regards,
Roman Rokytskyy
### Eclipse Workspace Patch 1.0
#P org.eclipse.datatools.sqltools.data.core
Index: src/org/eclipse/datatools/sqltools/data/internal/core/load/LoadData.java
===================================================================
RCS file: /cvsroot/datatools/org.eclipse.datatools.sqltools/plugins/org.eclipse.datatools.sqltools.data.core/src/org/eclipse/datatools/sqltools/data/internal/core/load/LoadData.java,v
retrieving revision 1.1
diff -u -r1.1 LoadData.java
--- src/org/eclipse/datatools/sqltools/data/internal/core/load/LoadData.java 13 Dec 2006 02:08:27 -0000 1.1
+++ src/org/eclipse/datatools/sqltools/data/internal/core/load/LoadData.java 23 Apr 2007 21:13:20 -0000
@@ -17,6 +17,9 @@
import java.util.Vector;
import org.eclipse.core.runtime.IStatus;
+import org.eclipse.datatools.connectivity.sqm.core.definition.DatabaseDefinition;
+import org.eclipse.datatools.connectivity.sqm.internal.core.RDBCorePlugin;
+import org.eclipse.datatools.modelbase.sql.schema.Database;
import org.eclipse.datatools.modelbase.sql.tables.Table;
import org.eclipse.datatools.sqltools.data.internal.core.DataCorePlugin;
import org.eclipse.datatools.sqltools.data.internal.core.common.Output;
@@ -182,7 +185,20 @@
}
protected String getFullyQualifiedName() {
- return "\"" + table.getSchema().getName() + "\".\"" + table.getName() + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ Database db = table.getSchema().getCatalog() != null ?
+ table.getSchema().getCatalog().getDatabase() :
+ table.getSchema().getDatabase();
+
+ RDBCorePlugin plugin = RDBCorePlugin.getDefault();
+
+ DatabaseDefinition dbDefinition =
+ plugin.getDatabaseDefinitionRegistry().getDefinition(db);
+
+ if (dbDefinition.supportsSchema()) {
+ return "\"" + table.getSchema().getName() + "\".\"" + table.getName() + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ } else {
+ return "\"" + table.getName() + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
}
}
Index: src/org/eclipse/datatools/sqltools/data/internal/core/editor/TableDataImpl.java
===================================================================
RCS file: /cvsroot/datatools/org.eclipse.datatools.sqltools/plugins/org.eclipse.datatools.sqltools.data.core/src/org/eclipse/datatools/sqltools/data/internal/core/editor/TableDataImpl.java,v
retrieving revision 1.2
diff -u -r1.2 TableDataImpl.java
--- src/org/eclipse/datatools/sqltools/data/internal/core/editor/TableDataImpl.java 18 Dec 2006 19:07:27 -0000 1.2
+++ src/org/eclipse/datatools/sqltools/data/internal/core/editor/TableDataImpl.java 23 Apr 2007 21:13:20 -0000
@@ -369,10 +369,20 @@
{
//return DataCorePlugin.getQualifiedTableName(sqlTable);
StringBuffer sb = new StringBuffer(50);
- sb.append(DataCorePlugin.quoteIdentifier(con, sqlTable.getSchema().getName()))
- .append(".")
- .append(DataCorePlugin.quoteIdentifier(con, sqlTable.getName()));
- return sb.toString();
+ org.eclipse.datatools.modelbase.sql.schema.Database db =
+ sqlTable.getSchema().getCatalog() != null ?
+ sqlTable.getSchema().getCatalog().getDatabase():
+ sqlTable.getSchema().getDatabase();
+
+ RDBCorePlugin plugin = RDBCorePlugin.getDefault();
+
+ DatabaseDefinition dbDefinition = plugin.getDatabaseDefinitionRegistry().getDefinition(db);
+
+ if (dbDefinition.supportsSchema())
+ sb.append(DataCorePlugin.quoteIdentifier(con,sqlTable.getSchema().getName())).append(".");
+
+ sb.append(DataCorePlugin.quoteIdentifier(con, sqlTable.getName()));
+ return sb.toString();
}
/**
Index: src/org/eclipse/datatools/sqltools/data/internal/core/DataCorePlugin.java
===================================================================
RCS file: /cvsroot/datatools/org.eclipse.datatools.sqltools/plugins/org.eclipse.datatools.sqltools.data.core/src/org/eclipse/datatools/sqltools/data/internal/core/DataCorePlugin.java,v
retrieving revision 1.3
diff -u -r1.3 DataCorePlugin.java
--- src/org/eclipse/datatools/sqltools/data/internal/core/DataCorePlugin.java 3 Apr 2007 02:06:58 -0000 1.3
+++ src/org/eclipse/datatools/sqltools/data/internal/core/DataCorePlugin.java 23 Apr 2007 21:13:19 -0000
@@ -135,8 +135,17 @@
Database db = table.getSchema().getCatalog() != null ?
table.getSchema().getCatalog().getDatabase():
table.getSchema().getDatabase();
- return quoteIdentifier(db, table.getSchema().getName())
- + "." + quoteIdentifier(db, table.getName()); //$NON-NLS-1$
+
+ RDBCorePlugin plugin = RDBCorePlugin.getDefault();
+ DatabaseDefinition dbDefinition =
+ plugin.getDatabaseDefinitionRegistry().getDefinition(db);
+
+ if (dbDefinition.supportsSchema()) {
+ return quoteIdentifier(db, table.getSchema().getName())
+ + "." + quoteIdentifier(db, table.getName()); //$NON-NLS-1$
+ } else {
+ return quoteIdentifier(db, table.getName()); //$NON-NLS-1$
+ }
}
public static String getQualifiedUDTName(UserDefinedType udt)
@@ -144,8 +153,17 @@
Database db = udt.getSchema().getCatalog() != null ?
udt.getSchema().getCatalog().getDatabase():
udt.getSchema().getDatabase();
- return quoteIdentifier(db, udt.getSchema().getName())
- + "." + quoteIdentifier(db, udt.getName()); //$NON-NLS-1$
+
+ RDBCorePlugin plugin = RDBCorePlugin.getDefault();
+ DatabaseDefinition dbDefinition =
+ plugin.getDatabaseDefinitionRegistry().getDefinition(db);
+
+ if (dbDefinition.supportsSchema()) {
+ return quoteIdentifier(db, udt.getSchema().getName())
+ + "." + quoteIdentifier(db, udt.getName()); //$NON-NLS-1$
+ } else {
+ return quoteIdentifier(db, udt.getName()); //$NON-NLS-1$
+ }
}
public static String quoteIdentifier(Database db, String s)
### Eclipse Workspace Patch 1.0
#P org.eclipse.datatools.sqltools.tabledataeditor
Index: src/org/eclipse/datatools/sqltools/tabledataeditor/actions/SampleContentAction.java
===================================================================
RCS file: /cvsroot/datatools/org.eclipse.datatools.sqltools/plugins/org.eclipse.datatools.sqltools.tabledataeditor/src/org/eclipse/datatools/sqltools/tabledataeditor/actions/SampleContentAction.java,v
retrieving revision 1.2
diff -u -r1.2 SampleContentAction.java
--- src/org/eclipse/datatools/sqltools/tabledataeditor/actions/SampleContentAction.java 14 Dec 2006 00:57:10 -0000 1.2
+++ src/org/eclipse/datatools/sqltools/tabledataeditor/actions/SampleContentAction.java 23 Apr 2007 21:16:50 -0000
@@ -61,7 +61,24 @@
private String getFullyQualifiedName(Table table)
{
- return this.wrapName(table.getSchema().getName()) + "." + this.wrapName(table.getName()); //$NON-NLS-1$
+ // return this.wrapName(table.getSchema().getName()) + "." + this.wrapName(table.getName()); //$NON-NLS-1$
+
+ Database db = table.getSchema().getCatalog() != null ?
+ table.getSchema().getCatalog().getDatabase() :
+ table.getSchema().getDatabase();
+
+ RDBCorePlugin plugin = RDBCorePlugin.getDefault();
+
+ DatabaseDefinition dbDefinition =
+ plugin.getDatabaseDefinitionRegistry().getDefinition(db);
+
+ if (dbDefinition.supportsSchema()) {
+ return this.wrapName(table.getSchema().getName())
+ + "." + this.wrapName(table.getName()); //$NON-NLS-1$
+ } else {
+ return this.wrapName(table.getName()); //$NON-NLS-1$
+ }
+
}
private Database getDatabase (Schema schema)