[java-opensaml COMMIT] /trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSe...
noreply at shibboleth.net
noreply at shibboleth.net
Mon Feb 25 22:56:56 EST 2013
Author: scantor
Date: Mon Feb 25 22:56:56 2013
New Revision: 3235
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3235&view=rev
Log:
Port java-opensaml2 r1555.
Modified:
trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSelector.java
Modified: trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSelector.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSelector.java?rev=3235&r1=3234&r2=3235&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSelector.java (original)
+++ trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/AuthnResponseEndpointSelector.java Mon Feb 25 22:56:56 2013
@@ -44,7 +44,6 @@
private final Logger log = LoggerFactory.getLogger(AuthnResponseEndpointSelector.class);
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
public Endpoint selectEndpoint() {
if (getEntityRoleMetadata() == null) {
log.debug("Unable to select endpoint, no entity role metadata available.");
@@ -70,11 +69,10 @@
getEntityMetadata().getEntityID() });
endpoint = selectEndpointByACSIndex(request, (List<IndexedEndpoint>) endpoints);
} else if (request.getAssertionConsumerServiceURL() != null) {
- log
- .debug(
- "Selecting endpoint by ACS URL '{}' and protocol binding '{}' for request '{}' from entity '{}'",
- new Object[] { request.getAssertionConsumerServiceURL(), request.getProtocolBinding(),
- request.getID(), getEntityMetadata().getEntityID() });
+ log.debug(
+ "Selecting endpoint by ACS URL '{}' and protocol binding '{}' for request '{}' from entity '{}'",
+ new Object[] { request.getAssertionConsumerServiceURL(), request.getProtocolBinding(),
+ request.getID(), getEntityMetadata().getEntityID() });
endpoint = selectEndpointByACSURL(request, (List<IndexedEndpoint>) endpoints);
}
}
@@ -144,17 +142,16 @@
Integer acsIndex = request.getAssertionConsumerServiceIndex();
for (IndexedEndpoint endpoint : endpoints) {
if (endpoint == null || !getSupportedIssuerBindings().contains(endpoint.getBinding())) {
- log
- .debug(
- "Endpoint '{}' with binding '{}' discarded because it requires an unsupported outbound binding.",
- endpoint.getLocation(), endpoint.getBinding());
+ log.debug(
+ "Endpoint '{}' with binding '{}' discarded because it requires an unsupported outbound binding.",
+ endpoint.getLocation(), endpoint.getBinding());
continue;
}
if (Objects.equal(acsIndex, endpoint.getIndex())) {
return endpoint;
} else {
- log.debug("Endpoint '{}' with index '{}' discard because it does have the required index '{}'",
+ log.debug("Endpoint '{}' with index '{}' discarded because it does have the required index '{}'",
new Object[] { endpoint.getLocation(), endpoint.getIndex(), acsIndex });
}
}
@@ -186,21 +183,27 @@
if (acsBinding != null) {
if (!Objects.equal(acsBinding, endpoint.getBinding())) {
- log.debug("Endpoint '{}' with binding '{}' discarded because it does not meet protocol binding selection criteria",
- endpoint.getLocation(), endpoint.getBinding());
+ log.debug(
+ "Endpoint '{}' with binding '{}' discarded because it does not meet protocol binding selection criteria",
+ endpoint.getLocation(), endpoint.getBinding());
continue;
}
}
-
- if (Objects.equal(endpoint.getLocation(), request.getAssertionConsumerServiceURL())
- || Objects.equal(endpoint.getResponseLocation(), request
- .getAssertionConsumerServiceURL())) {
- return endpoint;
+
+ String responseLocation = StringSupport.trim(endpoint.getResponseLocation());
+ if (responseLocation != null) {
+ if (Objects.equal(responseLocation, request.getAssertionConsumerServiceURL())) {
+ return endpoint;
+ }
} else {
- log.debug(
- "Endpoint '{}' discarded because neither its Location nor ResponseLocation match ACS URL '{}'",
[... 14 lines stripped ...]
More information about the commits
mailing list