[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