Discriminated types
-------------------
Key: TUSCANY-547
URL: http://issues.apache.org/jira/browse/TUSCANY-547
Project: Tuscany
Type: Improvement
Components: C++ SDO
Environment: all
Reporter: Ed Slattery
There are macros in the SDO code in data object, and lists/sequences to handle
the many get/set/add/insert APIS for each type if data object. These are a pain
to debug, and the conversion routines in TypeImpl are necessarity duplicased
for each type of data object.
One suggested approach which appeals would be to define a content holder class,
which would hold the value of any type of data object. By allowing it to be
constructed from any incoming type, we could reduce the get/set methods to
oneline methods which set up this generic blob, flag its original type, and
pass it on to a generic setter/getter.
Similarly the conversion routines could query the current type of the blob, and
perform the correct conversion for the blob to the requested type.
This would reduce the codebase, make it cleaner.
Also, we dont deal with XSD Unions at present, but having this blob in place,
we could extend the flag saying what type it is, to be perhaps a bitmask saying
what types if could be, and what type it is currently - this would make unions
supportable.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]