[java-opensaml COMMIT] in /trunk/opensaml-saml-impl/src: main/java/org/opensaml/saml/metadata/resolver/impl/AbstractD...

noreply at shibboleth.net noreply at shibboleth.net
Tue Oct 11 20:48:28 EDT 2016


Author: putmanb
Date: Tue Oct 11 20:48:28 2016
New Revision: 4533

URL: http://svn.shibboleth.net/view/java-opensaml?rev=4533&view=rev
Log:
In support of OSJ-168, update response handler to return fetched XMLObject with attached XMLObjectSource.

Unit tests still pending.

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
    trunk/opensaml-saml-impl/src/test/resources/logback-test.xml

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java?rev=4533&r1=4532&r2=4533&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java	(original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java	Tue Oct 11 20:48:28 2016
@@ -17,6 +17,7 @@
 
 package org.opensaml.saml.metadata.resolver.impl;
 
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
@@ -43,6 +44,7 @@
 import org.apache.http.impl.client.BasicCredentialsProvider;
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
+import org.opensaml.core.xml.util.XMLObjectSource;
 import org.opensaml.security.httpclient.HttpClientSecurityConstants;
 import org.opensaml.security.httpclient.HttpClientSecuritySupport;
 import org.opensaml.security.trust.TrustEngine;
@@ -54,6 +56,7 @@
 import com.google.common.base.Function;
 import com.google.common.base.Strings;
 import com.google.common.collect.Collections2;
+import com.google.common.io.ByteStreams;
 
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
@@ -392,7 +395,12 @@
             
             try {
                 final InputStream ins = response.getEntity().getContent();
-                return unmarshallMetadata(ins);
+                byte[] source = ByteStreams.toByteArray(ins);
+                try (ByteArrayInputStream bais = new ByteArrayInputStream(source)) {
+                    XMLObject xmlObject = unmarshallMetadata(bais);
+                    xmlObject.getObjectMetadata().put(new XMLObjectSource(source));
+                    return xmlObject;
+                }
             } catch (IOException | UnmarshallingException e) {
                 log.error("Error unmarshalling HTTP response stream", e);
                 return null;

Modified: trunk/opensaml-saml-impl/src/test/resources/logback-test.xml
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/test/resources/logback-test.xml?rev=4533&r1=4532&r2=4533&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/test/resources/logback-test.xml	(original)
+++ trunk/opensaml-saml-impl/src/test/resources/logback-test.xml	Tue Oct 11 20:48:28 2016
@@ -7,6 +7,10 @@
             <charset>UTF-8</charset>
         </encoder>
     </appender>
+    
+    <logger name="org.opensaml.core.xml.persist">
+        <level value="TRACE"/>
+    </logger>
     
     <logger name="org.opensaml.saml.metadata">
         <level value="TRACE"/>



More information about the commits mailing list