|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opensaml.common.binding.AbstractEndpointSelector
org.opensaml.common.binding.BasicEndpointSelector
public class BasicEndpointSelector
This endpoint selector retrieves all the endpoints for a given role. A first filter pass removes those endpoints that
use bindings which are not supported by the issuer. If the remaining endpoints are not IndexedEndpoint
s the
first endpoint in the list is returned. If the remaining endpoints are IndexedEndpoint
s the first endpoint
with the isDefault attribute set to true is returned, if no isDefault attribute is set to true the first endpoint to
omit this attribute is returned, and if all the endpoints have the isDefault attribute set to false then the first
endpoint in the list is returned.
Prior to selecting the endpoint the following fields must have had values set: entity role,
endpoint type, issuer supported bindings.
While this algorithm with work for selecting the endpoint for responses to AuthnRequests the SAML
specification does stipulate additional endpoint selection criteria and as such the use of an endpoint selector
specifically meant to handler this situation should be used, for example: AuthnResponseEndpointSelector.
Constructor Summary | |
---|---|
BasicEndpointSelector()
|
Method Summary | |
---|---|
protected List<? extends Endpoint> |
filterEndpointsByProtocolBinding(List<? extends Endpoint> endpoints)
Filters the list of possible endpoints by supported outbound bindings. |
Endpoint |
selectEndpoint()
Selects the endpoint to which messages should be sent. |
protected Endpoint |
selectIndexedEndpoint(List<IndexedEndpoint> endpoints)
Selects an appropriate endpoint from a list of indexed endpoints. |
protected Endpoint |
selectNonIndexedEndpoint(List<Endpoint> endpoints)
Selects an appropriate endpoint from a list of non-indexed endpoints. |
Methods inherited from class org.opensaml.common.binding.AbstractEndpointSelector |
---|
getEndpointType, getEntityMetadata, getEntityRoleMetadata, getMetadataProvider, getSamlRequest, getSamlResponse, getSupportedIssuerBindings, setEndpointType, setEntityMetadata, setEntityRoleMetadata, setMetadataProvider, setSamlRequest, setSamlResponse |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public BasicEndpointSelector()
Method Detail |
---|
public Endpoint selectEndpoint()
selectEndpoint
in class AbstractEndpointSelector
protected List<? extends Endpoint> filterEndpointsByProtocolBinding(List<? extends Endpoint> endpoints)
endpoints
- raw list of endpoints
protected Endpoint selectIndexedEndpoint(List<IndexedEndpoint> endpoints)
endpoints
- list of indexed endpoints
protected Endpoint selectNonIndexedEndpoint(List<Endpoint> endpoints)
endpoints
- list of non-indexed endpoints
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |