diff options
author | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2008-09-24 08:13:02 +0000 |
---|---|---|
committer | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2008-09-24 08:13:02 +0000 |
commit | 8d6c3f989bb2f359091468534730080425afa8c4 (patch) | |
tree | 986a29d3ef78d0b960ddb4dc98e15adc831ffe84 /java/sca/modules/policy-security/src/main/java/org | |
parent | 9f462538f3ac1e5522a87206a0668ecdecc9e3c4 (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/src/main/java/org')
-rw-r--r-- | java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/SecurityUtil.java | 26 |
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; + } } |