From: <ms...@us...> - 2009-02-07 19:32:08
|
Revision: 8908 http://wonder.svn.sourceforge.net/wonder/?rev=8908&view=rev Author: mschrag Date: 2009-02-07 19:31:53 +0000 (Sat, 07 Feb 2009) Log Message: ----------- remove the schema name from pk and index names Modified Paths: -------------- trunk/Wonder/Frameworks/PlugIns/PostgresqlPlugIn/Sources/com/webobjects/jdbcadaptor/PostgresqlSynchronizationFactory.java Modified: trunk/Wonder/Frameworks/PlugIns/PostgresqlPlugIn/Sources/com/webobjects/jdbcadaptor/PostgresqlSynchronizationFactory.java =================================================================== --- trunk/Wonder/Frameworks/PlugIns/PostgresqlPlugIn/Sources/com/webobjects/jdbcadaptor/PostgresqlSynchronizationFactory.java 2009-02-07 03:25:13 UTC (rev 8907) +++ trunk/Wonder/Frameworks/PlugIns/PostgresqlPlugIn/Sources/com/webobjects/jdbcadaptor/PostgresqlSynchronizationFactory.java 2009-02-07 19:31:53 UTC (rev 8908) @@ -181,12 +181,23 @@ for (int j = 0; j < columnNames.count(); j++) { sbColumnNames.append((j == 0 ? "" : ", ") + expression.sqlStringForSchemaObjectName((String) columnNames.objectAtIndex(j))); } - String indexName = relationship.entity().externalName() + "_" + columnNames.componentsJoinedByString("_") + "_idx"; + String indexName = externalNameForEntityWithoutSchema(relationship.entity()) + "_" + columnNames.componentsJoinedByString("_") + "_idx"; results.addObject(createExpression(expression.entity(), "CREATE INDEX " + indexName + " ON " + tableName + "( " + sbColumnNames.toString() + " )")); } return results; } + protected String externalNameForEntityWithoutSchema(EOEntity entity) { + String externalName = entity.externalName(); + if (externalName != null) { + int dotIndex = externalName.indexOf('.'); + if (dotIndex != -1) { + externalName = externalName.substring(dotIndex + 1); + } + } + return externalName; + } + /** * Generates the PostgreSQL-specific SQL statements to enforce primary key * constraints. @@ -214,7 +225,7 @@ // timc 2006-11-06 create result here so we can check for // enableIdentifierQuoting while building the statement PostgresqlExpression result = new PostgresqlExpression(entity); - String constraintName = result.sqlStringForSchemaObjectName(entity.externalName() + "_pk"); + String constraintName = result.sqlStringForSchemaObjectName(externalNameForEntityWithoutSchema(entity) + "_pk"); String tableName = result.sqlStringForSchemaObjectName(entity.externalName()); StringBuffer statement = new StringBuffer("ALTER TABLE "); @@ -440,7 +451,19 @@ String clause = _columnCreationClauseForAttribute(attribute); return new NSArray(_expressionForString("alter table " + attribute.entity().externalName() + " add " + clause)); } - + +/* + public StringBuffer addCreateClauseForAttribute(EOAttribute eoattribute) { + EOSQLExpression expression = _expressionForEntity(eoattribute.entity()); + expression.addCreateClauseForAttribute(eoattribute); + return new StringBuffer(expression.listString()); + } + + public String _columnCreationClauseForAttribute(EOAttribute attribute) { + return addCreateClauseForAttribute(attribute).toString(); + } +*/ + public String schemaCreationScriptForEntities(NSArray allEntities, NSDictionary options) { /* 741*/ StringBuffer result = new StringBuffer(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |