Author: scottkurz
Date: Tue Feb 15 15:50:40 2011
New Revision: 1070946
URL: http://svn.apache.org/viewvc?rev=1070946&view=rev
Log:
Fix wrapper clone to include clone of unwrapped info.
Modified:
tuscany/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
Modified:
tuscany/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
URL:
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java?rev=1070946&r1=1070945&r2=1070946&view=diff
==============================================================================
---
tuscany/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
(original)
+++
tuscany/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
Tue Feb 15 15:50:40 2011
@@ -193,6 +193,28 @@ public class WrapperInfo implements Clon
if (outputWrapperType != null) {
copy.outputWrapperType =
(DataType<XMLType>)outputWrapperType.clone();
}
+ if (unwrappedInputType != null) {
+ List<DataType> clonedLogicalTypes = new ArrayList<DataType>();
+ for (DataType t : unwrappedInputType.getLogical()) {
+ DataType type = (DataType) t.clone();
+ clonedLogicalTypes.add(type);
+ }
+ DataType<List<DataType>> clonedUnwrappedInputType =
+ new
DataTypeImpl<List<DataType>>(unwrappedInputType.getPhysical(),
clonedLogicalTypes);
+
clonedUnwrappedInputType.setDataBinding(unwrappedInputType.getDataBinding());
+ copy.unwrappedInputType = clonedUnwrappedInputType;
+ }
+ if (unwrappedOutputType != null) {
+ List<DataType> clonedLogicalTypes = new ArrayList<DataType>();
+ for (DataType t : unwrappedOutputType.getLogical()) {
+ DataType type = (DataType) t.clone();
+ clonedLogicalTypes.add(type);
+ }
+ DataType<List<DataType>> clonedUnwrappedOutputType =
+ new
DataTypeImpl<List<DataType>>(unwrappedOutputType.getPhysical(),
clonedLogicalTypes);
+
clonedUnwrappedOutputType.setDataBinding(unwrappedOutputType.getDataBinding());
+ copy.unwrappedOutputType = clonedUnwrappedOutputType;
+ }
return copy;
}