summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CService.java2
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSubService.java30
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSuperService.java32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DLocalSubService.java30
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DService.java1
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DServiceComponent.java4
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSubService.java31
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSuperService.java32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/FService.java3
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CServiceImpl.java7
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSubServiceImpl.java37
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSuperServiceImpl.java45
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DServiceImpl.java5
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSubServiceImpl.java32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSuperServiceImpl.java43
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/FServiceImpl.java8
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/composite.composite7
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositeb.composite31
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositec.composite32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositecopy.composite4
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentlocalwire.composite (renamed from branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference.composite)44
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_inner.composite42
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_outer.composite37
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_inner.composite39
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_outer.composite32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonpromote_outer.composite3
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_inner.composite38
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_outer.composite44
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_inner.composite42
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_outer.composite31
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_inner.composite7
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_outer.composite3
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_inner.composite5
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_outer.composite3
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_inner.composite34
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_outer.composite42
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_inner.composite42
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_outer.composite32
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subinterfacewire.composite53
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_inner.composite43
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_outer.composite41
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_inner.composite39
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_outer.composite31
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/wire.composite53
-rw-r--r--branches/sca-java-1.x/vtest/assembly/composite/src/test/java/org/apache/tuscany/sca/vtest/assembly/composite/CompositeTestCase.java308
45 files changed, 1433 insertions, 71 deletions
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CService.java
index e8138091bb..6d2c7e5963 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CService.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CService.java
@@ -23,7 +23,7 @@ import org.osoa.sca.annotations.Remotable;
/**
*
*/
-public interface CService {
+public interface CService extends CSubService{
public String getState();
public String getName();
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSubService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSubService.java
new file mode 100644
index 0000000000..8333d69c9e
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSubService.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite;
+
+import org.osoa.sca.annotations.Remotable;
+
+/**
+ *
+ */
+public interface CSubService {
+
+ public String getState();
+
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSuperService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSuperService.java
new file mode 100644
index 0000000000..7424fd215c
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/CSuperService.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite;
+
+import org.osoa.sca.annotations.Remotable;
+
+/**
+ *
+ */
+public interface CSuperService extends CService{
+
+ public String getState();
+ public String getName();
+ public String getString();
+
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DLocalSubService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DLocalSubService.java
new file mode 100644
index 0000000000..7e61beec62
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DLocalSubService.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite;
+
+
+/**
+ * Simple Local service.
+ */
+
+public interface DLocalSubService {
+
+ public String getGreetings(String name);
+ public String getSomeProperty();
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DService.java
index 097f80644b..3c41255657 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DService.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DService.java
@@ -27,4 +27,5 @@ import org.osoa.sca.annotations.Remotable;
public interface DService {
public String getGreetings(String name);
+ public String getSomeProperty();
}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DServiceComponent.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DServiceComponent.java
index 623a8d650b..a32b72b7de 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DServiceComponent.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DServiceComponent.java
@@ -32,6 +32,10 @@ public class DServiceComponent implements DService {
public String getGreetings(String name) {
return helloWorldService.getGreetings(name);
}
+
+ public String getSomeProperty() {
+ return helloWorldService.getSomeProperty();
+ }
public DService getHelloWorldService() {
return helloWorldService;
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSubService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSubService.java
new file mode 100644
index 0000000000..4a87abb98a
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSubService.java
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite;
+
+import org.osoa.sca.annotations.Remotable;
+
+/**
+ * Simple Remotable service.
+ */
+@Remotable
+public interface DSubService {
+
+ //public String getGreetings(String name);
+ public String getSomeProperty();
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSuperService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSuperService.java
new file mode 100644
index 0000000000..95e7e1ef75
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/DSuperService.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite;
+
+import org.osoa.sca.annotations.Remotable;
+
+/**
+ * Simple Remotable service.
+ */
+@Remotable
+public interface DSuperService {
+
+ public String getGreetings(String name);
+ public String getSomeProperty();
+ public String getString();
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/FService.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/FService.java
index d52afacf77..5b67c87ee1 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/FService.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/FService.java
@@ -18,9 +18,12 @@
*/
package org.apache.tuscany.sca.vtest.assembly.composite;
+import org.osoa.sca.annotations.Remotable;
+
/**
* Simple Remotable Service
*/
+@Remotable
public interface FService {
public String getString(String a);
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CServiceImpl.java
index ae3d8ab557..3c23e3887a 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CServiceImpl.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CServiceImpl.java
@@ -19,7 +19,12 @@
package org.apache.tuscany.sca.vtest.assembly.composite.impl;
-public class CServiceImpl {
+import org.osoa.sca.annotations.Service;
+import org.apache.tuscany.sca.vtest.assembly.composite.CService;
+
+@Service(CService.class)
+
+public class CServiceImpl implements CService{
private String state = "Some State";
private String name = "CServiceImpl";
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSubServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSubServiceImpl.java
new file mode 100644
index 0000000000..e307302395
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSubServiceImpl.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tuscany.sca.vtest.assembly.composite.impl;
+
+import org.osoa.sca.annotations.Service;
+import org.apache.tuscany.sca.vtest.assembly.composite.CSubService;
+
+@Service(CSubService.class)
+
+public class CSubServiceImpl implements CSubService{
+
+ private String state = "Some State";
+
+ public String getState() {
+ return state;
+ }
+
+
+}
+
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSuperServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSuperServiceImpl.java
new file mode 100644
index 0000000000..77b8dbc526
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/CSuperServiceImpl.java
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tuscany.sca.vtest.assembly.composite.impl;
+
+import org.osoa.sca.annotations.Service;
+import org.apache.tuscany.sca.vtest.assembly.composite.CSuperService;
+
+@Service(CSuperService.class)
+
+public class CSuperServiceImpl implements CSuperService{
+
+ private String state = "Some State";
+ private String name = "CServiceImpl";
+
+ public String getState() {
+ return state;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public String getString() {
+ return name;
+ }
+
+}
+
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DServiceImpl.java
index 603ff7646c..6d683be9f7 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DServiceImpl.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DServiceImpl.java
@@ -27,5 +27,10 @@ public class DServiceImpl implements DService {
public String getGreetings(String name) {
return "Hello, " + name;
}
+
+ public String getSomeProperty()
+ {
+ return "DProperty";
+ }
}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSubServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSubServiceImpl.java
new file mode 100644
index 0000000000..e1ee25c88b
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSubServiceImpl.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.sca.vtest.assembly.composite.impl;
+
+import org.apache.tuscany.sca.vtest.assembly.composite.DSubService;
+import org.osoa.sca.annotations.Service;
+
+@Service(DSubService.class)
+public class DSubServiceImpl implements DSubService {
+
+ public String getSomeProperty()
+ {
+ return "DProperty";
+ }
+
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSuperServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSuperServiceImpl.java
new file mode 100644
index 0000000000..a030170fb5
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/DSuperServiceImpl.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tuscany.sca.vtest.assembly.composite.impl;
+
+
+import org.apache.tuscany.sca.vtest.assembly.composite.DSuperService;
+import org.osoa.sca.annotations.Service;
+
+@Service(DSuperService.class)
+public class DSuperServiceImpl implements DSuperService {
+
+ public String getGreetings(String name) {
+ return "Hello, " + name;
+ }
+
+ public String getSomeProperty()
+ {
+ return "DProperty";
+ }
+
+ public String getString() {
+ // TODO Auto-generated method stub
+ return "DSuperServiceImpl";
+ }
+
+}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/FServiceImpl.java b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/FServiceImpl.java
index f7ae2fd562..262f46b40a 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/FServiceImpl.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/java/org/apache/tuscany/sca/vtest/assembly/composite/impl/FServiceImpl.java
@@ -20,7 +20,7 @@
package org.apache.tuscany.sca.vtest.assembly.composite.impl;
import org.apache.tuscany.sca.vtest.assembly.composite.FService;
-import org.apache.tuscany.sca.vtest.assembly.composite.EService;
+import org.apache.tuscany.sca.vtest.assembly.composite.CService;
import org.apache.tuscany.sca.vtest.assembly.composite.DService;
import org.osoa.sca.annotations.Reference;
import org.osoa.sca.annotations.Service;
@@ -29,17 +29,17 @@ import org.osoa.sca.annotations.Service;
public class FServiceImpl implements FService {
@Reference
- protected EService e;
+ protected CService c;
@Reference
protected DService d;
public String getString(String a) {
- return e.getString(a);
+ return c.getState();
}
public String getGreetings(String name) {
- return d.getGreetings(name);
+ return d.getSomeProperty();
}
}
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/composite.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/composite.composite
index 88b8212c5e..72b511232f 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/composite.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/composite.composite
@@ -20,12 +20,11 @@
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://assembly-tests"
- name="Assemby-composite--Composite">
+ name="Assembly-composite--Composite">
<component name="BComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
<property name="someProperty">some b component value</property>
</component>
-
-
-</composite>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositeb.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositeb.composite
new file mode 100644
index 0000000000..694e9917a7
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositeb.composite
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-composite-b--Composite">
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+
+</composite>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositec.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositec.composite
new file mode 100644
index 0000000000..e5588cb9f9
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositec.composite
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-composite-c--Composite">
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositecopy.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositecopy.composite
index 9956452116..a01b897dcf 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositecopy.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/compositecopy.composite
@@ -20,11 +20,11 @@
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://assembly-tests"
- name="Assemby-composite--Composite">
+ name="Assembly-composite--Composite">
<component name="CComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
- <service name="CServiceImpl">
+ <service name="CService">
<interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
</service>
</component>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentlocalwire.composite
index d6ec215eb5..c418f912ce 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentlocalwire.composite
@@ -20,40 +20,34 @@
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://assembly-tests"
- name="Assembly-non-unique-reference--Composite">
+ name="Assembly-different-local-wire--Composite">
<component name="FComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.FServiceImpl"/>
- <reference name="e" />
- <reference name="d" />
+ <reference name="d">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DLocalSubService" />
+ </reference>
+ <reference name="c">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService" />
+ </reference>
+ </component>
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
</component>
+
<component name="DComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.DServiceImpl"/>
- <service name="DService">
- <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DService"/>
- <binding.ws uri="http://localhost:8085/DService"/>
- </service>
+ <service name="DService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DService" />
+ </service>
</component>
- <component name="EComponent">
- <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.EServiceImpl"/>
- <service name="EService">
- <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.EService"/>
- <binding.ws uri="http://localhost:8085/EService"/>
- </service>
- </component>
+ <wire source="FComponent/d" target="DComponent" />
+ <wire source="FComponent/c" target="CComponent" />
- <reference name="NonUniqueReference" promote="FComponent/e">
- <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.EService" />
- <binding.ws uri="http://localhost:8085/EService"/>
- </reference>
-
- <reference name="NonUniqueReference" promote="FComponent/d">
- <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DService" />
- <binding.ws uri="http://localhost:8085/DService"/>
- </reference>
-
-
</composite>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_inner.composite
new file mode 100644
index 0000000000..038702720f
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_inner.composite
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-different-reference-interface-inner-Composite">
+
+ <service name="AService" promote="AComponent"/>
+
+ <component name="AComponent">
+ <implementation.java
+ class="org.apache.tuscany.sca.vtest.assembly.composite.impl.AServiceImpl" />
+ <reference name="b">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.BService" />
+ </reference>
+ </component>
+
+ <reference name="c" promote="AComponent/b">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService" />
+ </reference>
+
+
+
+</composite>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_outer.composite
new file mode 100644
index 0000000000..43fb488282
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentreferenceinterface_outer.composite
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-different-reference-interface-outer-Composite">
+
+ <component name="DifferentInterfaceComponent">
+ <implementation.composite name="assembly-tests:Assembly-different-reference-interface-inner-Composite"/>
+ <reference name="c" target="CComponent"/>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ </component>
+
+
+</composite>
+
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_inner.composite
new file mode 100644
index 0000000000..a46d21c9a7
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_inner.composite
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-different-service-interface-inner-Composite">
+
+ <service name="DifferentInterfaceService" promote="CComponent">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.BService">
+ </interface.java>
+ </service>
+
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_outer.composite
new file mode 100644
index 0000000000..a16b71cb68
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/differentserviceinterface_outer.composite
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-different-service-interface-outer-Composite">
+
+ <component name="DifferentInterfaceComponent">
+
+ <implementation.composite name="assembly-tests:Assembly-different-service-interface-inner-Composite"/>
+
+ </component>
+</composite>
+
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonpromote_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonpromote_outer.composite
index 261246dd1b..642e558b9c 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonpromote_outer.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonpromote_outer.composite
@@ -28,5 +28,4 @@
<implementation.composite name="assembly-tests:Assembly-non-promote-inner-Composite"/>
</component>
-</composite>
-
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_inner.composite
new file mode 100644
index 0000000000..4166666536
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_inner.composite
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-non-reference-promote-inner-Composite">
+
+ <service name="AService" promote="AComponent"/>
+
+ <component name="AComponent">
+ <implementation.java
+ class="org.apache.tuscany.sca.vtest.assembly.composite.impl.AServiceImpl" />
+ <reference name="b" />
+ <reference name="c" />
+ </component>
+
+ <reference name="referenceB" promote="AComponent/b" />
+ <reference name="referenceC" promote="AComponent/NonReference" />
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_outer.composite
new file mode 100644
index 0000000000..61183d26cc
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonreferencepromote_outer.composite
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-non-reference-promote-outer-Composite">
+
+ <component name="TestNonPromoteComponent">
+
+ <implementation.composite name="assembly-tests:Assembly-non-reference-promote-inner-Composite"/>
+ <reference name="referenceB" target="BComponent"/>
+ <reference name="referenceC" target="CComponent"/>
+ </component>
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ </component>
+
+</composite>
+
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_inner.composite
new file mode 100644
index 0000000000..5e68c0c675
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_inner.composite
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-non-service-promote-inner-Composite">
+
+ <service name="BService" promote="BComponent"/>
+ <service name="CService" promote="CComponent"/>
+ <service name="NoPromoteService" promote="NoPromoteComponent"/>
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_outer.composite
new file mode 100644
index 0000000000..3dcaf9e2e7
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonservicepromote_outer.composite
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-non-service-promote-outer-Composite">
+
+ <component name="TestNonPromoteComponent">
+
+ <implementation.composite name="assembly-tests:Assembly-non-service-promote-inner-Composite"/>
+
+ </component>
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_inner.composite
index 603061c7b0..938c499910 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_inner.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_inner.composite
@@ -30,10 +30,5 @@
<reference name="NonUniqueReference" promote="AComponent/b" />
<reference name="NonUniqueReference" promote="AComponent/c" />
-
- <!--
- <reference name="b" promote="AComponent/b" />
- <reference name="c" promote="AComponent/c" />
- -->
-</composite>
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_outer.composite
index 4b7a1e09fb..5e4a513fc9 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_outer.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniquereference_outer.composite
@@ -39,5 +39,4 @@
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
</component>
-
-</composite>
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_inner.composite
index 82a14e70dd..53f61fbf8c 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_inner.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_inner.composite
@@ -25,7 +25,6 @@
<service name="BCService" promote="CComponent"/>
<service name="BCService" promote="BComponent"/>
-
<component name="BComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
@@ -34,9 +33,9 @@
<component name="CComponent">
<implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
- <service name="CServiceImpl">
+ <service name="CService">
<interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
</service>
</component>
-</composite>
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_outer.composite
index 35a1724bdb..7babfcec1f 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_outer.composite
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/nonuniqueservice_outer.composite
@@ -28,5 +28,4 @@
<implementation.composite name="assembly-tests:Assembly-non-unique-service-inner-Composite"/>
</component>
-</composite>
-
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_inner.composite
new file mode 100644
index 0000000000..81dc49f96e
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_inner.composite
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <!--
+ * Licensed to the Apache Software Foundation (ASF) under one * or more
+ contributor license agreements. See the NOTICE file * distributed with
+ this work for additional information * regarding copyright ownership.
+ The ASF licenses this file * to you under the Apache License, Version
+ 2.0 (the * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at * *
+ http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by
+ applicable law or agreed to in writing, * software distributed under
+ the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES
+ OR CONDITIONS OF ANY * KIND, either express or implied. See the
+ License for the * specific language governing permissions and
+ limitations * under the License.
+ -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-reference-inner--Composite">
+
+ <service name="AService" promote="AComponent"/>
+
+ <component name="AComponent">
+ <implementation.java
+ class="org.apache.tuscany.sca.vtest.assembly.composite.impl.AServiceImpl" />
+ <reference name="b" />
+ <reference name="c" />
+ </component>
+
+ <reference name="b" promote="AComponent/b" />
+ <reference name="c" promote="AComponent/c" />
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_outer.composite
new file mode 100644
index 0000000000..c215dc0a5c
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/reference_outer.composite
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ xmlns:assembly-tests="http://assembly-tests"
+ name="Assembly-reference-outer--Composite">
+
+ <component name="TestReferenceComponent">
+ <implementation.composite name="assembly-tests:Assembly-reference-inner--Composite"/>
+ <reference name="b" target="BComponent"/>
+ <reference name="c" target="CComponent"/>
+ </component>
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_inner.composite
new file mode 100644
index 0000000000..f2595c9798
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_inner.composite
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-service-inner-Composite">
+
+ <service name="CService" promote="CComponent"/>
+ <service name="BService" promote="BComponent"/>
+
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_outer.composite
new file mode 100644
index 0000000000..e8120025fa
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/service_outer.composite
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ xmlns:assembly-tests="http://assembly-tests"
+ name="Assembly-reference-outer--Composite">
+
+ <component name="TestServiceComponent">
+
+ <implementation.composite name="assembly-tests:Assembly-service-inner-Composite"/>
+
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subinterfacewire.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subinterfacewire.composite
new file mode 100644
index 0000000000..9b3d773b73
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subinterfacewire.composite
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-sub-interface-wire--Composite">
+
+ <component name="FComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.FServiceImpl"/>
+ <reference name="d">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DService" />
+ </reference>
+ <reference name="c">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService" />
+ </reference>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CSubServiceImpl"/>
+ <service name="CSubService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CSubService"/>
+ </service>
+ </component>
+
+
+ <component name="DComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.DSubServiceImpl"/>
+ <service name="DSubService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DSubService" />
+ </service>
+ </component>
+
+ <wire source="FComponent/d" target="DComponent" />
+ <wire source="FComponent/c" target="CComponent" />
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_inner.composite
new file mode 100644
index 0000000000..0c35b9348a
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_inner.composite
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-sub-reference-interface-inner-Composite">
+
+ <service name="AService" promote="AComponent"/>
+
+ <component name="AComponent">
+ <implementation.java
+ class="org.apache.tuscany.sca.vtest.assembly.composite.impl.AServiceImpl" />
+ <reference name="b"/>
+ <reference name="c">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService" />
+ </reference>
+ </component>
+
+ <reference name="c" promote="AComponent/c">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CSuperService" />
+ </reference>
+
+ <reference name="b" promote="AComponent/b"/>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_outer.composite
new file mode 100644
index 0000000000..62e712f533
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subreferenceinterface_outer.composite
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-sub-reference-interface-outer-Composite">
+
+ <component name="SubReferenceInterfaceComponent">
+ <implementation.composite name="assembly-tests:Assembly-sub-reference-interface-inner-Composite"/>
+ <reference name="c" target="CComponent"/>
+ <reference name="b" target="BComponent"/>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CSuperServiceImpl"/>
+ </component>
+
+ <component name="BComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.BServiceImpl"/>
+ <property name="someProperty">some b component value</property>
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_inner.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_inner.composite
new file mode 100644
index 0000000000..ac63024161
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_inner.composite
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-sub-service-interface-inner-Composite">
+
+ <service name="SubInterfaceService" promote="CComponent">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CSubService">
+ </interface.java>
+ </service>
+
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CServiceImpl"/>
+ <service name="CService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService"/>
+ </service>
+ </component>
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_outer.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_outer.composite
new file mode 100644
index 0000000000..df2c01429e
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/subserviceinterface_outer.composite
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:assembly-tests="http://assembly-tests"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-sub-service-interface-outer-Composite">
+
+ <component name="SubInterfaceComponent">
+
+ <implementation.composite name="assembly-tests:Assembly-sub-service-interface-inner-Composite"/>
+
+ </component>
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/wire.composite b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/wire.composite
new file mode 100644
index 0000000000..7eac450d23
--- /dev/null
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/main/resources/wire.composite
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://assembly-tests"
+ name="Assembly-wire--Composite">
+
+ <component name="FComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.FServiceImpl"/>
+ <reference name="d">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DService" />
+ </reference>
+ <reference name="c">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CService" />
+ </reference>
+ </component>
+
+ <component name="CComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.CSuperServiceImpl"/>
+ <service name="CSuperService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.CSuperService"/>
+ </service>
+ </component>
+
+
+ <component name="DComponent">
+ <implementation.java class="org.apache.tuscany.sca.vtest.assembly.composite.impl.DSuperServiceImpl"/>
+ <service name="DSuperService">
+ <interface.java interface="org.apache.tuscany.sca.vtest.assembly.composite.DSuperService" />
+ </service>
+ </component>
+
+ <wire source="FComponent/d" target="DComponent" />
+ <wire source="FComponent/c" target="CComponent" />
+
+</composite> \ No newline at end of file
diff --git a/branches/sca-java-1.x/vtest/assembly/composite/src/test/java/org/apache/tuscany/sca/vtest/assembly/composite/CompositeTestCase.java b/branches/sca-java-1.x/vtest/assembly/composite/src/test/java/org/apache/tuscany/sca/vtest/assembly/composite/CompositeTestCase.java
index 77f800ad33..c47896437e 100644
--- a/branches/sca-java-1.x/vtest/assembly/composite/src/test/java/org/apache/tuscany/sca/vtest/assembly/composite/CompositeTestCase.java
+++ b/branches/sca-java-1.x/vtest/assembly/composite/src/test/java/org/apache/tuscany/sca/vtest/assembly/composite/CompositeTestCase.java
@@ -51,8 +51,26 @@ public class CompositeTestCase {
* <p>
* OSOA specification doesn't have such requirement.
*/
+ @Test
+ public void ASM60001_p() throws Exception {
+ SCADomain domain = SCADomain.newInstance(LOCAL_DOMAIN_URI, "/", "compositeb.composite", "compositec.composite");
+ BService bService = domain.getService(BService.class, "BComponent");
+ Assert.assertEquals("some b component value", bService.getSomeProperty());
+ CService cService = domain.getService(CService.class, "CComponent");
+ Assert.assertEquals("Some State", cService.getState());
+ domain.close();
+ domain = null;
+ }
+
+ /**
+ * ASM60001:
+ * <p>
+ * A composite name must be unique within the namespace of the composite.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
@Test(expected = ServiceRuntimeException.class)
- public void ASM60001() throws Exception {
+ public void ASM60001_n() throws Exception {
SCADomain domain =
SCADomain.newInstance(LOCAL_DOMAIN_URI, "/", "composite.composite", "compositecopy.composite");
domain.getService(BService.class, "BComponent");
@@ -60,20 +78,22 @@ public class CompositeTestCase {
domain.close();
domain = null;
}
-
+
/**
* Lines 1036-1037:
* <p>
- * local="true" means that all the components must run in the same process.
+ * local="true" means that all the components must run in the same process.
* <p>
* ASM60002:
* <p>
- * @local="true" for a composite means that all the components within the composite MUST run
- * in the same operating system process. This is the only mode of Operation in Tuscany at
- * the moment so we just show here that even when local is false both components are run
- *
+ * @local="true" for a composite means that all the components within the
+ * composite MUST run in the same operating system process.This is the only
+ * mode of Operation in Tuscany at the moment so we just show here that even
+ * when local is false both components are run OSOA specification is the
+ * same with OASIS in this function.
*/
- @Test//(expected = ServiceRuntimeException.class)
+ @Ignore("This feature hasn't been implemented by tuscany yet.")
+ @Test
public void ASM60002() throws Exception {
initDomain("localcomponent.composite");
DService dservice = ServiceFinder.getService(DService.class, "DServiceComponent");
@@ -95,13 +115,54 @@ public class CompositeTestCase {
* <p>
* OSOA specification is the same with OASIS in this function.
*/
+ @Test
+ public void ASM60003_p() throws Exception {
+ initDomain("service_outer.composite");
+ CService cService = ServiceFinder.getService(CService.class, "TestServiceComponent/CService");
+ Assert.assertEquals("Some State", cService.getState());
+ BService bService = ServiceFinder.getService(BService.class, "TestServiceComponent/BService");
+ Assert.assertEquals("some b component value", bService.getSomeProperty());
+ cleanupDomain();
+ }
+
+ /**
+ * Lines 1498-1499:
+ * <p>
+ * name (required) – the name of the service, the name MUST BE unique across
+ * all the composite services in the composite.
+ * <p>
+ * ASM60003:
+ * <p>
+ * The name of a composite <service/> element MUST be unique across all the
+ * composite services in the composite.
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
@Test(expected = ServiceRuntimeException.class)
- public void ASM60003() throws Exception {
+ public void ASM60003_n() throws Exception {
initDomain("nonuniqueservice_outer.composite");
CService cService = ServiceFinder.getService(CService.class, "TestNonUniqueServiceComponent/BCService");
cService.getName();
BService bService = ServiceFinder.getService(BService.class, "TestNonUniqueServiceComponent/BCService");
- bService.getSomeProperty();
+ bService.getSomeProperty();
+ cleanupDomain();
+ }
+
+ /**
+ * ASM60004:
+ * <p>
+ * A composite <service/> element's promote attribute MUST identify one of
+ * the component services within that composite.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
+ @Test
+ public void ASM60004_p() throws Exception {
+ initDomain("service_outer.composite");
+ CService cService = ServiceFinder.getService(CService.class, "TestServiceComponent/CService");
+ Assert.assertEquals("Some State", cService.getState());
+ BService bService = ServiceFinder.getService(BService.class, "TestServiceComponent/BService");
+ Assert.assertEquals("some b component value", bService.getSomeProperty());
cleanupDomain();
}
@@ -114,12 +175,36 @@ public class CompositeTestCase {
* OSOA specification doesn't have such requirement.
*/
@Test(expected = ServiceRuntimeException.class)
- public void ASM60004() throws Exception {
- initDomain("nonpromote_outer.composite");
+ public void ASM60004_n() throws Exception {
+ initDomain("nonservicepromote_outer.composite");
ServiceFinder.getService(BService.class, "TestNonPromoteComponent/NoPromoteService");
cleanupDomain();
}
-
+
+ /**
+ * Lines 1512-1514:
+ * <p>
+ * If an interface is specified it must be the same or a compatible subset
+ * of the interface provided by the promoted component service, i.e. provide
+ * a subset of the operations defined by the component service.
+ * <p>
+ * ASM60005:
+ * <p>
+ * If a composite service interface is specified it must be the same or a
+ * compatible subset of the interface provided by the promoted component
+ * service, i.e. provide a subset of the operations defined by the component
+ * service.
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Test
+ public void ASM60005_p() throws Exception {
+ initDomain("subserviceinterface_outer.composite");
+ CSubService cService = ServiceFinder.getService(CSubService.class, "SubInterfaceComponent/SubInterfaceService");
+ Assert.assertEquals("Some State", cService.getState());
+ cleanupDomain();
+ }
+
/**
* Lines 1512-1514:
* <p>
@@ -137,9 +222,10 @@ public class CompositeTestCase {
* OSOA specification is the same with OASIS in this function.
*/
@Test(expected = ServiceRuntimeException.class)
- public void ASM60005() throws Exception {
- initDomain("differentinterface_outer.composite");
- BService service = ServiceFinder.getService(BService.class, "DifferentInterfaceComponent/DifferentInterfaceService");
+ public void ASM60005_n() throws Exception {
+ initDomain("differentserviceinterface_outer.composite");
+ BService service =
+ ServiceFinder.getService(BService.class, "DifferentInterfaceComponent/DifferentInterfaceService");
service.getSomeProperty();
cleanupDomain();
}
@@ -148,7 +234,30 @@ public class CompositeTestCase {
* Lines 1325-1327:
* <p>
* name (required) – the name of the reference. The name must be unique
- * across all the composite references in the composite.
+ * across all the composite references in the composite.
+ * <p>
+ * ASM60006:
+ * <p>
+ * name : NCName (1..1) - the name of the reference. The name of a composite
+ * <reference/> element MUST be unique across all the composite references
+ * in the composite.
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Test
+ public void ASM60006_p() throws Exception {
+ initDomain("reference_outer.composite");
+ AService aService = ServiceFinder.getService(AService.class, "TestReferenceComponent/AService");
+ Assert.assertEquals("some b component value", aService.getBProperty());
+ Assert.assertEquals("Some State", aService.getState());
+ cleanupDomain();
+ }
+
+ /**
+ * Lines 1325-1327:
+ * <p>
+ * name (required) – the name of the reference. The name must be unique
+ * across all the composite references in the composite.
* <p>
* ASM60006:
* <p>
@@ -158,9 +267,8 @@ public class CompositeTestCase {
* <p>
* OSOA specification is the same with OASIS in this function.
*/
- @Ignore("TUSCANY-2701")
@Test(expected = ServiceRuntimeException.class)
- public void ASM60006() throws Exception {
+ public void ASM60006_n() throws Exception {
initDomain("nonuniquereference_outer.composite");
AService service = ServiceFinder.getService(AService.class, "TestNonUniqueReferenceComponent/AService");
service.getBProperty();
@@ -168,5 +276,167 @@ public class CompositeTestCase {
cleanupDomain();
}
+ /**
+ * ASM60007:
+ * <p>
+ * Each of the URIs declared by a composite reference's @promote attribute
+ * MUST identify a component reference within the composite.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
+ @Ignore("TUSCANY-2762")
+ @Test(expected = ServiceRuntimeException.class)
+ public void ASM60007_n() throws Exception {
+ initDomain("nonreferencepromote_outer.composite");
+ AService service = ServiceFinder.getService(AService.class, "TestNonPromoteComponent");
+ service.getState();
+ cleanupDomain();
+ }
+
+ /**
+ * ASM60007:
+ * <p>
+ * Each of the URIs declared by a composite reference's @promote attribute
+ * MUST identify a component reference within the composite.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
+ @Test
+ public void ASM60007_p() throws Exception {
+ initDomain("reference_outer.composite");
+ AService aService = ServiceFinder.getService(AService.class, "TestReferenceComponent/AService");
+ Assert.assertEquals("some b component value", aService.getBProperty());
+ Assert.assertEquals("Some State", aService.getState());
+ }
+
+ /**
+ * ASM60008:
+ * <p>
+ * The interfaces of the component references promoted by a composite
+ * reference MUST be the same, or if the composite reference itself declares
+ * an interface then all the component reference interfaces must be
+ * compatible with the composite reference interface. Compatible means that
+ * the component reference interface is the same or is a strict subset of
+ * the composite reference interface.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
+ @Ignore("TUSCANY-2766,TUSCANY-2883")
+ @Test
+ public void ASM60008_n() throws Exception {
+ initDomain("differentreferenceinterface_outer.composite");
+ AService service = ServiceFinder.getService(AService.class, "DifferentInterfaceComponent/AService");
+ System.out.println(service.getState());
+ cleanupDomain();
+ }
+
+ /**
+ * ASM60008:
+ * <p>
+ * The interfaces of the component references promoted by a composite
+ * reference MUST be the same, or if the composite reference itself declares
+ * an interface then all the component reference interfaces must be
+ * compatible with the composite reference interface. Compatible means that
+ * the component reference interface is the same or is a strict subset of
+ * the composite reference interface.
+ * <p>
+ * OSOA specification doesn't have such requirement.
+ */
+ @Test
+ public void ASM60008_p() throws Exception {
+ initDomain("subreferenceinterface_outer.composite");
+ AService service = ServiceFinder.getService(AService.class, "SubReferenceInterfaceComponent/AService");
+ Assert.assertEquals("some b component value", service.getBProperty());
+ Assert.assertEquals("Some State", service.getState());
+ cleanupDomain();
+ }
+
+ /**
+ * Lines 1637-1638:
+ * <p>
+ * the source interface and the target interface MUST either both be
+ * remotable or they are both local
+ * <p>
+ * ASM60015:
+ * <p>
+ * the source interface and the target interface of a wire MUST either both
+ * be remotable or else both be local
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Test
+ public void ASM60015_p() throws Exception {
+ initDomain("wire.composite");
+ FService fservice = ServiceFinder.getService(FService.class, "FComponent");
+ Assert.assertEquals("DProperty", fservice.getGreetings(""));
+ Assert.assertEquals("Some State", fservice.getString(""));
+ cleanupDomain();
+ }
+
+ /**
+ * Lines 1637-1638:
+ * <p>
+ * the source interface and the target interface MUST either both be
+ * remotable or they are both local
+ * <p>
+ * ASM60015:
+ * <p>
+ * the source interface and the target interface of a wire MUST either both
+ * be remotable or else both be local
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Ignore("TUSCANY-2844")
+ @Test
+ public void ASM60015_n() throws Exception {
+ initDomain("differentlocalwire.composite");
+ FService fservice = ServiceFinder.getService(FService.class, "FComponent");
+ Assert.assertEquals("DProperty", fservice.getGreetings(""));
+ Assert.assertEquals("Some State", fservice.getString(""));
+ cleanupDomain();
+ }
+
+ /**
+ * Lines 1639-1640:
+ * <p>
+ * the operations on the target interface of a wire MUST be the same as or
+ * be a superset of the operations in the interface specified on the source
+ * ASM60016:
+ * <p>
+ * the operations on the target interface of a wire MUST be the same as or
+ * be a superset of the operations in the interface specified on the source
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Ignore("TUSCANY-2843")
+ @Test
+ public void ASM60016_n() throws Exception {
+ initDomain("subinterfacewire.composite");
+ FService fservice = ServiceFinder.getService(FService.class, "FComponent");
+ Assert.assertEquals("DProperty", fservice.getGreetings(""));
+ Assert.assertEquals("Some State", fservice.getString(""));
+ cleanupDomain();
+ }
+ /**
+ * Lines 1639-1640:
+ * <p>
+ * the operations on the target interface of a wire MUST be the same as or
+ * be a superset of the operations in the interface specified on the source
+ * ASM60016:
+ * <p>
+ * the operations on the target interface of a wire MUST be the same as or
+ * be a superset of the operations in the interface specified on the source
+ * <p>
+ * OSOA specification is the same with OASIS in this function.
+ */
+ @Test
+ public void ASM60016_p() throws Exception {
+ initDomain("wire.composite");
+ FService fservice = ServiceFinder.getService(FService.class, "FComponent");
+ Assert.assertEquals("DProperty", fservice.getGreetings(""));
+ Assert.assertEquals("Some State", fservice.getString(""));
+ cleanupDomain();
+ }
+
}