You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ke...@apache.org on 2007/07/20 22:42:54 UTC
svn commit: r558126 - in
/incubator/tuscany/branches/sdo-1.0-incubating/tools/src:
main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java
test/java/org/apache/tuscany/sdo/test/AllTests.java
Author: kelvingoodson
Date: Fri Jul 20 13:42:53 2007
New Revision: 558126
URL: http://svn.apache.org/viewvc?view=rev&rev=558126
Log:
fix for TUSCANY-1428
Modified:
incubator/tuscany/branches/sdo-1.0-incubating/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java
incubator/tuscany/branches/sdo-1.0-incubating/tools/src/test/java/org/apache/tuscany/sdo/test/AllTests.java
Modified: incubator/tuscany/branches/sdo-1.0-incubating/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java?view=diff&rev=558126&r1=558125&r2=558126
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java Fri Jul 20 13:42:53 2007
@@ -34,6 +34,7 @@
import org.apache.tuscany.sdo.helper.XSDHelperImpl;
import org.apache.tuscany.sdo.util.DataObjectUtil;
import org.eclipse.emf.codegen.ecore.genmodel.GenClass;
+import org.eclipse.emf.codegen.ecore.genmodel.GenFeature;
import org.eclipse.emf.codegen.ecore.genmodel.GenModel;
import org.eclipse.emf.codegen.ecore.genmodel.GenPackage;
import org.eclipse.emf.common.util.URI;
@@ -167,7 +168,6 @@
{
GenModel genModel = null;
- DataObjectUtil.initRuntime();
HelperContext hc = new HelperContextImpl(extendedMetaData, false);
XSDHelper xsdHelper = hc.getXSDHelper();
((XSDHelperImpl)xsdHelper).setRedefineBuiltIn(regenerateBuiltIn);
@@ -384,36 +384,34 @@
for (Iterator iterClass = genClasses.iterator(); iterClass.hasNext();)
{
GenClass genClass = (GenClass)iterClass.next();
- if( !("DocumentRoot".equals(genClass.getInterfaceName())))
- {
String name = extendedMetaData.getName(genClass.getEcoreClass());
String className = genPackage.getInterfacePackageName() + "." + genClass.getInterfaceName();
classes.add( new PackageClassInfo( name, className, false, null ) );
- EClass documentRoot = extendedMetaData.getDocumentRoot(ePackage);
- if( documentRoot != null )
+ List features = genClass.getGenFeatures();
+ for (Iterator iterFeatures = features.iterator(); iterFeatures.hasNext();)
{
- List rootElements = extendedMetaData.getElements(documentRoot);
- for (Iterator iterRoot = rootElements.iterator(); iterRoot.hasNext();)
- {
- EStructuralFeature element = (EStructuralFeature)iterRoot.next();
+ GenFeature feature = (GenFeature)iterFeatures.next();
+ EStructuralFeature element = feature.getEcoreFeature();
EClassifier elementType = element.getEType();
if( elementType instanceof EClass )
{
// complex type
EClass eClass = (EClass)elementType;
GenClass genEClass = (GenClass)eclassGenClassMap.get(elementType);
+ if( genEClass != null )
+ {
name = extendedMetaData.getName(element);
String interfaceName = genEClass.getGenPackage().getInterfacePackageName()
+ '.' + genEClass.getInterfaceName();
boolean anonymous = extendedMetaData.isAnonymous(eClass);
- // Build list of property class names
+ // Build list of property names
List propertyClassNames = new ArrayList();
List properties = eClass.getEStructuralFeatures();
for (Iterator iterProperties = properties.iterator(); iterProperties.hasNext();)
{
- EStructuralFeature feature = (EStructuralFeature)iterProperties.next();
- EClassifier propertyType = feature.getEType();
+ EStructuralFeature property = (EStructuralFeature)iterProperties.next();
+ EClassifier propertyType = property.getEType();
if (propertyType instanceof EClass)
{
GenClass propertyGenClass = (GenClass)eclassGenClassMap.get(propertyType);
@@ -432,6 +430,7 @@
}
classes.add( new PackageClassInfo( name, interfaceName, anonymous, propertyClassNames ) );
}
+ }
else
{
// simple type
@@ -442,8 +441,6 @@
}
}
}
- }
- }
public class PackageClassInfo
{
Modified: incubator/tuscany/branches/sdo-1.0-incubating/tools/src/test/java/org/apache/tuscany/sdo/test/AllTests.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.0-incubating/tools/src/test/java/org/apache/tuscany/sdo/test/AllTests.java?view=diff&rev=558126&r1=558125&r2=558126
==============================================================================
--- incubator/tuscany/branches/sdo-1.0-incubating/tools/src/test/java/org/apache/tuscany/sdo/test/AllTests.java (original)
+++ incubator/tuscany/branches/sdo-1.0-incubating/tools/src/test/java/org/apache/tuscany/sdo/test/AllTests.java Fri Jul 20 13:42:53 2007
@@ -35,6 +35,7 @@
suite.addTestSuite(InheritanceTestCase.class);
suite.addTestSuite(OpenContentTestCase.class);
suite.addTestSuite(SimpleStaticTestCase.class);
+ suite.addTestSuite(GeneratedPackagesTestCase.class);
return suite;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org