Skip to content

Commit

Permalink
Unify name normalization #683
Browse files Browse the repository at this point in the history
  • Loading branch information
timowest committed Mar 24, 2014
1 parent 6035ed3 commit d15fb64
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 51 deletions.
@@ -1,6 +1,6 @@
/*
* Copyright 2011, Mysema Ltd
*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
Expand All @@ -18,22 +18,22 @@

/**
* AbstractNamingStrategy is an abstract base class for NamingStrategy implementations
*
*
* @author tiwe
*
*/
public abstract class AbstractNamingStrategy implements NamingStrategy {

protected String foreignKeysClassName = "ForeignKeys";

protected String foreignKeysVariable = "fk";

protected String primaryKeysClassName = "PrimaryKeys";

protected String primaryKeysVariable = "pk";

protected String reservedSuffix = "_col";

@Override
public String appendSchema(String packageName, String schemaName) {
String suffix = schemaName.toLowerCase();
Expand All @@ -42,7 +42,7 @@ public String appendSchema(String packageName, String schemaName) {
}
return packageName + "." + suffix;
}

protected String escape(EntityType entityType, String name) {
int suffix = 0;
while (true) {
Expand All @@ -52,9 +52,9 @@ protected String escape(EntityType entityType, String name) {
} else {
return candidate;
}
}
}
}

@Override
public String getForeignKeysClassName() {
return foreignKeysClassName;
Expand All @@ -74,7 +74,34 @@ public String getPrimaryKeysClassName() {
public String getPrimaryKeysVariable(EntityType entityType) {
return primaryKeysVariable;
}


@Override
public String normalizeColumnName(String columnName) {
if (columnName != null) {
return columnName.replaceAll("\r", "").replaceAll("\n", " ");
} else {
return null;
}
}

@Override
public String normalizeTableName(String tableName) {
if (tableName != null) {
return tableName.replaceAll("\r", "").replaceAll("\n", " ");
} else {
return null;
}
}

@Override
public String normalizeSchemaName(String schemaName) {
if (schemaName != null) {
return schemaName.replaceAll("\r", "").replaceAll("\n", " ");
} else {
return null;
}
}

public void setForeignKeysClassName(String foreignKeysClassName) {
this.foreignKeysClassName = foreignKeysClassName;
}
Expand Down
Expand Up @@ -93,21 +93,6 @@ public String getPropertyNameForPrimaryKey(String pkName, EntityType entityType)
return getPropertyName(pkName, entityType);
}

@Override
public String normalizeColumnName(String columnName) {
return columnName.replaceAll("\r", "").replaceAll("\n", " ");
}

@Override
public String normalizeTableName(String tableName) {
return tableName.replaceAll("\r", "").replaceAll("\n", " ");
}

@Override
public String normalizeSchemaName(String schemaName) {
return schemaName.replaceAll("\r", "").replaceAll("\n", " ");
}

protected String normalizePropertyName(String name) {
return Naming.normalize(name, reservedSuffix);
}
Expand Down
Expand Up @@ -73,10 +73,10 @@ public Map<String, InverseForeignKeyData> getExportedKeys(DatabaseMetaData md,
try{
while (foreignKeys.next()) {
String name = foreignKeys.getString(FK_NAME);
String parentColumnName = foreignKeys.getString(FK_PARENT_COLUMN_NAME);
String foreignSchemaName = foreignKeys.getString(FK_FOREIGN_SCHEMA_NAME);
String foreignTableName = foreignKeys.getString(FK_FOREIGN_TABLE_NAME);
String foreignColumn = foreignKeys.getString(FK_FOREIGN_COLUMN_NAME);
String parentColumnName = namingStrategy.normalizeColumnName(foreignKeys.getString(FK_PARENT_COLUMN_NAME));
String foreignSchemaName = namingStrategy.normalizeSchemaName(foreignKeys.getString(FK_FOREIGN_SCHEMA_NAME));
String foreignTableName = namingStrategy.normalizeTableName(foreignKeys.getString(FK_FOREIGN_TABLE_NAME));
String foreignColumn = namingStrategy.normalizeColumnName(foreignKeys.getString(FK_FOREIGN_COLUMN_NAME));
if (name == null || name.isEmpty()) {
name = tableName + "_" + foreignTableName + "_IFK";
}
Expand All @@ -102,10 +102,10 @@ public Map<String, ForeignKeyData> getImportedKeys(DatabaseMetaData md,
try{
while (foreignKeys.next()) {
String name = foreignKeys.getString(FK_NAME);
String parentSchemaName = foreignKeys.getString(FK_PARENT_SCHEMA_NAME);
String parentTableName = foreignKeys.getString(FK_PARENT_TABLE_NAME);
String parentColumnName = foreignKeys.getString(FK_PARENT_COLUMN_NAME);
String foreignColumn = foreignKeys.getString(FK_FOREIGN_COLUMN_NAME);
String parentSchemaName = namingStrategy.normalizeSchemaName(foreignKeys.getString(FK_PARENT_SCHEMA_NAME));
String parentTableName = namingStrategy.normalizeTableName(foreignKeys.getString(FK_PARENT_TABLE_NAME));
String parentColumnName = namingStrategy.normalizeColumnName(foreignKeys.getString(FK_PARENT_COLUMN_NAME));
String foreignColumn = namingStrategy.normalizeColumnName(foreignKeys.getString(FK_FOREIGN_COLUMN_NAME));
if (name == null || name.isEmpty()) {
name = tableName + "_" + parentTableName + "_FK";
}
Expand Down
Expand Up @@ -35,7 +35,6 @@
import com.mysema.codegen.model.Type;
import com.mysema.codegen.model.TypeCategory;
import com.mysema.codegen.model.Types;
import com.mysema.query.codegen.CodegenModule;
import com.mysema.query.codegen.EntitySerializer;
import com.mysema.query.codegen.EntityType;
import com.mysema.query.codegen.Property;
Expand Down
Expand Up @@ -58,21 +58,6 @@ public String getPropertyNameForPrimaryKey(String primaryKeyName, EntityType mod
return getPropertyName(primaryKeyName);
}

@Override
public String normalizeColumnName(String columnName) {
return columnName.replaceAll("\r", "").replaceAll("\n", " ");
}

@Override
public String normalizeTableName(String tableName) {
return tableName.replaceAll("\r", "").replaceAll("\n", " ");
}

@Override
public String normalizeSchemaName(String schemaName) {
return schemaName.replaceAll("\r", "").replaceAll("\n", " ");
}

private String getPropertyName(String name) {
return Naming.normalize(name, reservedSuffix);
}
Expand Down
Expand Up @@ -115,6 +115,10 @@ public static void setUpClass() throws ClassNotFoundException, SQLException{
// multi key
stmt.execute("create table multikey(id INT, id2 VARCHAR, id3 INT, CONSTRAINT pk_multikey PRIMARY KEY (id, id2, id3) )");

// M_PRODUCT_BOM_ID
stmt.execute("create table product(id int, m_product_bom_id int, "
+ "constraint product_bom foreign key (m_product_bom_id) references product(id))");

}finally{
stmt.close();
}
Expand Down

0 comments on commit d15fb64

Please sign in to comment.