tuscany-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adriano Crestani" <adrianocrest...@apache.org>
Subject support for more than one return value on implementation.xquery
Date Tue, 01 Jul 2008 21:32:34 GMT
As described on the XQueryInvoker.doInvoke method comment at [1]:

"...Currently no collections are supported, i.e. if there is more then one
element in the result only the first one will returned."

So I managed to add this support:

When more than one result is returned by the xquery execution, the results
are stored in a collection
(org.apache.tuscany.sca.databinding.saxon.collection.ItemList) and it's
returned. When the data transformation is done before returning the result
to the caller, it transforms each value contained in the ItemList object to
a DataObject or a Java Object (when the Item is a Value object instead of a
NodeInfo). The transformed objects are placed in a Java array of the same
type the caller is expecting (target type). More details about this
transformation can be found at the comments at [2].

If I committed some mistake, let me know ; )

Suggestions of some other needed improvements are always welcome =D

Adriano Crestani

[1] -
http://svn.apache.org/viewvc/tuscany/java/sca/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/XQueryInvoker.java?revision=668359&view=markup&pathrev=673003

[2] -
http://svn.apache.org/viewvc/tuscany/java/sca/modules/databinding-saxon/src/main/java/org/apache/tuscany/sca/databinding/saxon/ItemList2ObjectTransformer.java?view=markup&pathrev=673004

Mime
View raw message