[java-identity-provider COMMIT] in /trunk/idp-saml-impl/src: main/java/net/shibboleth/idp/saml/profile/impl/PopulateB...

noreply at shibboleth.net noreply at shibboleth.net
Tue Apr 29 18:21:32 EDT 2014


Author: scantor
Date: Tue Apr 29 18:21:31 2014
New Revision: 5797

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=5797&view=rev
Log:
Add binding descriptor to context.

Modified:
    trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContexts.java
    trunk/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContextsTest.java

Modified: trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContexts.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContexts.java?rev=5797&r1=5796&r2=5797&view=diff
==============================================================================
--- trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContexts.java (original)
+++ trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContexts.java Tue Apr 29 18:21:31 2014
@@ -378,8 +378,10 @@
             return;
         }
         
+        final String bindingURI = resolvedEndpoint.getBinding();
+        
         log.debug("{} Resolved endpoint at location {} using binding {}",
-                new Object[] {getLogPrefix(), resolvedEndpoint.getLocation(), resolvedEndpoint.getBinding(),});
+                new Object[] {getLogPrefix(), resolvedEndpoint.getLocation(), bindingURI,});
         
         // Transfer results to contexts.
         
@@ -388,24 +390,28 @@
         
         final SAMLBindingContext bindingCtx = bindingContextLookupStrategy.apply(profileRequestContext);
         bindingCtx.setRelayState(SAMLBindingSupport.getRelayState(profileRequestContext.getInboundMessageContext()));
-        bindingCtx.setBindingUri(resolvedEndpoint.getBinding());
+        
+        final Optional<BindingDescriptor> bindingDescriptor = Iterables.tryFind(bindingDescriptors,
+                new Predicate<BindingDescriptor>() {
+                    public boolean apply(BindingDescriptor input) {
+                        return input.getId().equals(bindingURI);
+                    }
+        });
+
+        if (bindingDescriptor.isPresent()) {
+            bindingCtx.setBindingDescriptor(bindingDescriptor.get());
+        } else {
+            bindingCtx.setBindingUri(resolvedEndpoint.getBinding());
+        }
         
         // Handle artifact details.
-        if (artifactConfiguration != null) {
-            final Optional<BindingDescriptor> bindingDescriptor = Iterables.tryFind(bindingDescriptors,
-                    new Predicate<BindingDescriptor>() {
-                        public boolean apply(BindingDescriptor input) {
-                            return input.getId().equals(bindingCtx.getBindingUri());
-                        }
-            });
-            if (bindingDescriptor.isPresent() && bindingDescriptor.get().isArtifact()) {
-                final SAMLArtifactContext artifactCtx = artifactContextLookupStrategy.apply(profileRequestContext);
-                artifactCtx.setArtifactType(artifactConfiguration.getArtifactType());
-                artifactCtx.setSourceArtifactResolutionServiceEndpointURL(
-                        artifactConfiguration.getArtifactResolutionServiceURL());
-                artifactCtx.setSourceArtifactResolutionServiceEndpointIndex(
-                        artifactConfiguration.getArtifactResolutionServiceIndex());
-            }
+        if (artifactConfiguration != null && bindingDescriptor.isPresent() && bindingDescriptor.get().isArtifact()) {
+            final SAMLArtifactContext artifactCtx = artifactContextLookupStrategy.apply(profileRequestContext);
+            artifactCtx.setArtifactType(artifactConfiguration.getArtifactType());
+            artifactCtx.setSourceArtifactResolutionServiceEndpointURL(
+                    artifactConfiguration.getArtifactResolutionServiceURL());
+            artifactCtx.setSourceArtifactResolutionServiceEndpointIndex(
+                    artifactConfiguration.getArtifactResolutionServiceIndex());
         }
     }
 // Checkstyle: CyclomaticComplexity|MethodLength ON
@@ -435,7 +441,7 @@
                     final SAMLBindingContext outboundCtx = bindingContextLookupStrategy.apply(profileRequestContext);
                     outboundCtx.setRelayState(SAMLBindingSupport.getRelayState(
                             profileRequestContext.getInboundMessageContext()));
-                    outboundCtx.setBindingUri(binding.get().getId());
+                    outboundCtx.setBindingDescriptor(binding.get());
                     return true;
                 }
             }

Modified: trunk/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContextsTest.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/profile/impl/PopulateBindingAndEndpointContextsTest.java?rev=5797&r1=5796&r2=5797&view=diff

[... 65 lines stripped ...]


More information about the commits mailing list