summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/testing/itest/policy
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2011-10-31 10:38:52 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2011-10-31 10:38:52 +0000
commit1b903cae8b2c1920fbbef2904b0b4d4f014ec052 (patch)
treeaecb07156f40efeb42d00ff9e4e6e2748b16bd17 /sca-java-2.x/trunk/testing/itest/policy
parentb624b481d8900141f221c041858deea1aef04a71 (diff)
Ensure that fully resolved JSR250 policy sets, added by the policy processor on the fly, are not re-resolved. Hence the dynamic information in the policy sets is not lost.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1195401 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/testing/itest/policy')
-rw-r--r--sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldClient.java6
-rw-r--r--sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldService1.java33
-rw-r--r--sca-java-2.x/trunk/testing/itest/policy/operations/src/main/resources/org/apache/tuscany/sca/policy/operations/helloworld/helloworld.composite8
-rw-r--r--sca-java-2.x/trunk/testing/itest/policy/operations/src/test/java/org/apache/tuscany/sca/policy/operations/OperationsPolicyTestCase.java23
4 files changed, 65 insertions, 5 deletions
diff --git a/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldClient.java b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldClient.java
index f9d883c83d..674731d61c 100644
--- a/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldClient.java
+++ b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldClient.java
@@ -26,10 +26,14 @@ public class HelloWorldClient implements HelloWorld {
@Reference
public HelloWorld helloWorldWS;
+ @Reference
+ public HelloWorld helloWorldWS1;
+
public String getGreetings(String s) {
String response = helloWorldWS.getGreetings(s);
+ response += helloWorldWS1.getGreetings(s);
System.out.println("At client: " + response);
return response;
- }
+ }
}
diff --git a/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldService1.java b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldService1.java
new file mode 100644
index 0000000000..962c6afbf9
--- /dev/null
+++ b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/java/org/apache/tuscany/sca/policy/operations/helloworld/HelloWorldService1.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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.policy.operations.helloworld;
+
+import javax.annotation.security.PermitAll;
+
+@PermitAll
+public class HelloWorldService1 implements HelloWorld {
+
+ public String getGreetings(String s) {
+ String response = "Hello " + s;
+ System.out.println("At service: " + response);
+ return response;
+ }
+
+}
diff --git a/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/resources/org/apache/tuscany/sca/policy/operations/helloworld/helloworld.composite b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/resources/org/apache/tuscany/sca/policy/operations/helloworld/helloworld.composite
index ea43579747..f9f437f30e 100644
--- a/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/resources/org/apache/tuscany/sca/policy/operations/helloworld/helloworld.composite
+++ b/sca-java-2.x/trunk/testing/itest/policy/operations/src/main/resources/org/apache/tuscany/sca/policy/operations/helloworld/helloworld.composite
@@ -26,6 +26,7 @@
<component name="HelloWorldClient">
<implementation.java class="org.apache.tuscany.sca.policy.operations.helloworld.HelloWorldClient"/>
<reference name="helloWorldWS" target="HelloWorldService"/>
+ <reference name="helloWorldWS1" target="HelloWorldService1"/>
</component>
<component name="HelloWorldService">
@@ -35,4 +36,11 @@
</service>
</component>
+ <component name="HelloWorldService1">
+ <implementation.java class="org.apache.tuscany.sca.policy.operations.helloworld.HelloWorldService1"/>
+ <service name="HelloWorld">
+ <binding.ws/>
+ </service>
+ </component>
+
</composite>
diff --git a/sca-java-2.x/trunk/testing/itest/policy/operations/src/test/java/org/apache/tuscany/sca/policy/operations/OperationsPolicyTestCase.java b/sca-java-2.x/trunk/testing/itest/policy/operations/src/test/java/org/apache/tuscany/sca/policy/operations/OperationsPolicyTestCase.java
index 44123f44c2..452d448c59 100644
--- a/sca-java-2.x/trunk/testing/itest/policy/operations/src/test/java/org/apache/tuscany/sca/policy/operations/OperationsPolicyTestCase.java
+++ b/sca-java-2.x/trunk/testing/itest/policy/operations/src/test/java/org/apache/tuscany/sca/policy/operations/OperationsPolicyTestCase.java
@@ -19,22 +19,25 @@
package org.apache.tuscany.sca.policy.operations;
+import javax.xml.namespace.QName;
+
import junit.framework.TestCase;
+import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.assembly.xml.Constants;
import org.apache.tuscany.sca.node.Contribution;
import org.apache.tuscany.sca.node.Node;
import org.apache.tuscany.sca.node.NodeFactory;
+import org.apache.tuscany.sca.node.impl.NodeImpl;
import org.apache.tuscany.sca.policy.operations.helloworld.HelloWorld;
public class OperationsPolicyTestCase extends TestCase {
+
+ private static final QName PERMIT_ALL = new QName(Constants.SCA11_TUSCANY_NS,"permitAll");
private Node node;
private HelloWorld helloWorld;
- public void testCalculator() throws Exception {
- assertEquals("Hello petra", helloWorld.getGreetings("petra"));
- }
-
@Override
protected void setUp() throws Exception {
node = NodeFactory.newInstance().createNode(new Contribution("test", "target/classes"));
@@ -47,4 +50,16 @@ public class OperationsPolicyTestCase extends TestCase {
node.stop();
}
+ public void testCalculator() throws Exception {
+ assertEquals("Hello petraHello petra", helloWorld.getGreetings("petra"));
+ Composite domainComposite = ((NodeImpl)node).getDomainComposite();
+
+ // Check that the operation level policy is present
+ assertEquals(PERMIT_ALL,
+ domainComposite.getComponents().get(1).getImplementation().getOperations().get(0).getPolicySets().get(0).getName());
+
+ // Check that the class level policy is present
+ assertEquals(PERMIT_ALL,
+ domainComposite.getComponents().get(2).getImplementation().getPolicySets().get(0).getName());
+ }
}