Revision: 3362
Author: [email protected]
Date: Fri Mar 5 13:07:31 2010
Log: Updated the DDL Generators to fix a NPE when forward engineering
indices with expressions and not just columns.
http://code.google.com/p/power-architect/source/detail?r=3362
Modified:
/trunk/src/ca/sqlpower/architect/ddl/GenericDDLGenerator.java
/trunk/src/ca/sqlpower/architect/ddl/MySqlDDLGenerator.java
/trunk/src/ca/sqlpower/architect/ddl/PostgresDDLGenerator.java
/trunk/src/ca/sqlpower/architect/ddl/SQLServerDDLGenerator.java
=======================================
--- /trunk/src/ca/sqlpower/architect/ddl/GenericDDLGenerator.java Sun Feb
21 04:13:41 2010
+++ /trunk/src/ca/sqlpower/architect/ddl/GenericDDLGenerator.java Fri Mar
5 13:07:31 2010
@@ -1429,7 +1429,11 @@
boolean first = true;
for (SQLIndex.Column c : (List<SQLIndex.Column>)
index.getChildren()) {
if (!first) print(", ");
- print(c.getColumn().getPhysicalName());
+ if (c.getColumn() != null) {
+ print(c.getColumn().getPhysicalName());
+ } else {
+ print(c.getName());
+ }
print(c.getAscendingOrDescending() ==
AscendDescend.ASCENDING ? " ASC" : "");
print(c.getAscendingOrDescending() ==
AscendDescend.DESCENDING ? " DESC" : "");
first = false;
=======================================
--- /trunk/src/ca/sqlpower/architect/ddl/MySqlDDLGenerator.java Sun Feb 21
04:13:41 2010
+++ /trunk/src/ca/sqlpower/architect/ddl/MySqlDDLGenerator.java Fri Mar 5
13:07:31 2010
@@ -482,7 +482,11 @@
for (SQLIndex.Column c : (List<SQLIndex.Column>)
index.getChildren()) {
if (!first)
print(", ");
- print(c.getColumn().getPhysicalName());
+ if (c.getColumn() != null) {
+ print(c.getColumn().getPhysicalName());
+ } else {
+ print(c.getName());
+ }
print(c.getAscendingOrDescending() ==
AscendDescend.ASCENDING ? " ASC" : "");
print(c.getAscendingOrDescending() ==
AscendDescend.DESCENDING ? " DESC" : "");
first = false;
=======================================
--- /trunk/src/ca/sqlpower/architect/ddl/PostgresDDLGenerator.java Sun Feb
21 04:13:41 2010
+++ /trunk/src/ca/sqlpower/architect/ddl/PostgresDDLGenerator.java Fri Mar
5 13:07:31 2010
@@ -350,7 +350,11 @@
boolean first = true;
for (SQLIndex.Column c : (List<SQLIndex.Column>)
index.getChildren()) {
if (!first) print(", ");
- print(c.getColumn().getPhysicalName());
+ if (c.getColumn() != null) {
+ print(c.getColumn().getPhysicalName());
+ } else {
+ print(c.getName());
+ }
//TODO: ASC and DESC are not supported in the current version
of PostgreSQL (8.2.3)
//but is expected to be added in later versions (8.3 for
example)
//Thomas Kellerer: ASC/DESC is available since 8.3.0...
=======================================
--- /trunk/src/ca/sqlpower/architect/ddl/SQLServerDDLGenerator.java Sun Feb
21 04:13:41 2010
+++ /trunk/src/ca/sqlpower/architect/ddl/SQLServerDDLGenerator.java Fri
Mar 5 13:07:31 2010
@@ -474,7 +474,11 @@
boolean first = true;
for (SQLIndex.Column c : (List<SQLIndex.Column>)
index.getChildren()) {
if (!first) print(", ");
- print(c.getColumn().getPhysicalName());
+ if (c.getColumn() != null) {
+ print(c.getColumn().getPhysicalName());
+ } else {
+ print(c.getName());
+ }
first = false;
}
print(" )\n");