diff options
Diffstat (limited to 'branches/sca-java-1.4/vtest/java-api/annotations')
150 files changed, 0 insertions, 9625 deletions
diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/pom.xml deleted file mode 100644 index 36ec021f30..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-conversation</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Conversation</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/AService.java deleted file mode 100644 index bc7212f70c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/AService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational; - -/** - * Simple Remotable Service - */ -public interface AService { - - public String setThenGetB1State(String someState); - - public String setThenGetB2State(String someState); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B1Service.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B1Service.java deleted file mode 100644 index 76c857126a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B1Service.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational; - -/** - * Simple Local Service - */ -public interface B1Service { - - public void setState(String someState); - public String getState(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B2Service.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B2Service.java deleted file mode 100644 index b67d89d3e2..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/B2Service.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational; - -import org.osoa.sca.annotations.Conversational; - -/** - * Simple Local Service - */ -@Conversational -public interface B2Service { - - public void setState(String someState); - public String getState(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/AServiceImpl.java deleted file mode 100644 index 55d87c9546..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/AServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.B1Service; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.B2Service; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Reference - protected B1Service b1; - - @Reference - protected B2Service b2; - - public String setThenGetB1State(String someState) { - b1.setState(someState); - return b1.getState(); - } - - public String setThenGetB2State(String someState) { - b2.setState(someState); - return b2.getState(); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B1ServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B1ServiceImpl.java deleted file mode 100644 index 457b18e60a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B1ServiceImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.B1Service; -import org.osoa.sca.annotations.Service; - -@Service(B1Service.class) -public class B1ServiceImpl implements B1Service { - - String someState; - - public void setState(String someState) { - this.someState = someState; - } - - public String getState() { - return someState; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B2ServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B2ServiceImpl.java deleted file mode 100644 index d6252f0a0c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/impl/B2ServiceImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.B2Service; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(B2Service.class) -@Scope("COMPOSITE") -public class B2ServiceImpl implements B2Service { - - String someState; - - public void setState(String someState) { - this.someState = someState; - } - - public String getState() { - return someState; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/resources/conversation.composite b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/resources/conversation.composite deleted file mode 100644 index 4c2de35d52..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/main/resources/conversation.composite +++ /dev/null @@ -1,40 +0,0 @@ -<?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://java-api-tests" name="Converstion-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl.AServiceImpl" /> - <reference name="b1" target="B1Component" /> - <reference name="b2" target="B2Component" /> - </component> - - <component name="B1Component"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl.B1ServiceImpl" /> - </component> - - <component name="B2Component"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversational.impl.B2ServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/ConversationAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/ConversationAnnotationTestCase.java deleted file mode 100644 index c00d5f1c10..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversational/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversational/ConversationAnnotationTestCase.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversational; - -import junit.framework.Assert; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Test; - -/** - * This test class tests the Service annotation described in section 1.2.1 and - * 1.8.17 - */ -public class ConversationAnnotationTestCase { - - protected static String compositeName = "conversation.composite"; - protected static AService aService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - - } - - /** - * Line 328:<br> - * <p> - * When "@Conversational" is not specified on a service interface, the - * service contract is stateless.<br> - * <p> - * Line 394, 395: <br> - * A service may be declared as conversational by marking its Java interface - * with "@Conversational". If a service interface is not marked with - * "@Conversational", it is stateless. <br> - * <p> - * BService has no "@Conversation" annotation so communication from A-> is - * stateless - */ - @Test - public void atConversation1() throws Exception { - String thisState = "This State"; - Assert.assertNotSame(thisState, aService.setThenGetB1State(thisState)); - } - - /** - * Line 325-327:<br> - * <p> - * Java service interfaces may be annotated to specify whether their - * contract is conversational as described in the Assembly Specification - * by using the "@Conversational" annotation. A conversational service - * indicates that requests to the service are correlated in some way - */ - @Test - public void atConversation2() throws Exception { - String thisState = "This State"; - Assert.assertSame(thisState, aService.setThenGetB2State(thisState)); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/pom.xml deleted file mode 100644 index cb112f7038..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/pom.xml +++ /dev/null @@ -1,53 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-conversationattributes</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @ConversationAttributes</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-policy-security</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java deleted file mode 100644 index a3f1f11826..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -/** - * Simple Service - */ -public interface AService { - - public void testMaxAge() throws InterruptedException; - public void testMaxIdle() throws InterruptedException; - public void testSinglePrincipal(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/B2Service.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/B2Service.java deleted file mode 100644 index 8a1ed23b9d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/B2Service.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -import org.osoa.sca.annotations.Conversational; - -/** - * Simple Service - */ -@Conversational -public interface B2Service { - - public void setState(String someState); - public String getState(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/BService.java deleted file mode 100644 index 1d215100f7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/BService.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -import org.osoa.sca.annotations.Conversational; - -/** - * Simple Service - */ -@Conversational -public interface BService { - - public void setState(String someState); - public String getState(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java deleted file mode 100644 index cd4f29ea5b..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -import org.osoa.sca.ServiceReference; - -/** - * Simple Service - */ -public interface CService { - - public void testSinglePricipal(ServiceReference<BService> bReference); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java deleted file mode 100644 index 64b99c9f98..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.B2Service; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.CService; -import org.osoa.sca.ComponentContext; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Reference - protected BService b; - - @Reference - protected B2Service b2; - - @Reference - protected CService c; - - @Context - protected ComponentContext context; - - private void delayForSeconds(int numSeconds) { - try { - Thread.sleep(numSeconds * 1000);// millisecs - } catch (InterruptedException ex) { - throw new Error(ex); - } - } - - public void testMaxAge() { - - String someState = "someState"; - b.setState(someState); - delayForSeconds(2); - b.setState(someState); - - } - - public void testMaxIdle() { - - String someState = "someState"; - b2.setState(someState); - delayForSeconds(2); - b2.setState(someState); - - } - - public void testSinglePrincipal() { - - b.setState("Some state"); - System.out.println("Calling c and passing reference to b"); - c.testSinglePricipal(context.getServiceReference(BService.class, "b")); - - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/B2ServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/B2ServiceImpl.java deleted file mode 100644 index 0d34b802e1..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/B2ServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.BService; -import org.osoa.sca.annotations.ConversationAttributes; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -@Scope("CONVERSATION") -@ConversationAttributes(maxIdleTime="1 seconds") -public class B2ServiceImpl implements BService { - - String someState; - - public void setState(String someState) { - this.someState = someState; - } - - public String getState() { - return someState; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java deleted file mode 100644 index 762c9533d0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.BService; -import org.osoa.sca.annotations.ConversationAttributes; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -@Scope("CONVERSATION") -@ConversationAttributes(maxAge="1 seconds", singlePrincipal=true) -public class BServiceImpl implements BService { - - String someState; - - public void setState(String someState) { - this.someState = someState; - } - - public String getState() { - return someState; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java deleted file mode 100644 index 3ebf63ba54..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.CService; -import org.osoa.sca.ServiceReference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl implements CService { - - public void testSinglePricipal(ServiceReference<BService> bReference) { - - System.out.println("In C calling set state on passed reference to B"); - bReference.getService().setState("someState"); - - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/ACallbackHandler.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/ACallbackHandler.java deleted file mode 100644 index 3820240ee2..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/ACallbackHandler.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.security; - -import java.io.IOException; - -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; -import javax.security.auth.callback.NameCallback; -import javax.security.auth.callback.PasswordCallback; -import javax.security.auth.callback.UnsupportedCallbackException; - -/** - * @version $Rev$ $Date$ - */ -public class ACallbackHandler implements CallbackHandler { - - public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { - for (int i = 0; i < callbacks.length; i++) { - if (callbacks[i] instanceof NameCallback) { - NameCallback nc = (NameCallback)callbacks[i]; - nc.setName("AUser"); - } else if (callbacks[i] instanceof PasswordCallback) { - PasswordCallback pc = (PasswordCallback)callbacks[i]; - pc.setPassword("AUserPasswd".toCharArray()); - } else { - throw new UnsupportedCallbackException - (callbacks[i], "Unsupported Callback!"); - } - } - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/JaasLoginModule.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/JaasLoginModule.java deleted file mode 100644 index 75573b838d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/JaasLoginModule.java +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.security; - -import java.security.Principal; -import java.util.Map; - -import javax.security.auth.Subject; -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; -import javax.security.auth.callback.NameCallback; -import javax.security.auth.callback.PasswordCallback; -import javax.security.auth.login.LoginException; -import javax.security.auth.spi.LoginModule; - - -/** - * @version $Rev$ $Date$ - */ -public class JaasLoginModule implements LoginModule { - - private CallbackHandler callbackHandler; - private Subject subject; - private Principal userPrincipal; - private String userId; - private String password; - private boolean succeeded; - private boolean commitSucceeded; - - public void initialize(Subject subject, - CallbackHandler callbackHandler, - Map<String, ?> sharedState, - Map<String, ?> options) { - this.callbackHandler = callbackHandler; - this.subject = subject; - } - - public boolean login() throws LoginException { - Callback[] callbacks = new Callback[2]; - callbacks[0] = new NameCallback("UserId:"); - callbacks[1] = new PasswordCallback("Password:", false); - - try { - callbackHandler.handle(callbacks); - userId = ((NameCallback)callbacks[0]).getName(); - password = new String(((PasswordCallback)callbacks[1]).getPassword()); - - if (userId.equals("CalculatorUser") && password.equals("CalculatorUserPasswd")) { - System.out.println("Successfully AUTHENTICATED!!"); - succeeded = true; - return true; - } else { - System.out.println("Incorrect userId / password! AUTHENTICATION FAILED!!"); - return false; - } - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * <p> This method is called if the LoginContext's - * overall authentication succeeded - * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules - * succeeded). - * - * <p> If this LoginModule's own authentication attempt - * succeeded (checked by retrieving the private state saved by the - * <code>login</code> method), then this method associates a - * <code>UserPrincipal</code> - * with the <code>Subject</code> located in the - * <code>LoginModule</code>. If this LoginModule's own - * authentication attempted failed, then this method removes - * any state that was originally saved. - * - * <p> - * - * @exception LoginException if the commit fails. - * - * @return true if this LoginModule's own login and commit - * attempts succeeded, or false otherwise. - */ - public boolean commit() throws LoginException { - if (succeeded == false) { - return false; - } else { - // add a Principal (authenticated identity) to the Subject - - // assume the user we authenticated is the UserPrincipal - userPrincipal = new UserPrincipal(userId); - if (!subject.getPrincipals().contains(userPrincipal)) - subject.getPrincipals().add(userPrincipal); - - // in any case, clean out state - userId = null; - password = null; - commitSucceeded = true; - return true; - } - } - - /** - * <p> This method is called if the LoginContext's - * overall authentication failed. - * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules - * did not succeed). - * - * <p> If this LoginModule's own authentication attempt - * succeeded (checked by retrieving the private state saved by the - * <code>login</code> and <code>commit</code> methods), - * then this method cleans up any state that was originally saved. - * - * <p> - * - * @exception LoginException if the abort fails. - * - * @return false if this LoginModule's own login and/or commit attempts - * failed, and true otherwise. - */ - public boolean abort() throws LoginException { - if (succeeded == false) { - return false; - } else if (succeeded == true && commitSucceeded == false) { - // login succeeded but overall authentication failed - succeeded = false; - userId = null; - password = null; - userPrincipal = null; - } else { - // overall authentication succeeded and commit succeeded, - // but someone else's commit failed - logout(); - } - return true; - } - - /** - * Logout the user. - * - * <p> This method removes the <code>SimplePrincipal</code> - * that was added by the <code>commit</code> method. - * - * <p> - * - * @exception LoginException if the logout fails. - * - * @return true in all cases since this <code>LoginModule</code> - * should not be ignored. - */ - public boolean logout() throws LoginException { - subject.getPrincipals().remove(userPrincipal); - succeeded = false; - succeeded = commitSucceeded; - userId = null; - if (password != null) - password = null; - userPrincipal = null; - return true; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/UserPrincipal.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/UserPrincipal.java deleted file mode 100644 index 8349e775c5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/security/UserPrincipal.java +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.security; - -import java.security.Principal; - -/** - * @version $Rev$ $Date$ - */ -public class UserPrincipal implements Principal { - - private final String name; - - public UserPrincipal(String name) { - if (name == null) - throw new IllegalArgumentException("name cannot be null"); - this.name = name; - } - - public String getName() { - return name; - } - - public String toString() { - return name; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((name == null) ? 0 : name.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - final UserPrincipal other = (UserPrincipal)obj; - if (name == null) { - if (other.name != null) - return false; - } else if (!name.equals(other.name)) - return false; - return true; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/AJass.config b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/AJass.config deleted file mode 100644 index 9d5aec8ed5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/AJass.config +++ /dev/null @@ -1,3 +0,0 @@ -AService {
- org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.security.JaasLoginModule required debug=true;
-};
diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite deleted file mode 100644 index 49391b3353..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite +++ /dev/null @@ -1,46 +0,0 @@ -<?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://java-api-tests" name="Converstion-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.AServiceImpl" /> - <reference name="b" target="BComponent" /> - <reference name="b2" target="B2Component" /> - <reference name="c" target="CComponent" /> - </component> - - <component name="BComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.BServiceImpl" /> - </component> - - <component name="B2Component"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.B2ServiceImpl" /> - </component> - - <component name="CComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.CServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/definitions.xml b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/definitions.xml deleted file mode 100644 index d3573176a3..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/definitions.xml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!-- - * 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. ---> -<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://tuscany.apache.org/xmlns/sca/1.0" - xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" - xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0" - xmlns:convatt="http://convatt"> - - <!-- PolicySets --> - <policySet name="JaasPolicy" provides="tuscany:jaasAuthentication" appliesTo="sca:implementation.java" - xmlns="http://www.osoa.org/xmlns/sca/1.0"> - <tuscany:jaasAuthentication> - <tuscany:configurationName>AService</tuscany:configurationName> - <tuscany:callbackHandler>org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.security.ACallbackHandler</tuscany:callbackHandler> - </tuscany:jaasAuthentication> - </policySet> - -</definitions>
\ No newline at end of file diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/singleprincipal.composite b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/singleprincipal.composite deleted file mode 100644 index c10369c9bd..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/main/resources/singleprincipal.composite +++ /dev/null @@ -1,38 +0,0 @@ -<?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://java-api-tests" - xmlns:sample="http://java-api-tests" - name="SinglePrincipal" - xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.AServiceImpl" - requires = "tuscany:jaasAuthentication" /> - <reference name="c" target="CComponent" /> - </component> - - <component name="CComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.CServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java deleted file mode 100644 index 570237ccf4..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.osoa.sca.ConversationEndedException; - -/** - * This test class tests the Service annotation described in section 1.2.1 and - * 1.8.17 - */ -public class ConversationAttributesAnnotationTestCase { - - protected static String compositeName = "conversation.composite"; - protected static AService aService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - - } - - /** - * Line 1665, 1666 - * <p> - * maxIdleTime (optional) - The maximum time that can pass between - * operations within a single conversation. If more time than this passes, - * then the container may end the conversation. - */ - @Test(expected = ConversationEndedException.class) - public void maxIdle() throws Exception { - aService.testMaxIdle(); - } - - /** - * Line 1667, 1668 - * <p> - * maxAge (optional) - The maximum time that the entire conversation can - * remain active. If more time than this passes, then the container may end - * the conversation. - */ - @Test(expected = ConversationEndedException.class) - public void maxAge() throws Exception { - aService.testMaxAge(); - } - - /** - * Line 1669, 1670 - * <p> - * singlePrincipal (optional) – If true, only the principal (the user) that - * started the conversation has authority to continue the conversation. - * The default value is false. - */ - @Ignore("TUSCANY-2608") - @Test(expected = Exception.class) - public void singlePrincipal() throws Exception { - aService.testSinglePrincipal(); - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/SinglePricipalTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/SinglePricipalTestCase.java deleted file mode 100644 index 4ebd667a00..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/SinglePricipalTestCase.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes; - -import javax.security.auth.login.Configuration; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.After; -import org.junit.Before; -import org.junit.Test; - -/** - * - */ -public class SinglePricipalTestCase { - - protected static String compositeName = "singleprincipal.composite"; - protected static AService aService = null; - - @Before - public void init() throws Exception { - try { - Configuration.getConfiguration(); - } catch (java.lang.SecurityException e) { - System.out.println("Caught SecurityException"); - System.setProperty("java.security.auth.login.config", this.getClass().getClassLoader() - .getResource("AJass.config").toString()); - } - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - } - - @After - public void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - - } - - /** - * Line 1669, 1670 - * <p> - * singlePrincipal (optional) – If true, only the principal (the user) that - * started the conversation has authority to continue the conversation. The - * default value is false. - */ - @Test(expected = Exception.class) - public void singlePrincipal() throws Exception { - aService.testSinglePrincipal(); - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/pom.xml deleted file mode 100644 index ce216d40d5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/pom.xml +++ /dev/null @@ -1,44 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-destroy</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Destroy</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-node-impl</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/AService.java deleted file mode 100644 index 039689805c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/AService.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy; - -import org.osoa.sca.annotations.Remotable; - -/** - * The interface for AService - */ -@Remotable -public interface AService { - public String getGreetings(String name); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr1Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr1Impl.java deleted file mode 100644 index 0b30bb8644..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr1Impl.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.AService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a protected - * method with "@Destroy". - */ -@Service(AService.class) -public class AServiceErr1Impl implements AService { - - @Destroy - protected void destroy() { - } - - public String getGreetings(String name) { - return "Hello " + name; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr2Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr2Impl.java deleted file mode 100644 index 33b2e01bcb..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr2Impl.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.AService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a private - * method with "@Destroy". - */ -@Service(AService.class) -public class AServiceErr2Impl implements AService { - - @Destroy - private void destroy() { - } - - public String getGreetings(String name) { - return "Hello " + name; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr3Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr3Impl.java deleted file mode 100644 index d5630e859e..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr3Impl.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.AService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a - * method with non-void return type with "@Destroy". - */ -@Service(AService.class) -public class AServiceErr3Impl implements AService { - - @Destroy - public String destroy() { - return null; - } - - public String getGreetings(String name) { - return "Hello " + name; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr4Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr4Impl.java deleted file mode 100644 index b8f384704a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceErr4Impl.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.AService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a - * method with arguments with "@Destroy". - */ -@Service(AService.class) -public class AServiceErr4Impl implements AService { - - @Destroy - public void destroy(int x) { - } - - public String getGreetings(String name) { - return "Hello " + name; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceImpl.java deleted file mode 100644 index 75a00447f3..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/impl/AServiceImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.AService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. - */ -@Service(AService.class) -public class AServiceImpl implements AService { - - @Destroy - public void destroy() { - } - - public String getGreetings(String name) { - return "Hello " + name; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err1/AServiceErr1.composite b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err1/AServiceErr1.composite deleted file mode 100644 index b03a0defe5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err1/AServiceErr1.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr1"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl.AServiceErr1Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err2/AServiceErr2.composite b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err2/AServiceErr2.composite deleted file mode 100644 index 93aafdd971..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err2/AServiceErr2.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr2"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl.AServiceErr2Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err3/AServiceErr3.composite b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err3/AServiceErr3.composite deleted file mode 100644 index eb8f6e59ca..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err3/AServiceErr3.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr3"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl.AServiceErr3Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err4/AServiceErr4.composite b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err4/AServiceErr4.composite deleted file mode 100644 index 296a386876..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/err4/AServiceErr4.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr4"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl.AServiceErr4Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/proper/AService.composite b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/proper/AService.composite deleted file mode 100644 index 4373bc2558..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/main/resources/proper/AService.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AService"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.destroy.impl.AServiceImpl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/DestroyAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/DestroyAnnotationTestCase.java deleted file mode 100644 index f3b2f28200..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/destroy/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/destroy/DestroyAnnotationTestCase.java +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.destroy; - -import java.io.File; - -import junit.framework.Assert; - -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.SCANodeFactory; -import org.junit.Test; -import org.osoa.sca.ServiceRuntimeException; - -/** - * This test class tests the "@Destroy" annotation described in section 1.8.8. - */ -public class DestroyAnnotationTestCase { - - /** - * Lines 1225, 1226, 1227<br> - * The "@Destroy" annotation type is used to annotate a Java class method - * that will be called when the scope defined for the local service - * implemented by the class ends. The method must have a void return value - * and no arguments. The annotated method must be public. - * <p> - * This method tests a proper destroy method. i.e., public, no arguments and - * with void return type. - */ - @Test - public void atDestroyProper() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/proper/AService.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/proper").toURL().toString())); - node.start(); - AService aService = ((SCAClient)node).getService(AService.class, "AComponent"); - Assert.assertEquals("Hello Pandu", aService.getGreetings("Pandu")); - node.stop(); - } - - /** - * Lines 1225, 1226, 1227<br> - * The "@Destroy" annotation type is used to annotate a Java class method - * that will be called when the scope defined for the local service - * implemented by the class ends. The method must have a void return value - * and no arguments. The annotated method must be public. - * <p> - * This method tests that an exception is thrown when a protected method is - * annotated with "@Destroy". - */ - @Test - public void atDestroyProtectedMethod() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err1/AServiceErr1.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err1").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Destructor must be a public method.")); - } - } - - /** - * Lines 1225, 1226, 1227<br> - * The "@Destroy" annotation type is used to annotate a Java class method - * that will be called when the scope defined for the local service - * implemented by the class ends. The method must have a void return value - * and no arguments. The annotated method must be public. - * <p> - * This method tests that an exception is thrown when a private method is - * annotated with "@Destroy". - */ - @Test - public void atDestroyPrivateMethod() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err2/AServiceErr2.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err2").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Destructor must be a public method.")); - } - } - - /** - * Lines 1225, 1226, 1227<br> - * The "@Destroy" annotation type is used to annotate a Java class method - * that will be called when the scope defined for the local service - * implemented by the class ends. The method must have a void return value - * and no arguments. The annotated method must be public. - * <p> - * This method tests that an exception is thrown when a method with non-void - * return type is annotated with "@Destroy". - */ - @Test - public void atDestroyNonVoidReturnType() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err3/AServiceErr3.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err3").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Destructor must return void.")); - } - } - - /** - * Lines 1225, 1226, 1227<br> - * The "@Destroy" annotation type is used to annotate a Java class method - * that will be called when the scope defined for the local service - * implemented by the class ends. The method must have a void return value - * and no arguments. The annotated method must be public. - * <p> - * This method tests that an exception is thrown when a method with arguments is - * annotated with "@Destroy". - */ - @Test - public void atDestroyMethodWithArgs() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err4/AServiceErr4.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err4").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Destructor must not have argments")); - } - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/pom.xml deleted file mode 100644 index 6c39ef8ae7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-endsconversation</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @EndsConversation</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/AService.java deleted file mode 100644 index 13bcb1fd51..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/AService.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation; - -/** - * Simple Remotable Service - */ -public interface AService { - - public void testAtEndsConversation(); - - public void testSREndConversation(); - - public void testTimedEnd(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/BService.java deleted file mode 100644 index 5400c1fe0d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/BService.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation; - -import org.osoa.sca.annotations.Conversational; -import org.osoa.sca.annotations.EndsConversation; - -/** - * Simple Local Service - */ -@Conversational -public interface BService { - - public void setState(String someState); - - public String getConversationId(); - - @EndsConversation - public void endConversation(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/AServiceImpl.java deleted file mode 100644 index ed564ddbdc..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/AServiceImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.BService; -import org.osoa.sca.ServiceReference; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.junit.Assert; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Reference - protected BService b; - - @Reference - protected ServiceReference<BService> b2; - - private void delayForSeconds(int numSeconds) { - try { - Thread.sleep(numSeconds * 1000);// millisecs - } catch (InterruptedException ex) { - throw new Error(ex); - } - } - - public void testAtEndsConversation() { - String firstId; - b.setState("SomeState"); - firstId = b.getConversationId(); - b.endConversation(); - b.setState("SomeState");// This should start a new conversation - Assert.assertNotSame(b.getConversationId(), firstId); - } - - public void testSREndConversation() { - String firstId; - b2.getService().setState("SomeState"); - firstId = b2.getService().getConversationId(); - b2.getConversation().end(); - b2.getService().setState("SomeState");// This should start a new conversation - Assert.assertNotSame(b2.getService().getConversationId(), firstId); - } - - public void testTimedEnd() { - b.setState("someState"); - delayForSeconds(2); - b.setState("someState"); // should fail w/ timeout - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/BServiceImpl.java deleted file mode 100644 index 418fb93c68..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/impl/BServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.BService; -import org.osoa.sca.annotations.ConversationAttributes; -import org.osoa.sca.annotations.ConversationID; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -@Scope("CONVERSATION") -@ConversationAttributes(maxIdleTime="1 seconds") -public class BServiceImpl implements BService { - - String someState; - - protected String conversationId; - - public void setState(String someState) { - this.someState = someState; - } - - @ConversationID - public void setConversationID (String id){ - this.conversationId = id; - System.out.println("BService conversation ID =>" + conversationId); - } - - public String getState() { - return someState; - } - - public String getConversationId() { - return conversationId; - } - - public void endConversation() { - System.out.println("Conversation ended"); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/resources/endsconversation.composite b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/resources/endsconversation.composite deleted file mode 100644 index cbc13e380c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/main/resources/endsconversation.composite +++ /dev/null @@ -1,35 +0,0 @@ -<?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://java-api-tests" name="Converstion-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.impl.AServiceImpl" /> - <reference name="b" target="BComponent" /> - <reference name="b2" target="BComponent" /> - </component> - - <component name="BComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation.impl.BServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/EndsConversationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/EndsConversationTestCase.java deleted file mode 100644 index 1ddd711a31..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/endsconversation/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/endsconversation/EndsConversationTestCase.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.endsconversation; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Test; -import org.osoa.sca.ConversationEndedException; - -/** - * This test class tests the Service annotation described in section 1.2.1 and - * 1.8.17 - */ -public class EndsConversationTestCase { - - protected static String compositeName = "endsconversation.composite"; - protected static AService aService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - } - - /** - * Lines 410,411,412,413: - * <p> - * A method of a conversational interface may be marked with an - * "@EndsConversation" annotation. Once a method marked with - * "@EndsConversation" has been called, the conversation between client and - * service provider is at an end, which implies no further methods may be - * called on that service within the *same* conversation. - */ - @Test - public void atEndsConversation1() throws Exception { - aService.testAtEndsConversation(); - } - - /** - * Lines 417,418,419,420: - * <p> - * From the errata: <br> - * Solution: Replace lines 417-420 at the end of section 1.6.2.2 with the - * following: "If a conversation is ended with an explicit outbound call to - * an "@EndsConversation" method or a call to - * ServiceReference.endConversation(), then any subsequent call to an - * operation on the service reference will start a new conversation. If the - * conversation ends for any other reason (e.g. a timeout occurred), then - * until ServiceReference.getConversation().end() is called, the - * ConversationEndedException will be thrown by any conversational - * operation." - * <p> - * This tests the first section of the errata. Up to "start a new - * conversation" - */ - @Test - public void atEndsConversation2() throws Exception { - aService.testSREndConversation(); - } - - /** - * Lines 417,418,419,420: - * <p> - * From the errata: <br> - * Solution: Replace lines 417-420 at the end of section 1.6.2.2 with the - * following: "If a conversation is ended with an explicit outbound call to - * an "@EndsConversation" method or a call to - * ServiceReference.endConversation(), then any subsequent call to an - * operation on the service reference will start a new conversation. If the - * conversation ends for any other reason (e.g. a timeout occurred), then - * until ServiceReference.getConversation().end() is called, the - * ConversationEndedException will be thrown by any conversational - * operation." - * <p> - * This tests the second section of the errata. Starting with .. "If the - * conversation ends for any other reason ..." - */ - @Test(expected = ConversationEndedException.class) - public void atEndsConversation3() throws Exception { - aService.testTimedEnd(); - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/init/pom.xml deleted file mode 100644 index 84b1a72a24..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/pom.xml +++ /dev/null @@ -1,44 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-init</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Init</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-node-impl</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/AService.java deleted file mode 100644 index edf13010f5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/AService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init; - -import org.osoa.sca.annotations.Remotable; - -/** - * The interface for AService - */ -@Remotable -public interface AService { - public String getGreetings(String name); - public boolean isInitProper(); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr1Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr1Impl.java deleted file mode 100644 index 5d53510462..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr1Impl.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.init.AService; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a protected - * method with "@Init". - */ -@Service(AService.class) -public class AServiceErr1Impl implements AService { - - @Init - protected void init() { - } - - public String getGreetings(String name) { - return "Hello " + name; - } - - public boolean isInitProper() { - return false; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr2Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr2Impl.java deleted file mode 100644 index 43c1a8cffa..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr2Impl.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.init.AService; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a private - * method with "@Init". - */ -@Service(AService.class) -public class AServiceErr2Impl implements AService { - - @Init - private void init() { - } - - public String getGreetings(String name) { - return "Hello " + name; - } - - public boolean isInitProper() { - return false; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr3Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr3Impl.java deleted file mode 100644 index f5cac472c0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr3Impl.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.init.AService; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a - * method with non-void return type with "@Init". - */ -@Service(AService.class) -public class AServiceErr3Impl implements AService { - - @Init - public String init() { - return null; - } - - public String getGreetings(String name) { - return "Hello " + name; - } - - public boolean isInitProper() { - return false; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr4Impl.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr4Impl.java deleted file mode 100644 index b7c17ee535..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceErr4Impl.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.init.AService; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. The implementation has an error since it annotates a - * method with arguments with "@Init". - */ -@Service(AService.class) -public class AServiceErr4Impl implements AService { - - @Init - public void init(int x) { - } - - public String getGreetings(String name) { - return "Hello " + name; - } - - public boolean isInitProper() { - return false; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceImpl.java deleted file mode 100644 index c2adea1426..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/impl/AServiceImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.init.AService; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -/** - * This class implements AService. - */ -@Service(AService.class) -public class AServiceImpl implements AService { - - private boolean initProper; - - @Property - public String someProperty; - - @Reference - public AService someReference; - - @Init - public void init() { - initProper = someProperty != null && someReference != null; - } - - public String getGreetings(String name) { - return "Hello " + name; - } - - public boolean isInitProper() { - return initProper; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err1/AServiceErr1.composite b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err1/AServiceErr1.composite deleted file mode 100644 index 01b8e101e0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err1/AServiceErr1.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr1"> - - <component name="AServiceComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceErr1Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err2/AServiceErr2.composite b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err2/AServiceErr2.composite deleted file mode 100644 index 4ae38d44b6..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err2/AServiceErr2.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr2"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceErr2Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err3/AServiceErr3.composite b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err3/AServiceErr3.composite deleted file mode 100644 index 6bc3d8e7fc..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err3/AServiceErr3.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr3"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceErr3Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err4/AServiceErr4.composite b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err4/AServiceErr4.composite deleted file mode 100644 index 7ade16e6d3..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/err4/AServiceErr4.composite +++ /dev/null @@ -1,28 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AServiceErr4"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceErr4Impl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/proper/AService.composite b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/proper/AService.composite deleted file mode 100644 index 35f13a2ae6..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/main/resources/proper/AService.composite +++ /dev/null @@ -1,33 +0,0 @@ -<?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://vtest" - xmlns:vtest="http://vtest" - name="AService"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceImpl"/> - <property name="someProperty">hello</property> - <reference name="someReference" target="AnotherAComponent"/> - </component> - <component name="AnotherAComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.init.impl.AServiceImpl"/> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/InitAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/init/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/InitAnnotationTestCase.java deleted file mode 100644 index 0dbccd8611..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/init/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/init/InitAnnotationTestCase.java +++ /dev/null @@ -1,167 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.init; - -import java.io.File; - -import junit.framework.Assert; - -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.SCANodeFactory; -import org.junit.Test; -import org.osoa.sca.ServiceRuntimeException; - -/** - * This test class tests the "@Init" annotation described in section 1.8.11. - */ -public class InitAnnotationTestCase { - - /** - * Lines 1290, 1291, 1292, 1293 <br> - * The "@Init" annotation type is used to annotate a Java class method that - * is called when the scope defined for the local service implemented by the - * class starts. The method must have a void return value and no arguments. - * The annotated method must be public. The annotated method is called after - * all property and reference injection is complete. - * <p> - * This method tests a proper init method i.e., public, no arguments and with - * void return type.<br> - * Expected result: Method must be called. Method must be called after all property - * and reference injection is complete. - */ - @Test - public void atInitProper() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/proper/AService.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/proper").toURL().toString())); - node.start(); - AService aService = ((SCAClient)node).getService(AService.class, "AComponent"); - Assert.assertTrue(aService.isInitProper()); - Assert.assertEquals("Hello Pandu", aService.getGreetings("Pandu")); - node.stop(); - } - - /** - * Lines 1290, 1291, 1292, 1293 <br> - * The "@Init" annotation type is used to annotate a Java class method that - * is called when the scope defined for the local service implemented by the - * class starts. The method must have a void return value and no arguments. - * The annotated method must be public. The annotated method is called after - * all property and reference injection is complete. - * <p> - * This method tests that an exception is thrown when a protected method is - * annotated with "@Init". - */ - @Test - public void atInitProtectedMethod() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err1/AServiceErr1.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err1").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Initializer must be a public method.")); - } - } - - /** - * Lines 1290, 1291, 1292, 1293 <br> - * The "@Init" annotation type is used to annotate a Java class method that - * is called when the scope defined for the local service implemented by the - * class starts. The method must have a void return value and no arguments. - * The annotated method must be public. The annotated method is called after - * all property and reference injection is complete. - * <p> - * This method tests that an exception is thrown when a private method is - * annotated with "@Init". - */ - @Test - public void atInitPrivateMethod() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err2/AServiceErr2.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err2").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Initializer must be a public method.")); - } - } - - /** - * Lines 1290, 1291, 1292, 1293 <br> - * The "@Init" annotation type is used to annotate a Java class method that - * is called when the scope defined for the local service implemented by the - * class starts. The method must have a void return value and no arguments. - * The annotated method must be public. The annotated method is called after - * all property and reference injection is complete. - * <p> - * This method tests that an exception is thrown when a method with non-void - * return type is annotated with "@Init". - */ - @Test - public void atInitNonVoidReturnType() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err3/HelloWorldErr3.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err3").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Initializer must return void.")); - } - } - - /** - * Lines 1290, 1291, 1292, 1293 <br> - * The "@Init" annotation type is used to annotate a Java class method that - * is called when the scope defined for the local service implemented by the - * class starts. The method must have a void return value and no arguments. - * The annotated method must be public. The annotated method is called after - * all property and reference injection is complete. - * <p> - * This method tests that an exception is thrown when a method with arguments is - * annotated with "@Init". - */ - @Test - public void atInitMethodWithArgs() throws Exception { - SCANodeFactory nodeFactory = SCANodeFactory.newInstance(); - try { - SCANode node = nodeFactory.createSCANode(new File("src/main/resources/err4/HelloWorldErr4.composite").toURL().toString(), - new SCAContribution("TestContribution", - new File("src/main/resources/err4").toURL().toString())); - Assert.fail(); - node.stop(); - } catch(ServiceRuntimeException e) { - //expected - Assert.assertNotSame(-1, e.getMessage().indexOf("Initializer must not have argments")); - } - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/pom.xml deleted file mode 100644 index e977e3040a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-oneway</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @OneWay</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/AService.java deleted file mode 100644 index 6fef2afa2a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/AService.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.oneway; - -import org.osoa.sca.annotations.OneWay; - -/** - * Simple Remotable Service - */ -public interface AService { - - @OneWay - public void setNameOneWay(String name); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/BService.java deleted file mode 100644 index 1cb4f3adf5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/BService.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.oneway; - -/** - * Simple Local Service - */ -public interface BService { - - public void setNameOneWay(String name); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/AServiceImpl.java deleted file mode 100644 index 4829ffb95f..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/AServiceImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.BService; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Reference - protected BService b; - - public void setNameOneWay(String name) { - b.setNameOneWay(name); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/BServiceImpl.java deleted file mode 100644 index 09c783ae96..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/impl/BServiceImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.BService; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -public class BServiceImpl implements BService { - - String name; - - private void delay2Seconds() { - try { - Thread.sleep(2000);// millisecs - } catch (InterruptedException ex) { - throw new Error(ex); - } - } - - public void setNameOneWay(String name) { - delay2Seconds(); - this.name = name; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/resources/oneway.composite b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/resources/oneway.composite deleted file mode 100644 index 47a7a98c7d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/main/resources/oneway.composite +++ /dev/null @@ -1,35 +0,0 @@ -<?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://java-api-tests" name="OneWay-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.impl.AServiceImpl" /> - <reference name="b" target="BComponent"/> - </component> - - <component name="BComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.oneway.impl.BServiceImpl" /> - </component> - - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/OneWayAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/OneWayAnnotationTestCase.java deleted file mode 100644 index f2fb8d0dc8..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/oneway/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/oneway/OneWayAnnotationTestCase.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.oneway; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Test; - -/** - * This test class tests the Service annotation described in section 1.2.1 and - * 1.8.17 - */ -public class OneWayAnnotationTestCase { - - protected static String compositeName = "oneway.composite"; - protected static AService aService = null; - protected static BService bService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - } - - /** - * Line 384,385,386:<br> - * <p> - * Any method that returns "void" and has no declared exceptions may be - * marked with an "@OneWay" annotation. This means that the method is - * non-blocking and communication with the service provider may use a - * binding that buffers the requests and sends it at some later time. - * <p> - * Line 1319, 1320:<br> - * <p> - * The "@OneWay" annotation type is used to annotate a Java interface method - * to indicate that invocations will be dispatched in a non-blocking fashion - * as described in the section on Asynchronous Programming.<br> - * <p> - * The serviceMethod on A is annotated with "@OneWay". The A implementation - * delegates to b's method which includes a 2 seconds delay. So, this will - * fail if the call to A is blocking. - */ - @Test(timeout = 500) - public void atOneWay1() throws Exception { - aService.setNameOneWay("Some Name"); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/pom.xml deleted file mode 100644 index bf29c371be..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/pom.xml +++ /dev/null @@ -1,69 +0,0 @@ -<?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>vtest-java-api</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>java-api-annotations</artifactId> - <packaging>pom</packaging> - - <name>Apache Tuscany SCA Java APIs and Annotations Verification Tests - Annotations</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> - - <profiles> - <profile> - <id>default</id> - <activation> - <activeByDefault>true</activeByDefault> - </activation> - <modules> - <module>reference</module> - <module>service</module> - <module>property</module> - <module>scope</module> - <module>init</module> - <module>destroy</module> - <module>oneway</module> - <module>conversational</module> - <module>conversationattributes</module> - <module>endsconversation</module> - </modules> - </profile> - </profiles> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/property/pom.xml deleted file mode 100644 index 14bb90e7a2..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-property</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Property</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AService.java deleted file mode 100644 index 5cfea1b099..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AService.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.property; - -/** - * Simple Service - */ -public interface AService { - - public String getName(); - - public String getP1(); - - public String getP2(); - - public String getP3(); - - public String getP4(); - - public String getP5(); - - public String getP6(); - - public String getP7AString(); - - public int getP7BInt(); - - public String getP8AString(); - - public int getP8BInt(); - - public String getP9AString(); - - public int getP9BInt(); - - public String getP10AString(); - - public int getP10BInt(); - - public String getP11AString(); - - public int getP11BInt(); - - public String getP12AString(); - - public int getP12BInt(); - - public String getP15(); - - public String getP16(); - - public String getP17(); - - public String getP18(); - - public int getP19Size(); - - public String getP20(int i); - - public int getP20Size(); - - public int getP21(int i); - - public int getP21Size(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AnotherAService.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AnotherAService.java deleted file mode 100644 index 5ddc59f8b6..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/AnotherAService.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.property; - -/** - * Simple Service - */ -public interface AnotherAService { - - public String getName(); - - public String getP13(); - - public String getP14(); - - public String getP22(); - - public String getP23(); - - public String getP24(); - - public String getP25(); - - public boolean getP14SetterIsCalled(); - - public boolean getP23SetterIsCalled(); - - public boolean getP24SetterIsCalled(); - - public boolean getP25SetterIsCalled(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/BService.java deleted file mode 100644 index 99fb842a9a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/BService.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.property; - -import org.osoa.sca.annotations.Remotable; - - -/** - * Simple Service used by another service - */ -@Remotable -public interface BService { - - String getName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/CService.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/CService.java deleted file mode 100644 index 5de3b5fcff..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/CService.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.property; - - -/** - * Simple Service used by another service - */ -public interface CService { - - String getName(); - - public String getB1Name(); - - public String getP2(); - - public int getP3(); - - public String getP4(); - - public String getConstructor(); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AObject.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AObject.java deleted file mode 100644 index f30c4c69fc..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AObject.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -/** - * A simple object to hold a string - */ -public class AObject { - - public String aString; - public int bInt; - - public AObject() { - this.aString = null; - this.bInt = 0; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AServiceImpl.java deleted file mode 100644 index b385083533..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AServiceImpl.java +++ /dev/null @@ -1,240 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import java.util.List; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.AService; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Property; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Property - protected String p1; // simple Java type injected via field - - @Property - public String p2; // simple Java type injected via field - - protected String p3; // simple Java type injected via setter - - public String p4; // simple Java type injected via setter - - protected String p5; // simple Java type injected via constructor parameter - - public String p6; // simple Java type injected via constructor parameter - - @Property(required=true) - protected AObject p7; // complex Java type injected via field - - @Property - public AObject p8; // complex Java type injected via field - - protected AObject p9; // complex Java type injected via setter - - public AObject p10; // complex Java type injected via setter - - protected AObject p11; // complex Java type injected via constructor parameter - - public AObject p12; // complex Java type injected via constructor parameter - - @Property(name="pFifteen") - protected String p15; // injected via field with different name - - protected String p16; // injected via setter with different name - - @Property(name="p17", required=false) - public String p17; // injected via field but not defined in composite - - public String p18; // injected via setter but not defined in composite - - @Property(name="p19", required=true) - public List<String> p19; // a List and injected via field with no element - - public List<String> p20; // a List and injected via setter - - @Property(required=false) - public Integer[] p21; // an array and injected via field - - public String getName() { - return "AService"; - } - - public AServiceImpl( - @Property(name = "p5") String p5, - @Property(name = "p6") String p6, - @Property(name = "p11") AObject p11, - @Property(name = "p12") AObject p12 - ) { - super(); - this.p5 = p5; - this.p6 = p6; - this.p11 = p11; - this.p12 = p12; - } - - @Property - public void setP3(String p3) { - this.p3 = p3; - } - - @Property(required=true) - public void setP4(String p4) { - this.p4 = p4; - } - - @Property - public void setP9(AObject p9) { - this.p9 = p9; - } - - @Property - public void setP10(AObject p10) { - this.p10 = p10; - } - - @Property(name="pSixteen") - public void setP16(String p16) { - this.p16 = p16; - } - - @Property(name="p18", required=false) - public void setP18(String p18) { - this.p18 = p18; - } - - @Property(name="p20", required=true) - public void setP20(List<String> p20) { - this.p20 = p20; - } - - public String getP1() { - return p1; - } - - public String getP2() { - return p2; - } - - public String getP3() { - return p3; - } - - public String getP4() { - return p4; - } - - public String getP5() { - return p5; - } - - public String getP6() { - return p6; - } - - public String getP7AString() { - return p7.aString; - } - - public int getP7BInt() { - return p7.bInt; - } - - public String getP8AString() { - return p8.aString; - } - - public int getP8BInt() { - return p8.bInt; - } - - public String getP9AString() { - return p9.aString; - } - - public int getP9BInt() { - return p9.bInt; - } - - public String getP10AString() { - return p10.aString; - } - - public int getP10BInt() { - return p10.bInt; - } - - public String getP11AString() { - return p11.aString; - } - - public int getP11BInt() { - return p11.bInt; - } - - public String getP12AString() { - return p12.aString; - } - - public int getP12BInt() { - return p12.bInt; - } - - public String getP15() { - return p15; - } - - public String getP16() { - return p16; - } - - public String getP17() { - return p17; - } - - public String getP18() { - return p18; - } - - public int getP19Size() { - return p19.size(); - } - - public String getP20(int i) { - return p20.get(i); - } - - public int getP20Size() { - return p20.size(); - } - - public int getP21(int i) { - return p21[i].intValue(); - } - - public int getP21Size() { - return p21.length; - } - -} - - - diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AnotherAServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AnotherAServiceImpl.java deleted file mode 100644 index fd1ba5ee52..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/AnotherAServiceImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.AnotherAService; -import org.osoa.sca.annotations.Service; - -@Service(AnotherAService.class) -public class AnotherAServiceImpl implements AnotherAService { - - public String p13; // injected via field and un-annotated - - public String p14; // injected via setter and un-annotated - - protected String p22; // unannotated protected field should not be injected - - protected String p23; // un-annotated protected and has protected setter - - protected String p24; // un-annotated protected field and has public setter - - private String p25; // un-annotated private field and has public setter - - public boolean p14SetterIsCalled = false; - - public boolean p23SetterIsCalled = false; - - public boolean p24SetterIsCalled = false; - - public boolean p25SetterIsCalled = false; - - - public String getName() { - return "AService"; - } - - public void setP14(String p14) { - p14SetterIsCalled = true; - this.p14 = p14; - } - - protected void setP23(String p23) { - p23SetterIsCalled = true; - this.p23 = p23; - } - - public void setP24(String p24) { - p24SetterIsCalled = true; - this.p24 = p24; - } - - public void setP25(String p25) { - p25SetterIsCalled = true; - this.p25 = p25; - } - - public String getP13() { - return p13; - } - - public String getP14() { - return p14; - } - - public String getP22() { - return p22; - } - - public String getP23() { - return p23; - } - - public String getP24() { - return p24; - } - - public String getP25() { - return p25; - } - - public boolean getP14SetterIsCalled() { - return p14SetterIsCalled; - } - - - public boolean getP23SetterIsCalled() { - return p23SetterIsCalled; - } - - - public boolean getP24SetterIsCalled() { - return p24SetterIsCalled; - } - - - public boolean getP25SetterIsCalled() { - return p25SetterIsCalled; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/BServiceImpl.java deleted file mode 100644 index f22f4a35b7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/BServiceImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -public class BServiceImpl implements BService { - - public String getName() { - return "BService"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl1.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl1.java deleted file mode 100644 index 280d2275f8..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl1.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl1 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - @Constructor - public CServiceImpl1() { - constructor = "NoArgument"; - } - - public CServiceImpl1(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "AllArguments"; - } - - public CServiceImpl1(BService bOne, String pTwo, int pThree) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - constructor = "LessArguments"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl2.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl2.java deleted file mode 100644 index 6bc4384e73..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl2.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl2 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - public CServiceImpl2() { - constructor = "NoArgument"; - } - - @Constructor() - public CServiceImpl2(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "AllArguments"; - } - - public CServiceImpl2(BService bOne, String pTwo, int pThree) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - constructor = "LessArguments"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl3.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl3.java deleted file mode 100644 index 6715b64fad..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl3.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl3 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - public CServiceImpl3() { - constructor = "NoArgument"; - } - - @Constructor({"bOne", "pTwo", "pThree", "pFour"}) - public CServiceImpl3(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "AllArguments"; - } - - public CServiceImpl3(BService bOne, String pTwo, int pThree) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - constructor = "LessArguments"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl4.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl4.java deleted file mode 100644 index e10f07b0be..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl4.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl4 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - public CServiceImpl4() { - constructor = "NoArgument"; - } - - public CServiceImpl4(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4, int extra) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "ExtraArguments"; - } - - @Constructor({"bOne", "pTwo", "pThree", "pFour"}) - public CServiceImpl4(BService bOne, String pTwo, int pThree, String pFour) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - this.p4 = pFour; - constructor = "AllArguments"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl5.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl5.java deleted file mode 100644 index 9a23e2de8d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl5.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl5 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - public CServiceImpl5() { - constructor = "NoArgument"; - } - - public CServiceImpl5(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4, int extra) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "ExtraArguments"; - } - - @Constructor({"bOne", "pFour", "pThree", "pTwo"}) - public CServiceImpl5(BService bOne, String pTwo, int pThree, String pFour) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - this.p4 = pFour; - constructor = "SwitchedValues"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl6.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl6.java deleted file mode 100644 index b4797595ac..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/impl/CServiceImpl6.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.property.CService; -import org.osoa.sca.annotations.Constructor; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(CService.class) -public class CServiceImpl6 implements CService { - - public BService b1; - - public String p2; - - public int p3; - - public String p4; - - public String constructor; - - public CServiceImpl6() { - constructor = "NoArgument"; - } - - public CServiceImpl6(@Reference(name = "bOne") BService b1, @Property(name = "pTwo") String p2, @Property(name = "pThree") int p3, @Property(name = "pFour") String p4, int extra) { - this.b1 = b1; - this.p2 = p2; - this.p3 = p3; - this.p4 = p4; - constructor = "ExtraArguments"; - } - - @Constructor({"bOne", "pTwo", "pThree", "pWrong"}) - public CServiceImpl6(BService bOne, String pTwo, int pThree, String pFour) { - this.b1 = bOne; - this.p2 = pTwo; - this.p3 = pThree; - this.p4 = pFour; - constructor = "WrongValues"; - } - - public String getName() { - return "BService"; - } - - public String getB1Name() { - if (b1 == null) - return null; - return b1.getName(); - } - - public String getP2() { - return p2; - } - - public int getP3() { - return p3; - } - - public String getConstructor() { - return constructor; - } - - public String getP4() { - return p4; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/resources/property.composite b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/resources/property.composite deleted file mode 100644 index f7af170f33..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/main/resources/property.composite +++ /dev/null @@ -1,143 +0,0 @@ -<?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://java-api-tests" name="Property-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.AServiceImpl" /> - <property name="p1">p1</property> - <property name="p2">p2</property> - <property name="p3">p3</property> - <property name="p4">p4</property> - <property name="p5">p5</property> - <property name="p6">p6</property> - <property name="p7" type="AObject"> - <AObject xmlns=""> - <aString>p7.aString</aString> - <bInt>7</bInt> - </AObject> - </property> - <property name="p8" type="AObject"> - <AObject xmlns=""> - <aString>p8.aString</aString> - <bInt>8</bInt> - </AObject> - </property> - <property name="p9" type="AObject"> - <AObject xmlns=""> - <aString>p9.aString</aString> - <bInt>9</bInt> - </AObject> - </property> - <property name="p10" type="AObject"> - <AObject xmlns=""> - <aString>p10.aString</aString> - <bInt>10</bInt> - </AObject> - </property> - <property name="p11" type="AObject"> - <AObject xmlns=""> - <aString>p11.aString</aString> - <bInt>11</bInt> - </AObject> - </property> - <property name="p12" type="AObject"> - <AObject xmlns=""> - <aString>p12.aString</aString> - <bInt>12</bInt> - </AObject> - </property> - <property name="pFifteen">p15</property> - <property name="pSixteen">p16</property> - <property name="p19" many="true"></property> - <property name="p20" many="true">"p20"</property> - <property name="p21" many="true">2 1 21</property> - </component> - - <component name="CComponent1"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl1" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="CComponent2"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl2" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="CComponent3"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl3" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="CComponent4"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl4" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="CComponent5"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl5" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="CComponent6"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.CServiceImpl6" /> - <reference name="bOne" target="BComponent"/> - <property name="pTwo">p2</property> - <property name="pThree">3</property> - <property name="pFour">p4</property> - </component> - - <component name="BComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.BServiceImpl"/> - </component> - - <component name="AnotherAComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.property.impl.AnotherAServiceImpl" /> - <property name="p13">p13</property> - <property name="p14">p14</property> - <property name="p22">p22</property> - <property name="p23">p23</property> - <property name="p24">p24</property> - <property name="p25">p25</property> - </component> -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/PropertyAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/property/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/PropertyAnnotationTestCase.java deleted file mode 100644 index d5fbc568f7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/property/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/property/PropertyAnnotationTestCase.java +++ /dev/null @@ -1,299 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.property; - -import static org.junit.Assert.fail; -import junit.framework.Assert; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -/** - * This test class tests the Property annotation described in section 1.2.3 - * including 1.8.5 and 1.8.13 - */ -public class PropertyAnnotationTestCase { - - protected static String compositeName = "property.composite"; - protected static AService aService = null; - protected static CService cService1 = null; - protected static CService cService2 = null; - protected static CService cService3 = null; - protected static CService cService4 = null; - protected static CService cService5 = null; - protected static CService cService6 = null; - protected static AnotherAService anotherAService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - cService1 = ServiceFinder.getService(CService.class, "CComponent1"); - cService2 = ServiceFinder.getService(CService.class, "CComponent2"); - cService3 = ServiceFinder.getService(CService.class, "CComponent3"); - cService4 = ServiceFinder.getService(CService.class, "CComponent4"); - cService5 = ServiceFinder.getService(CService.class, "CComponent5"); - cService6 = ServiceFinder.getService(CService.class, "CComponent6"); - anotherAService = ServiceFinder.getService(AnotherAService.class, "AnotherAComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - - } - - /** - * Lines 1343 to 1348:<br> - * The "@Property" annotation type is used to annotate a Java class field or - * a setter method that is used to inject an SCA property value. The type of - * the property injected, which can be a simple Java type or a complex Java - * type, is defined by the type of the Java class field or the type of the - * setter method input argument.<br> - * The "@Property" annotation may be used on protected or public fields and - * on setter methods or on a constructor method.<br> - * <p> - * p1 - simple Java type injected via field<br> - * p2 - simple Java type injected via field<br> - * p3 - simple Java type injected via setter<br> - * p4 - simple Java type injected via setter and required=true<br> - * p5 - simple Java type injected via constructor parameter<br> - * p6 - simple Java type injected via constructor parameter<br> - * p7 - complex Java type injected via field and required=true<br> - * p8 - complex Java type injected via field<br> - * p9 - complex Java type injected via setter<br> - * p10 - complex Java type injected via setter<br> - * p11 - complex Java type injected via constructor parameter<br> - * p12 - complex Java type injected via constructor parameter<br> - */ - @Test - public void atProperty1() throws Exception { - Assert.assertEquals("p1", aService.getP1()); - Assert.assertEquals("p2", aService.getP2()); - Assert.assertEquals("p3", aService.getP3()); - Assert.assertEquals("p4", aService.getP4()); - Assert.assertEquals("p5", aService.getP5()); - Assert.assertEquals("p6", aService.getP6()); - Assert.assertEquals("p7.aString", aService.getP7AString()); - Assert.assertEquals(7, aService.getP7BInt()); - Assert.assertEquals("p8.aString", aService.getP8AString()); - Assert.assertEquals(8, aService.getP8BInt()); - Assert.assertEquals("p9.aString", aService.getP9AString()); - Assert.assertEquals(9, aService.getP9BInt()); - Assert.assertEquals("p10.aString", aService.getP10AString()); - Assert.assertEquals(10, aService.getP10BInt()); - Assert.assertEquals("p11.aString", aService.getP11AString()); - Assert.assertEquals(11, aService.getP11BInt()); - Assert.assertEquals("p12.aString", aService.getP12AString()); - Assert.assertEquals(12, aService.getP12BInt()); - } - - /** - * Lines 1349 to 1352:<br> - * Properties may also be injected via public setter methods even when the - * "@Property" annotation is not present. However, the - * - * @Property annotation must be used in order to inject a property onto a - * non-public field. In the case where there is no "@Property" - * annotation, the name of the property is the same as the name of - * the field or setter.<br> - * <p> - * p13 is an un-annotated public field which should be injected - * via field<br> - */ - @Test - public void atProperty2() throws Exception { - Assert.assertEquals("p13", anotherAService.getP13()); - } - - /** - * Line 1353:<br> - * Where there is both a setter method and a field for a property, the - * setter method is used.<br> - * <p> - * p14 is an un-annotated public field, it should be injected via public - * setter<br> - */ - @Test - public void atProperty3() throws Exception { - Assert.assertEquals("p14", anotherAService.getP14()); - Assert.assertTrue(anotherAService.getP14SetterIsCalled()); - } - - /** - * Lines 1355 to 1357:<br> - * The "@Property" annotation has the following attributes:<br> - * <li>name (optional) – the name of the property, defaults to the name of - * the field of the Java class</li> - * <li>required (optional) – specifies whether injection is required, - * defaults to false</li> - * <p> - * p15 - injected via field with different name "pFifteen"<br> - * p16 - injected via setter with different name "pSixteen"<br> - * p17 - injected via field but not defined in composite<br> - * p18 - injected via setter but not defined in composite<br> - * - * @TODO - Need to test required=true but not defined in composite (The - * specification does not describe the proper behaviour in this - * situation.) - */ - @Test - public void atProperty4() throws Exception { - Assert.assertEquals("p15", aService.getP15()); - Assert.assertEquals("p16", aService.getP16()); - Assert.assertNull(aService.getP17()); - Assert.assertNull(aService.getP18()); - } - - /** - * Lines 1369 to 1370:<br> - * If the property is defined as an array or as a java.util.Collection, then - * the implied component type has a property with a many attribute set to - * true.<br> - * <p> - * p19 - a List and injected via field with no element<br> - * p20 - a List and injected via setter<br> - * p21 - an array and injected via field<br> - */ - @Test - public void atProperty5() throws Exception { - Assert.assertEquals(0, aService.getP19Size()); - Assert.assertEquals(1, aService.getP20Size()); - Assert.assertEquals("p20", aService.getP20(0)); - Assert.assertEquals(3, aService.getP21Size()); - Assert.assertEquals(2, aService.getP21(0)); - Assert.assertEquals(1, aService.getP21(1)); - Assert.assertEquals(21, aService.getP21(2)); - } - - /** - * Lines 1141 to 1162:<br> - * 1.8.5. "@Constructor"<br> - * ...<br> - * The "@Constructor" annotation is used to mark a particular constructor to - * use when instantiating a Java component implementation.<br> - * The "@Constructor" annotation has the following attribute:<br> - * <li>value (optional) – identifies the property/reference names that - * correspond to each of the constructor arguments. The position in the - * array determines which of the arguments are being named.</li> - * <p> - * cService1 - "@Constructor" without value and constructor arguments<br> - * cService2 - "@Constructor" without value but with constructor arguments<br> - * cService3 - "@Constructor" with values and constructor arguments<br> - * cService4 - "@Constructor" with values and constructor arguments where - * value, property and parameter names are same<br> - * cService5 - "@Constructor" with switched values and constructor arguments<br> - * cService6 - "@Constructor" with wrong values<br> - */ - @Test - public void atProperty6() throws Exception { - Assert.assertNull(cService1.getB1Name()); - Assert.assertNull(cService1.getP2()); - Assert.assertEquals(0, cService1.getP3()); - Assert.assertNull(cService1.getP4()); - Assert.assertEquals("NoArgument", cService1.getConstructor()); - - Assert.assertEquals("BService", cService2.getB1Name()); - Assert.assertEquals("p2", cService2.getP2()); - Assert.assertEquals(3, cService2.getP3()); - Assert.assertEquals("p4", cService2.getP4()); - Assert.assertEquals("AllArguments", cService2.getConstructor()); - - Assert.assertEquals("BService", cService3.getB1Name()); - Assert.assertEquals("p2", cService3.getP2()); - Assert.assertEquals(3, cService3.getP3()); - Assert.assertEquals("p4", cService3.getP4()); - Assert.assertEquals("AllArguments", cService3.getConstructor()); - - Assert.assertEquals("BService", cService4.getB1Name()); - Assert.assertEquals("p2", cService4.getP2()); - Assert.assertEquals(3, cService4.getP3()); - Assert.assertEquals("p4", cService4.getP4()); - Assert.assertEquals("AllArguments", cService4.getConstructor()); - - Assert.assertEquals("BService", cService5.getB1Name()); - Assert.assertEquals("p4", cService5.getP2()); - Assert.assertEquals(3, cService5.getP3()); - Assert.assertEquals("p2", cService5.getP4()); - Assert.assertEquals("SwitchedValues", cService5.getConstructor()); - - try { - System.out.println(cService6.getB1Name()); - fail("Should have failed to call this service"); - } catch (Throwable t) { - } - - } - - /** - * Lines 1349 to 1352:<br> - * 1.8.13. "@Property"<br> - * ...<br> - * Properties may also be injected via public setter methods even when the - * "@Property" annotation is not present. However, the "@Property" - * annotation must be used in order to inject a property onto a non-public - * field. In the case where there is no "@Property" annotation, the name of - * the property is the same as the name of the field or setter. - * <p> - * p22 is unannotated protected field which should not be injected p23 is - * un-annotated protected which should not be injected via protected setter<br> - */ - @Test - @Ignore("JIRA-2289 - p23 failed") - public void atProperty7() throws Exception { - Assert.assertNull(anotherAService.getP22()); - Assert.assertNull(anotherAService.getP23()); - Assert.assertFalse(anotherAService.getP23SetterIsCalled()); - } - - /** - * Lines 1349 to 1352:<br> - * 1.8.13. "@Property"<br> - * ...<br> - * Properties may also be injected via public setter methods even when the - * "@Property" annotation is not present. However, the "@Property" - * annotation must be used in order to inject a property onto a non-public - * field. In the case where there is no "@Property" annotation, the name of - * the property is the same as the name of the field or setter. - * <p> - * p24 is un-annotated protected field which should be injected via public - * setter<br> - * p25 is un-annotated private field which should be injected via public - * setter<br> - */ - @Test - public void atProperty8() throws Exception { - Assert.assertEquals("p24", anotherAService.getP24()); - Assert.assertTrue(anotherAService.getP24SetterIsCalled()); - Assert.assertEquals("p25", anotherAService.getP25()); - Assert.assertTrue(anotherAService.getP25SetterIsCalled()); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/reference/pom.xml deleted file mode 100644 index 2ff14a4433..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-reference</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Reference</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/AService.java deleted file mode 100644 index b28704a3b4..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/AService.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference; - - -/** - * Simple Service that uses another Service - */ -public interface AService { - - public String getName(); - public String getB1Name(); - public String getB2Name(); - public String getB3Name(); - public String getB4Name(); - public String getB5Name(); - public String getB6Name(); - public String getB7Name(); - public String getB8Name(); - public String getB9Name(); - public String getB10Name(); - public String getB11Name(); - public String getB12Name(); - public String getB13Name(int i); - public String getB14Name(int i); - public String getB15Name(int i); - - public int getB13Size(); - public int getB14Size(); - public int getB15Size(); - - public boolean isB7SetterCalled(); - public boolean isB16Null(); - public boolean isB17Null(); - - public boolean isB4Null(); - public boolean isB5Null(); - public boolean isB6Null(); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/BService.java deleted file mode 100644 index 53b376d369..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/BService.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service used by another service - */ -@Remotable -public interface BService { - - String getName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AServiceImpl.java deleted file mode 100644 index 67299d322d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AServiceImpl.java +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl; - -import java.util.List; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.reference.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.reference.BService; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - @Reference - protected BService b1; // field injection - - protected BService b2; // injected via constructor parameter - - protected BService b3; // setter injection - - public BService b4; // field injection (public, un-annotated) - - protected BService b5; // field injection (non-public, un-annotated) - - public BService b6; // setter injection (public, un-annotated) - - @Reference - protected BService b7; // setter injection (field and setter annotated) - - @Reference(name="b8", required=false) - protected BService bEight; // field injection (different reference and field name) - - protected BService bNine; // setter injection (different reference and field name) - - @Reference(required=false) - protected BService b10; // multiplicity="0..1" and required=false - - @Reference(required=false) - protected BService b11; // multiplicity="1..1" and required=false - - protected BService b12; // multiplicity="1..1" and required=true at setter - - @Reference(required=false) - protected List<BService> b13; // multiplicity="0..n" and required=false - - protected List<BService> b14; // multiplicity="1..n" and required=false at setter - - @Reference(name="b15", required=true) - protected BService[] b15s; // multiplicity="1..n" and required=true - - @Reference(required=false) - protected BService b16; - - @Reference(required=false) - public BService b17; - - protected boolean b7SetterCalled; - - public AServiceImpl(@Reference(name = "b2") - BService b2) { - super(); - this.b2 = b2; - b7SetterCalled = false; - } - - @Reference - public void setB3(BService b3) { - this.b3 = b3; - } - - public void setB6(BService b6) { - this.b6 = b6; - } - - @Reference - public void setB7(BService b7) { - b7SetterCalled = true; - this.b7 = b7; - } - - @Reference(name="b9", required=false) - public void setB9(BService bNine) { - this.bNine = bNine; - } - - @Reference(required=true) - public void setB12(BService b12) { - this.b12 = b12; - } - - @Reference(required=true) - public void setB14(List<BService> b14) { - this.b14 = b14; - } - - public String getName() { - return "AService"; - } - - public String getB1Name() { - return b1.getName(); - } - - public String getB2Name() { - return b2.getName(); - } - - public String getB3Name() { - return b3.getName(); - } - - public String getB4Name() { - return b4.getName(); - } - - public String getB5Name() { - return b5.getName(); - } - - public String getB6Name() { - return b6.getName(); - } - - public String getB7Name() { - return b7.getName(); - } - - public String getB8Name() { - return bEight.getName(); - } - - public String getB9Name() { - return bNine.getName(); - } - - public String getB10Name() { - return b10.getName(); - } - - public String getB11Name() { - return b11.getName(); - } - - public String getB12Name() { - return b12.getName(); - } - - public String getB13Name(int i) { - BService b = (BService) b13.get(i); - return b.getName(); - } - - public String getB14Name(int i) { - BService b = (BService) b14.get(i); - return b.getName(); - } - - public String getB15Name(int i) { - return b15s[i].getName(); - } - - public int getB13Size() { - return b13.size(); - } - - public int getB14Size() { - return b14.size(); - } - - public int getB15Size() { - return b15s.length; - } - - public boolean isB7SetterCalled() { - return b7SetterCalled; - } - - public boolean isB16Null() { - return b16 == null; - } - - public boolean isB17Null() { - return b17 == null; - } - - public boolean isB4Null() { - return b4 == null; - } - - public boolean isB5Null() { - return b5 == null; - } - - public boolean isB6Null() { - return b6 == null; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AUnannotatedServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AUnannotatedServiceImpl.java deleted file mode 100644 index a819dfd87d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/AUnannotatedServiceImpl.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.reference.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.reference.BService; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AUnannotatedServiceImpl implements AService { - - public BService b4; // field injection (public, un-annotated) - - protected BService b5; // field injection (non-public, un-annotated) - - public BService b6; // setter injection (public, un-annotated) - - public AUnannotatedServiceImpl() { - } - - public String getName() { - return "AService"; - } - - public String getB4Name() { - return b4.getName(); - } - - public String getB5Name() { - return b5.getName(); - } - - public void setB6(BService b6) { - this.b6 = b6; - } - - public String getB6Name() { - return b6.getName(); - } - - public String getB1Name() { - return null; - } - - public String getB2Name() { - return null; - } - - public String getB3Name() { - return null; - } - - public String getB7Name() { - return null; - } - - public String getB8Name() { - return null; - } - - public String getB9Name() { - return null; - } - - public boolean isB7SetterCalled() { - return false; - } - - public String getB10Name() { - return null; - } - - public String getB11Name() { - return null; - } - - public String getB12Name() { - return null; - } - - public String getB13Name(int i) { - return null; - } - - public int getB13Size() { - return 0; - } - - public String getB14Name(int i) { - return null; - } - - public int getB14Size() { - return 0; - } - - public String getB15Name(int i) { - return null; - } - - public int getB15Size() { - return 0; - } - - public boolean isB16Null() { - return true; - } - - public boolean isB17Null() { - return true; - } - - public boolean isB4Null() { - return b4 == null; - } - - public boolean isB5Null() { - return b5 == null; - } - - public boolean isB6Null() { - return b6 == null; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/BServiceImpl.java deleted file mode 100644 index e8611d510f..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/impl/BServiceImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.reference.BService; -import org.osoa.sca.annotations.Service; - -@Service(BService.class) -public class BServiceImpl implements BService { - - public String getName() { - return "BService"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/resources/ab.composite b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/resources/ab.composite deleted file mode 100644 index b4ad1e77d5..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/main/resources/ab.composite +++ /dev/null @@ -1,51 +0,0 @@ -<?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://java-api-tests" - name="AB-Composite"> - - <component name="AComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl.AServiceImpl"/> - <reference name="b1" target="BComponent"/> - <reference name="b2" target="BComponent"/> - <reference name="b3" target="BComponent"/> - <reference name="b7" target="BComponent"/> - <reference name="b8" target="BComponent"/> - <reference name="b9" target="BComponent"/> - <reference name="b10" multiplicity="0..1" target="BComponent"/> - <reference name="b11" multiplicity="1..1" target="BComponent"/> - <reference name="b12" multiplicity="1..1" target="BComponent"/> - <reference name="b13" multiplicity="0..n" target=""/> - <reference name="b14" multiplicity="1..n" target="BComponent"/> - <reference name="b15" multiplicity="1..n" target="BComponent BComponent"/> - </component> - - <component name="AUnannotatedComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl.AUnannotatedServiceImpl"/> - <reference name="b4" target="BComponent"/> - <reference name="b5" target="BComponent"/> - <reference name="b6" target="BComponent"/> - </component> - - <component name="BComponent"> - <implementation.java class="org.apache.tuscany.sca.vtest.javaapi.annotations.reference.impl.BServiceImpl"/> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/ReferenceAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/ReferenceAnnotationTestCase.java deleted file mode 100644 index 1fe50b4ea7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/reference/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/reference/ReferenceAnnotationTestCase.java +++ /dev/null @@ -1,229 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.reference; - -import static org.junit.Assert.fail; -import junit.framework.Assert; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -/** - * This test class tests the "@Reference" annotation described in section 1.8.14 - */ -public class ReferenceAnnotationTestCase { - - protected static String compositeName = "ab.composite"; - protected static AService a; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - a = ServiceFinder.getService(AService.class, "AComponent"); - - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - } - - /** - * Temporary test unrelated to spec test effort. Remove after resolution of - */ - @Test - @Ignore - // JIRA T-2145 - public void bogusComponentName() throws Exception { - ServiceFinder.init(compositeName); - try { - AService a = ServiceFinder.getService(AService.class, "AReallyBogusComponentName"); - if (a == null) - fail("Should have thrown an exception rather than return null"); - else - fail("Should have thrown an exception rather than return a proxy"); - } finally { - ServiceFinder.cleanup(); - } - - } - - /** - * Lines 1404, 1405, 1406 <br> - * The "@Reference" annotation type is used to annotate a Java class field - * or a setter method that is used to inject a service that resolves the - * reference. The interface of the service injected is defined by the type - * of the Java class field or the type of the setter method input argument. - * <p> - * This tests the use of the three usages of the "@Reference" annotation<br> - * B1 is injected via field injection <br> - * B2 is injected via constructor parameter <br> - * B3 is injected via setter method - */ - @Test - public void atReference1() throws Exception { - - Assert.assertEquals("BService", a.getB1Name()); - Assert.assertEquals("BService", a.getB2Name()); - Assert.assertEquals("BService", a.getB3Name()); - - } - - /** - * Lines 1407, 1408, 1409, 1410 <br> - * References may also be injected via public setter methods even when the - * "@Reference" annotation is not present. However, the "@Reference" - * annotation must be used in order to inject a reference onto a non public - * field. In the case where there is no "@Reference" annotation, the name of - * the reference is the same as the name of the field or setter. - * <p> - * B4 is injected via field injection. Public, Non-annotated <br> - * B5 is expected to fail field injection. Non-Public, Non-Annotated <br> - * B6 is injected via setter injection. Public, Non-Annotated - */ - @Test - public void atReference2() throws Exception { - AService anotherA = ServiceFinder.getService(AService.class, "AUnannotatedComponent"); - - Assert.assertFalse(anotherA.isB4Null()); - Assert.assertTrue(anotherA.isB5Null()); - Assert.assertFalse(anotherA.isB6Null()); - - Assert.assertEquals("BService", anotherA.getB4Name()); - try { - anotherA.getB5Name(); - fail("getB5Name expected to fail with NPE"); - } catch (NullPointerException e) { - } - Assert.assertEquals("BService", anotherA.getB6Name()); - - } - - /** - * Lines 1411 <br> - * Where there is both a setter method and a field for a reference, the - * setter method is used. - * <p> - * B7 has both field and setter annotated. The setter must be called - */ - @Test - public void atReference3() throws Exception { - Assert.assertTrue(a.isB7SetterCalled()); - } - - /** - * Lines 1413, 1414, 1415 <br> - * The "@Reference" annotation has the following attributes: <br> • name - * (optional) – the name of the reference, defaults to the name of the field - * of the Java class <br> - * required (optional) – whether injection of service or services is - * required. Defaults to true. - * <p> - * Reference and field have different names<br> - * B8 is field injected<br> - * B9 is setter injected - */ - @Test - public void atReference4() throws Exception { - Assert.assertEquals("BService", a.getB8Name()); - Assert.assertEquals("BService", a.getB9Name()); - } - - /** - * Lines 1457 to 1459<br> - * If the reference is not an array or collection, then the implied - * component type has a reference with a multiplicity of either 0..1 or 1..1 - * depending on the value of the - * - * @Reference required attribute – 1..1 applies if required=true.<br> - * <p> - * B10 is field injected, required=false, and multiplicity="0..1"<br> - * B11 is field injected, required=false, and multiplicity="1..1"<br> - * B12 is setter injected, required=true, and multiplicity="1..1" - */ - @Test - public void atReference5() throws Exception { - Assert.assertEquals("BService", a.getB10Name()); - Assert.assertEquals("BService", a.getB11Name()); - Assert.assertEquals("BService", a.getB12Name()); - } - - /** - * Lines 1461 to 1463<br> - * If the reference is defined as an array or as a java.util.Collection, - * then the implied component type has a reference with a multiplicity of - * either 1..n or 0..n, depending on whether the required attribute of the - * "@Reference" annotation is set to true or false – 1..n applies if - * required=true.<br> - * <p> - * B13 is a java.util.List, field injected, required=false, - * multiplicity="0..n", and no target<br> - * B14 is a java.util.List, setter injected, required=true, - * multiplicity="1..n", and one target<br> - * B15 is an array, field injected, required=true, multiplicity="1..n", and - * two targets - */ - @Test - public void atReference6() throws Exception { - Assert.assertEquals(0, a.getB13Size()); - Assert.assertEquals("BService", a.getB14Name(0)); - Assert.assertEquals(1, a.getB14Size()); - Assert.assertEquals("BService", a.getB15Name(0)); - Assert.assertEquals("BService", a.getB15Name(1)); - Assert.assertEquals(2, a.getB15Size()); - } - - /** - * Lines 1415 <br> - * required (optional) - whether injection of service or services is - * required. Defaults to true. - * <p> - * b16 and b17 is defined as "@Reference(required=false)" and AComponent - * does not define reference for them - */ - @Test - public void atReference7() throws Exception { - Assert.assertTrue(a.isB16Null()); - Assert.assertTrue(a.isB17Null()); - } - - /** - * Java Component Implementation Spec - * Section 1.2.7 - * Line 361 when @Property and @Reference annotations are present - * then unannotated fields are ignored - */ - @Test - public void atReference8() throws Exception { - Assert.assertTrue(a.isB4Null()); - Assert.assertTrue(a.isB5Null()); - Assert.assertTrue(a.isB6Null()); - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/scope/pom.xml deleted file mode 100644 index 81c188d3e7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-scope</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Scope</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/AService.java deleted file mode 100644 index b7cf3fba71..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/AService.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - - -/** - * Simple Service - */ -public interface AService { - - public String getName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/BService.java deleted file mode 100644 index 7da9d29424..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/BService.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -/** - * Simple Service - */ -public interface BService { - - public String getName(); - - public boolean isInitReady(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/CService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/CService.java deleted file mode 100644 index 208c6a78b0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/CService.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -/** - * Simple Service - */ -public interface CService { - - public String getName(); - - public boolean isInitReady(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/DService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/DService.java deleted file mode 100644 index d4cedcc979..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/DService.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface DService { - - public String getName(); - - public boolean isInitReady(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/FService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/FService.java deleted file mode 100644 index 7844ba7b62..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/FService.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface FService { - - public String getName(); - - public boolean isInitReady(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/GService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/GService.java deleted file mode 100644 index 7a047414dc..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/GService.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface GService { - - public String getName(); - - public int getInitCalledCounter(); - - public int getDestroyCalledCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/HService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/HService.java deleted file mode 100644 index 555cdd5be0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/HService.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - - -/** - * Simple Service - */ -@Remotable -public interface HService { - - public String getName(); - - public String test(); - - public String testCounters(int n); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/IService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/IService.java deleted file mode 100644 index 79e20a3879..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/IService.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Conversational; -import org.osoa.sca.annotations.EndsConversation; - -/** - * Simple Service - */ -@Conversational -public interface IService { - - public String getName(); - - public boolean isInitReady(); - - public String getCurrentState(); - - public String getConversationId(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - - @EndsConversation - public void endConversation(); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/JService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/JService.java deleted file mode 100644 index 95813f0e32..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/JService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface JService { - - public String getName(); - - public String getFailedReason(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/KService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/KService.java deleted file mode 100644 index b4c95965ff..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/KService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface KService { - - public String getName(); - - public String callL1(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/LService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/LService.java deleted file mode 100644 index 5c0fc12fa3..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/LService.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface LService { - - public String getName(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/MService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/MService.java deleted file mode 100644 index ab6a3f946a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/MService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface MService { - - public String getName(); - - public String getFailedReason(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/NService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/NService.java deleted file mode 100644 index c544bf6e02..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/NService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface NService { - - public String getName(); - - public String callO1(int nthTime); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/OService.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/OService.java deleted file mode 100644 index 0104030f2e..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/OService.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Service - */ -@Remotable -public interface OService { - - public String getName(); - - public String getCurrentState(); - - public String setCurrentState(String currentState); - - public int getDestroyCalledCounter(); - - public int getInitCalledCounter(); - - public int getInstanceCounter(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/AServiceImpl.java deleted file mode 100644 index 9c17b06b16..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/AServiceImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - public String getName() { - return "AService"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/BServiceImpl.java deleted file mode 100644 index 2a8bd80e9a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/BServiceImpl.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.BService; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Destroy; - -@Service(BService.class) -public class BServiceImpl implements BService { - - private static int instanceCounter = 0; - - private static int initCalledCounter = 0; - - private static int destroyCalledCounter = 0; - - public AService a1; - - public String p1; - - private int currentInstanceId = 0; - - public String currentState = null; - - private boolean isInitReady = false; - - public BServiceImpl() { - currentInstanceId = ++instanceCounter; - isInitReady = false; - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - @Init - public void initBService() throws Exception { - initCalledCounter++; - if (p1.equals("p1") && a1.getName().equals("AService")) - isInitReady = true; - } - - @Destroy - public void destroyBService() { - destroyCalledCounter++; - } - - public String getName() { - return "BService" + currentInstanceId; - } - - public AService getA1() { - return a1; - } - - public String getP1() { - return p1; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = currentState; - return this.currentState; - } - - public boolean isInitReady() { - return isInitReady; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/CServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/CServiceImpl.java deleted file mode 100644 index c99f5f5e74..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/CServiceImpl.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.CService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(CService.class) -@Scope("STATELESS") -public class CServiceImpl implements CService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public AService a1; - - public String p1; - - public int currentInstanceId = 0; - - public String currentState = null; - - public boolean isInitReady = false; - - public CServiceImpl() { - currentInstanceId = ++instanceCounter; - isInitReady = false; - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - @Init - public void initCService() throws Exception { - initCalledCounter++; - if (p1.equals("p1") && a1.getName().equals("AService")) - isInitReady = true; - } - - @Destroy - public void destroyCService() { - destroyCalledCounter++; - } - - public String getName() { - return "CService" + currentInstanceId; - } - - public AService getA1() { - return a1; - } - - public String getP1() { - return p1; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = currentState; - return this.currentState; - } - - public boolean isInitReady() { - return isInitReady; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/DServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/DServiceImpl.java deleted file mode 100644 index cc41994106..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/DServiceImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.DService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(DService.class) -@Scope("REQUEST") -public class DServiceImpl implements DService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public AService a1; - - public String p1; - - public int currentInstanceId = 0; - - public String currentState = null; - - public boolean isInitReady = false; - - public DServiceImpl() { - currentInstanceId = ++instanceCounter; - isInitReady = false; - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - @Init - public void initDService() throws Exception { - initCalledCounter++; - if (p1.equals("p1") && a1.getName().equals("AService")) - isInitReady = true; - System.out.println("DService" + currentInstanceId + "->initDService"); - } - - @Destroy - public void destroyDService() { - destroyCalledCounter++; - System.out.println("DService" + currentInstanceId + "->destroyDService"); - } - - public String getName() { - return "DService" + currentInstanceId; - } - - public AService getA1() { - return a1; - } - - public String getP1() { - return p1; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = "DService" + currentInstanceId + "-" + currentState; - return this.currentState; - } - - public boolean isInitReady() { - return isInitReady; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/FServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/FServiceImpl.java deleted file mode 100644 index 4fb7386484..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/FServiceImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.FService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(FService.class) -@Scope("COMPOSITE") -public class FServiceImpl implements FService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public AService a1; - - public String p1; - - public int currentInstanceId = 0; - - public String currentState = null; - - public boolean isInitReady = false; - - public FServiceImpl() { - currentInstanceId = ++instanceCounter; - isInitReady = false; - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - @Init - public void initFService() throws Exception { - initCalledCounter++; - if (p1.equals("p1") && a1.getName().equals("AService")) - isInitReady = true; - System.out.println("FService" + currentInstanceId + "->initFService"); - } - - @Destroy - public void destroyFService() { - destroyCalledCounter++; - System.out.println("FService" + currentInstanceId + "->destroyFService"); - } - - public String getName() { - return "FService" + currentInstanceId; - } - - public AService getA1() { - return a1; - } - - public String getP1() { - return p1; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = "FService" + currentInstanceId + "-" + currentState; - return this.currentState; - } - - public boolean isInitReady() { - return isInitReady; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/GServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/GServiceImpl.java deleted file mode 100644 index 994469cb3a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/GServiceImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.GService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.EagerInit; - -@Scope("COMPOSITE") -@EagerInit -public class GServiceImpl implements GService { - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public AService a1; - - public String p1; - - @Init - public void initGService() throws Exception { - initCalledCounter++; - System.out.println("GService->initGService"); - } - - @Destroy - public void destroyGService() { - destroyCalledCounter++; - System.out.println("GService->destroyGService"); - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - public String getName() { - return "GService"; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/HServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/HServiceImpl.java deleted file mode 100644 index 2fa610def7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/HServiceImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.IService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.HService; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -@Service(HService.class) -public class HServiceImpl implements HService { - - @Reference - public IService i1; - - public String getName() { - return "HService"; - } - - public String test() { - - String serviceName = i1.getName(); - String conversationIdBefore = i1.getConversationId(); - - for (int i = 0; i < 10; i++) { - String newState = "state-" + i; - i1.setCurrentState(newState); - String currentState = i1.getCurrentState(); - if (currentState == null || !currentState.equals(serviceName + "-" + newState)) { - i1.endConversation(); - return "CurrentStateLost - " + currentState; - } - } - - boolean isInitReady = i1.isInitReady(); - - String conversationIdAfter = i1.getConversationId(); - - i1.endConversation(); - - if (!isInitReady) - return "InitNotReady"; - - if (!conversationIdBefore.equals(conversationIdAfter)) - return "DifferentConversationId"; - - return "None"; - } - - public String testCounters(int n) { - int instanceCounter = i1.getInstanceCounter(); - int initCalledCounter = i1.getInitCalledCounter(); - int destroyCalledCounter = i1.getDestroyCalledCounter(); - - System.out.println("instanceCounter=" + instanceCounter); - System.out.println("initCalledCounter=" + initCalledCounter); - System.out.println("destroyCalledCounter=" + destroyCalledCounter); - - if (instanceCounter != n + 1) - return "IncorrectInstanceCounter"; - if (initCalledCounter != n + 1) - return "IncorrectInitCalledCounter"; - if (destroyCalledCounter != n) - return "IncorrectDestroyCalledCounter"; - - return "None"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/IServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/IServiceImpl.java deleted file mode 100644 index 12566dc5e4..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/IServiceImpl.java +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.IService; -import org.osoa.sca.annotations.ConversationID; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(IService.class) -@Scope("CONVERSATION") -public class IServiceImpl implements IService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - @ConversationID - protected String conversationId; - - public int currentInstanceId = 0; - - public AService a1; - - public String p1; - - public String currentState = null; - - public boolean isInitReady = false; - - public IServiceImpl() { - synchronized (IServiceImpl.class) { - currentInstanceId = ++instanceCounter; - } - isInitReady = false; - } - - @Reference - public void setA1(AService a1) { - this.a1 = a1; - } - - @Property - public void setP1(String p1) { - this.p1 = p1; - } - - @Init - public void initIService() throws Exception { - initCalledCounter++; - if (p1.equals("p1") && a1.getName().equals("AService")) - isInitReady = true; - System.out.println("IService" + currentInstanceId + "->initIService"); - } - - @Destroy - public void destroyIService() { - destroyCalledCounter++; - System.out.println("IService" + currentInstanceId + "->destroyIService"); - } - - public void endConversation() { - System.out.println("IService" + currentInstanceId + "->endConversation"); - } - - public String getName() { - return "IService" + currentInstanceId; - } - - public AService getA1() { - return a1; - } - - public String getP1() { - return p1; - } - - public String getCurrentState() { - return currentState; - } - - public String getConversationId() { - return conversationId; - } - - public String setCurrentState(String currentState) { - this.currentState = "IService" + currentInstanceId + "-" + currentState; - return this.currentState; - } - - public boolean isInitReady() { - return isInitReady; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/JServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/JServiceImpl.java deleted file mode 100644 index a5851598a0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/JServiceImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import java.util.Timer; -import java.util.TimerTask; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.KService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.JService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(JService.class) -@Scope("COMPOSITE") -public class JServiceImpl implements JService { - - @Reference - public KService k1; - - public static String failedReason = ""; - - public static Timer aTimer = null; - - @Init - public void initJService() throws Exception { - aTimer = new Timer(); - aTimer.schedule(new JTimerTask(), 1000); - System.out.println("JService->initJService"); - } - - @Destroy - public void destroyJService() { - aTimer.cancel(); - System.out.println("JService->destroyJService"); - } - - public String getName() { - return "JService"; - } - - public String getFailedReason() { - return failedReason; - } - - private class JTimerTask extends TimerTask { - - public boolean cancel() { - return true; - } - - public void run() { - String result = k1.callL1(); - if (!result.equals("None")) - failedReason = failedReason + ";" + result; - } - - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/KServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/KServiceImpl.java deleted file mode 100644 index 7088562c57..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/KServiceImpl.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.KService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.LService; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(KService.class) -@Scope("STATELESS") -public class KServiceImpl implements KService { - - public static int instanceCounter = 0; - - public String previousL1Name = null; - - public int currentInstanceId = 0; - - @Reference - public LService l1; - - public KServiceImpl() { - currentInstanceId = ++instanceCounter; - } - - - public String getName() { - return "KService"+currentInstanceId; - } - - public String callL1() { - - for (int i = 1; i < 11; i++) { - System.out.println(getName() + " calls LService " + i + (i == 1 ? "st time:" : (i == 2 ? "nd time:" : (i == 3 ? "rd time:" : "th time")))); - - String serviceName = l1.getName(); - for (int j = 0; j < 10; j++) { - String newState = "state-" + j; - l1.setCurrentState(newState); - String currentState = l1.getCurrentState(); - if (!currentState.equals(serviceName + "-" + newState)) { - return "CurrentStateLost - " + currentState; - } - } - - System.out.print(" Name=" + serviceName); - System.out.print(", #Instance=" + l1.getInstanceCounter()); - System.out.print(", #InitCalled=" + l1.getInitCalledCounter()); - System.out.println(", #DestroyCalled=" + l1.getDestroyCalledCounter()); - - if (previousL1Name == null) { - previousL1Name = serviceName; - } else { - if (!previousL1Name.equals(serviceName)) - return "DifferentLServiceInstance"; - } - } - return "None"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/LServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/LServiceImpl.java deleted file mode 100644 index 274e0570d9..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/LServiceImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.LService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(LService.class) -@Scope("REQUEST") -public class LServiceImpl implements LService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public int currentInstanceId = 0; - - public String currentState = null; - - public LServiceImpl() { - currentInstanceId = ++instanceCounter; - } - - @Init - public void initLService() throws Exception { - initCalledCounter++; - System.out.println("LService" + currentInstanceId + "->initLService"); - } - - @Destroy - public void destroyLService() { - destroyCalledCounter++; - System.out.println("LService" + currentInstanceId + "->destroyLService"); - } - - public String getName() { - return "LService" + currentInstanceId; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = "LService" + currentInstanceId + "-" + currentState; - return this.currentState; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/MServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/MServiceImpl.java deleted file mode 100644 index 681b0b3776..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/MServiceImpl.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import java.util.Timer; -import java.util.TimerTask; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.MService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.NService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(MService.class) -@Scope("COMPOSITE") -public class MServiceImpl implements MService { - - @Reference - public NService n1; - - public static String failedReason = ""; - - public static Timer aTimer = null; - - public static int counter = 0; - - @Init - public void initMService() throws Exception { - aTimer = new Timer(); - aTimer.schedule(new MTimerTask(), 1000, 1000); - System.out.println("MService->initMService"); - } - - @Destroy - public void destroyMService() { - aTimer.cancel(); - System.out.println("MService->destroyMService"); - } - - public String getName() { - return "MService"; - } - - public String getFailedReason() { - return failedReason; - } - - private class MTimerTask extends TimerTask { - - public boolean cancel() { - return true; - } - - public void run() { - counter++; - String result = n1.callO1(counter); - if (!result.equals("None")) - failedReason = failedReason + ";" + result; - } - - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/NServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/NServiceImpl.java deleted file mode 100644 index 98b94a33c7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/NServiceImpl.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.NService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.OService; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(NService.class) -@Scope("STATELESS") -public class NServiceImpl implements NService { - - public static int instanceCounter = 0; - - public String previousL1Name = null; - - public int currentInstanceId = 0; - - @Reference - public OService o1; - - public NServiceImpl() { - currentInstanceId = ++instanceCounter; - } - - - public String getName() { - return "NService"+currentInstanceId; - } - - public String callO1(int nthTime) { - - for (int i = 1; i < 11; i++) { - System.out.println(getName() + " calls OService " + i + (i == 1 ? "st time:" : (i == 2 ? "nd time:" : (i == 3 ? "rd time:" : "th time")))); - - String serviceName = o1.getName(); - for (int j = 0; j < 10; j++) { - String newState = "state-" + j; - o1.setCurrentState(newState); - String currentState = o1.getCurrentState(); - if (!currentState.equals(serviceName + "-" + newState)) { - return "CurrentStateLost - " + currentState; - } - } - - System.out.print(" Name=" + serviceName); - System.out.print(", #Instance=" + o1.getInstanceCounter()); - System.out.print(", #InitCalled=" + o1.getInitCalledCounter()); - System.out.println(", #DestroyCalled=" + o1.getDestroyCalledCounter()); - - if (previousL1Name == null) { - previousL1Name = serviceName; - } else { - if (!previousL1Name.equals(serviceName)) - return "DifferentOServiceInstance"; - } - - } - - if (o1.getInstanceCounter() < nthTime) { - return "SharedSameInstance"; - } - - return "None"; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/OServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/OServiceImpl.java deleted file mode 100644 index 8cf39a072c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/impl/OServiceImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.scope.OService; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Scope; - -@Service(OService.class) -@Scope("REQUEST") -public class OServiceImpl implements OService { - - public static int instanceCounter = 0; - - public static int initCalledCounter = 0; - - public static int destroyCalledCounter = 0; - - public int currentInstanceId = 0; - - public String currentState = null; - - public OServiceImpl() { - currentInstanceId = ++instanceCounter; - } - - @Init - public void initOService() throws Exception { - initCalledCounter++; - System.out.println("OService" + currentInstanceId + "->initOService"); - } - - @Destroy - public void destroyOService() { - destroyCalledCounter++; - System.out.println("OService" + currentInstanceId + "->destroyOService"); - } - - public String getName() { - return "OService" + currentInstanceId; - } - - public String getCurrentState() { - return currentState; - } - - public String setCurrentState(String currentState) { - this.currentState = "OService" + currentInstanceId + "-" + currentState; - return this.currentState; - } - - public int getDestroyCalledCounter() { - return destroyCalledCounter; - } - - public int getInitCalledCounter() { - return initCalledCounter; - } - - public int getInstanceCounter() { - return instanceCounter; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/resources/scope.composite b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/resources/scope.composite deleted file mode 100644 index 7c195b2b5d..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/main/resources/scope.composite +++ /dev/null @@ -1,110 +0,0 @@ -<?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://java-api-tests" name="Scope-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.AServiceImpl" /> - </component> - - <component name="BComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.BServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="CComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.CServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="DComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.DServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="FComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.FServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="GComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.GServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="HComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.HServiceImpl" /> - <reference name="i1" target="IComponent"/> - </component> - - <component name="IComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.IServiceImpl" /> - <reference name="a1" target="AComponent"/> - <property name="p1">p1</property> - </component> - - <component name="JComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.JServiceImpl" /> - <reference name="k1" target="KComponent"/> - </component> - - <component name="KComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.KServiceImpl" /> - <reference name="l1" target="LComponent"/> - </component> - - <component name="LComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.LServiceImpl" /> - </component> - - <component name="MComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.MServiceImpl" /> - <reference name="n1" target="NComponent"/> - </component> - - <component name="NComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.NServiceImpl" /> - <reference name="o1" target="OComponent"/> - </component> - - <component name="OComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.scope.impl.OServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/ScopeAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/ScopeAnnotationTestCase.java deleted file mode 100644 index 6d65416ce8..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/scope/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/scope/ScopeAnnotationTestCase.java +++ /dev/null @@ -1,476 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.scope; - -import java.util.ArrayList; - -import junit.framework.Assert; - -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -/** - * This test class tests the Scope annotation described in section 1.2.4 - * including 1.8.7, 1.8.8, 1.8.9, 1.8.10, 1.8.11, and 1.8.16<br> - * <p> - * Check following:<br> - * <li>Number of service instances be created</li> - * <li>Init method be called and where all property and reference injection is - * complete.</li> - * <li>Destroy method be called</li> - * <li>State be preserved in request and conversation scopes but not others</li> - */ -public class ScopeAnnotationTestCase { - - protected static String compositeName = "scope.composite"; - - protected static int numDThread = 5; - protected static int numFThread = 5; - protected static int numHThread = 5; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - } - - /** - * Line 259:<br> - * <li>STATELESS</li> - * <p> - * Line 284:<br> - * For stateless components, there is no implied correlation between - * service requests.<br> - * <p> - * Line 1589 to 1591:<br> - * The default value is 'STATELESS'. For 'STATELESS' implementations, - * a different implementation instance may be used to service each request. - * Implementation instances may be newly created or be drawn from a pool - * of instances.<br> - * <p> - * BComponent is not defined '@Scope'<br> - * CComponent is defined '@Scope("STATELESS")'<br> - * <p> - */ - @Test - public void atScope1() throws Exception { - System.out.println("atScope1"); - BThread b1 = new BThread("ThreadB1"); - BThread b2 = new BThread("ThreadB2"); - CThread c1 = new CThread("ThreadC1"); - CThread c2 = new CThread("ThreadC2"); - - b1.start(); - b2.start(); - c1.start(); - c2.start(); - b1.join(); - b2.join(); - c1.join(); - c2.join(); - - System.out.println(""); - - Assert.assertEquals("None", b1.failedReason); - Assert.assertEquals("None", b2.failedReason); - Assert.assertEquals("None", c1.failedReason); - Assert.assertEquals("None", c2.failedReason); - } - - /** - * Line 260:<br> - * <li>REQUEST</li> - * <p> - * Lines 286 to 289:<br> - * The lifecycle of request scope extends from the point a request on a - * remotable interface enters the SCA runtime and a thread processes that - * request until the thread completes synchronously processing the request. - * During that time, all service requests will be delegated to the same - * implementation instance of a request-scoped component.<br> - * <p> - */ - @Test - public void atScope2() throws Exception { - System.out.println("atScope2"); - ArrayList<DThread> d = new ArrayList<DThread>(); - for (int i = 0; i < numDThread; i++) - d.add(new DThread("ThreadD"+i)); - for (int i = 0; i < numDThread; i++) - d.get(i).start(); - for (int i = 0; i < numDThread; i++) - d.get(i).join(); - System.out.println(""); - for (int i = 0; i < numDThread; i++) - Assert.assertEquals("None", d.get(i).failedReason); - } - - /** - * Line 262:<br> - * <li>COMPOSITE</li> - * <p> - * Lines 296 to 298:<br> - * All service requests are dispatched to the same implementation instance - * for the lifetime of the containing composite. The lifetime of the - * containing composite is defined as the time it becomes active in the - * runtime to the time it is deactivated, either normally or abnormally.<br> - * <p> - * Following lines should be found at System out<br> - * atScope3 - Cleaning up<br> - * FService1->destroyFService - */ - @Test - public void atScope3() throws Exception { - System.out.println("atScope3"); - FService fService = ServiceFinder.getService(FService.class, "FComponent"); - String serviceName = fService.getName(); - boolean isInitReady = fService.isInitReady(); - - ArrayList<FThread> f = new ArrayList<FThread>(); - for (int i = 0; i < numFThread; i++) - f.add(new FThread("ThreadF"+i)); - for (int i = 0; i < numFThread; i++) - f.get(i).start(); - for (int i = 0; i < numFThread; i++) - f.get(i).join(); - for (int i = 0; i < numFThread; i++) { - Assert.assertEquals(serviceName, f.get(i).serviceName); - } - - int instanceCounter = fService.getInstanceCounter(); - int initCalledCounter = fService.getInitCalledCounter(); - int destroyCalledCounter = fService.getDestroyCalledCounter(); - System.out.println(""); - - Assert.assertTrue(isInitReady); - Assert.assertEquals(1, instanceCounter); - Assert.assertEquals(1, initCalledCounter); - Assert.assertEquals(0, destroyCalledCounter); - } - - /** - * Lines 299 to 302:<br> - * A composite scoped implementation may also specify eager initialization - * using the "@EagerInit" annotation. When marked for eager initialization, - * the composite scoped instance will be created when its containing - * component is started. If a method is marked with the "@Init" annotation, - * it will be called when the instance is created.<p> - * Section 1.8.9 "@EagerInit"<br> - * <p> - * GService is defined as eager initialization. It will be initialized - * when calls SCADomain.newInstance(compositeName), so the - * initCalledCounter is 1. - */ - @Test - public void atScope4() throws Exception { - System.out.println("atScope4"); - - GService gService = ServiceFinder.getService(GService.class, "GComponent"); - int initCalledCounter = gService.getInitCalledCounter(); - int destroyCalledCounter = gService.getDestroyCalledCounter(); - - System.out.println("initCalledCounter="+ initCalledCounter); - System.out.println("destroyCalledCounter="+ destroyCalledCounter); - System.out.println(""); - - Assert.assertEquals(1, initCalledCounter); - Assert.assertEquals(0, destroyCalledCounter); - } - - /** - * Line 261:<br> - * <li>CONVERSATION</li> - * <p> - * Lines 305 to 310:<br> - * A conversation is defined as a series of correlated interactions between - * a client and a target service. A conversational scope starts when the - * first service request is dispatched to an implementation instance - * offering a conversational service. A conversational scope completes - * after an end operation defined by the service contract is called and - * completes processing or the conversation expires. A conversation may be - * long-running and the SCA runtime may choose to passivate implementation - * instances. If this occurs, the runtime must guarantee implementation - * instance state is preserved. - */ - @Test - public void atScope5() throws Exception { - System.out.println("atScope5"); - - ArrayList<HThread> g = new ArrayList<HThread>(); - for (int i = 0; i < numHThread; i++) - g.add(new HThread("ThreadH"+i)); - for (int i = 0; i < numHThread; i++) - g.get(i).start(); - for (int i = 0; i < numHThread; i++) - g.get(i).join(); - - HService hService = ServiceFinder.getService(HService.class, "HComponent"); - String failedReason = hService.testCounters(numHThread); - System.out.println(""); - - for (int i = 0; i < numHThread; i++) - Assert.assertEquals("None", g.get(i).failedReason); - Assert.assertEquals("None", failedReason); - } - - /** Lines 290 to 293:<br> - * There are times when a local request scoped service is called without - * there being a remotable service earlier in the call stack, such as when - * a local service is called from a non-SCA entity. In these cases, a - * remote request is always considered to be present, but the lifetime of - * the request is implementation dependent. For example, a timer event - * could be treated as a remote request..<br> - * <p> - * When the composite runs, composite scope service JService kicks off a - * timer by the @Init method. When the timer expires, JService invokes a - * method that calls an operation on the reference to a stateless scope - * sevice KService. KService calls a request scope service LService - * multiple times. The results of the calls to LService should be set up to - * differ depending on whether the same instance is called each time - - * without the interface being declared Conversational.<br> - * <p> - */ - @Test - public void atScope6() throws Exception { - System.out.println("atScope6"); - - JService jService = ServiceFinder.getService(JService.class, "JComponent"); - jService.getName(); - Thread.sleep(2000); - String failedReason = jService.getFailedReason(); - System.out.println(""); - - Assert.assertEquals("", failedReason); - } - - /** - * Same as atScope6 but the timer triggers KService multiple times.<br> - */ - @Test - @Ignore("TUSCANY-2256") - public void atScope7() throws Exception { - System.out.println("atScope7"); - - MService mService = ServiceFinder.getService(MService.class, "MComponent"); - mService.getName(); - Thread.sleep(6000); - String failedReason = mService.getFailedReason(); - System.out.println(""); - - Assert.assertEquals("", failedReason); - } - - private class BThread extends Thread { - private String name = null; - public String failedReason = "Unknown"; - - public BThread(String name) { - super(); - this.name = name; - failedReason = "Unknown"; - } - - @Override - public void run() { - BService bService = ServiceFinder.getService(BService.class, "BComponent"); - bService.setCurrentState(name + "-state-1"); - System.out.println(name + "->" + bService.getName()); - if (!bService.isInitReady()) { - failedReason = "InitNotReady"; - return; - } - if (bService.getCurrentState() != null) { - failedReason = "CurrentStateNotNull"; - return; - } - int counter = bService.getInstanceCounter(); - if (counter < 2) { - failedReason = "OnlyOneInstance - " + counter; - return; - } - counter = bService.getInitCalledCounter(); - if (counter < 2) { - failedReason = "InitBeCalledOnce - " + counter; - return; - } - counter = bService.getDestroyCalledCounter(); - if (counter < 2) { - failedReason = "DestroyBeCalledOnce - " + counter; - return; - } - failedReason = "None"; - } - } - - private class CThread extends Thread { - private String name = null; - public String failedReason = "Unknown"; - - public CThread(String name) { - super(); - this.name = name; - failedReason = "Unknown"; - } - - @Override - public void run() { - CService cService = ServiceFinder.getService(CService.class, "CComponent"); - cService.setCurrentState(name + "-state-1"); - System.out.println(name + "->" + cService.getName()); - if (!cService.isInitReady()) { - failedReason = "InitNotReady"; - return; - } - if (cService.getCurrentState() != null) { - failedReason = "CurrentStateNotNull"; - return; - } - int counter = cService.getInstanceCounter(); - if (counter < 2) { - failedReason = "OnlyOneInstance - " + counter; - return; - } - counter = cService.getInitCalledCounter(); - if (counter < 2) { - failedReason = "InitBeCalledOnce - " + counter; - return; - } - counter = cService.getDestroyCalledCounter(); - if (counter < 2) { - failedReason = "DestroyBeCalledOnce - " + counter; - return; - } - failedReason = "None"; - } - } - - private class DThread extends Thread { - - private String name = null; - public String failedReason = "Unknown"; - - public DThread(String name) { - super(); - this.name = name; - failedReason = "Unknown"; - } - - @Override - public void run() { - DService dService = ServiceFinder.getService(DService.class, "DComponent"); - String serviceName = dService.getName(); - System.out.println(name + "->" + serviceName); - - for (int i = 0; i < 10; i++) { - String newState = name + "-state-" + i; - dService.setCurrentState(newState); - String currentState = dService.getCurrentState(); - if (!currentState.equals(serviceName + "-" + newState)) { - failedReason = "CurrentStateLost - " + currentState; - return; - } - } - - if (!dService.isInitReady()) { - failedReason = "InitNotReady"; - return; - } - - int counter = dService.getInstanceCounter(); - if (counter > numDThread) { - failedReason = "TooMuchInstance - " + counter; - return; - } - - counter = dService.getInitCalledCounter(); - if (counter > numDThread) { - failedReason = "InitBeCalledTooMuch - " + counter; - return; - } - - // JIRA T-2215 - /* Don't know when destroy method be called - counter = dService.getDestroyCalledCounter(); - if (counter > numDThreads) { - failedReason = "DestroyBeCalledTooMuch - " + counter; - return; - } - */ - failedReason = "None"; - } - } - - private class FThread extends Thread { - - private String name = null; - - public String serviceName = null; - - public FThread(String name) { - super(); - this.name = name; - } - - @Override - public void run() { - FService fService = ServiceFinder.getService(FService.class, "FComponent"); - serviceName = fService.getName(); - System.out.println(name + "->" + serviceName); - - for (int i = 0; i < 10; i++) { - String newState = name + "-state-" + i; - fService.setCurrentState(newState); - fService.getCurrentState(); - } - } - } - - private class HThread extends Thread { - - public String failedReason = "Unknown"; - - public HThread(String name) { - super(); - failedReason = "Unknown"; - } - - @Override - public void run() { - HService hService = ServiceFinder.getService(HService.class, "HComponent"); - failedReason = hService.test(); - } - } - -} - - diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/pom.xml b/branches/sca-java-1.4/vtest/java-api/annotations/service/pom.xml deleted file mode 100644 index acadc3cb71..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?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>java-api-annotations</artifactId> - <version>1.4.1-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - <artifactId>vtest-java-api-annotations-service</artifactId> - <name>Apache Tuscany SCA vTest Java APIs and Annotations Verification Tests - Annotations - @Service</name> - - <dependencies> - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-host-embedded</artifactId> - <version>1.4.1-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>org.apache.tuscany.sca</groupId> - <artifactId>tuscany-implementation-java-runtime</artifactId> - <version>1.4.1-SNAPSHOT</version> - <scope>runtime</scope> - </dependency> - - </dependencies> -</project> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/AService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/AService.java deleted file mode 100644 index a923faf5ae..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/AService.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Remotable Service - */ -@Remotable -public interface AService { - - public String getName(); - - public String setAObject(AObject a); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/BService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/BService.java deleted file mode 100644 index 26bcf3b9db..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/BService.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; - -/** - * Simple Local Service - */ -public interface BService { - - public String getName(); - - public String setAObject(AObject a); - - public String testServices(); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/CService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/CService.java deleted file mode 100644 index 4f4f1e80c7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/CService.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; - -/** - * Simple Local Service without defining "@Service" at the implementation class - */ -public interface CService { - - public String getName(); - - public String setAObject(AObject a); -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService1.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService1.java deleted file mode 100644 index ffabb3619c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService1.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service - */ -public interface DService1 { - - public String getName1(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService2.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService2.java deleted file mode 100644 index 83d7980dbc..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService2.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service - */ -public interface DService2 { - - public String getName2(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService3.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService3.java deleted file mode 100644 index a416e33de7..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/DService3.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service - */ -public interface DService3 { - - public String getName3(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/EService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/EService.java deleted file mode 100644 index ad44d2b93a..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/EService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service which implementation class defines - * - * @Service() with no attributes - */ -public interface EService { - - public String getName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/FService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/FService.java deleted file mode 100644 index 52886131a1..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/FService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service which implementation class defines - * - * @Service with full package name - */ -public interface FService { - - public String getName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService1.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService1.java deleted file mode 100644 index bd1a3a5fe6..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService1.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service - */ -public interface GService1 { - - public String getName(); - - public String getServiceName(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService2.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService2.java deleted file mode 100644 index 0f8c7dabcb..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/GService2.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -/** - * Simple Local Service - */ -public interface GService2 extends GService1 { - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/HService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/HService.java deleted file mode 100644 index e50e230bd4..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/HService.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Remotable Service - */ -@Remotable -public interface HService { - - public String getName(); - - public String setAObject1(AObject a); - - public String setAObject2(AObject a); - - public String getComponentName(); - - public String getAObject1String(); - - public String getAObject2String(); - - public String getAObject3String(); - - public AObject getAObject3(); - - public String getServiceName1(); - - public String getServiceName2(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/IService.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/IService.java deleted file mode 100644 index e3a1462f88..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/IService.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; -import org.osoa.sca.annotations.Remotable; - -/** - * Simple Remotable Service - */ -@Remotable -public interface IService { - - public String getName(); - - public String setAObject1(AObject a); - - public String setAObject2(AObject a); - - public void setComponentName1(String componentName1); - - public String getComponentName1(); - - public String getComponentName2(); - - public String getAObject1String(); - - public String getAObject2String(); - - public String getAObject3String(); - - public AObject getAObject3(); - - public String getServiceName1(); - - public String getServiceName2(); - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AObject.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AObject.java deleted file mode 100644 index 0ab2e29194..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AObject.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -/** - * A simple object to hold a string - */ -public class AObject { - - public String aString; - - public AObject() { - this.aString = null; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AServiceImpl.java deleted file mode 100644 index 7ce2235719..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/AServiceImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.AService; -import org.osoa.sca.annotations.Service; - -@Service(AService.class) -public class AServiceImpl implements AService { - - public String getName() { - return "AService"; - } - - public String setAObject(AObject a) { - a.aString = "AService"; - return "AService"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/BServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/BServiceImpl.java deleted file mode 100644 index 9c3f15743c..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/BServiceImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.AService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.BService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.CService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.HService; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.IService; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.Reference; - -@Service(BService.class) -public class BServiceImpl implements BService { - - @Reference(required=false) - public AService aService = null; - - @Reference(required=false) - public CService cService = null; - - @Reference(required=false) - public HService hService = null; - - @Reference(required=false) - public IService iService = null; - - public String getName() { - return "BService"; - } - - public String setAObject(AObject a) { - a.aString = "BService"; - return "BService"; - } - - public String testServices() { - - AObject a = new AObject(); - aService.setAObject(a); - if (a.aString != null) - return "AServiceNotPassByValue"; - - AObject c = new AObject(); - cService.setAObject(c); - if (c.aString == null || !c.aString.equals("CService")) - return "CServiceNotPassByReference"; - - - AObject h1 = new AObject(); - hService.setAObject1(h1); - if (h1.aString == null || !h1.aString.equals("HService")) - return "HServiceSetAObject1NotPassByReference"; - h1.aString = "testServices"; - if (!hService.getAObject1String().equals("testServices")) - return "HServiceGetAObject1NotPassByReference"; - - AObject h2 = new AObject(); - hService.setAObject2(h2); - if (h2.aString != null) - return "HServiceSetAObject2NotPassByValue"; - h2.aString = "testServices"; - if (!hService.getAObject2String().equals("HService")) - return "HServiceGetAObject1NotPassByValue"; - - AObject h3 = hService.getAObject3(); - h3.aString = "testServices"; - if (!hService.getAObject3String().equals("HService")) - return "HServiceGetAObject3NotPassByValue"; - - AObject i1 = new AObject(); - iService.setAObject1(i1); - if (i1.aString == null || !i1.aString.equals("IService")) - return "IServiceSetAObject1NotPassByReference"; - i1.aString = "testServices"; - if (!iService.getAObject1String().equals("testServices")) - return "IServiceGetAObject1NotPassByReference"; - - AObject i2 = new AObject(); - iService.setAObject2(i2); - if (i2.aString == null || !i2.aString.equals("IService")) - return "IServiceSetAObject2NotPassByReference"; - i2.aString = "testServices"; - if (!iService.getAObject2String().equals("testServices")) - return "IServiceGetAObject2NotPassByReference"; - - AObject i3 = iService.getAObject3(); - i3.aString = "testServices"; - if (!iService.getAObject3String().equals("testServices")) - return "IServiceGetAObject3NotPassByReference"; - - return "None"; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/CServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/CServiceImpl.java deleted file mode 100644 index 3fc23d2f68..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/CServiceImpl.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.CService; - -public class CServiceImpl implements CService { - - public String getName() { - return "CService"; - } - - public String setAObject(AObject a) { - a.aString = "CService"; - return "CService"; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/DServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/DServiceImpl.java deleted file mode 100644 index 4cc9430c74..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/DServiceImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.DService1; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.DService2; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.DService3; -import org.osoa.sca.annotations.Service; - -@Service(interfaces = {DService1.class, DService2.class}) -public class DServiceImpl implements DService1, DService2, DService3 { - - public String getName1() { - return "DService1"; - } - - public String getName2() { - return "DService2"; - } - - public String getName3() { - return "DService3"; - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/EServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/EServiceImpl.java deleted file mode 100644 index a64d434a46..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/EServiceImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.EService; -import org.osoa.sca.annotations.Service; - -@Service() -public class EServiceImpl implements EService { - - public String getName() { - return "EService"; - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl.java deleted file mode 100644 index 49f34738ef..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.FService; -import org.osoa.sca.RequestContext; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Service; - -@Service(org.apache.tuscany.sca.vtest.javaapi.annotations.service.FService.class) -public class FServiceImpl implements FService { - - @Context - public RequestContext requestContext; - - public String getName() { - return requestContext.getServiceName(); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl2.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl2.java deleted file mode 100644 index 46370b7e19..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/FServiceImpl2.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.osoa.sca.annotations.Service; - -@Service(FServiceImpl2.class) -public class FServiceImpl2 extends FServiceImpl { -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/GServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/GServiceImpl.java deleted file mode 100644 index a86d6e1da0..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/GServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.GService1; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.GService2; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.RequestContext; - -@Service(interfaces = {GService1.class, GService2.class}) -public class GServiceImpl implements GService1 { - - @Context - public RequestContext requestContext; - - public String getName() { - return "GService"; - } - - public String getServiceName() { - return requestContext.getServiceName(); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/HServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/HServiceImpl.java deleted file mode 100644 index ac525ea669..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/HServiceImpl.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.HService; -import org.osoa.sca.ComponentContext; -import org.osoa.sca.RequestContext; -import org.osoa.sca.annotations.ComponentName; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; -import org.osoa.sca.annotations.AllowsPassByReference; - -@Service(HService.class) -@Scope("REQUEST") -public class HServiceImpl implements HService { - - @ComponentName - protected String componentName; - - private AObject aObject1 = null; - - private AObject aObject2 = null; - - private AObject aObject3 = null; - - public RequestContext requestContext; - - public ComponentContext componentContext; - - public String getName() { - return "HService"; - } - - @AllowsPassByReference - public String setAObject1(AObject a) { - a.aString = "HService"; - aObject1 = a; - return "HService"; - } - - public String setAObject2(AObject a) { - a.aString = "HService"; - aObject2 = a; - return "HService"; - } - - @Context - public void setComponentContext(ComponentContext componentContext) { - this.componentContext = componentContext; - } - - @Context - public void setRequestContext(RequestContext requestContext) { - this.requestContext = requestContext; - } - - public String getComponentName() { - return componentName; - } - - public String getAObject1String() { - return aObject1.aString; - } - - public String getAObject2String() { - return aObject2.aString; - } - - public String getAObject3String() { - return aObject3.aString; - } - - public AObject getAObject3() { - aObject3 = new AObject(); - aObject3.aString = "HService"; - return aObject3; - } - - public String getServiceName1() { - return requestContext.getServiceName(); - } - - public String getServiceName2() { - return componentContext.getRequestContext().getServiceName(); - } - -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/IServiceImpl.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/IServiceImpl.java deleted file mode 100644 index f2760b96ab..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/impl/IServiceImpl.java +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.IService; -import org.osoa.sca.ComponentContext; -import org.osoa.sca.RequestContext; -import org.osoa.sca.annotations.AllowsPassByReference; -import org.osoa.sca.annotations.ComponentName; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(IService.class) -@Scope("REQUEST") -@AllowsPassByReference -public class IServiceImpl implements IService { - - @ComponentName - public String componentName1; - - public String componentName2; - - private AObject aObject1 = null; - - private AObject aObject2 = null; - - private AObject aObject3 = null; - - @Context - public RequestContext requestContext; - - @Context - public ComponentContext componentContext; - - public String getName() { - return "IService"; - } - - public String setAObject1(AObject a) { - a.aString = "IService"; - aObject1 = a; - return "IService"; - } - - public String setAObject2(AObject a) { - a.aString = "IService"; - aObject2 = a; - return "IService"; - } - - @ComponentName - public void setComponentName1(String componentName1) { - this.componentName2 = componentName1; - } - - public String getAObject1String() { - return aObject1.aString; - } - - public String getAObject2String() { - return aObject2.aString; - } - - public String getAObject3String() { - return aObject3.aString; - } - - public AObject getAObject3() { - aObject3 = new AObject(); - aObject3.aString = "IService"; - return aObject3; - } - - public String getComponentName1() { - return componentName1; - } - - public String getComponentName2() { - return componentName2; - } - - public String getServiceName1() { - return requestContext.getServiceName(); - } - - public String getServiceName2() { - return componentContext.getRequestContext().getServiceName(); - } -} diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/resources/service.composite b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/resources/service.composite deleted file mode 100644 index 0731986df2..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/main/resources/service.composite +++ /dev/null @@ -1,82 +0,0 @@ -<?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://java-api-tests" name="Service-Composite"> - - <component name="AComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AServiceImpl" /> - </component> - - <component name="BComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.BServiceImpl" /> - </component> - - <component name="BComponent1"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.BServiceImpl" /> - <reference name="aService" target="AComponent"/> - <reference name="cService" target="CComponent"/> - <reference name="hService" target="HComponent"/> - <reference name="iService" target="IComponent"/> - </component> - - <component name="CComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.CServiceImpl" /> - </component> - - <component name="DComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.DServiceImpl" /> - </component> - - <component name="EComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.EServiceImpl" /> - </component> - - <component name="FComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.FServiceImpl" /> - </component> - - <component name="FComponent2"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.FServiceImpl2" /> - </component> - - <component name="GComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.GServiceImpl" /> - </component> - - <component name="HComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.HServiceImpl" /> - </component> - - <component name="IComponent"> - <implementation.java - class="org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.IServiceImpl" /> - </component> - -</composite> diff --git a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/ServiceAnnotationTestCase.java b/branches/sca-java-1.4/vtest/java-api/annotations/service/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/ServiceAnnotationTestCase.java deleted file mode 100644 index 52f7821ebb..0000000000 --- a/branches/sca-java-1.4/vtest/java-api/annotations/service/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/service/ServiceAnnotationTestCase.java +++ /dev/null @@ -1,335 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.tuscany.sca.vtest.javaapi.annotations.service; - -import static org.junit.Assert.fail; -import junit.framework.Assert; - -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.AObject; -import org.apache.tuscany.sca.vtest.javaapi.annotations.service.impl.FServiceImpl2; -import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Test; - -/** - * This test class tests the Service annotation described in section 1.2.1 - * including 1.3.1, 1.8.1, 1.8.3, 1.8.6, 1.8.15 and 1.8.17<br> - * but not..<br> - * <li>Lines 1531 to 1534</li> - */ -public class ServiceAnnotationTestCase { - - protected static String compositeName = "service.composite"; - protected static AService aService = null; - protected static BService bService = null; - protected static BService bService1 = null; - protected static HService hService = null; - protected static IService iService = null; - - @BeforeClass - public static void init() throws Exception { - try { - System.out.println("Setting up"); - ServiceFinder.init(compositeName); - aService = ServiceFinder.getService(AService.class, "AComponent"); - bService = ServiceFinder.getService(BService.class, "BComponent"); - bService1 = ServiceFinder.getService(BService.class, "BComponent1"); - hService = ServiceFinder.getService(HService.class, "HComponent"); - iService = ServiceFinder.getService(IService.class, "IComponent"); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - @AfterClass - public static void destroy() throws Exception { - - System.out.println("Cleaning up"); - ServiceFinder.cleanup(); - - } - - /** - * Line 215:<br> - * <li>As a Java interface</li> - * <p> - * Line 1622 to 1623:<br> - * The - * - * @Service annotation type is used on a component implementation class to - * specify the SCA services offered by the implementation.<br> - */ - @Test - public void atService1() throws Exception { - Assert.assertEquals("AService", aService.getName()); - } - - /** - * Line 216:<br> - * <li>As a Java class</li> - * <p> - * Line 1631:<br> - * <li>value – A shortcut for the case when the class provides only a - * single service interface.</li> - */ - @Test - public void atService2() throws Exception { - Assert.assertEquals("BService", bService.getName()); - } - - /** - * Lines 222 to 224:<br> - * A remotable service is defined using the "@Remotable" annotation on the - * Java interface that defines the service. Remotable services are intended - * to be used for coarse grained services, and the parameters are passed - * by-value.<br> - * <p> - * Lines 321 to 323:<br> - * The "@Remotable" annotation on a Java interface indicates that the - * interface is designed to be used for remote communication. Remotable - * interfaces are intended to be used for coarse grained services. - * Operations parameters and return values are passed by-value.<br> - */ - @Test - public void atService3() throws Exception { - AObject o = new AObject(); - Assert.assertEquals("AService", aService.setAObject(o)); - Assert.assertNull(o.aString); - } - - /** - * Lines 227 to 242:<br> - * A local service can only be called by clients that are deployed within - * the same address space as the component implementing the local service.<br> - * ...<br> - * The data exchange semantic for calls to local services is by-reference.<br> - * ...<br> - * Lines 996 to 1028:<br> - * 1.8.1 "@AllowsPassByReference"<br> - * ...<br> - * Lines 1535 to 1540:<br> - * Independent of whether the remotable service is called from outside of - * the composite that contains it or from another component in the same - * composite, the data exchange semantics are by-value.<br> - * Implementations of remotable services may modify input data during or - * after an invocation and may modify return data after the invocation. If a - * remotable service is called locally or remotely, the SCA container is - * responsible for making sure that no modification of input data or - * post-invocation modifications to return data are seen by the caller.<br> - * <p> - * Test under Non-SCA <-> SCA - * <li>BService is local service to test by reference</li> - * <li>HService is remotable service to test "@AllowsPassByReference" at - * method level</li> - * <li>IService is remotable service to test "@AllowsPassByReference" at - * class level</li> - */ - @Test - public void atService4() throws Exception { - AObject b = new AObject(); - Assert.assertEquals("BService", bService.setAObject(b)); - Assert.assertEquals("BService", b.aString); - - AObject h1 = new AObject(); - Assert.assertEquals("HService", hService.setAObject1(h1)); - Assert.assertEquals("HService", h1.aString); - h1.aString = "atService4"; - Assert.assertEquals("atService4", hService.getAObject1String()); - - AObject h2 = new AObject(); - Assert.assertEquals("HService", hService.setAObject2(h2)); - Assert.assertNull(h2.aString); - h2.aString = "atService4"; - Assert.assertEquals("HService", hService.getAObject2String()); - - AObject h3 = hService.getAObject3(); - h3.aString = "atService4"; - Assert.assertEquals("HService", hService.getAObject3String()); - - AObject i1 = new AObject(); - Assert.assertEquals("IService", iService.setAObject1(i1)); - Assert.assertEquals("IService", i1.aString); - i1.aString = "atService4"; - Assert.assertEquals("atService4", iService.getAObject1String()); - - AObject i2 = new AObject(); - Assert.assertEquals("IService", iService.setAObject2(i2)); - Assert.assertEquals("IService", i2.aString); - i2.aString = "atService4"; - Assert.assertEquals("atService4", iService.getAObject2String()); - - AObject i3 = iService.getAObject3(); - i3.aString = "atService4"; - Assert.assertEquals("atService4", iService.getAObject3String()); - } - - /** - * Line 1624 to 1627:<br> - * A class used as the implementation of a service is not required to have - * an "@Service" annotation. If a class has no "@Service" annotation, then - * the rules determining which services are offered and what interfaces - * those services have are determined by the specific implementation type. - * <br> - */ - @Test - public void atService5() throws Exception { - CService cService = ServiceFinder.getService(CService.class, "CComponent"); - Assert.assertEquals("CService", cService.getName()); - } - - /** - * Line 1623 to 1624:<br> - * The class need not be declared as implementing all of the interfaces - * implied by the services, but all methods of the service interfaces must - * be present.<br> - * <p> - * Line 1629 to 1630:<br> - * <li>interfaces – The value is an array of interface or class objects - * that should be exposed as services by this component.</li> - */ - @Test - public void atService6() throws Exception { - DService1 dService1 = ServiceFinder.getService(DService1.class, "DComponent/DService1"); - Assert.assertEquals("DService1", dService1.getName1()); - DService2 dService2 = ServiceFinder.getService(DService2.class, "DComponent/DService2"); - Assert.assertEquals("DService2", dService2.getName2()); - try { - ServiceFinder.getService(DService3.class, "DComponent/DService3"); - fail("Should have failed to get this service"); - } catch (Exception e) { - // Expect an exception - } - } - - /** - * Line 1635 to 1636:<br> - * A "@Service" annotation with no attributes is meaningless, it is the same - * as not having the annotation there at all.<br> - */ - @Test - public void atService7() throws Exception { - EService eService = ServiceFinder.getService(EService.class, "EComponent"); - Assert.assertEquals("EService", eService.getName()); - } - - /** - * Line 1637 to 1638:<br> - * The service names of the defined services default to the names of the - * interfaces or class, without the package name.<br> - */ - @Test - public void atService8() throws Exception { - FService fService = ServiceFinder.getService(FService.class, "FComponent"); - Assert.assertEquals("FService", fService.getName()); - FServiceImpl2 fServiceImpl2 = ServiceFinder.getService(FServiceImpl2.class, "FComponent2"); - Assert.assertEquals("FServiceImpl2", fServiceImpl2.getName()); - fService = ServiceFinder.getService(FService.class, "FComponent2"); - Assert.assertEquals("FServiceImpl2", fService.getName()); - } - - /** - * Line 1639 to 1641:<br> - * If a Java implementation needs to realize two services with the same - * interface, then this is achieved through subclassing of the interface. - * The subinterface must not add any methods. Both interfaces are listed in - * the "@Service" annotation of the Java implementation class. <br> - */ - @Test - public void atService9() throws Exception { - GService1 gService1 = ServiceFinder.getService(GService1.class, "GComponent/GService1"); - GService2 gService2 = ServiceFinder.getService(GService2.class, "GComponent/GService2"); - Assert.assertEquals("GService", gService1.getName()); - Assert.assertEquals("GService1", gService1.getServiceName()); - Assert.assertEquals("GService", gService2.getName()); - Assert.assertEquals("GService2", gService2.getServiceName()); - } - - /** - * Lines 227 to 242:<br> - * A local service can only be called by clients that are deployed within - * the same address space as the component implementing the local service.<br> - * ...<br> - * The data exchange semantic for calls to local services is by-reference.<br> - * ...<br> - * Lines 996 to 1028:<br> - * 1.8.1 "@AllowsPassByReference"<br> - * ...<br> - * Lines 1535 to 1540:<br> - * Independent of whether the remotable service is called from outside of - * the composite that contains it or from another component in the same - * composite, the data exchange semantics are by-value.<br> - * Implementations of remotable services may modify input data during or - * after an invocation and may modify return data after the invocation. If a - * remotable service is called locally or remotely, the SCA container is - * responsible for making sure that no modification of input data or - * post-invocation modifications to return data are seen by the caller.<br> - * <p> - * Test under SCA <-> SCA<br> - * <li>AService is remotable service to test by value</li> - * <li>CService is local service to test by-reference</li> - * <li>HService is remotable service to test "@AllowsPassByReference" at - * method level</li> - * <li>IService is remotable service to test "@AllowsPassByReference" at - * class level</li> - */ - @Test - public void atService10() throws Exception { - Assert.assertEquals("None", bService1.testServices()); - } - - /** - * Lines 1095 to 1124:<br> - * 1.8.3. "@ComponentName"<br> - * ...<br> - * The "@ComponentName" annotation type is used to annotate a Java class - * field or setter method that is used to inject the component name.<br> - * ...<br> - */ - @Test - public void atService11() throws Exception { - Assert.assertEquals("HComponent", hService.getComponentName()); - Assert.assertNull(iService.getComponentName1()); - Assert.assertEquals("IComponent", iService.getComponentName2()); - } - - /** - * Lines 1164 to 1187:<br> - * 1.8.6. "@Context"<br> - * ...<br> - * The "@Context" annotation type is used to annotate a Java class field or - * a setter method that is used to inject a composite context for the - * component. The type of context to be injected is defined by the type of - * the Java class field or type of the setter method input argument, the - * type is either ComponentContext or RequestContext.<br> - * ...<br> - * <p> - * HService - "@Context" is used to annotate setter methods<br> - * IService - "@Context" is used to annotate class fields<br> - * <br> - */ - @Test - public void atService12() throws Exception { - Assert.assertEquals("HService", hService.getServiceName1()); - Assert.assertEquals("HService", hService.getServiceName2()); - Assert.assertEquals("IService", iService.getServiceName1()); - Assert.assertEquals("IService", iService.getServiceName2()); - } -} |