|
From: <th...@us...> - 2003-12-08 09:59:06
|
Update of /cvsroot/jaxme/JaxMe/src/generator/de/ispsoft/jaxme/generator
In directory sc8-pr-cvs1:/tmp/cvs-serv2263/src/generator/de/ispsoft/jaxme/generator
Modified Files:
JavaSourceWriter.java
Log Message:
fixes a bug if a non-jdbc aware element references a jdbc-view-aware
element, the jdbc manager class was not generated
Index: JavaSourceWriter.java
===================================================================
RCS file: /cvsroot/jaxme/JaxMe/src/generator/de/ispsoft/jaxme/generator/JavaSourceWriter.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- JavaSourceWriter.java 25 Apr 2003 19:57:54 -0000 1.8
+++ JavaSourceWriter.java 8 Dec 2003 09:59:02 -0000 1.9
@@ -1,6 +1,7 @@
package de.ispsoft.jaxme.generator;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.Set;
import org.apache.log4j.Category;
@@ -17,6 +18,7 @@
public class JavaSourceWriter extends SourceWriterImpl {
private static final Category cat = Category.getInstance(JavaSourceWriter.class.getName());
private static final Set writtenElements = new HashSet();
+ private static final Set writtenJdbcElements = new HashSet();
/** Creates a new instance of JavaSourceGenerator. */
public JavaSourceWriter() {}
@@ -38,35 +40,38 @@
JavaClassWriter jcw = getJavaClassWriter(pElement);
JavaSource js = jcw.getXmlClass();
+ String qName = null;
if (js != null) {
- String qName = js.getPackage();
+ qName = js.getPackage();
if (qName == null || qName.length() == 0) {
qName = js.getName();
} else {
qName += "." + js.getQName();
}
- if (writtenElements.contains(qName)) {
- return;
+ if (!writtenElements.contains(qName)) {
+ writtenElements.add(qName);
+ writeJavaSourceFile(getDirectory(), js);
+
+ js = jcw.getHandlerClass();
+ if (js != null) {
+ writeJavaSourceFile(getDirectory(), js);
+ }
}
- writtenElements.add(qName);
-
- writeJavaSourceFile(getDirectory(), js);
}
- js = jcw.getHandlerClass();
- if (js != null) {
- writeJavaSourceFile(getDirectory(), js);
- }
-
- js = jcw.getManagerClass();
- if (js != null) {
- writeJavaSourceFile(getDirectory(), js);
- }
+ js = jcw.getManagerClass();
+ if(qName != null && js != null && !writtenJdbcElements.contains(qName)) {
+ writtenJdbcElements.add(qName);
+ if (js != null) {
+ writeJavaSourceFile(getDirectory(), js);
+ }
+ }
- for (java.util.Iterator iter = ((SchemaComplexElement) pElement).getChilds();
+ SchemaElement child = null;
+ for (Iterator iter = ((SchemaComplexElement) pElement).getChilds();
iter.hasNext(); ) {
- SchemaElement child = (SchemaElement) iter.next();
+ child = (SchemaElement) iter.next();
cat.debug("Processing child " + child.getName() + " of " +
pElement.getName());
if (child.isComplex()) {
|