Author: robbinspg
Date: Tue Aug 21 14:37:46 2007
New Revision: 568296

URL: http://svn.apache.org/viewvc?rev=568296&view=rev
Log:
TUSCANY-1564 Always write xsi:type for a property that is an abstract Type

Modified:
    
incubator/tuscany/branches/sdo-cpp-pre2.1/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp

Modified: 
incubator/tuscany/branches/sdo-cpp-pre2.1/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-cpp-pre2.1/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp?rev=568296&r1=568295&r2=568296&view=diff
==============================================================================
--- 
incubator/tuscany/branches/sdo-cpp-pre2.1/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
 (original)
+++ 
incubator/tuscany/branches/sdo-cpp-pre2.1/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
 Tue Aug 21 14:37:46 2007
@@ -1318,6 +1318,8 @@
       {
           bool xsiTypeNeeded = false;
 
+          const Type& propertyType = prop.getType();
+
           // If this is a defined property with property information
           // we use the uri and name from the definition
           XSDPropertyInfo* pi = getPropertyInfo(prop);
@@ -1327,12 +1329,15 @@
               propdef = pi->getPropertyDefinition();
               elementName = propdef.localname;
               elementURI = propdef.namespaceURI;
+              if (propertyType.isAbstractType())
+              {
+                  xsiTypeNeeded = true;
+              }
           }
           else
           {
               elementName = prop.getName();
 
-              const Type& propertyType = prop.getType();
               SDOXMLString propTypeName = propertyType.getName();
               SDOXMLString propTypeURI = propertyType.getURI();
               DataObjectImpl* dataObjectImpl = 
(DataObjectImpl*)(DataObject*)dataObject;



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to