You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by na...@apache.org on 2008/01/28 10:27:01 UTC

svn commit: r615800 - /webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java

Author: nandana
Date: Mon Jan 28 01:27:00 2008
New Revision: 615800

URL: http://svn.apache.org/viewvc?rev=615800&view=rev
Log:
rampart-policy related changes to support WS Security Policy 1.2

Modified:
    webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java

Modified: webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java
URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java?rev=615800&r1=615799&r2=615800&view=diff
==============================================================================
--- webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java (original)
+++ webservices/rampart/trunk/java/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/AsymmetricBinding.java Mon Jan 28 01:27:00 2008
@@ -27,13 +27,19 @@
 import org.apache.neethi.ExactlyOne;
 import org.apache.neethi.Policy;
 import org.apache.neethi.PolicyComponent;
-import org.apache.ws.secpolicy.Constants;
+import org.apache.ws.secpolicy.SP11Constants;
+import org.apache.ws.secpolicy.SP12Constants;
+import org.apache.ws.secpolicy.SPConstants;
 
 public class AsymmetricBinding extends SymmetricAsymmetricBindingBase {
 
     private InitiatorToken initiatorToken;
 
     private RecipientToken recipientToken;
+    
+    public AsymmetricBinding(int version) {
+        super(version);
+    }
 
     /**
      * @return Returns the initiatorToken.
@@ -66,7 +72,11 @@
     }
 
     public QName getName() {
-        return Constants.ASYMMETRIC_BINDING;
+        if (version == SPConstants.SP_V12) {
+            return SP12Constants.ASYMMETRIC_BINDING;
+        } else {
+            return SP11Constants.ASYMMETRIC_BINDING; 
+        }       
     }
 
     public PolicyComponent normalize() {
@@ -88,7 +98,7 @@
 
         for (Iterator iterator = configs.iterator(); iterator.hasNext();) {
             wrapper = new All();
-            asymmetricBinding = new AsymmetricBinding();
+            asymmetricBinding = new AsymmetricBinding(this.version);
 
             asymmetricBinding.setAlgorithmSuite((AlgorithmSuite) iterator
                     .next());
@@ -113,13 +123,13 @@
     }
 
     public void serialize(XMLStreamWriter writer) throws XMLStreamException {
-        String localname = Constants.ASYMMETRIC_BINDING.getLocalPart();
-        String namespaceURI = Constants.ASYMMETRIC_BINDING.getNamespaceURI();
+        String localname = getName().getLocalPart();
+        String namespaceURI = getName().getNamespaceURI();
 
         String prefix = writer.getPrefix(namespaceURI);
         
         if (prefix == null) {
-            prefix = Constants.ASYMMETRIC_BINDING.getPrefix();
+            prefix = getName().getPrefix();
             writer.setPrefix(prefix, namespaceURI);
         }
 
@@ -127,15 +137,15 @@
         writer.writeStartElement(prefix, localname, namespaceURI);
         writer.writeNamespace(prefix, namespaceURI);
 
-        String pPrefix = writer.getPrefix(Constants.POLICY.getNamespaceURI());
+        String pPrefix = writer.getPrefix(SPConstants.POLICY.getNamespaceURI());
         if (pPrefix == null) {
-            pPrefix = Constants.POLICY.getPrefix();
-            writer.setPrefix(pPrefix, Constants.POLICY.getNamespaceURI());
+            pPrefix = SPConstants.POLICY.getPrefix();
+            writer.setPrefix(pPrefix, SPConstants.POLICY.getNamespaceURI());
         }
 
         // <wsp:Policy>
-        writer.writeStartElement(pPrefix, Constants.POLICY.getLocalPart(),
-                Constants.POLICY.getNamespaceURI());
+        writer.writeStartElement(pPrefix, SPConstants.POLICY.getLocalPart(),
+                SPConstants.POLICY.getNamespaceURI());
 
         if (initiatorToken == null) {
             throw new RuntimeException("InitiatorToken is not set");
@@ -171,16 +181,15 @@
 
         if (isIncludeTimestamp()) {
             // <sp:IncludeTimestamp>
-            writer.writeStartElement(Constants.INCLUDE_TIMESTAMP.getPrefix(),
-                    Constants.INCLUDE_TIMESTAMP.getLocalPart(),
-                    Constants.INCLUDE_TIMESTAMP.getNamespaceURI());
+            writer.writeStartElement(prefix, SPConstants.INCLUDE_TIMESTAMP,
+                    namespaceURI);
             writer.writeEndElement();
             // </sp:IncludeTimestamp>
         }
 
-        if (Constants.ENCRYPT_BEFORE_SIGNING.equals(getProtectionOrder())) {
+        if (SPConstants.ENCRYPT_BEFORE_SIGNING.equals(getProtectionOrder())) {
             // <sp:EncryptBeforeSign />
-            writer.writeStartElement(prefix, Constants.ENCRYPT_BEFORE_SIGNING,
+            writer.writeStartElement(prefix, SPConstants.ENCRYPT_BEFORE_SIGNING,
                     namespaceURI);
             writer.writeEndElement();
         }
@@ -188,22 +197,22 @@
         if (isSignatureProtection()) {
             // <sp:EncryptSignature />
             // FIXME move the String constants to a QName
-            writer.writeStartElement(prefix, Constants.ENCRYPT_SIGNATURE
-                    .getLocalPart(), namespaceURI);
+            writer.writeStartElement(prefix, SPConstants.ENCRYPT_SIGNATURE,
+                    namespaceURI);
             writer.writeEndElement();
         }
 
         if (isTokenProtection()) {
             // <sp:ProtectTokens />
-            writer.writeStartElement(prefix, Constants.PROTECT_TOKENS
-                    .getLocalPart(), namespaceURI);
+            writer.writeStartElement(prefix, SPConstants.PROTECT_TOKENS,
+                    namespaceURI);
             writer.writeEndElement();
         }
 
         if (isEntireHeadersAndBodySignatures()) {
             // <sp:OnlySignEntireHeaderAndBody />
             writer.writeStartElement(prefix,
-                    Constants.ONLY_SIGN_ENTIRE_HEADERS_AND_BODY, namespaceURI);
+                    SPConstants.ONLY_SIGN_ENTIRE_HEADERS_AND_BODY, namespaceURI);
             writer.writeEndElement();
         }