Author: nandana
Date: Fri Aug 28 08:06:16 2009
New Revision: 808804

URL: http://svn.apache.org/viewvc?rev=808804&view=rev
Log:
RAMPART-200 Applying the patch. Thanks Prabath

Added:
    
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/SupportingPolicyData.java

Added: 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/SupportingPolicyData.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/SupportingPolicyData.java?rev=808804&view=auto
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/SupportingPolicyData.java
 (added)
+++ 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/SupportingPolicyData.java
 Fri Aug 28 08:06:16 2009
@@ -0,0 +1,53 @@
+package org.apache.rampart.policy;
+
+import java.util.Iterator;
+
+import org.apache.ws.secpolicy.model.Header;
+import org.apache.ws.secpolicy.model.SupportingToken;
+
+public class SupportingPolicyData extends RampartPolicyData {
+
+       public void build(SupportingToken token) {
+
+               if (token.getSignedParts() != null) {
+                       Iterator it = 
token.getSignedParts().getHeaders().iterator();
+                       this.setSignBody(token.getSignedParts().isBody());
+                       while (it.hasNext()) {
+                               Header header = (Header) it.next();
+                               this.addSignedPart(header.getNamespace(), 
header.getName());
+                       }
+               }
+
+               if (token.getEncryptedParts() != null) {
+                       Iterator it = 
token.getEncryptedParts().getHeaders().iterator();
+                       this.setEncryptBody(token.getEncryptedParts().isBody());
+                       while (it.hasNext()) {
+                               Header header = (Header) it.next();
+                               this.setEncryptedParts(header.getNamespace(), 
header.getName(),
+                                               "Header");
+                       }
+               }
+
+               if (token.getSignedElements() != null) {
+                       Iterator it = 
token.getSignedElements().getXPathExpressions()
+                                       .iterator();
+                       while (it.hasNext()) {
+                               this.setSignedElements((String) it.next());
+                       }
+                       this.addDeclaredNamespaces(token.getSignedElements()
+                                       .getDeclaredNamespaces());
+               }
+
+               if (token.getEncryptedElements() != null) {
+                       Iterator it = 
token.getEncryptedElements().getXPathExpressions()
+                                       .iterator();
+                       while (it.hasNext()) {
+                               this.setEncryptedElements((String) it.next());
+                       }
+                       if (token.getSignedElements() == null) {
+                               
this.addDeclaredNamespaces(token.getEncryptedElements()
+                                               .getDeclaredNamespaces());
+                       }
+               }
+       }
+}


Reply via email to