Author: robbinspg
Date: Tue Dec 5 03:52:03 2006
New Revision: 482609
URL: http://svn.apache.org/viewvc?view=rev&rev=482609
Log:
TUSCANY-960 eliminate xsi:type="OpenDataObject" when serializing
Modified:
incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
incubator/tuscany/cpp/sdo/runtime/core/test/cdata-out.xml
incubator/tuscany/cpp/sdo/runtime/core/test/clone-out.xml
incubator/tuscany/cpp/sdo/runtime/core/test/main.cpp
Modified:
incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
URL:
http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp?view=diff&rev=482609&r1=482608&r2=482609
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp
(original)
+++ incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SDOXMLWriter.cpp Tue
Dec 5 03:52:03 2006
@@ -899,30 +899,35 @@
// (const unsigned char*)value.c_str());
//}
//else
- //{
+ //{
if (cont->getTypeImpl().getPropertyImpl(elementName)
== 0)
{
const SDOXMLString& typeURI =
dataObject->getType().getURI();
const SDOXMLString& typeName =
dataObject->getType().getName();
-
- SDOXMLString theName=typeName;
-
- if (!typeURI.isNull() && !typeURI.equals(uri) &&
!typeURI.equals(""))
+
+ // Supress the writing of xsi:type as well for
DataObjects of type
+ // commonj.sdo#OpenDataObject
+ if (!(typeURI.equals("commonj.sdo") &&
typeName.equals("OpenDataObject")))
{
- std::map<SDOXMLString,SDOXMLString>::iterator
it = namespaceMap.find(typeURI);
- if (it != namespaceMap.end())
+ SDOXMLString theName=typeName;
+
+ if (!typeURI.isNull() && !typeURI.equals(uri)
&& !typeURI.equals(""))
{
- theName = (*it).second;
- theName += ":";
- theName += typeName;
+
std::map<SDOXMLString,SDOXMLString>::iterator it = namespaceMap.find(typeURI);
+ if (it != namespaceMap.end())
+ {
+ theName = (*it).second;
+ theName += ":";
+ theName += typeName;
+ }
}
- }
-
- rc = xmlTextWriterWriteAttribute(writer,
- (const unsigned char*)"xsi:type",
- (const unsigned char*)theName);
- writeXmlnsXsi();
+ rc = xmlTextWriterWriteAttribute(writer,
+ (const unsigned char*)"xsi:type",
+ (const unsigned char*)theName);
+
+ writeXmlnsXsi();
+ }
}
}
}
Modified: incubator/tuscany/cpp/sdo/runtime/core/test/cdata-out.xml
URL:
http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/test/cdata-out.xml?view=diff&rev=482609&r1=482608&r2=482609
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/test/cdata-out.xml (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/test/cdata-out.xml Tue Dec 5
03:52:03 2006
@@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
-<test xmlns="http://www.example.org/test"
xmlns:tns="http://www.example.org/test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><entry1><data>xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></data><fred>abcdefg</fred><fred><![CDATA[>>>>>>>>>]]></fred><fred>xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></fred><jim
xsi:type="OpenDataObject">xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></jim></entry1></test>
+<test xmlns="http://www.example.org/test"
xmlns:tns="http://www.example.org/test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><entry1><data>xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></data><fred>abcdefg</fred><fred><![CDATA[>>>>>>>>>]]></fred><fred>xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></fred><jim>xxx<![CDATA[<?xml
version="1.0"encoding="UTF-8"?><MOREXML>....</MOREXML>]]>aaaa<![CDATA[>>>>>>>>>]]></jim></entry1></test>
Modified: incubator/tuscany/cpp/sdo/runtime/core/test/clone-out.xml
URL:
http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/test/clone-out.xml?view=diff&rev=482609&r1=482608&r2=482609
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/test/clone-out.xml (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/test/clone-out.xml Tue Dec 5
03:52:03 2006
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<Clone xmlns="http://www.example.org/test"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.example.org/test clone.xsd ">
+<Clone xmlns="http://www.example.org/test"
xmlns:tns="http://www.example.org/test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
abc
<test>test</test>
def
<tests>test</tests>
- ghi
-</Clone>
+ ghi</Clone>
Modified: incubator/tuscany/cpp/sdo/runtime/core/test/main.cpp
URL:
http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/test/main.cpp?view=diff&rev=482609&r1=482608&r2=482609
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/test/main.cpp (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/test/main.cpp Tue Dec 5 03:52:03
2006
@@ -32,11 +32,11 @@
#define TEST(testname)\
value = testname;\
+ totaltests++;\
if (value == 0) {\
cout << "Test Failed: " << totaltests << " " << #testname << endl;\
}\
- testspassed += value;\
- totaltests++;
+ testspassed += value;
int main (int argc, char** argv)
{
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]