summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/policy-security
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2008-09-24 08:13:02 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2008-09-24 08:13:02 +0000
commit8d6c3f989bb2f359091468534730080425afa8c4 (patch)
tree986a29d3ef78d0b960ddb4dc98e15adc831ffe84 /java/sca/modules/policy-security
parent9f462538f3ac1e5522a87206a0668ecdecc9e3c4 (diff)
Change message getHeaders() operation to return a list, remove the QoS context and change various tests to take account of this assuming that the security information is now passed in the header. This pass the security context is not consolidated into a single subject. The tests that used to pass just a principal still do. Also add a delivery mode JMS policy test. Add some ignores.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@698457 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/policy-security')
-rw-r--r--java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java26
1 files changed, 24 insertions, 2 deletions
diff --git a/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java b/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java
index 7e32973b9a..2216de5361 100644
--- a/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java
+++ b/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java
@@ -33,11 +33,19 @@ import org.apache.tuscany.sca.policy.authentication.basic.BasicAuthenticationPri
public class SecurityUtil {
public static Subject getSubject(Message msg){
- Subject subject = (Subject)msg.getQoSContext().get(Message.QOS_CTX_SECURITY_SUBJECT);
+
+ Subject subject = null;
+
+ for (Object header : msg.getHeaders()){
+ if (header instanceof Subject){
+ subject = (Subject)header;
+ break;
+ }
+ }
if (subject == null){
subject = new Subject();
- msg.getQoSContext().put(Message.QOS_CTX_SECURITY_SUBJECT, subject);
+ msg.getHeaders().add(subject);
}
return subject;
@@ -52,4 +60,18 @@ public class SecurityUtil {
return null;
}
+
+ public static Principal getPrincipal(Message msg){
+
+ Principal principal = null;
+
+ for (Object header : msg.getHeaders()){
+ if (header instanceof Principal){
+ principal = (Principal)header;
+ break;
+ }
+ }
+
+ return principal;
+ }
}