diff options
author | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-06 07:23:44 +0000 |
---|---|---|
committer | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-06 07:23:44 +0000 |
commit | 5b67e082ce57df77acc72cd36569a05c9a2fa347 (patch) | |
tree | 2aae54f73b2a9bbd5b8ad71f8e605e82f4595fc5 /branches/sca-java-1.5.1/stest/sampleTest | |
parent | aafdaec972cfe3439c6fe15c599d46d3e5f13fa9 (diff) |
Branch for 1.5.1
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@791397 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sca-java-1.5.1/stest/sampleTest')
128 files changed, 7057 insertions, 0 deletions
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/pom.xml b/branches/sca-java-1.5.1/stest/sampleTest/pom.xml new file mode 100644 index 0000000000..5285a5f369 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/pom.xml @@ -0,0 +1,105 @@ +<?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. +--> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-stests</artifactId> + <version>1.6-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + <artifactId>stest-sampleTest</artifactId> + <name>Apache Tuscany SCA Specification Sample Testcase</name> + + <repositories> + <repository> + <id>apache.incubator</id> + <url>http://people.apache.org/repo/m2-incubating-repository</url> + </repository> + </repositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-node-api</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-node-launcher</artifactId> + <version>1.6-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-node-impl</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-java-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-node-runtime</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-binding-ws-xml</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-host-tomcat</artifactId> + <version>1.6-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-binding-ws-axis2</artifactId> + <version>1.6-SNAPSHOT</version> + <!-- <scope>runtime</scope> --> + </dependency> + + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.5</version> + <scope>test</scope> + </dependency> + + </dependencies> + + <build> + <finalName>${artifactId}</finalName> + </build> +</project> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0001_Client.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0001_Client.java new file mode 100644 index 0000000000..0e4583ffc2 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0001_Client.java @@ -0,0 +1,69 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.Service; + +import test.TestInvocation; + +/** + * Basic test initiation class + * @author MikeEdwards + * + */ +@Service(TestInvocation.class) +public class ASM_0001_Client implements TestInvocation { + + private String testName = "ASM_0001"; + + /** + * This method is offered as a service and is + * invoked by the test client to run the test + */ + public String invokeTest( String input ) throws TestException { + String response = null; + + response = runTest( input ); + + return response; + } // end method invokeTest + + /** + * This method actually runs the test - and is subclassed by classes that run other tests. + * @param input - an input string + * @return - a response string = "ASM_0001 inputString invoked ok"; + * + */ + public String runTest( String input ){ + String response = null; + + response = testName + " " + input + " invoked ok"; + + return response; + } // end method runTest + + /** + * Sets the name of the test + * @param name - the test name + */ + protected void setTestName( String name ) { + testName = name; + } + +} // diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0002_Client.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0002_Client.java new file mode 100644 index 0000000000..8a4a0c3fdc --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0002_Client.java @@ -0,0 +1,80 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Property; + +import test.TestInvocation; + +/** + * Test initiation class with a single reference of multiplicity 1..1 + * @author MikeEdwards + * + */ +@Service(TestInvocation.class) +public class ASM_0002_Client implements TestInvocation { + + @Property + public String testName = "ASM_xxxx"; + + @Reference + public Service1 reference1; + + /** + * This method is offered as a service and is + * invoked by the test client to run the test + */ + public String invokeTest( String input ) throws TestException { + String response = null; + + try { + response = runTest( input ); + } catch( Exception e ) { + throw new TestException("Test service got an exception during execution: " + e.getClass().getName()+ " " + e.getMessage() ); + } // end try + return response; + } // end method invokeTest + + /** + * This method actually runs the test - and is subclassed by classes that run other tests. + * @param input - an input string + * @return - a response string = "ASM_0001 inputString invoked ok"; + * + */ + public String runTest( String input ){ + String response = null; + + String response1 = reference1.operation1(input); + + response = testName + " " + input + " " + response1; + + return response; + } // end method runTest + + /** + * Sets the name of the test + * @param name - the test name + */ + protected void setTestName( String name ) { + testName = name; + } + +} // diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0003_Client.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0003_Client.java new file mode 100644 index 0000000000..d4f3f7e5af --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/ASM_0003_Client.java @@ -0,0 +1,81 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Property; + +import test.TestInvocation; + +import java.util.List; + +/** + * Basic test initiation class + * @author MikeEdwards + * + */ +@Service(TestInvocation.class) +public class ASM_0003_Client implements TestInvocation { + + @Property + public String testName = "ASM_xxxx"; + + @Reference + public List<Service1> reference1; + + /** + * This method is offered as a service and is + * invoked by the test client to run the test + */ + public String invokeTest( String input ) throws TestException { + String response = null; + + response = runTest( input ); + + return response; + } // end method invokeTest + + /** + * This method actually runs the test - and is subclassed by classes that run other tests. + * @param input - an input string + * @return - a response string = "ASM_0001 inputString invoked ok"; + * + */ + public String runTest( String input ){ + String response = ""; + + for( Service1 reference : reference1 ) { + response += reference.operation1(input); + } // end for + + response = testName + " " + input + " " + response; + + return response; + } // end method runTest + + /** + * Sets the name of the test + * @param name - the test name + */ + protected void setTestName( String name ) { + testName = name; + } + +} // diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1.java new file mode 100644 index 0000000000..eeb3b31999 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1.java @@ -0,0 +1,35 @@ +/* + * 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 test; + +/** + * A test service interface + * @author MikeEdwards + * + */ +public interface Service1 { + + /** + * Method for invoking testcase service + * @param input - input parameter(s) as a String + * @return - output data as a String + */ + public String operation1( String input ); + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1Superset.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1Superset.java new file mode 100644 index 0000000000..487d748513 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service1Superset.java @@ -0,0 +1,42 @@ +/* + * 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 test; + +/** + * A superset of the basic test service interface + * @author MikeEdwards + * + */ +public interface Service1Superset { + + /** + * Method for invoking testcase service + * @param input - input parameter(s) as a String + * @return - output data as a String + */ + public String operation1( String input ); + + /** + * A second method for invoking a testcase service + * @param input - input parameter(s) as a String + * @return - output data as a String + */ + public String operation2( String input ); + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service2.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service2.java new file mode 100644 index 0000000000..3006a885b2 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/Service2.java @@ -0,0 +1,35 @@ +/* + * 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 test; + +/** + * A test service interface, designed to be incompatible with the Service1 interface + * @author MikeEdwards + * + */ +public interface Service2 { + + /** + * Method for invoking testcase service + * @param input - input parameter(s) as a String + * @return - output data as a String + */ + public int operation2( int input ); + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestException.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestException.java new file mode 100644 index 0000000000..d66a9c73bc --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestException.java @@ -0,0 +1,39 @@ +/* + * 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 test; + +/* + * Exception thrown by SCA Test services + */ +public class TestException extends Exception { + + /** + * Required serialVersionUID field + */ + private static final long serialVersionUID = -6978058912756564824L; + + public TestException() { super(); }; + + public TestException( String msg ) { super( msg ); }; + + public TestException( String msg, Throwable cause ) { super( msg, cause); }; + + public TestException( Throwable cause ) { super( cause ); }; + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestInvocation.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestInvocation.java new file mode 100644 index 0000000000..94bbe87ed0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/TestInvocation.java @@ -0,0 +1,42 @@ +/* + * 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 test; + +import javax.jws.WebService; +import javax.jws.WebMethod; +import org.osoa.sca.annotations.Remotable; + +/** + * Basic interface to invoke testcases + * @author MikeEdwards + * + */ +@Remotable +public interface TestInvocation { + + /** + * Method for invoking testcase + * @param input - input parameter(s) as a String + * @return - output data as a String + * @throws - a TestException is thrown in cases where the test service fails internally + */ + @WebMethod + public String invokeTest( String input ) throws TestException ; + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl.java new file mode 100644 index 0000000000..b61fde92c9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl.java @@ -0,0 +1,38 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Simple Java component implementation for business interface Service1 + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl implements Service1 { + + @Property + public String serviceName = "service1"; + + public String operation1(String input) { + return serviceName + " operation1 invoked"; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl2.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl2.java new file mode 100644 index 0000000000..abff52b606 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl2.java @@ -0,0 +1,44 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Enhanced Java component implementation for business interface Service1, + * where the implementation also has a single reference using the Service1 + * interface and which gets called when operation1 is invoked + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl2 implements Service1 { + + @Property + public String serviceName = "service1"; + // Reference with an implied multiplicity of (1..1) since required=true is the default + @Reference + public Service1 reference1 = null; + + public String operation1(String input) { + String result = reference1.operation1(input); + return serviceName + " operation1 invoked" + " " + result; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl3.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl3.java new file mode 100644 index 0000000000..b9f7d34638 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl3.java @@ -0,0 +1,49 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Enhanced Java component implementation for business interface Service1, + * where the implementation also has a single reference using the Service1 + * interface with mutiplicity 1..n all of which and which get called when + * operation1 is invoked + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl3 implements Service1 { + + @Property + public String serviceName = "service1"; + // Required = true + an array -> multiplicity 1..n + @Reference(required=true) + public Service1[] reference1 = null; + + public String operation1(String input) { + String result = ""; + // Call each of the references in the array, concatenating the results + for( int i=0 ; i < reference1.length; i++ ) { + result = result.concat( reference1[i].operation1(input) ); + } // end for + return serviceName + " operation1 invoked" + " " + result; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl4.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl4.java new file mode 100644 index 0000000000..0c41f7e405 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl4.java @@ -0,0 +1,50 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Enhanced Java component implementation for business interface Service1, + * where the implementation also has a single reference using the Service1 + * interface with multiplicity 0..n all of which and which get called when + * operation1 is invoked + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl4 implements Service1 { + + @Property + public String serviceName = "service1"; + // Required = false + an array -> multiplicity 0..n + @Reference(required=false) + public Service1[] reference1 = null; + + public String operation1(String input) { + String result = serviceName + " operation1 invoked"; + // Call each of the references in the array, concatenating the results + for( int i=0 ; i < reference1.length; i++ ) { + result = result.concat(" "); + result = result.concat( reference1[i].operation1(input) ); + } // end for + return result; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl5.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl5.java new file mode 100644 index 0000000000..1719ba9405 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1Impl5.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 test; + +//import org.oasisopen.sca.annotation.*; +import org.osoa.sca.annotations.*; + +/** + * Java component implementation for business interface Service1 + * - no references + * - 3 properties + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl5 implements Service1 { + + @Property + public String serviceName = "service1"; + @Property + public String serviceData1; + @Property + public String serviceData2; + + public String operation1(String input) { + return serviceName + " operation1 invoked" + serviceData1 + serviceData2; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1SupersetImpl.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1SupersetImpl.java new file mode 100644 index 0000000000..c75078f961 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service1SupersetImpl.java @@ -0,0 +1,42 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Simple Java component implementation for business interface Service1Superset + * @author MikeEdwards + * + */ +@Service(Service1Superset.class) +public class service1SupersetImpl implements Service1Superset { + + @Property + public String serviceName = "service1"; + + public String operation1(String input) { + return serviceName + " operation1 invoked"; + } + + public String operation2(String input) { + return serviceName + " operation2 invoked"; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service2Impl.java b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service2Impl.java new file mode 100644 index 0000000000..44a2789125 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/java/test/service2Impl.java @@ -0,0 +1,38 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Simple Java component implementation for business interface Service2 + * @author MikeEdwards + * + */ +@Service(Service2.class) +public class service2Impl implements Service2 { + + @Property + public String serviceName = "service1"; + + public int operation2(int input) { + return input+1; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient.wsdl b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient.wsdl new file mode 100644 index 0000000000..2a8b112cca --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient.wsdl @@ -0,0 +1,102 @@ +<?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. +--> +<!-- Produced from the TestInvocation,java interface by running a service + based on that interface in an SCA runtime using a Web services binding + + Mike Edwards, 6th January 2008 +--> +<wsdl:definitions name="TestInvocationService" + targetNamespace="http://test/" + xmlns:tns="http://test/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:SOAP11="http://schemas.xmlsoap.org/wsdl/soap/"> + <wsdl:types> + <xs:schema targetNamespace="http://test/" version="1.0" xmlns:tns="http://test/" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:element name="TestException" type="tns:TestException"/> + <xs:complexType name="TestException"> + <xs:sequence> + <xs:element minOccurs="0" name="message" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:schema> + <xs:schema attributeFormDefault="qualified" elementFormDefault="unqualified" + targetNamespace="http://test/" + xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:element name="invokeTest"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="arg0" nillable="true" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="invokeTestResponse"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:schema> + </wsdl:types> + <wsdl:message name="invokeTest"> + <wsdl:part name="invokeTest" element="tns:invokeTest"> + </wsdl:part> + </wsdl:message> + <wsdl:message name="invokeTestResponse"> + <wsdl:part name="invokeTestResponse" element="tns:invokeTestResponse"> + </wsdl:part> + </wsdl:message> + <wsdl:message name="TestException"> + <wsdl:part name="TestException" element="tns:TestException"> + </wsdl:part> + </wsdl:message> + <wsdl:portType name="TestInvocation"> + <wsdl:operation name="invokeTest"> + <wsdl:input message="tns:invokeTest"> + </wsdl:input> + <wsdl:output message="tns:invokeTestResponse"> + </wsdl:output> + <wsdl:fault name="TestException" message="tns:TestException"> + </wsdl:fault> + </wsdl:operation> + </wsdl:portType> + <wsdl:binding name="TestInvocationBinding" type="tns:TestInvocation"> + <SOAP:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="invokeTest"> + <SOAP:operation soapAction=""/> + <wsdl:input> + <SOAP:body use="literal"/> + </wsdl:input> + <wsdl:output> + <SOAP:body use="literal"/> + </wsdl:output> + <wsdl:fault name="TestException"> + <SOAP:fault name="TestException" use="literal"/> + </wsdl:fault> + </wsdl:operation> + </wsdl:binding> + <wsdl:service name="TestInvocationService"> + <wsdl:port name="TestInvocationPort" binding="tns:TestInvocationBinding"> + <SOAP:address location="http://localhost:8080/TestClient"/> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0002.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0002.composite new file mode 100644 index 0000000000..299a7d665f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0002.composite @@ -0,0 +1,47 @@ +<?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" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestClient_0002"> + + <service name="TestInvocation" promote="TestClient/TestInvocation"> + <interface.java interface="test.TestInvocation"/> + </service> + + <property name="testName" type="string"/> + + <component name="TestClient"> + <implementation.java class="test.ASM_0002_Client"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + </service> + <reference name="reference1"> + <interface.java interface="test.Service1"/> + </reference> + <property name="testName" source="$testName"/> + </component> + + <reference name="reference1" promote="TestClient/reference1"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0003.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0003.composite new file mode 100644 index 0000000000..0079b802b7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestClient_0003.composite @@ -0,0 +1,47 @@ +<?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" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestClient_0003"> + + <service name="TestInvocation" promote="TestClient/TestInvocation"> + <interface.java interface="test.TestInvocation"/> + </service> + + <property name="testName" type="string"/> + + <component name="TestClient"> + <implementation.java class="test.ASM_0003_Client"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + </service> + <reference name="reference1"> + <interface.java interface="test.Service1"/> + </reference> + <property name="testName" source="$testName"/> + </component> + + <reference name="reference1" promote="TestClient/reference1" multiplicity="1..n"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite1.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite1.composite new file mode 100644 index 0000000000..4d65e37e16 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite1.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" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite1"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite10.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite10.composite new file mode 100644 index 0000000000..0a743d7767 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite10.composite @@ -0,0 +1,47 @@ +<?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. +--> +<!-- An example of a composite which has a single service and + a single reference, but where the reference has a binding + applied to it, with a target service identified --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite10"> + + <service name="Service1" promote="Composite10Component1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="Composite10Component1"> + <implementation.java class="test.service1Impl2"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + + <reference name="Reference1" promote="Composite10Component1/reference1"> + <interface.java interface="test.Service1"/> + <binding.sca uri="TestComponent2/Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite11.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite11.composite new file mode 100644 index 0000000000..98775aa6e5 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite11.composite @@ -0,0 +1,59 @@ +<?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. +--> +<!-- An example of a composite which has one component with a reference + that is multiplicity 1..1 and which is both wired to a service of a + second component in the same composite and is also promoted by a + composite reference --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite11"> + + <service name="Service1" promote="Composite11Component1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="Composite11Component1"> + <implementation.java class="test.service1Impl2"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + <!-- reference is multiplicity 1..1 --> + <reference name="reference1" target="Composite11Component2/Service1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="Composite11Component2"> + <implementation.java class="test.service1Impl"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">Composite11-C2</property> + </component> + + <reference name="Reference1" promote="Composite11Component1/reference1"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite12.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite12.composite new file mode 100644 index 0000000000..8619ae175a --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite12.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" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite12"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + + <property name="serviceName" type="string" mustSupply="true"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite13.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite13.composite new file mode 100644 index 0000000000..37247e24fe --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite13.composite @@ -0,0 +1,46 @@ +<?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.
+-->
+<!-- A simple composite which provides a single service and no references
+ plus a property with a complex type with a type which is an XSD global
+ element -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TestComposite13">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <property name="complexType" element="test:globalElement1"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl5"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ <property name="serviceData1" source="$complexType/firstData"/>
+ <property name="serviceData2" source="$complexType/secondData"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite14.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite14.composite new file mode 100644 index 0000000000..e62c7f6eaa --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite14.composite @@ -0,0 +1,45 @@ +<?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.
+-->
+<!-- A simple composite which provides a single service and no references
+ plus a property with a simple type -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TestComposite14">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <property name="simpleType" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl5"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ <property name="serviceData1" source="$simpleType"/>
+ <property name="serviceData2" source="$simpleType"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite15.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite15.composite new file mode 100644 index 0000000000..e85a4ee831 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite15.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.
+-->
+<!-- A simple composite which provides a single service and no references,
+ where the service is configured with multiple explicit bindings -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TestComposite15">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ <binding.sca/>
+ <binding.ws/>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite16.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite16.composite new file mode 100644 index 0000000000..25284836f8 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite16.composite @@ -0,0 +1,48 @@ +<?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.
+-->
+<!-- A composite which multiple <service/> subelements with the same name and no references -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TestComposite16">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <service name="Service2" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite17.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite17.composite new file mode 100644 index 0000000000..7a562ae237 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite17.composite @@ -0,0 +1,46 @@ +<?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.
+-->
+<!-- A composite which has a single service with a @promote attribute
+ that does not reference the <service/> of a <component/> within the
+ <composite/> and no references -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TestComposite17">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <service name="Service2" promote="SpuriousComponent/SpuriousService">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite18.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite18.composite new file mode 100644 index 0000000000..9ffea418db --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite18.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.
+-->
+<!-- A composite which has a single service with a declared <interface/>
+ that is a compatible subset of the interface of the component service
+ declared in the @promote attribute -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TestComposite18">
+
+ <service name="Service1" promote="TestComponent1/Service1Superset">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1SupersetImpl"/>
+ <service name="Service1Superset">
+ <interface.java interface="test.Service1Superset"></interface.java>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite2.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite2.composite new file mode 100644 index 0000000000..9b89563a42 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite2.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" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite2"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite23.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite23.composite new file mode 100644 index 0000000000..35bd141aef --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite23.composite @@ -0,0 +1,48 @@ +<?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.
+-->
+<!-- An example of a composite which has a single service and
+ a single reference with multiplicity 0..1 -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TestComposite23">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl2"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName" source="$serviceName"/>
+ <reference name="reference1" multiplicity="1..1">
+ <interface.java interface="test.Service1"/>
+ </reference>
+ </component>
+
+ <reference name="Reference1" promote="TestComponent1/reference1" multiplicity="0..1">
+ <interface.java interface="test.Service1"/>
+ </reference>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite3.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite3.composite new file mode 100644 index 0000000000..506557606f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite3.composite @@ -0,0 +1,49 @@ +<?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. +--> +<!-- An example of a composite which is invalid because it has two + composite level references with the same @name attribute --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite3"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl2"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + + <reference name="Reference1" promote="TestComponent1/Reference"> + <interface.java interface="test.Service1"/> + </reference> + + <reference name="Reference1" promote="TestComponent1/Reference"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite4.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite4.composite new file mode 100644 index 0000000000..c8f1a4c005 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite4.composite @@ -0,0 +1,45 @@ +<?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. +--> +<!-- An example of a composite which has a single service and + a single reference --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite4"> + + <service name="Service1" promote="Composite4Component1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="Composite4Component1"> + <implementation.java class="test.service1Impl2"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + + <reference name="Reference1" promote="Composite4Component1/reference1"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite5.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite5.composite new file mode 100644 index 0000000000..b804c58a68 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite5.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 offering a single service, with a modified interface + type --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite5"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service2"></interface.java> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service2Impl"/> + <service name="Service1"> + <interface.java interface="test.Service2"></interface.java> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite6.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite6.composite new file mode 100644 index 0000000000..5c9b9ed0e0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite6.composite @@ -0,0 +1,48 @@ +<?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. +--> +<!-- An example of a composite which has a single service and + a single reference with multiplicity 1..n --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite6"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl3"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + <reference name="reference1" multiplicity="1..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <reference name="Reference1" promote="TestComponent1/reference1" multiplicity="1..n"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite7.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite7.composite new file mode 100644 index 0000000000..e498e15510 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite7.composite @@ -0,0 +1,48 @@ +<?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. +--> +<!-- An example of a composite which has a single service and + a single reference with multiplicity 0..n --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite7"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + <reference name="reference1" multiplicity="0..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <reference name="Reference1" promote="TestComponent1/reference1" multiplicity="0..n"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite8.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite8.composite new file mode 100644 index 0000000000..d5cccf8ee9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite8.composite @@ -0,0 +1,48 @@ +<?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. +--> +<!-- An example of a composite which has a single service and + a single reference with multiplicity 0..1 --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite8"> + + <service name="Service1" promote="TestComponent1/Service1"> + <interface.java interface="test.Service1"/> + </service> + + <property name="serviceName" type="string"/> + + <component name="TestComponent1"> + <implementation.java class="test.service1Impl4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName" source="$serviceName"/> + <reference name="reference1" multiplicity="0..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <reference name="Reference1" promote="TestComponent1/reference1" multiplicity="0..1"> + <interface.java interface="test.Service1"/> + </reference> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite9.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite9.composite new file mode 100644 index 0000000000..931565aae0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestComposite9.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 that provides a single service with the extended + Service1Superset interface --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TestComposite9"> + + <service name="Service1" promote="Composite9Component1/Service1Superset"> + <interface.java interface="test.Service1Superset"></interface.java> + </service> + + <property name="serviceName" type="string"/> + + <component name="Composite9Component1"> + <implementation.java class="test.service1SupersetImpl"/> + <service name="Service1Superset"> + <interface.java interface="test.Service1Superset"></interface.java> + </service> + <property name="serviceName" source="$serviceName"/> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate1.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate1.composite new file mode 100644 index 0000000000..d34ee0300a --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate1.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.
+-->
+<!-- 1st of a pair of composite files where the composites have duplicated
+ names and targetNamespaces -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="DuplicateComposite">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">duplicate1</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate2.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate2.composite new file mode 100644 index 0000000000..d8d4a3ab45 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/TestDuplicate2.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.
+-->
+<!-- 2nd of a pair of composite files where the composites have duplicated
+ names and targetNamespaces -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="DuplicateComposite">
+
+ <service name="Service1" promote="TestComponent1/Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+
+ <property name="serviceName" type="string"/>
+
+ <component name="TestComponent1">
+ <implementation.java class="test.service1Impl"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">duplicate2</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0001.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0001.composite new file mode 100644 index 0000000000..a8864587f3 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0001.composite @@ -0,0 +1,33 @@ +<?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" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0001"> + + <component name="TestClient"> + <implementation.java class="test.ASM_0001_Client"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.sca/> + </service> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0002.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0002.composite new file mode 100644 index 0000000000..058bdff522 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0002.composite @@ -0,0 +1,48 @@ +<?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.
+-->
+<!--
+ ASM_0002_TestCase tests that component with a single reference can be wired to a single
+ component service in the same composite.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TEST_ASM_0002">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0002</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">service1</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0003.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0003.composite new file mode 100644 index 0000000000..d3b4e51ef7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0003.composite @@ -0,0 +1,64 @@ +<?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.
+-->
+<!-- Test case that verifies that an implementation with a reference with multiplicity 1..n can
+ be validly wired to 3 target services and invoke them all correctly.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TEST_ASM_0003">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0003"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1 TestComponent2/Service1 TestComponent3/Service1" />
+ <property name="testName">ASM_0003</property>
+ </component>
+
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">service1</property>
+ </component>
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">service2</property>
+ </component>
+
+ <component name="TestComponent3">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"></interface.java>
+ </service>
+ <property name="serviceName">service3</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0004.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0004.composite new file mode 100644 index 0000000000..9f586ddbcf --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0004.composite @@ -0,0 +1,62 @@ +<?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. +--> +<!-- Test that verifies that a reference with multiplicity 1..1 which is provided + with multiple wire targets in the component configuration is marked as an error --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0004"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1 TestComponent2/Service1 TestComponent3/Service1" /> + <property name="testName">ASM_0004</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service1</property> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service3</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0005.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0005.composite new file mode 100644 index 0000000000..1bc61089a7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0005.composite @@ -0,0 +1,49 @@ +<?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. +--> +<!-- Test that a component with multiple <service/> elements must have unique @name attributes for each + service - negative test that has a component with 2 services with the same name --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0005"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0005</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite2"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service1</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0006.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0006.composite new file mode 100644 index 0000000000..2705d967a2 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0006.composite @@ -0,0 +1,47 @@ +<?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. +--> +<!-- Test checks that the @name attribute of a <service/> + element of a <component/> matches the @name attribute of a <service/> element of the + componentType of the <implementation/> used by the <component/> --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0006"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/InvalidName" /> + <property name="testName">ASM_0005</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite1"/> + <service name="InvalidName"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service1</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0007.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0007.composite new file mode 100644 index 0000000000..521d28b27d --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0007.composite @@ -0,0 +1,60 @@ +<?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. +--> +<!-- Test that the @name attribute of a <reference/> element of a + component is not equal to the @name attribute of any other + <reference/> element of the same component --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0007"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0005</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite3"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- Two references with the same name - the implementation also has + two references of the same name so that the component type + matches the configuration of the component --> + <reference name="Reference1" target="TestComponent2/Service1"/> + <reference name="Reference1" target="TestComponent2/Service1"/> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0008.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0008.composite new file mode 100644 index 0000000000..618d090bcb --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0008.composite @@ -0,0 +1,61 @@ +<?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. +--> +<!-- Tests that the @name attribute of a <reference/> element of a + component is equal to the @name attribute of a <reference/> + element of the <componentType/> of the <implementation/> of + the <component/> - negative test in that here there is a + reference @name which does NOT match a reference name in the + component type --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0008"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0005</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- This reference has a name that does not match the name of a + Reference in the implementation --> + <reference name="InvalidName" target="TestComponent2/Service1"/> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0009.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0009.composite new file mode 100644 index 0000000000..a161bdc36f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0009.composite @@ -0,0 +1,63 @@ +<?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. +--> +<!-- Tests that the @name attribute of a <component/> element + in a <composite/> is not the same as the @name + attribute of a second component in the same <composite/> --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0009"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0009</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service2</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0010.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0010.composite new file mode 100644 index 0000000000..d753742383 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0010.composite @@ -0,0 +1,51 @@ +<?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. +--> +<!-- Tests interface specified by the <interface/> child element of a + <service/> element is a compatible subset of the interface declared + for the <service/> element with the same @name attribute in the + <componentType/> of the <implementation/> of the <component/> + parent of the <service/> --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0010"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0010</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite5"/> + <!-- This service declares interface Service1 while the implementation offers + Service2, which is not compatible with Service1 --> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0011.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0011.composite new file mode 100644 index 0000000000..50c5bcc7b7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0011.composite @@ -0,0 +1,61 @@ +<?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. +--> +<!-- Tests the multiplicity of a <reference/> element of a <component/> + can be 1..1 where the multiplicity of the equivalent <reference/> + element in the <componentType/> of the <implementation/> of the + <component/> is 1..n --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0011"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0011</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite6"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- The multiplicity declared for this reference is 1..1 while the multiplicity of + the corresponding reference on the componentType of the implementation is 1..n --> + <reference name="Reference1" target="TestComponent2/Service1" multiplicity="1..1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0012.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0012.composite new file mode 100644 index 0000000000..586aec454f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0012.composite @@ -0,0 +1,101 @@ +<?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. +--> +<!-- Tests that the the multiplicity + of a <reference/> element of a <component/> can be any one of 0..1, + 1..1, 0..n, 1..n where the multiplicity of the equivalent <reference/> + element in the <componentType/> of the <implementation/> of the + <component/> is 0..n --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0012"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0012</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- The multiplicity declared for this reference is 0..1 while the multiplicity of + the corresponding reference on the componentType of the implementation is 0..n --> + <reference name="Reference1" target="TestComponent2/Service1" multiplicity="0..1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service2</property> + <!-- The multiplicity declared for this reference is 1..1 while the multiplicity of + the corresponding reference on the componentType of the implementation is 0..n --> + <reference name="Reference1" target="TestComponent3/Service1" multiplicity="1..1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service3</property> + <!-- The multiplicity declared for this reference is 0..n while the multiplicity of + the corresponding reference on the componentType of the implementation is 0..n --> + <reference name="Reference1" target="TestComponent4/Service1" multiplicity="0..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent4"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service4</property> + <!-- The multiplicity declared for this reference is 1..n while the multiplicity of + the corresponding reference on the componentType of the implementation is 0..n --> + <reference name="Reference1" target="TestComponent5/Service1" multiplicity="1..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent5"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service5</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0013.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0013.composite new file mode 100644 index 0000000000..2fb5f3a969 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0013.composite @@ -0,0 +1,62 @@ +<?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. +--> +<!-- Tests that the the multiplicity + of a <reference/> element of a <component/> is + 1..1 where the multiplicity of the equivalent <reference/> + element in the <componentType/> of the <implementation/> of the + <component/> is 1..1 --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0013"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0013</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- The multiplicity declared for this reference is 1..1 while the multiplicity of + the corresponding reference on the componentType of the implementation is 1..1 --> + <reference name="Reference1" target="TestComponent2/Service1" multiplicity="1..1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0014.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0014.composite new file mode 100644 index 0000000000..09082d724b --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0014.composite @@ -0,0 +1,61 @@ +<?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. +--> +<!-- Tests that the multiplicity of a <reference/> element of a + <component/> is 0..n where the multiplicity of the equivalent + <reference/> element in the <componentType/> of the + <implementation/> of the <component/> is 1..1 --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0014"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0014</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- The multiplicity declared for this reference is 0..n while the multiplicity of + the corresponding reference on the componentType of the implementation is 1..1 --> + <reference name="Reference1" target="TestComponent2/Service1" multiplicity="0..n"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0015.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0015.composite new file mode 100644 index 0000000000..53c14c2248 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0015.composite @@ -0,0 +1,62 @@ +<?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. +--> +<!-- Tests that the the multiplicity + of a <reference/> element of a <component/> is + 1..1 where the multiplicity of the equivalent <reference/> + element in the <componentType/> of the <implementation/> of the + <component/> is 0..1 --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0015"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0015</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite8"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- The multiplicity declared for this reference is 1..1 while the multiplicity of + the corresponding reference on the componentType of the implementation is 0..1 --> + <reference name="Reference1" target="TestComponent2/Service1" multiplicity="1..1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0016.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0016.composite new file mode 100644 index 0000000000..28503194b6 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0016.composite @@ -0,0 +1,61 @@ +<?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. +--> +<!-- Tests that the interface declared by the <interface/> child element + of a <reference/> of a <component/> is a compatible superset of the + interface declared on the corresponding <reference/> of the + componentType of the <implementation/> of the <component/> --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0016"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0016</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite4"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <reference name="Reference1" target="TestComponent2/Service1"> + <!-- Component type has the interface = test.Service1 - here + we use an interface that is a superset --> + <interface.java interface="test.Service1Superset"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite9"/> + <service name="Service1"> + <interface.java interface="test.Service1Superset"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0017.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0017.composite new file mode 100644 index 0000000000..7f7fdf8f25 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0017.composite @@ -0,0 +1,61 @@ +<?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. +--> +<!-- Tests that where a <reference/> of a <component/> has no <binding/> + child element, but the corresponding <reference/> element in the + componentType does have a binding child element, the <binding/> + from the componentType is used for the reference --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0017"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0017</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite10"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- ComponentType has a binding for this reference that + identifies the target for this reference --> + <reference name="Reference1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0018.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0018.composite new file mode 100644 index 0000000000..af18c09162 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0018.composite @@ -0,0 +1,72 @@ +<?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. +--> +<!-- Tests that where a <reference/> of a <component/> has a <binding/> + child element and the corresponding <reference/> element in the + componentType has a binding child element, the <binding/> + from the <reference/> is used for the reference --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0018"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0018</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite10"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- ComponentType has a binding for this reference that + identifies a target for this reference --> + <reference name="Reference1"> + <interface.java interface="test.Service1"/> + <binding.sca uri="TestComponent3/Service1"/> + </reference> + </component> + + <!-- This component is the target identified by the Component Type --> + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + + <!-- This component is the target identified by the reference --> + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service3</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0019.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0019.composite new file mode 100644 index 0000000000..f5cfc652f7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0019.composite @@ -0,0 +1,69 @@ +<?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. +--> +<!-- Tests that where a <reference/> of a <component/> has autowire=true + and also has target identifying a single target service that the + reference is wired only to the single service identified by the + target attribute --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0019"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0019</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <reference name="Reference1" autowire="true" target="TestComponent3/Service1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <!-- This component is the target identified by the Component Type --> + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + + <!-- This component is the target identified by the reference --> + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service3</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0020.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0020.composite new file mode 100644 index 0000000000..e1ab046081 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0020.composite @@ -0,0 +1,71 @@ +<?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. +--> +<!-- Tests that where a <reference/> of a <component/> has + @autowire=true and where there is also a single <wire/> element + which as that <reference/> as its source that the reference is + wired only to the single service identified by the <wire/> element --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0020"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0020</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <reference name="Reference1" autowire="true"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <wire source="TestComponent1/Reference1" target="TestComponent3/Service1"/> + + <!-- This component is the target identified by the Component Type --> + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + + <!-- This component is the target identified by the reference --> + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service3</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0021.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0021.composite new file mode 100644 index 0000000000..1234571493 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0021.composite @@ -0,0 +1,70 @@ +<?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. +--> +<!-- Tests that where a <reference/> of a <component/> has @autowire=true + and where the <reference/> has a <binding/> child element which + declares a single target service, the reference is wired only to + the single service identified by the <wire/> element --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0021"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0021</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite7"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <reference name="Reference1" autowire="true"> + <interface.java interface="test.Service1"/> + <binding.sca uri="TestComponent3/Service1"/> + </reference> + </component> + + <!-- This component is the target identified by the Component Type --> + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + + <!-- This component is the target identified by the reference --> + <component name="TestComponent3"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service3</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0022.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0022.composite new file mode 100644 index 0000000000..b32ecf1dba --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0022.composite @@ -0,0 +1,50 @@ +<?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. +--> +<!-- Tests that where a <component/> <reference/> with multiplicity=0..1 + is unwired (by any means) that the component executes correctly --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0022"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0022</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite8"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <!-- Reference is 0..1 and is deliberately left unwired --> + <reference name="Reference1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0023.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0023.composite new file mode 100644 index 0000000000..df781e4408 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0023.composite @@ -0,0 +1,60 @@ +<?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. +--> +<!-- Tests that where a <component/> <reference/> with multiplicity=1..1 + is wired to a component service in the same composite and is also + promoted by a <composite/> <reference/> which is wired to a target + service by a component using the <composite/> as its implementation, + that this is an error --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" + xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0023"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.ws/> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_0023</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite11"/> + <service name="Service1"> + <interface.java interface="test.Service1"/> + </service> + <property name="serviceName">service1</property> + <reference name="Reference1" target="TestComponent2/Service1"> + <interface.java interface="test.Service1"/> + </reference> + </component> + + <component name="TestComponent2"> + <implementation.composite name="tns:TestComposite1"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service2</property> + </component> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0024.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0024.composite new file mode 100644 index 0000000000..6859c22502 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0024.composite @@ -0,0 +1,60 @@ +<?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.
+-->
+<!-- Tests that where a <component/> <reference/> has @target set to
+ some service, that the reference can have no child <binding/> elements -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:sample="http://oasis/tests"
+ name="TEST_ASM_0024">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0024</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite4"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <reference name="Reference1" >
+ <interface.java interface="test.Service1" target="TestComponent2/Service1"/>
+ <!--A binding which contradicts the @target attribute -->
+ <binding.ws uri="http://localhost:8080/TestComponent2"/>
+ </reference>
+ </component>
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ <binding.ws/>
+ </service>
+ <property name="serviceName">service2</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0025.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0025.composite new file mode 100644 index 0000000000..92c5e3189f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0025.composite @@ -0,0 +1,54 @@ +<?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.
+-->
+<!-- Tests that where a <component/> <property/> has its value set by means
+ of a child <value/> element, that the type of the <value/> element matches
+ the type declared for the <property/> element -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0025">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0025</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite12"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <!-- Property with complex type with a value declared using a <value/> subelement -->
+ <property name="complexType" type="test:ComplexType1">
+ <ComplexType1Value type="test:ComplexType1">
+ <test:firstData>complex1</test:firstData>
+ <test:secondData>complex2</test:secondData>
+ </ComplexType1Value>
+ </property>
+ <property name="serviceName">service1</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0026.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0026.composite new file mode 100644 index 0000000000..3c5a441899 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0026.composite @@ -0,0 +1,57 @@ +<?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.
+-->
+<!-- Tests that where a <component/> <property/> has its value set by means
+ of a child element that is NOT a <value/> element, that a) the type of
+ the <property/> element is declared as an XML Schema global element by
+ its @element attribute and that the child element is an instance of that
+ global element -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0026">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0026</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite13"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!-- Property with complex type with a value declared using a subelement
+ with the correct XSD global element type -->
+ <property name="complexType" element="test:globalElement1">
+ <test:globalElement1>
+ <firstData>complex1</firstData>
+ <secondData>complex2</secondData>
+ </test:globalElement1>
+ </property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0027.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0027.composite new file mode 100644 index 0000000000..c2ed53146f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0027.composite @@ -0,0 +1,49 @@ +<?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.
+-->
+<!-- Tests that where a <component/> has 2 or more <property/> child elements
+ that each <property/> element has a unique @name attribute value -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0027">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0027</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!-- Multiple properties with the same @name attribute value - an error -->
+ <property name="serviceName">service2</property>
+ <property name="serviceName">service3</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0028.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0028.composite new file mode 100644 index 0000000000..b79eefbce9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0028.composite @@ -0,0 +1,55 @@ +<?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.
+-->
+<!-- Tests that a <component/> <property/> @name attribute matches the
+ @name attribute of one of the <property/> elements of the
+ <componentType/> of the <implementation/> of the <component/> -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0028">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0028</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+
+ <!--
+ <property name="serviceName">service1</property>
+ -->
+
+ <!-- Property with @name attribute that does not match the @name
+ attribute of any of the <property/> elements in the
+ <componentType/> of the <implementation/> -->
+ <property name="randomName">randomValue</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0029.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0029.composite new file mode 100644 index 0000000000..c1aaba1775 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0029.composite @@ -0,0 +1,58 @@ +<?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.
+-->
+<!-- Tests that that where a <component/> <property/> has @many=false that
+ there is only one <value/> child element of the <property/> -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0029">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0029</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite12"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!-- Property with complex type with many=false but 2 <value/>
+ subelements - which is an error -->
+ <property name="complexType" type="test:ComplexType1" many="false">
+ <value>
+ <test:firstData>SomeData</test:firstData>
+ <test:secondData>MoreData</test:secondData>
+ </value>
+ <value>
+ <test:firstData>SomeData2</test:firstData>
+ <test:secondData>MoreData2</test:secondData>
+ </value>
+ </property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0030.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0030.composite new file mode 100644 index 0000000000..0ce29cdab2 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0030.composite @@ -0,0 +1,51 @@ +<?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.
+-->
+<!-- Tests that a <component/> <property/> with a @value attribute set
+does not have any <value/> child elements -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0030">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0030</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite14"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!-- Property with value set via a @value attribute and also having
+ <value/> child elements, which is an error -->
+ <property name="simpleType" value="someValue">
+ <value>someOtherValue</value>
+ </property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0031.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0031.composite new file mode 100644 index 0000000000..50cd134a6e --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0031.composite @@ -0,0 +1,68 @@ +<?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.
+-->
+<!-- Tests that where a <component/> <reference/> has its @target attribute set
+ to a valid service and the <composite/> also contains a <wire/> element with
+ @source set to the <component/> <reference/> and @target set to a second valid
+ service and has @replace=true, the <reference/> is wired to the second service
+ only -->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0031">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0031</property>
+ </component>
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite4"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <reference name="Reference1" target="TestComponent2/Service1"/>
+ </component>
+
+ <!-- Here is a wire that overrides the reference target of TestComponent1/Reference1 -->
+ <wire source="TestComponent1/Reference1" target="TestComponent3/Service1" replace="true"/>
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service2</property>
+ </component>
+
+ <component name="TestComponent3">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service3</property>
+ </component>
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0039.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0039.composite new file mode 100644 index 0000000000..bf69bef4fe --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0039.composite @@ -0,0 +1,70 @@ +<?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"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0039">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0039</property>
+ </component>
+
+ <!-- Implementation with a single reference with multiplicity 1..n which
+ has multiple concrete bindings applied to it -->
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite8"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!-- multiplicity is restricted to 1, but 2 tagets is specified, this should be detected in deployment time -->
+ <!--In the test, it reported "WARNING: Too many targets on reference: Reference1"-->
+ <!--if the multiplicity is specified to "1..1", it reported "Component reference multiplicity incompatible with reference multiplicity: Component = TestComponent1 Reference = Reference1"-->
+ <reference name="Reference1" target="TestComponent2/Service1 TestComponent3/Service1" multiplicity="0..1">
+ <interface.java interface="test.Service1"/>
+ </reference>
+ </component>
+
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service2</property>
+ </component>
+
+ <component name="TestComponent3">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service3</property>
+ </component>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0040.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0040.composite new file mode 100644 index 0000000000..1b01ddc9d3 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0040.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.
+-->
+<!-- Tests that if the runtime is using an untargeted reference,
+it should throw an exception.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0040">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0040</property>
+ </component>
+
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite23"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+ <!--Reference1 has no target service, the SCA runtime will throw the ServiceRunTimeExceptions.-->
+ <reference name="Reference1" multiplicity="0..1">
+ <interface.java interface="test.Service1"/>
+ </reference>
+ </component>
+
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0041.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0041.composite new file mode 100644 index 0000000000..b56100c8e9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0041.composite @@ -0,0 +1,63 @@ +<?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.
+-->
+<!--
+test if @wiredByImpl="true", <reference/> element has no <binding/> child elements.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0041">
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0041</property>
+ </component>
+
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite23"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+
+ <reference name="Reference1" wiredByImpl="true">
+ <interface.java interface="test.Service1"/>
+ <binding.sca uri="TestComponent2/Service1"/>
+ </reference>
+ </component>
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+
+ </component>
+
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0042.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0042.composite new file mode 100644 index 0000000000..9904308676 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0042.composite @@ -0,0 +1,65 @@ +<?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.
+-->
+<!-- test if @wiredByImpl="true",
+No <wire/> elements have the <reference/> element declared as the @source for the wire.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0042">
+
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0041</property>
+ </component>
+
+
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite23"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+
+ <reference name="Reference1" wiredByImpl="true">
+ <interface.java interface="test.Service1"/>
+
+ </reference>
+ </component>
+
+ <component name="TestComponent2">
+ <implementation.composite name="tns:TestComposite1"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+
+ </component>
+
+ <wire source="TestComponent1/Reference1" target="TestComponent2/Service1"/>
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0043.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0043.composite new file mode 100644 index 0000000000..b71c81a749 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0043.composite @@ -0,0 +1,89 @@ +<?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.
+-->
+<!-- test if @wiredByImpl="true",
+No <wire/> elements have the <reference/> element declared as the @source for the wire.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://oasis/tests"
+ xmlns:tns="http://oasis/tests"
+ xmlns:test="http://oasis/tests"
+ name="TEST_ASM_0043">
+
+
+ <component name="TestClient">
+ <implementation.composite name="tns:TestClient_0002"/>
+ <service name="TestInvocation">
+ <interface.java interface="test.TestInvocation"/>
+ <binding.ws/>
+ </service>
+ <reference name="reference1" target="TestComponent1/Service1" />
+ <property name="testName">ASM_0043</property>
+ </component>
+
+ <!--JMS client-->
+ <component name="TestComponent1">
+ <implementation.composite name="tns:TestComposite23"/>
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ </service>
+ <property name="serviceName">service1</property>
+
+ <reference name="Reference1" target="TestComponent2/Service1">
+ <interface.java interface="test.Service1"/>
+ <binding.jms uri="jms:DestQueueA">
+ <destination name="DestQueueA"/>
+ </binding.jms>
+
+ </reference>
+ </component>
+
+ <!--JMS service-->
+ <component name="TestComponent2">
+
+ <implementation.java class="test.service1Impl"/>
+
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ <binding.jms>
+ <destination name="DestQueueA" create="always"/>
+ </binding.jms>
+
+ </service>
+ <property name="serviceName">service1</property>
+
+ </component>
+
+ <!--WebService service-->
+ <component name="TestComponent3">
+
+ <implementation.java class="test.service1Impl"/>
+
+ <service name="Service1">
+ <interface.java interface="test.Service1"/>
+ <binding.ws uri="http://localhost:8080/Service1"/>
+
+ </service>
+ <property name="serviceName">service1</property>
+
+ </component>
+
+
+
+</composite>
diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0101.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0101.composite new file mode 100644 index 0000000000..d2bfe29775 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_0101.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" + targetNamespace="http://oasis/tests" + xmlns:sample="http://oasis/tests" + name="TEST_ASM_0101"> + + <component name="TestClient"> + <implementation.java class="test.ASM_0001_Client"/> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation"/> + <binding.sca/> + <binding.ws/> + </service> + <!-- reference name="testRef1" target="TestComponent1/service1" / --> + </component> + +<!-- + <component name="TestComponent1"> + <implementation.java class="test.ASM_0001_Impl1"/> + <service name="service1"/> + </component> +--> + +</composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_6030.composite b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_6030.composite new file mode 100644 index 0000000000..1d34ffc721 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_ASM_6030.composite @@ -0,0 +1,46 @@ +<?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. +--> +<!-- + For a composite used as a component implementation, all properties of + components within the composite, where the underlying component + implementation specifies "mustSupply=true" for the property, MUST + either specify a value for the property or source the value from a + composite property. +--> + +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://oasis/tests" xmlns:tns="http://oasis/tests" + xmlns:sample="http://oasis/tests" name="TEST_ASM_6030"> + + <component name="TestClient"> + <implementation.composite name="tns:TestClient_0002" /> + <service name="TestInvocation"> + <interface.java interface="test.TestInvocation" /> + <binding.ws /> + </service> + <reference name="reference1" target="TestComponent1/Service1" /> + <property name="testName">ASM_6030</property> + </component> + + <component name="TestComponent1"> + <implementation.composite name="tns:TestComposite12"/> + <service name="Service1"> + <interface.java interface="test.Service1"></interface.java> + </service> + <property name="serviceName">service1</property> + </component> + + </composite> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_Types.xsd b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_Types.xsd new file mode 100644 index 0000000000..c0f488ab12 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/Test_Types.xsd @@ -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. +--> +<!-- Schema for Schema types used by the SCA TestCases --> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://oasis/tests" + xmlns:test="http://oasis/tests" + xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" + elementFormDefault="qualified"> + + + <!-- A complex type --> + <complexType name="ComplexType1"> + <element name="firstData" type="string" /> + <element name="secondData" type="string" /> + </complexType> + + <!-- A global element with a complex type --> + <element name="globalElement1" type="test:ComplexType1"/> + +</schema> diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/jndi.properties b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/jndi.properties new file mode 100644 index 0000000000..9abdff215d --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/main/resources/jndi.properties @@ -0,0 +1,39 @@ +## --------------------------------------------------------------------------- +## 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. +## --------------------------------------------------------------------------- + +# START SNIPPET: jndi + +java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory + +# use the following property to configure the default connector +java.naming.provider.url = vm://localhost?broker.persistent=false + +# use the following property to specify the JNDI name the connection factory +# should appear as. +#connectionFactoryNames = connectionFactory, queueConnectionFactory, topicConnectionFactry +connectionFactoryNames = ConnectionFactory + +# register some queues in JNDI using the form +# queue.[jndiName] = [physicalName] +queue.RequestQueue = RequestQueue +queue.ResponseQueue = ResponseQueue + +# register some topics in JNDI using the form +# topic.[jndiName] = [physicalName] +#topic.MyTopic = example.MyTopic + +# END SNIPPET: jndi diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0002_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0002_TestCase.java new file mode 100644 index 0000000000..54aaca8b6a --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0002_TestCase.java @@ -0,0 +1,44 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import test.TestInvocation; + + +/** + * ASM_0002_TestCase + */ +public class ASM_0002_TestCase extends BaseTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0002"; + config.input = "request"; + config.output = config.testName + " " + config.input + " service1 operation1 invoked"; + config.composite = "Test_ASM_0002.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0002 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0003_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0003_TestCase.java new file mode 100644 index 0000000000..930200009e --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0003_TestCase.java @@ -0,0 +1,44 @@ +/* + * 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 client; + + +import test.ASM_0003_Client; +import testClient.TestInvocation; + +/** + * A generic test client based on Tuscany APIs + */ +public class ASM_0003_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0003"; + config.input = "request"; + config.output = config.testName + " " + config.input + " service1 operation1 invoked" + + "service2 operation1 invoked" + "service3 operation1 invoked"; + config.composite = "Test_ASM_0003.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0003_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0004_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0004_TestCase.java new file mode 100644 index 0000000000..cafa6d25c3 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0004_TestCase.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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * A generic test client based on Tuscany APIs + */ +public class ASM_0004_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0004"; + config.input = "request"; + config.output = "org.osoa.sca.ServiceRuntimeException: Too many targets on reference: reference1"; + config.composite = "Test_ASM_0004.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0004 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0005_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0005_TestCase.java new file mode 100644 index 0000000000..e77a9b13f0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0005_TestCase.java @@ -0,0 +1,44 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0005_TestCase, which checks that a component with multiple <service/> + * elements with the same @name attribute is an error + */ +public class ASM_0005_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0005"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0005.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0006_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0006_TestCase.java new file mode 100644 index 0000000000..822fba7d78 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0006_TestCase.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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0006_TestCase, which checks that the @name attribute of a <service/> + * element of a <component/> matches the @name attribute of a <service/> element of the + * componentType of the <implementation/> used by the <component/> + */ +public class ASM_0006_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0006"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0006.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0007_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0007_TestCase.java new file mode 100644 index 0000000000..220dfc992d --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0007_TestCase.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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0007_TestCase, which tests that the @name attribute of a <reference/> + * element of a component is not equal to the @name attribute of any other <reference/> + * element of the same component + */ +public class ASM_0007_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0007"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0007.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0008_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0008_TestCase.java new file mode 100644 index 0000000000..4df69020a0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0008_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0008_TestCase, which Tests that the @name attribute of a + * <reference/> element of a component is equal to the @name attribute of a + * <reference/> element of the <componentType/> of the <implementation/> of + * the <component/> + */ +public class ASM_0008_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0008"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0008.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0009_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0009_TestCase.java new file mode 100644 index 0000000000..2bbcc04465 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0009_TestCase.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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0009_TestCase, which tests that the @name attribute of a + * <component/> element in a <composite/> is not the same as the @name + * attribute of a second component in the same <composite/> + */ +public class ASM_0009_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0009"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0009.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0010_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0010_TestCase.java new file mode 100644 index 0000000000..274c39347f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0010_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0009_TestCase, which tests that the interface specified + * by the <interface/> child element of a <service/> element is a compatible + * subset of the interface declared for the <service/> element with the + * same @name attribute in the <componentType/> of the <implementation/> + * of the <component/> parent of the <service/> + */ +public class ASM_0010_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0010"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0010.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0011_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0011_TestCase.java new file mode 100644 index 0000000000..7a503fb459 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0011_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0011_TestCase, which tests that the the multiplicity + * of a <reference/> element of a <component/> can be 1..1 where the + * multiplicity of the equivalent <reference/> element in the + * <componentType/> of the <implementation/> of the <component/> is 1..n + */ +public class ASM_0011_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0011"; + config.input = "request"; + config.output = "ASM_0011 request service1 operation1 invoked service2 operation1 invoked"; + config.composite = "Test_ASM_0011.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java new file mode 100644 index 0000000000..228d1810e0 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java @@ -0,0 +1,48 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0012_TestCase, which tests that the the multiplicity + * of a <reference/> element of a <component/> can be any one of 0..1, + * 1..1, 0..n, 1..n where the multiplicity of the equivalent <reference/> + * element in the <componentType/> of the <implementation/> of the + * <component/> is 0..n + */ +public class ASM_0012_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0012"; + config.input = "request"; + config.output = "ASM_0012 request service1 operation1 invoked service2 operation1 invoked" + + " service3 operation1 invoked service4 operation1 invoked service5 operation1 invoked"; + config.composite = "Test_ASM_0012.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0013_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0013_TestCase.java new file mode 100644 index 0000000000..a02ca18184 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0013_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0013_TestCase, which tests that the the multiplicity + * of a <reference/> element of a <component/> is 1..1 where the + * multiplicity of the equivalent <reference/> element in the + * <componentType/> of the <implementation/> of the <component/> is 1..1 + */ +public class ASM_0013_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0013"; + config.input = "request"; + config.output = "ASM_0013 request service1 operation1 invoked service2 operation1 invoked"; + config.composite = "Test_ASM_0013.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0014_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0014_TestCase.java new file mode 100644 index 0000000000..c4960925f9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0014_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0014_TestCase, which tests that the multiplicity of a + * <reference/> element of a <component/> is 0..n where the multiplicity + * of the equivalent <reference/> element in the <componentType/> of the + * <implementation/> of the <component/> is 1..1 + */ +public class ASM_0014_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0014"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0014.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0015_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0015_TestCase.java new file mode 100644 index 0000000000..c9c7c2ba1c --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0015_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0015_TestCase, which tests that the the multiplicity + * of a <reference/> element of a <component/> is 1..1 where the + * multiplicity of the equivalent <reference/> element in the + * <componentType/> of the <implementation/> of the <component/> is 0..1 + */ +public class ASM_0015_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0015"; + config.input = "request"; + config.output = "ASM_0015 request service1 operation1 invoked service2 operation1 invoked"; + config.composite = "Test_ASM_0015.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0016_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0016_TestCase.java new file mode 100644 index 0000000000..e9817a069b --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0016_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0016_TestCase, which tests that the interface declared + * by the <interface/> child element of a <reference/> of a <component/> + * is a compatible superset of the interface declared on the corresponding + * <reference/> of the componentType of the <implementation/> of the <component/> + */ +public class ASM_0016_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0016"; + config.input = "request"; + config.output = "ASM_0016 request service1 operation1 invoked service2 operation1 invoked"; + config.composite = "Test_ASM_0016.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0017_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0017_TestCase.java new file mode 100644 index 0000000000..735a9bfc38 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0017_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0017_TestCase, which tests that where a <reference/> + * of a <component/> has no <binding/> child element, but the + * corresponding <reference/> element in the componentType does have + * a binding child element, the <binding/> from the componentType is + * used for the reference + */ +public class ASM_0017_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0017"; + config.input = "request"; + config.output = "ASM_0017 request service1 operation1 invoked service2 operation1 invoked"; + config.composite = "Test_ASM_0017.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0018_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0018_TestCase.java new file mode 100644 index 0000000000..ab872f09a6 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0018_TestCase.java @@ -0,0 +1,61 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Line 1379-1381: + * <p> + * OSOA: + * Note that a binding element may specify an endpoint which is the target of + * that binding. A reference must not mix the use of endpoints specified via + * binding elements with target endpoints specified via the target attribute. + * <p> + * [ASM50015] + * <p> + * OASIS: + * If a binding element has a value specified for a target service using + * its @uri attribute, * the binding element MUST NOT identify target + * services using binding specific attributes or elements. + * + * Client for ASM_0018_TestCase, which tests that where a <reference/> + * of a <component/> has a <binding/> child element and the + * corresponding <reference/> element in the componentType has + * a binding child element, the <binding/> from the <reference/> is + * used for the reference + */ +public class ASM_0018_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0018"; + config.input = "request"; + config.output = "ASM_0018 request service1 operation1 invoked service3 operation1 invoked"; + config.composite = "Test_ASM_0018.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class ASM_0018_TestCase diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0019_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0019_TestCase.java new file mode 100644 index 0000000000..c1cc0d6b0f --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0019_TestCase.java @@ -0,0 +1,46 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0018_TestCase, which tests that where a <reference/> + * of a <component/> has @autowire=”true” and also has @target identifying + * a single target service that the reference is wired only to the single + * service identified by the @target attribute + */ +public class ASM_0019_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0019"; + config.input = "request"; + config.output = "ASM_0019 request service1 operation1 invoked service3 operation1 invoked"; + config.composite = "Test_ASM_0019.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0020_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0020_TestCase.java new file mode 100644 index 0000000000..12dce46975 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0020_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0020_TestCase, which tests that where a <reference/> + * of a <component/> has @autowire=true and where there is also a single + * <wire/> element which as that <reference/> as its source that the + * reference is wired only to the single service identified by the + * <wire/> element + */ +public class ASM_0020_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0020"; + config.input = "request"; + config.output = "ASM_0020 request service1 operation1 invoked service3 operation1 invoked"; + config.composite = "Test_ASM_0020.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0021_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0021_TestCase.java new file mode 100644 index 0000000000..286e21b1d4 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0021_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0021_TestCase, which tests that where a <reference/> + * of a <component/> has @autowire=true and where the <reference/> has + * a <binding/> child element which declares a single target service, + * the reference is wired only to the single service identified by the + * <wire/> element + */ +public class ASM_0021_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0021"; + config.input = "request"; + config.output = "ASM_0021 request service1 operation1 invoked service3 operation1 invoked"; + config.composite = "Test_ASM_0021.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0022_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0022_TestCase.java new file mode 100644 index 0000000000..a39b674b97 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0022_TestCase.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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0022_TestCase, which tests that where a <component/> + * <reference/> with multiplicity=0..1 is unwired (by any means) that + * the component executes correctly + */ +public class ASM_0022_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0022"; + config.input = "request"; + config.output = "ASM_0022 request service1 operation1 invoked"; + config.composite = "Test_ASM_0022.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0023_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0023_TestCase.java new file mode 100644 index 0000000000..172cb74554 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0023_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0021_TestCase, which tests that where a <component/> + * <reference/> with multiplicity=1..1 is wired to a component service + * in the same composite and is also promoted by a <composite/> <reference/> + * which is wired to a target service by a component using the <composite/> + * as its implementation, that this is an error + */ +public class ASM_0023_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0023"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0023.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0024_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0024_TestCase.java new file mode 100644 index 0000000000..6f224a8951 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0024_TestCase.java @@ -0,0 +1,61 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0024_TestCase, which tests that where a <component/> + * <reference/> has @target set to some service, that the reference + * can have no child <binding/> elements + */ +public class ASM_0024_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * Line 1379~1381 + * Note that a binding element may specify an endpoint which is the target of that binding. A + * reference must not mix the use of endpoints specified via binding elements with target endpoints + * specified via the target attribute. + * <p> + * OASIS + * ASM50026 + * If a reference has a value specified for one or more target services in its @target attribute, + * there MUST NOT be any child <binding/> elements declared for that reference. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2920 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0024"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0024.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0025_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0025_TestCase.java new file mode 100644 index 0000000000..9d79b3b472 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0025_TestCase.java @@ -0,0 +1,63 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0025_TestCase, which tests that where a <component/> + * <property/> has its value set by means of a child <value/> element, + * that the type of the <value/> element matches the type declared for + * the <property/> element + */ +public class ASM_0025_TestCase extends BaseJAXWSTestCase { + + public static void main(String[] args) throws Exception { + ASM_0025_TestCase test = new ASM_0025_TestCase(); + test.setUp(); + test.tearDown(); + } + + /** + * <p> + * OSOA + * No @value subelement in OSOA specification + * <p> + * OASIS + * <p> + * ASM50028 + * If the value subelement of a component property is specified, + * the type of the property MUST be an XML Schema simple type or an + * XML schema complex type + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0025"; + config.input = "request"; + config.output = "ASM_0025 request service1 operation1 invokedcomplex1complex2"; + config.composite = "Test_ASM_0025.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0026_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0026_TestCase.java new file mode 100644 index 0000000000..5cb2ed5241 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0026_TestCase.java @@ -0,0 +1,64 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0026_TestCase, which tests that where a <component/> <property/> + * has its value set by means of a child element that is NOT a <value/> element, + * that a) the type of the <property/> element is declared as an XML Schema global + * element by its @element attribute and b) that the child element is an instance + * of that global element + */ +public class ASM_0026_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA Line 1113~1118 + * The property element may contain an optional default-property-value, which provides default + * value for the property. The default value must match the type declared for the property + * 1) a string, if type is a simple type (must match the type declared) + * 2) a complex type value matching the type declared by type + * 3) an element matching the element named by element + * 4) multiple values are permitted if many="true" is specified + * <p> + * OASIS + * <p> + * ASM50029 + * If a component property value is declared using a child element of the <property/> + * element, the type of the property MUST be an XML Schema global element and the + * declared child element MUST be an instance of that global element + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0026"; + config.input = "request"; + config.output = "ASM_0026 request service1 operation1 invokedcomplex1complex2"; + config.composite = "Test_ASM_0026.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0027_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0027_TestCase.java new file mode 100644 index 0000000000..86d8f51288 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0027_TestCase.java @@ -0,0 +1,60 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0027_TestCase, which tests that where a <component/> has + * 2 or more <property/> child elements that each <property/> element has a + * unique @name attribute value + */ +public class ASM_0027_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No corresponding declaration for this feature. + * <p> + * OASIS + * <p> + * ASM50030 + * A <component/> element MUST NOT contain two <property/> subelements with the + * same value of the @name attribute. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2863 + * + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0027"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0027.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0027 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0028_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0028_TestCase.java new file mode 100644 index 0000000000..e91ee2c7f3 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0028_TestCase.java @@ -0,0 +1,59 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0028_TestCase, which tests a <component/> <property/> @name + * attribute matches the @name attribute of one of the <property/> elements of + * the <componentType/> of the <implementation/> of the <component/> + */ +public class ASM_0028_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No corresponding statements for this feature. + * <p> + * OASIS + * <p> + * ASM50031 + * The name attribute of a component property MUST match the name of a property + * element in the component type of the component implementation. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2901 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0028"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0028.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0028 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0029_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0029_TestCase.java new file mode 100644 index 0000000000..eae5a2f978 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0029_TestCase.java @@ -0,0 +1,63 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0029_TestCase, which tests that where a <component/> <property/> + * has @many=false that there is only one <value/> child element of the <property/> + */ +public class ASM_0029_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA Line 1104~1106 + * <p> + * many (optional) - whether the property is single-valued (false) or multi-valued (true). + * The default is false. In the case of a multi-valued property, it is presented to the + * implementation as a Collection of property values. + * <p> + * OASIS + * <p> + * ASM50032 + * If a property is single-valued, the <value/> subelement MUST NOT occur more than once. + * <p> + * OSOA didn't explicitly say "MUST NOT occur more than once". + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2902 + * + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0029"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0029.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0029 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0030_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0030_TestCase.java new file mode 100644 index 0000000000..197f9acd72 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0030_TestCase.java @@ -0,0 +1,57 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0030_TestCase, which tests that a <component/> <property/> + * with a @value attribute set does not have any <value/> child elements + */ +public class ASM_0030_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No @value attribute for the property in OSOA spec. + * So this TestCase is not valid. + * <p> + * OASIS + * <p> + * ASM50033 + * A property <value/> subelement MUST NOT be used when the @value attribute + * is used to specify the value for that property. + * + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0030"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0030.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0030 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0031_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0031_TestCase.java new file mode 100644 index 0000000000..5f5d68fb81 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0031_TestCase.java @@ -0,0 +1,63 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0031_TestCase, which tests that where a <component/> <reference/> + * has its @target attribute set to a valid service and the <composite/> also + * contains a <wire/> element with @source set to the <component/> <reference/> + * and @target set to a second valid service and has @replace=true, the <reference/> + * is wired to the second service only + */ +public class ASM_0031_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No @replace in OSOA specification currently. + * <p> + * OASIS + * <p> + * ASM50034 + * If any <wire/> element with its @replace attribute set to "true" has + * a particular reference specified in its @source attribute, + * the value of the @target attribute for that reference MUST be ignored + * and MUST NOT be used to define target services for that reference. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2903 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0031"; + config.input = "request"; + config.output = "ASM_0031 request service1 operation1 invoked service3 operation1 invoked"; + config.composite = "Test_ASM_0031.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0031 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0039_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0039_TestCase.java new file mode 100644 index 0000000000..5f7ef37f61 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0039_TestCase.java @@ -0,0 +1,54 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * + */ +public class ASM_0039_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No corresponding statements in OSOA specification. + * <p> + * OASIS + * ASM50023 + * Some reference multiplicity errors can be detected at deployment time, + * where the rules defined in ASM50018, ASM50019, ASM50020, ASM50021 are violated. + * In these cases, an error SHOULD be generated by the SCA runtime at deployment time. + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0039"; + config.input = "request"; + config.output = "ASM_0039 request service1 operation1 invoked service2 operation1 invokedservice2 operation1 invoked"; + config.composite = "Test_ASM_0039.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0039 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0040_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0040_TestCase.java new file mode 100644 index 0000000000..388508c209 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0040_TestCase.java @@ -0,0 +1,58 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * For the cases where it is valid for the reference to have no target service specified, + * the component implementation language specification needs to define the programming model + * for interacting with an untargetted reference. + * So the SCA runtime should throw an exception if it is using an untargetted reference. + */ +public class ASM_0040_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * No corresponding statements in OSOA specification. + * <p> + * OASIS + * ASM50024 + * Some reference multiplicity errors can only be checked at runtime, + * where the rules defined in ASM50018, ASM50019, ASM50020, ASM50021 are violated. + * In these cases, the SCA runtime MUST generate an error no later than when the reference is + * invoked by the component implementation. + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0040"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0040.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0040 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0041_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0041_TestCase.java new file mode 100644 index 0000000000..441cc61734 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0041_TestCase.java @@ -0,0 +1,57 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + *test if @wiredByImpl="true", <reference/> element has no <binding/> child elements. + */ +public class ASM_0041_TestCase extends BaseJAXWSTestCase { + + /** + * <p> + * OSOA + * Line 220~221 + * If "true" is set, then the reference should not be wired + * statically within a composite, but left unwired. + * <p> + * OASIS + * ASM50013 + * If @wiredByImpl="true", + * other methods of specifying the target service MUST NOT be used. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2913 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0041"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0041.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0041 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0042_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0042_TestCase.java new file mode 100644 index 0000000000..1ae44dd554 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0042_TestCase.java @@ -0,0 +1,62 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; +import org.junit.Test; + + +/** + * test if @wiredByImpl="true", + * No <wire/> elements have the <reference/> element declared as the @source for the wire. + */ +// @Ignore("TUSCANY-2925") +public class ASM_0042_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * Line 220~221 + * If "true" is set, then the reference should not be wired + * statically within a composite, but left unwired. + * <p> + * OASIS + * ASM50013 + * If @wiredByImpl="true", + * other methods of specifying the target service MUST NOT be used. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2913 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0042"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0042.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0042 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0043_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0043_TestCase.java new file mode 100644 index 0000000000..a554fa1ee6 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_0043_TestCase.java @@ -0,0 +1,59 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0043_TestCase, it tests @uri and subelement of <binding> can't coexist, + * and some binding can use specific subelements more than a simple URI. + * + */ +public class ASM_0043_TestCase extends BaseJAXWSTestCase { + + + /** + * <p> + * OSOA + * <p> + * OASIS + * ASM50016 + * It is possible that a particular binding type MAY require that the address of a target service + * uses more than a simple URI. In cases where a reference element has a binding subelement of such a type, + * the @uri attribute of the binding element MUST NOT be used to identify the target service - + * instead, binding specific attributes and/or child elements MUST be used. + * <p> + * Jira issue: + * https://issues.apache.org/jira/browse/TUSCANY-2921 + */ + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0043"; + config.input = "request"; + config.output = "exception"; + config.composite = "Test_ASM_0043.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0043 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_6030_TestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_6030_TestCase.java new file mode 100644 index 0000000000..2eb2feb5bc --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/ASM_6030_TestCase.java @@ -0,0 +1,47 @@ +/* + * 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 client; + + +import test.ASM_0003_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0021_TestCase, which tests that where a <component/> + * <reference/> with multiplicity=1..1 is wired to a component service + * in the same composite and is also promoted by a <composite/> <reference/> + * which is wired to a target service by a component using the <composite/> + * as its implementation, that this is an error + */ +public class ASM_6030_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_6030"; + config.input = "request"; + config.output = config.testName + " " + config.input +" service1 operation1 invoked"; + config.composite = "Test_ASM_6030.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0003_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseJAXWSTestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseJAXWSTestCase.java new file mode 100644 index 0000000000..1904c02359 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseJAXWSTestCase.java @@ -0,0 +1,68 @@ +/* + * 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 client; + +import static org.junit.Assert.*; + +import java.net.MalformedURLException; +import java.net.URL; + +import org.apache.tuscany.sca.node.SCANode; +import org.apache.tuscany.sca.node.launcher.NodeLauncher; +//import org.apache.tuscany.sca.node.equinox.launcher.Contribution; +//import org.apache.tuscany.sca.node.equinox.launcher.ContributionLocationHelper; +//import org.apache.tuscany.sca.node.equinox.launcher.NodeLauncher; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +import javax.xml.ws.Service; +import javax.xml.namespace.QName; + +import test.ASM_0001_Client; +import testClient.TestInvocation; +import testClient.TestException_Exception; +import testClient.TestException; + +/** + * A generic test client based on JAX-WS APIs + */ +public class BaseJAXWSTestCase extends BaseTestCase { + + + public static void main(String[] args) throws Exception { + BaseJAXWSTestCase test = new BaseJAXWSTestCase(); + test.setUp(); + test.tearDown(); + } + + public String invokeTest( String input ) throws Exception { + //Web service invocation via JAXWS + QName serviceName = new QName("http://test/", "TestInvocationService"); + URL wsdlLocation = this.getClass().getClassLoader().getResource("TestClient.wsdl"); + javax.xml.ws.Service webService = Service.create( wsdlLocation, serviceName ); + TestInvocation wsProxy = (TestInvocation) webService.getPort(testConfiguration.getServiceInterface()); + + String output = wsProxy.invokeTest(input); + + return output; + } // end method invokeTest + + +} // end class BaseTest diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseTestCase.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseTestCase.java new file mode 100644 index 0000000000..e39a8bf7e9 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/BaseTestCase.java @@ -0,0 +1,164 @@ +/* + * 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 client; + +import static org.junit.Assert.*; + +import java.lang.reflect.InvocationTargetException; +import java.net.URL; +import java.security.AccessController; +import java.security.PrivilegedAction; + +import org.apache.tuscany.sca.node.SCAClient; +import org.apache.tuscany.sca.node.SCAContribution; +import org.apache.tuscany.sca.node.SCANode; +import org.apache.tuscany.sca.node.launcher.Contribution; +import org.apache.tuscany.sca.node.launcher.NodeLauncher; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +import test.ASM_0001_Client; +import test.TestInvocation; +import testClient.TestException; +import testClient.TestException_Exception; + +/** + * A generic test client based on Tuscany APIs + */ +public class BaseTestCase { + + protected NodeLauncher launcher; + protected SCANode node; + protected TestConfiguration testConfiguration = getTestConfiguration(); + protected static boolean proceed = true; + + public static void main(String[] args) throws Exception { + BaseTestCase test = new BaseTestCase(); + test.setUp(); + test.tearDown(); + } + + @Before + public void setUp() throws Exception { + try { + startContribution(); + } catch (Exception e) { + // If the SCA runtime refuses to start an invalid contribution, then this is also + // regarded as a successful outcome + System.out.println( "Exception received - detail: " + e.getMessage() ); + if (e.getCause() instanceof InvocationTargetException){ + assertEquals( testConfiguration.getExpectedOutput(), ((InvocationTargetException)e.getCause()).getCause().getMessage() ); + } else { + assertEquals( testConfiguration.getExpectedOutput(), "exception" ); + } + System.out.println("Test " + testConfiguration.getTestName() + " completed successfully"); + // Mark this test as not to proceed further + proceed = false; + } // end try + } + + @After + public void tearDown() throws Exception { + stopContribution(); + } + + @Test + public void testDummy() throws Exception { + // If an exception were thrown during initialization, let's go no further + if( proceed == false ) return; + + // System.out.println("Test " + testName + " starting"); + String output = null; + try { + // Just requires input to proceed + // System.in.read(); + // + output = invokeTest( testConfiguration.getInput() ); + + } catch ( TestException_Exception e ) { + TestException exceptionContent = e.getFaultInfo(); + System.out.println("Service fault received - detail: " + exceptionContent.getMessage() ); + assertEquals( testConfiguration.getExpectedOutput(), "exception" ); + } catch (Throwable e) { + e.printStackTrace(); + System.out.println( "Exception received - detail: " + e.getMessage() ); + assertEquals( testConfiguration.getExpectedOutput(), "exception" ); + } + assertEquals( testConfiguration.getExpectedOutput(), output ); + System.out.println("Test " + testConfiguration.getTestName() + " completed successfully"); + } + + public String invokeTest( String input ) throws Exception { + + TestInvocation service = (TestInvocation) getService( testConfiguration.getServiceInterface(), + testConfiguration.getTestServiceName() ); + + return service.invokeTest( input ); + } // end method invokeTest + + protected <T> T getService( Class<T> interfaze, String serviceName ) { + T service = ((SCAClient)node).getService( interfaze, serviceName ); + return service; + } // end getService + + protected void startContribution() throws Exception { + // Tuscany specific code which starts the contribution holding the test + launcher = NodeLauncher.newInstance(); + node = launcher.createNode(testConfiguration.getComposite(), + new Contribution(testConfiguration.getTestName(), getContributionURI())); + System.out.println("SCA Node API ClassLoader: " + node.getClass().getClassLoader()); + node.start(); + } // end method startContribution + + protected void stopContribution() throws Exception { + if (node != null) { + node.stop(); + } + + } // end method stopContribution + + protected String getContributionURI() { + String location = getContributionLocation(testConfiguration.getTestClass()); + return location; + } + + public static String getContributionLocation(final Class<?> anchorClass) { + URL url = AccessController.doPrivileged(new PrivilegedAction<URL>() { + public URL run() { + return anchorClass.getProtectionDomain().getCodeSource().getLocation(); + } + }); + String uri = url.toString(); + return uri; + } + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0001"; + config.input = "request"; + config.output = config.testName + " " + config.input + " invoked ok"; + config.composite = "Test_ASM_0101.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0001_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class BaseTest diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/TestConfiguration.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/TestConfiguration.java new file mode 100644 index 0000000000..3d2f67c3b3 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/client/TestConfiguration.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 client; + +/** + * A class to hold the metadata about the test + * @author MikeEdwards + * + */ +class TestConfiguration { + + public String testName; + public String input; + public String output; + public String composite; + public String testServiceName; + public Class<?> testClass; //TODO - does the client need this?? + public Class<?> serviceInterface; + + public TestConfiguration() { } + + public String getTestName() { return testName; } + public String getInput() { return input; } + public String getExpectedOutput() { return output; } + public String getComposite() { return composite; } + public String getTestServiceName() { return testServiceName; } + public Class<?> getTestClass() { return testClass; } + public Class<?> getServiceInterface() { return serviceInterface; } +}
\ No newline at end of file diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTest.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTest.java new file mode 100644 index 0000000000..00c8e562f8 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTest.java @@ -0,0 +1,82 @@ +/* + * 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 testClient; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElementRef; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="arg0" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "", propOrder = { + "arg0" +}) +@XmlRootElement(name = "invokeTest") +public class InvokeTest { + + @XmlElementRef(name = "arg0", type = JAXBElement.class) + protected JAXBElement<String> arg0; + + /** + * Gets the value of the arg0 property. + * + * @return + * possible object is + * {@link JAXBElement }{@code <}{@link String }{@code >} + * + */ + public JAXBElement<String> getArg0() { + return arg0; + } + + /** + * Sets the value of the arg0 property. + * + * @param value + * allowed object is + * {@link JAXBElement }{@code <}{@link String }{@code >} + * + */ + public void setArg0(JAXBElement<String> value) { + this.arg0 = ((JAXBElement<String> ) value); + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTestResponse.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTestResponse.java new file mode 100644 index 0000000000..6b2fe7a950 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/InvokeTestResponse.java @@ -0,0 +1,82 @@ +/* + * 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 testClient; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElementRef; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="return" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "", propOrder = { + "_return" +}) +@XmlRootElement(name = "invokeTestResponse") +public class InvokeTestResponse { + + @XmlElementRef(name = "return", type = JAXBElement.class) + protected JAXBElement<String> _return; + + /** + * Gets the value of the return property. + * + * @return + * possible object is + * {@link JAXBElement }{@code <}{@link String }{@code >} + * + */ + public JAXBElement<String> getReturn() { + return _return; + } + + /** + * Sets the value of the return property. + * + * @param value + * allowed object is + * {@link JAXBElement }{@code <}{@link String }{@code >} + * + */ + public void setReturn(JAXBElement<String> value) { + this._return = ((JAXBElement<String> ) value); + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/ObjectFactory.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/ObjectFactory.java new file mode 100644 index 0000000000..4bde638058 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/ObjectFactory.java @@ -0,0 +1,106 @@ +/* + * 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 testClient; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlElementDecl; +import javax.xml.bind.annotation.XmlRegistry; +import javax.xml.namespace.QName; + + +/** + * This object contains factory methods for each + * Java content interface and Java element interface + * generated in the testClient package. + * <p>An ObjectFactory allows you to programatically + * construct new instances of the Java representation + * for XML content. The Java representation of XML + * content can consist of schema derived interfaces + * and classes representing the binding of schema + * type definitions, element declarations and model + * groups. Factory methods for each of these are + * provided in this class. + * + */ +@XmlRegistry +public class ObjectFactory { + + private final static QName _TestException_QNAME = new QName("http://test/", "TestException"); + private final static QName _InvokeTestArg0_QNAME = new QName("", "arg0"); + private final static QName _InvokeTestResponseReturn_QNAME = new QName("", "return"); + + /** + * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: testClient + * + */ + public ObjectFactory() { + } + + /** + * Create an instance of {@link InvokeTest } + * + */ + public InvokeTest createInvokeTest() { + return new InvokeTest(); + } + + /** + * Create an instance of {@link InvokeTestResponse } + * + */ + public InvokeTestResponse createInvokeTestResponse() { + return new InvokeTestResponse(); + } + + /** + * Create an instance of {@link TestException } + * + */ + public TestException createTestException() { + return new TestException(); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link TestException }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://test/", name = "TestException") + public JAXBElement<TestException> createTestException(TestException value) { + return new JAXBElement<TestException>(_TestException_QNAME, TestException.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} + * + */ + @XmlElementDecl(namespace = "", name = "arg0", scope = InvokeTest.class) + public JAXBElement<String> createInvokeTestArg0(String value) { + return new JAXBElement<String>(_InvokeTestArg0_QNAME, String.class, InvokeTest.class, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} + * + */ + @XmlElementDecl(namespace = "", name = "return", scope = InvokeTestResponse.class) + public JAXBElement<String> createInvokeTestResponseReturn(String value) { + return new JAXBElement<String>(_InvokeTestResponseReturn_QNAME, String.class, InvokeTestResponse.class, value); + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/README.txt b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/README.txt new file mode 100644 index 0000000000..bdb326df2a --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/README.txt @@ -0,0 +1,19 @@ +This README describes the JAX-WS client files for the SCA Assembly test invocation interface. + +The test invocation interface is in the TestInvocation.java interface file. +This is presented as a Web service by the SCA runtime, for invocation by a general Web service client. +The WSDL is captured in the file TestClient.wsdl in the resources directory for the testcases. + +The JAX-WS client files for invoking the Web service contained in TestClient.wsdl are contained in this +package. They are generated from the WSDL using the wsimport tool (a standard part of JDK 1.6.x): + +wsimport TestClient.wsdl -keep -p testClient + +"-keep" is used to ensure that the generated .java files are retained (otherwise all that is created are +the binary .class files). + +"-p testClient" is used to force the generated Java files to belong to the package "testClient" - this package +name is used to keep a clean separation between the client files and the test service files + + +Mike Edwards, 6th January 2009.
\ No newline at end of file diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException.java new file mode 100644 index 0000000000..10272ec66d --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException.java @@ -0,0 +1,77 @@ +/* + * 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 testClient; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for TestException complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="TestException"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="message" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "TestException", propOrder = { + "message" +}) +public class TestException { + + protected String message; + + /** + * Gets the value of the message property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getMessage() { + return message; + } + + /** + * Sets the value of the message property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setMessage(String value) { + this.message = value; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException_Exception.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException_Exception.java new file mode 100644 index 0000000000..949d1ec7c7 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestException_Exception.java @@ -0,0 +1,71 @@ +/* + * 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 testClient; + +import javax.xml.ws.WebFault; + + +/** + * This class was generated by the JAX-WS RI. + * JAX-WS RI 2.1.1 in JDK 6 + * Generated source version: 2.1 + * + */ +@WebFault(name = "TestException", targetNamespace = "http://test/") +public class TestException_Exception + extends Exception +{ + + /** + * Java type that goes as soapenv:Fault detail element. + * + */ + private TestException faultInfo; + + /** + * + * @param message + * @param faultInfo + */ + public TestException_Exception(String message, TestException faultInfo) { + super(message); + this.faultInfo = faultInfo; + } + + /** + * + * @param message + * @param faultInfo + * @param cause + */ + public TestException_Exception(String message, TestException faultInfo, Throwable cause) { + super(message, cause); + this.faultInfo = faultInfo; + } + + /** + * + * @return + * returns fault bean: testClient.TestException + */ + public TestException getFaultInfo() { + return faultInfo; + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocation.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocation.java new file mode 100644 index 0000000000..783924d493 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocation.java @@ -0,0 +1,60 @@ +/* + * 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 testClient; + +import javax.jws.WebMethod; +import javax.jws.WebParam; +import javax.jws.WebResult; +import javax.jws.WebService; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.ws.RequestWrapper; +import javax.xml.ws.ResponseWrapper; + + +/** + * This class was generated by the JAX-WS RI. + * JAX-WS RI 2.1.1 in JDK 6 + * Generated source version: 2.1 + * + */ +@WebService(name = "TestInvocation", targetNamespace = "http://test/") +@XmlSeeAlso({ + ObjectFactory.class +}) +public interface TestInvocation { + + + /** + * + * @param arg0 + * @return + * returns java.lang.String + * @throws TestException_Exception + */ + @WebMethod + @WebResult(targetNamespace = "") + @RequestWrapper(localName = "invokeTest", targetNamespace = "http://test/", className = "testClient.InvokeTest") + @ResponseWrapper(localName = "invokeTestResponse", targetNamespace = "http://test/", className = "testClient.InvokeTestResponse") + public String invokeTest( + @WebParam(name = "arg0", targetNamespace = "") + String arg0) + throws TestException_Exception + ; + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocationService.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocationService.java new file mode 100644 index 0000000000..6c7271e017 --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/TestInvocationService.java @@ -0,0 +1,83 @@ +/* + * 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 testClient; + +import java.net.MalformedURLException; +import java.net.URL; +import javax.xml.namespace.QName; +import javax.xml.ws.Service; +import javax.xml.ws.WebEndpoint; +import javax.xml.ws.WebServiceClient; +import javax.xml.ws.WebServiceFeature; + + +/** + * This class was generated by the JAX-WS RI. + * JAX-WS RI 2.1.1 in JDK 6 + * Generated source version: 2.1 + * + */ +@WebServiceClient(name = "TestInvocationService", targetNamespace = "http://test/", wsdlLocation = "file:/C:/temp/Tuscany_2_0_Work/TestClient.wsdl") +public class TestInvocationService + extends Service +{ + + private final static URL TESTINVOCATIONSERVICE_WSDL_LOCATION; + + static { + URL url = null; + try { + url = new URL("file:/C:/temp/Tuscany_2_0_Work/TestClient.wsdl"); + } catch (MalformedURLException e) { + e.printStackTrace(); + } + TESTINVOCATIONSERVICE_WSDL_LOCATION = url; + } + + public TestInvocationService(URL wsdlLocation, QName serviceName) { + super(wsdlLocation, serviceName); + } + + public TestInvocationService() { + super(TESTINVOCATIONSERVICE_WSDL_LOCATION, new QName("http://test/", "TestInvocationService")); + } + + /** + * + * @return + * returns TestInvocation + */ + @WebEndpoint(name = "TestInvocationPort") + public TestInvocation getTestInvocationPort() { + return (TestInvocation)super.getPort(new QName("http://test/", "TestInvocationPort"), TestInvocation.class); + } + + /** + * + * @param features + * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values. + * @return + * returns TestInvocation + */ + @WebEndpoint(name = "TestInvocationPort") + public TestInvocation getTestInvocationPort(WebServiceFeature... features) { + return (TestInvocation)super.getPort(new QName("http://test/", "TestInvocationPort"), TestInvocation.class, features); + } + +} diff --git a/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/package-info.java b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/package-info.java new file mode 100644 index 0000000000..2dde15bdeb --- /dev/null +++ b/branches/sca-java-1.5.1/stest/sampleTest/src/test/java/testClient/package-info.java @@ -0,0 +1,20 @@ +/* + * 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. + */ +@javax.xml.bind.annotation.XmlSchema(namespace = "http://test/") +package testClient; |