|
From: <one...@us...> - 2003-01-20 12:48:49
|
Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/tool/hbm2java
In directory sc8-pr-cvs1:/tmp/cvs-serv2323/sf/hibernate/tool/hbm2java
Modified Files:
BasicRenderer.java ClassMapping.java Field.java Generator.java
Log Message:
major refactoring to create SQL Generation layer
more efficient queries against normalized mappings
Index: BasicRenderer.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/tool/hbm2java/BasicRenderer.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** BasicRenderer.java 16 Jan 2003 20:52:38 -0000 1.4
--- BasicRenderer.java 20 Jan 2003 12:48:16 -0000 1.5
***************
*** 10,13 ****
--- 10,15 ----
import java.util.TreeSet;
+ import net.sf.hibernate.util.StringHelper;
+
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
***************
*** 100,104 ****
( !classMapping.getProxy().equals( classMapping.getCanonicalName() ) )
) {
! writer.print(", ");
writer.print( classMapping.getProxy() );
}
--- 102,106 ----
( !classMapping.getProxy().equals( classMapping.getCanonicalName() ) )
) {
! writer.print(StringHelper.COMMA_SPACE);
writer.print( classMapping.getProxy() );
}
***************
*** 108,112 ****
for (Iterator iter = implementz.iterator(); iter.hasNext();) {
String iface = (String) iter.next();
! writer.print(", ");
writer.print(iface);
}
--- 110,114 ----
for (Iterator iter = implementz.iterator(); iter.hasNext();) {
String iface = (String) iter.next();
! writer.print(StringHelper.COMMA_SPACE);
writer.print(iface);
}
***************
*** 123,127 ****
writer.println(
" /** " +
! ( field.isNullable() && !field.isIdentifier() ? "nullable " : "" ) +
( field.isIdentifier() ? "identifier" : "persistent" )
+ " field */");
--- 125,129 ----
writer.println(
" /** " +
! ( field.isNullable() && !field.isIdentifier() ? "nullable " : StringHelper.EMPTY_STRING ) +
( field.isIdentifier() ? "identifier" : "persistent" )
+ " field */");
***************
*** 141,145 ****
writer.println(" /** full constructor */");
! String fullCons = " public " + classMapping.getGeneratedName() + "(";
--- 143,147 ----
writer.println(" /** full constructor */");
! String fullCons = " public " + classMapping.getGeneratedName() + StringHelper.OPEN_PAREN;
***************
*** 161,165 ****
writer.print(field.getName());
if(fields.hasNext()) {
! writer.print(", ");
}
}
--- 163,167 ----
writer.print(field.getName());
if(fields.hasNext()) {
! writer.print(StringHelper.COMMA_SPACE);
}
}
***************
*** 189,193 ****
writer.println(" /** minimal constructor */");
! String minCons = " public " + classMapping.getGeneratedName() + "(";
for (Iterator fields = allFieldsForMinimalConstructor.iterator(); fields.hasNext();) {
Field field = (Field) fields.next();
--- 191,195 ----
writer.println(" /** minimal constructor */");
! String minCons = " public " + classMapping.getGeneratedName() + StringHelper.OPEN_PAREN;
for (Iterator fields = allFieldsForMinimalConstructor.iterator(); fields.hasNext();) {
Field field = (Field) fields.next();
***************
*** 207,211 ****
writer.print(field.getName());
if(fields.hasNext()) {
! writer.print(", ");
}
}
--- 209,213 ----
writer.print(field.getName());
if(fields.hasNext()) {
! writer.print(StringHelper.COMMA_SPACE);
}
}
***************
*** 240,244 ****
Field field = (Field) fields.next();
if ( field.isIdentifier() ) {
! writer.println(" .append(this." + field.getName() + ", castOther." + field.getName() + ")");
}
}
--- 242,246 ----
Field field = (Field) fields.next();
if ( field.isIdentifier() ) {
! writer.println(" .append(this." + field.getName() + ", castOther." + field.getName() + StringHelper.CLOSE_PAREN);
}
}
***************
*** 252,256 ****
Field field = (Field) fields.next();
if ( field.isIdentifier() ) {
! writer.println(" .append(" + field.getName() + ")");
}
}
--- 254,258 ----
Field field = (Field) fields.next();
if ( field.isIdentifier() ) {
! writer.println(" .append(" + field.getName() + StringHelper.CLOSE_PAREN);
}
}
***************
*** 285,296 ****
writer.println(" return this." + field.getName() + ";");
writer.println(" }");
! writer.println("");
// setter
String setAccessScope = getFieldScope(field, "scope", "scope-set");
! writer.println(" " + setAccessScope + " void set" + field.getAsSuffix() + "(" + getTrueTypeName(field, class2classmap) + " " + field.getName() + ") {");
writer.println(" this." + field.getName() + " = " + field.getName() + ";");
writer.println(" }");
! writer.println("");
// add/remove'rs (commented out for now)
--- 287,298 ----
writer.println(" return this." + field.getName() + ";");
writer.println(" }");
! writer.println();
// setter
String setAccessScope = getFieldScope(field, "scope", "scope-set");
! writer.println(" " + setAccessScope + " void set" + field.getAsSuffix() + StringHelper.OPEN_PAREN + getTrueTypeName(field, class2classmap) + " " + field.getName() + ") {");
writer.println(" this." + field.getName() + " = " + field.getName() + ";");
writer.println(" }");
! writer.println();
// add/remove'rs (commented out for now)
***************
*** 319,327 ****
String addAccessScope = getFieldScope(field, "scope", "scope-add");
! writer.println(" " + setAccessScope + " void add" + field.getAsSuffix() + "(" + shortenType(trueforeign, classMapping.getImports()) + " a" + field.getName() + ") {");
writer.println(" this." + getterType + field.getAsSuffix() + "().add(a" + field.getName() + ");");
writer.println(" a" + field.getName() + ".setXXX(this);");
writer.println(" }");
! writer.println("");
--- 321,329 ----
String addAccessScope = getFieldScope(field, "scope", "scope-add");
! writer.println(" " + setAccessScope + " void add" + field.getAsSuffix() + StringHelper.OPEN + shortenType(trueforeign, classMapping.getImports()) + " a" + field.getName() + ") {");
writer.println(" this." + getterType + field.getAsSuffix() + "().add(a" + field.getName() + ");");
writer.println(" a" + field.getName() + ".setXXX(this);");
writer.println(" }");
! writer.println();
***************
*** 388,392 ****
private String shortenType(String type, TreeSet imports) {
if( imports.contains(type) ) {
! return type.substring( type.lastIndexOf('.')+1 );
}
else {
--- 390,394 ----
private String shortenType(String type, TreeSet imports) {
if( imports.contains(type) ) {
! return type.substring( type.lastIndexOf(StringHelper.DOT)+1 );
}
else {
Index: ClassMapping.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/tool/hbm2java/ClassMapping.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** ClassMapping.java 19 Jan 2003 11:47:08 -0000 1.6
--- ClassMapping.java 20 Jan 2003 12:48:16 -0000 1.7
***************
*** 15,18 ****
--- 15,19 ----
import net.sf.hibernate.type.PrimitiveType;
import net.sf.hibernate.type.Type;
+ import net.sf.hibernate.util.StringHelper;
import org.apache.commons.collections.MultiMap;
***************
*** 129,133 ****
String cmpname = cmpid.getAttributeValue("name");
String cmpclass = cmpid.getAttributeValue("class");
! if ( cmpclass==null || cmpclass.equals("") ) {
//Embedded composite id
//implementEquals();
--- 130,134 ----
String cmpname = cmpid.getAttributeValue("name");
String cmpclass = cmpid.getAttributeValue("class");
! if ( cmpclass==null || cmpclass.equals(StringHelper.EMPTY_STRING) ) {
//Embedded composite id
//implementEquals();
***************
*** 156,160 ****
MultiMap metaForProperty = MetaAttributeHelper.loadAndMergeMetaMap(property, inheritedMeta);
String name = property.getAttributeValue("name");
! if ( name == null || name.trim().equals("") ) {
continue; //since an id doesn't necessarily need a name
}
--- 157,161 ----
MultiMap metaForProperty = MetaAttributeHelper.loadAndMergeMetaMap(property, inheritedMeta);
String name = property.getAttributeValue("name");
! if ( name == null || name.trim().equals(StringHelper.EMPTY_STRING) ) {
continue; //since an id doesn't necessarily need a name
}
***************
*** 169,173 ****
}
! if ( type == null || type.trim().equals("") ) {
log.warn("property \"" + name + "\" in class " + getName() + " is missing a type attribute");
continue;
--- 170,174 ----
}
! if ( type == null || type.trim().equals(StringHelper.EMPTY_STRING) ) {
log.warn("property \"" + name + "\" in class " + getName() + " is missing a type attribute");
continue;
***************
*** 268,272 ****
String cmpname = cmpe.getAttributeValue("name");
String cmpclass = cmpe.getAttributeValue("class");
! if ( cmpclass==null || cmpclass.equals("") ) {
log.warn("component \"" + cmpname + "\" in class " + getName() + " does not specify a class");
continue;
--- 269,273 ----
String cmpname = cmpe.getAttributeValue("name");
String cmpclass = cmpe.getAttributeValue("class");
! if ( cmpclass==null || cmpclass.equals(StringHelper.EMPTY_STRING) ) {
log.warn("component \"" + cmpname + "\" in class " + getName() + " does not specify a class");
continue;
***************
*** 622,634 ****
if(c==null) {
! return "";
! } else {
! StringBuffer sb = new StringBuffer();
! for (Iterator iter = c.iterator(); iter.hasNext();) {
! Object element = (Object) iter.next();
! sb.append(element.toString());
! }
! return sb.toString();
! }
}
/**
--- 623,636 ----
if(c==null) {
! return StringHelper.EMPTY_STRING;
! }
! else {
! StringBuffer sb = new StringBuffer();
! for (Iterator iter = c.iterator(); iter.hasNext();) {
! Object element = (Object) iter.next();
! sb.append(element.toString());
! }
! return sb.toString();
! }
}
/**
Index: Field.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/tool/hbm2java/Field.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** Field.java 16 Jan 2003 20:52:38 -0000 1.4
--- Field.java 20 Jan 2003 12:48:16 -0000 1.5
***************
*** 6,9 ****
--- 6,11 ----
import java.util.Set;
+ import net.sf.hibernate.util.StringHelper;
+
import org.apache.commons.collections.MultiMap;
***************
*** 123,127 ****
if(c==null) {
! return "";
} else {
StringBuffer sb = new StringBuffer();
--- 125,129 ----
if(c==null) {
! return StringHelper.EMPTY_STRING;
} else {
StringBuffer sb = new StringBuffer();
Index: Generator.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/tool/hbm2java/Generator.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** Generator.java 16 Jan 2003 20:52:38 -0000 1.5
--- Generator.java 20 Jan 2003 12:48:16 -0000 1.6
***************
*** 9,12 ****
--- 9,14 ----
import java.util.Map;
+ import net.sf.hibernate.util.StringHelper;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
***************
*** 24,28 ****
private String baseDirName = "generated";
private String packageName = null;
! private String suffix = "";
private String extension = "java";
private boolean lowerFirstLetter = false;
--- 26,30 ----
private String baseDirName = "generated";
private String packageName = null;
! private String suffix = StringHelper.EMPTY_STRING;
private String extension = "java";
private boolean lowerFirstLetter = false;
***************
*** 149,155 ****
if (this.packageName == null) {
! dir = new File(baseDir, packageName==null ? "" : packageName.replace('.', File.separatorChar));
} else {
! dir = new File(baseDir, this.packageName.replace('.', File.separatorChar));
}
--- 151,157 ----
if (this.packageName == null) {
! dir = new File(baseDir, packageName==null ? StringHelper.EMPTY_STRING : packageName.replace(StringHelper.DOT, File.separatorChar));
} else {
! dir = new File(baseDir, this.packageName.replace(StringHelper.DOT, File.separatorChar));
}
|