You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jaxme-dev@ws.apache.org by jo...@apache.org on 2006/09/08 22:37:51 UTC

svn commit: r441642 - in /webservices/jaxme/branches: MAVEN/ MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/ MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/ MAVEN/projects/jm/src/test/resources/bindings/ b0_5/ b0_5/src...

Author: jochen
Date: Fri Sep  8 13:37:50 2006
New Revision: 441642

URL: http://svn.apache.org/viewvc?view=rev&rev=441642
Log:
A jaxb:baseType definition was ignored, if the modified type was global
and had already been in use.

Modified:
    webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java
    webservices/jaxme/branches/MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/BindingsTest.java
    webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/bindings.jxb
    webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/imported.xsi
    webservices/jaxme/branches/MAVEN/status.xml
    webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java
    webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/junit/BindingsTest.java
    webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/bindings.jxb
    webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/imported.xsi
    webservices/jaxme/branches/b0_5/status.xml

Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/main/java/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java Fri Sep  8 13:37:50 2006
@@ -191,12 +191,14 @@
 	public TypeSG getTypeSG(SGFactory pController, XSType pType, JAXBProperty.BaseType pBaseType) throws SAXException {
 		final String mName = "getTypeSG(XSType)";
 		TypeSG result = (TypeSG) types.get(pType);
-		if (result == null) {
+		if (result == null  ||  pBaseType != null) {
 			log.finest(mName, "->", pType.getName());
 			TypeSGChain chain = (TypeSGChain) pController.newTypeSG(pType, pBaseType);
 			result = new TypeSGImpl(chain);
-			types.put(pType, result);
-			typesByOrder.add(result);
+			if (pBaseType == null) {
+			    types.put(pType, result);
+			    typesByOrder.add(result);
+            }
 			result.init();
 			log.finest(mName, "<-", new Object[]{chain, result});
 		}

Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/BindingsTest.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/BindingsTest.java?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/BindingsTest.java (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/test/java/org/apache/ws/jaxme/junit/BindingsTest.java Fri Sep  8 13:37:50 2006
@@ -58,5 +58,7 @@
 		foo.setBool(Boolean.TRUE);
 		ImpFooType impFoo = new org.apache.ws.jaxme.test.bindings.imported.vo.ObjectFactory().createImpFoo();
 		impFoo.setXyz(org.apache.ws.jaxme.test.bindings.imported.vo.YesNoTypeClass.NO);
+		impFoo.setRequiredLong(1L);
+        impFoo.setOptionalLong(new Long(1));
 	}
 }

Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/bindings.jxb
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/bindings.jxb?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/bindings.jxb (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/bindings.jxb Fri Sep  8 13:37:50 2006
@@ -36,6 +36,9 @@
     </jxb:bindings>
     <jxb:bindings node="xs:element[@name='foo']">
       <jxb:class name="ImpFoo"/>
+      <jxb:bindings node="xs:complexType/xs:attribute[@name='optionalLong']">
+        <jxb:property><jxb:baseType><jxb:javaType name="java.lang.Long"/></jxb:baseType></jxb:property>
+      </jxb:bindings>
     </jxb:bindings>
   </jxb:bindings>
 </jxb:bindings>

Modified: webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/imported.xsi
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/imported.xsi?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/imported.xsi (original)
+++ webservices/jaxme/branches/MAVEN/projects/jm/src/test/resources/bindings/imported.xsi Fri Sep  8 13:37:50 2006
@@ -36,6 +36,8 @@
   <xs:element name="foo">
     <xs:complexType>
       <xs:attribute name="xyz" type="imp:YesNoType"/>
+      <xs:attribute name="requiredLong" type="xs:long" use="required"/>
+      <xs:attribute name="optionalLong" type="xs:long" use="optional"/>
     </xs:complexType>
   </xs:element>
 </xs:schema>

Modified: webservices/jaxme/branches/MAVEN/status.xml
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/status.xml?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/MAVEN/status.xml (original)
+++ webservices/jaxme/branches/MAVEN/status.xml Fri Sep  8 13:37:50 2006
@@ -74,6 +74,10 @@
         Eliminated a runtime dependency, which caused the test suite to fail
         on JRE 1.6.
       </action>
+      <action dev="JW" type="fix" context="generator">
+        A jaxb:baseType definition was ignored, if it modified a global type,
+        which has already been in use.
+      </action>
     </release>
 	<release version="0.5.1" date="Not yet published">
       <action dev="JW" type="enhancement" context="js">

Modified: webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java (original)
+++ webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/JAXBSGFactory.java Fri Sep  8 13:37:50 2006
@@ -191,12 +191,14 @@
 	public TypeSG getTypeSG(SGFactory pController, XSType pType, JAXBProperty.BaseType pBaseType) throws SAXException {
 		final String mName = "getTypeSG(XSType)";
 		TypeSG result = (TypeSG) types.get(pType);
-		if (result == null) {
+		if (result == null  ||  pBaseType != null) {
 			log.finest(mName, "->", pType.getName());
 			TypeSGChain chain = (TypeSGChain) pController.newTypeSG(pType, pBaseType);
 			result = new TypeSGImpl(chain);
-			types.put(pType, result);
-			typesByOrder.add(result);
+			if (pBaseType == null) {
+			    types.put(pType, result);
+			    typesByOrder.add(result);
+            }
 			result.init();
 			log.finest(mName, "<-", new Object[]{chain, result});
 		}

Modified: webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/junit/BindingsTest.java
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/junit/BindingsTest.java?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/junit/BindingsTest.java (original)
+++ webservices/jaxme/branches/b0_5/src/jaxme/org/apache/ws/jaxme/junit/BindingsTest.java Fri Sep  8 13:37:50 2006
@@ -58,5 +58,7 @@
 		foo.setBool(Boolean.TRUE);
 		ImpFooType impFoo = new org.apache.ws.jaxme.test.bindings.imported.vo.ObjectFactory().createImpFoo();
 		impFoo.setXyz(org.apache.ws.jaxme.test.bindings.imported.vo.YesNoTypeClass.NO);
+		impFoo.setRequiredLong(1L);
+        impFoo.setOptionalLong(new Long(1));
 	}
 }

Modified: webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/bindings.jxb
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/bindings.jxb?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/bindings.jxb (original)
+++ webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/bindings.jxb Fri Sep  8 13:37:50 2006
@@ -43,6 +43,9 @@
     </jxb:bindings>
     <jxb:bindings node="xs:element[@name='foo']">
       <jxb:class name="ImpFoo"/>
+      <jxb:bindings node="xs:complexType/xs:attribute[@name='optionalLong']">
+        <jxb:property><jxb:baseType><jxb:javaType name="java.lang.Long"/></jxb:baseType></jxb:property>
+      </jxb:bindings>
     </jxb:bindings>
   </jxb:bindings>
 </jxb:bindings>

Modified: webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/imported.xsi
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/imported.xsi?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/imported.xsi (original)
+++ webservices/jaxme/branches/b0_5/src/test/jaxb/bindings/imported.xsi Fri Sep  8 13:37:50 2006
@@ -36,6 +36,8 @@
   <xs:element name="foo">
     <xs:complexType>
       <xs:attribute name="xyz" type="imp:YesNoType"/>
+      <xs:attribute name="requiredLong" type="xs:long" use="required"/>
+      <xs:attribute name="optionalLong" type="xs:long" use="optional"/>
     </xs:complexType>
   </xs:element>
 </xs:schema>

Modified: webservices/jaxme/branches/b0_5/status.xml
URL: http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/status.xml?view=diff&rev=441642&r1=441641&r2=441642
==============================================================================
--- webservices/jaxme/branches/b0_5/status.xml (original)
+++ webservices/jaxme/branches/b0_5/status.xml Fri Sep  8 13:37:50 2006
@@ -70,6 +70,10 @@
         Eliminated a runtime dependency, which caused the test suite to fail
         on JRE 1.6.
       </action>
+      <action dev="JW" type="fix" context="generator">
+        A jaxb:baseType definition was ignored, if it modified a global type,
+        which has already been in use.
+      </action>
     </release>
     <release version="0.5.1" date="06-Jan-2006">
       <action dev="JW" type="enhancement" context="js">



---------------------------------------------------------------------
To unsubscribe, e-mail: jaxme-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: jaxme-dev-help@ws.apache.org