[java-opensaml COMMIT] in /trunk/opensaml-saml-impl: pom.xml src/main/java/org/opensaml/saml/saml2/binding/encoding/H...

noreply at shibboleth.net noreply at shibboleth.net
Wed Jan 30 15:24:28 EST 2013


Author: putmanb
Date: Wed Jan 30 15:24:28 2013
New Revision: 3185

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3185&view=rev
Log:
Refactor SAML 2 redirect encoder to use UrlBuilder ported from v2.

Modified:
    trunk/opensaml-saml-impl/pom.xml
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPRedirectDeflateEncoder.java

Modified: trunk/opensaml-saml-impl/pom.xml
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/pom.xml?rev=3185&r1=3184&r2=3185&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/pom.xml (original)
+++ trunk/opensaml-saml-impl/pom.xml Wed Jan 30 15:24:28 2013
@@ -20,6 +20,11 @@
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>opensaml-saml-api</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>opensaml-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPRedirectDeflateEncoder.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPRedirectDeflateEncoder.java?rev=3185&r1=3184&r2=3185&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPRedirectDeflateEncoder.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPRedirectDeflateEncoder.java Wed Jan 30 15:24:28 2013
@@ -20,9 +20,7 @@
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
+import java.net.MalformedURLException;
 import java.util.List;
 import java.util.zip.Deflater;
 import java.util.zip.DeflaterOutputStream;
@@ -46,6 +44,7 @@
 import org.opensaml.security.SecurityException;
 import org.opensaml.security.credential.Credential;
 import org.opensaml.security.credential.CredentialSupport;
+import org.opensaml.util.net.UrlBuilder;
 import org.opensaml.xmlsec.SecurityConfiguration;
 import org.opensaml.xmlsec.SecurityConfigurationSupport;
 import org.opensaml.xmlsec.crypto.XMLSigningUtil;
@@ -162,15 +161,16 @@
     protected String buildRedirectURL(MessageContext<SAMLObject> messageContext, String endpoint, String message)
             throws MessageEncodingException {
         log.debug("Building URL to redirect client to");
-
-        URI endpointUrl;
-        try {
-            endpointUrl = new URI(endpoint);
-        } catch (URISyntaxException e) {
+        
+        UrlBuilder urlBuilder = null;
+        try {
+            urlBuilder = new UrlBuilder(endpoint);
+        } catch (MalformedURLException e) {
             throw new MessageEncodingException("Endpoint URL " + endpoint + " is not a valid URL", e);
         }
 
-        List<Pair<String, String>> queryParams = new ArrayList<Pair<String,String>>();
+        List<Pair<String, String>> queryParams = urlBuilder.getQueryParams();
+        queryParams.clear();
         
         SAMLObject outboundMessage = messageContext.getMessage();
 
@@ -200,9 +200,7 @@
                     sigMaterial)));
         }
         
-        endpointUrl = UriSupport.setQuery(endpointUrl, queryParams);
-
-        return endpointUrl.toASCIIString();
+        return urlBuilder.buildURL();
     }
 
     /**



More information about the commits mailing list