You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by kw...@apache.org on 2008/04/22 18:18:11 UTC

svn commit: r650568 - in /incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src: main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/co...

Author: kwilliams
Date: Tue Apr 22 09:18:01 2008
New Revision: 650568

URL: http://svn.apache.org/viewvc?rev=650568&view=rev
Log:
First cut at ConversationAttributes.SinglePrincipal

Added:
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java   (with props)
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java   (with props)
Modified:
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite
    incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java

Modified: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java?rev=650568&r1=650567&r2=650568&view=diff
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java (original)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/AService.java Tue Apr 22 09:18:01 2008
@@ -25,5 +25,6 @@
 
     public void testMaxAge() throws InterruptedException;
     public void testMaxIdle() throws InterruptedException;
-    
+    public void testSinglePrincipal();
+
 }

Added: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java?rev=650568&view=auto
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java (added)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java Tue Apr 22 09:18:01 2008
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes;
+
+import org.osoa.sca.ServiceReference;
+
+/**
+ * Simple Service
+ */
+public interface CService {
+
+    public void testSinglePricipal(ServiceReference<BService> bReference);
+    
+}

Propchange: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/CService.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java?rev=650568&r1=650567&r2=650568&view=diff
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java (original)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/AServiceImpl.java Tue Apr 22 09:18:01 2008
@@ -22,6 +22,9 @@
 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;
 
@@ -34,7 +37,12 @@
     @Reference
     protected B2Service b2;
 
-
+    @Reference
+    protected CService c;
+    
+    @Context 
+    protected ComponentContext context;
+    
     private void delayForSeconds(int numSeconds) {
         try {
             Thread.sleep(numSeconds * 1000);// millisecs
@@ -59,6 +67,14 @@
         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"));
+        
     }
 
 }

Modified: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java?rev=650568&r1=650567&r2=650568&view=diff
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java (original)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/BServiceImpl.java Tue Apr 22 09:18:01 2008
@@ -26,7 +26,7 @@
 
 @Service(BService.class)
 @Scope("CONVERSATION")
-@ConversationAttributes(maxAge="1 seconds")
+@ConversationAttributes(maxAge="1 seconds", singlePrincipal=true)
 public class BServiceImpl implements BService {
 
     String someState;

Added: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java?rev=650568&view=auto
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java (added)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java Tue Apr 22 09:18:01 2008
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+
+package org.apache.tuscany.sca.vtest.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");
+
+    }
+
+}

Propchange: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/impl/CServiceImpl.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite?rev=650568&r1=650567&r2=650568&view=diff
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite (original)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/main/resources/conversation.composite Tue Apr 22 09:18:01 2008
@@ -25,6 +25,7 @@
 			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">
@@ -32,9 +33,14 @@
 			class="org.apache.tuscany.sca.vtest.javaapi.annotations.conversationattributes.impl.BServiceImpl" />
 	</component>
 
-	<component name="B2Component">
+    <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>

Modified: incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java?rev=650568&r1=650567&r2=650568&view=diff
==============================================================================
--- incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java (original)
+++ incubator/tuscany/java/sca/vtest/java-api/annotations/conversationattributes/src/test/java/org/apache/tuscany/sca/vtest/javaapi/annotations/conversationattributes/ConversationAttributesAnnotationTestCase.java Tue Apr 22 09:18:01 2008
@@ -22,6 +22,7 @@
 import org.apache.tuscany.sca.host.embedded.SCADomain;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.osoa.sca.ConversationEndedException;
 
@@ -79,4 +80,16 @@
         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
+    @Test(expected = Exception.class)
+    public void singlePrincipal() throws Exception {
+        aService.testSinglePrincipal();
+    }
 }