Package org.opensaml.saml.saml2.metadata.impl

# Class SPSSODescriptorImpl

java.lang.Object
org.opensaml.core.xml.AbstractXMLObject
org.opensaml.xmlsec.signature.AbstractSignableXMLObject
org.opensaml.saml.common.AbstractSignableSAMLObject
org.opensaml.saml.saml2.metadata.impl.RoleDescriptorImpl
org.opensaml.saml.saml2.metadata.impl.SSODescriptorImpl
org.opensaml.saml.saml2.metadata.impl.SPSSODescriptorImpl

All Implemented Interfaces:
  `AttributeExtensibleXMLObject`, `XMLObject`, `SAMLObject`, `SignableSAMLObject`, `CacheableSAMLObject`, `TimeBoundSAMLObject`, `RoleDescriptor`, `SPSSODescriptor`, `SSODescriptor`, `SignableXMLObject`

public class SPSSODescriptorImpl extends SSODescriptorImpl implements SPSSODescriptor
Concrete implementation of `SPSSODescriptor`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final XMLObjectChildrenList<AssertionConsumerService>`
`assertionConsumerServices`
AssertionConsumerService children.
`private XSBooleanValue`
`assertionSigned`
value for the want assertion signed attribute.
`private final XMLObjectChildrenList<AttributeConsumingService>`
`attributeConsumingServices`
AttributeConsumingService children.
`private XSBooleanValue`
`authnRequestSigned`
value for isAuthnRequestSigned attribute.

### Fields inherited from interface org.opensaml.saml.saml2.common.CacheableSAMLObject

`CACHE_DURATION_ATTRIB_NAME, CACHE_DURATION_ATTRIB_QNAME`

### Fields inherited from interface org.opensaml.saml.saml2.metadata.RoleDescriptor

`DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, ERROR_URL_ATTRIB_NAME, ID_ATTRIB_NAME, PROTOCOL_ENUMERATION_ATTRIB_NAME, TYPE_LOCAL_NAME, TYPE_NAME`

### Fields inherited from interface org.opensaml.saml.saml2.metadata.SPSSODescriptor

`AUTH_REQUESTS_SIGNED_ATTRIB_NAME, DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME, WANT_ASSERTIONS_SIGNED_ATTRIB_NAME`

### Fields inherited from interface org.opensaml.saml.saml2.metadata.SSODescriptor

`DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME`

### Fields inherited from interface org.opensaml.saml.saml2.common.TimeBoundSAMLObject

`VALID_UNTIL_ATTRIB_NAME, VALID_UNTIL_ATTRIB_QNAME`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`SPSSODescriptorImpl(String namespaceURI, String elementLocalName, String namespacePrefix)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`List<AssertionConsumerService>`
`getAssertionConsumerServices()`
Gets a list of assertion consumer service `Endpoint`s for this service.
`List<AttributeConsumingService>`
`getAttributeConsumingServices()`
Gets a list of attribute consuming service descriptors for this service.
`AssertionConsumerService`
`getDefaultAssertionConsumerService()`
Gets the default assertion consumer service.
`AttributeConsumingService`
`getDefaultAttributeConsumingService()`
Gets the default attribute consuming service.
`List<Endpoint>`
`getEndpoints()`
Gets immutable list of endpoints for this role.
`List<Endpoint>`
`getEndpoints(QName type)`
Gets a read-only list of endpoints for this role for the given type.
`List<XMLObject>`
`getOrderedChildren()`
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.
`Boolean`
`getWantAssertionsSigned()`
Gets whether this service wants assertions signed.
`XSBooleanValue`
`getWantAssertionsSignedXSBoolean()`
Gets whether this service wants assertions signed.
`Boolean`
`isAuthnRequestsSigned()`
Gets whether this service signs AuthN requests.
`XSBooleanValue`
`isAuthnRequestsSignedXSBoolean()`
Gets whether this service signs AuthN requests.
`void`
`setAuthnRequestsSigned(Boolean newIsSigned)`
Sets whether this service signs AuthN requests.
`void`
`setAuthnRequestsSigned(XSBooleanValue isSigned)`
Sets whether this service signs AuthN requests.
`void`
`setWantAssertionsSigned(Boolean wantAssestionSigned)`
Sets whether this service wants assertions signed.
`void`
`setWantAssertionsSigned(XSBooleanValue wantAssestionSigned)`
Sets whether this service wants assertions signed.

### Methods inherited from class org.opensaml.saml.saml2.metadata.impl.SSODescriptorImpl

`getArtifactResolutionServices, getDefaultArtifactResolutionService, getManageNameIDServices, getNameIDFormats, getSingleLogoutServices`

### Methods inherited from class org.opensaml.saml.saml2.metadata.impl.RoleDescriptorImpl

`addSupportedProtocol, getCacheDuration, getContactPersons, getErrorURL, getExtensions, getID, getKeyDescriptors, getOrganization, getSignatureReferenceID, getSupportedProtocols, getUnknownAttributes, getValidUntil, isSupportedProtocol, isValid, removeAllSupportedProtocols, removeSupportedProtocol, removeSupportedProtocols, setCacheDuration, setErrorURL, setExtensions, setID, setOrganization, setValidUntil`

### Methods inherited from class org.opensaml.saml.common.AbstractSignableSAMLObject

`equals, hashCode, setSignature`

### Methods inherited from class org.opensaml.xmlsec.signature.AbstractSignableXMLObject

`getSignature, isSigned`

### Methods inherited from class org.opensaml.core.xml.AbstractXMLObject

`detach, ensureDOM, getDOM, getElementQName, getIDIndex, getNamespaceManager, getNamespaces, getNoNamespaceSchemaLocation, getObjectMetadata, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, isNil, isNilXSBoolean, manageQualifiedAttributeNamespace, prepareAttributeValueForAssignment, prepareElementContentForAssignment, prepareForAssignment, prepareForAssignment, prepareForAssignment, registerOwnID, releaseChildrenDOM, releaseDOM, releaseParentDOM, releaseThisAndChildrenDOM, releaseThisandParentDOM, resolveID, resolveIDFromRoot, setDOM, setElementNamespacePrefix, setElementQName, setNil, setNil, setNoNamespaceSchemaLocation, setParent, setSchemaLocation, setSchemaType`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.opensaml.core.xml.AttributeExtensibleXMLObject

`getUnknownAttributes`

### Methods inherited from interface org.opensaml.saml.saml2.common.CacheableSAMLObject

`getCacheDuration, setCacheDuration`

### Methods inherited from interface org.opensaml.saml.saml2.metadata.RoleDescriptor

`addSupportedProtocol, getContactPersons, getErrorURL, getExtensions, getID, getKeyDescriptors, getOrganization, getSupportedProtocols, isSupportedProtocol, removeAllSupportedProtocols, removeSupportedProtocol, removeSupportedProtocols, setErrorURL, setExtensions, setID, setOrganization`

### Methods inherited from interface org.opensaml.saml.common.SignableSAMLObject

`getSignatureReferenceID`

### Methods inherited from interface org.opensaml.xmlsec.signature.SignableXMLObject

`getSignature, isSigned, setSignature`

### Methods inherited from interface org.opensaml.saml.saml2.metadata.SSODescriptor

`getArtifactResolutionServices, getDefaultArtifactResolutionService, getManageNameIDServices, getNameIDFormats, getSingleLogoutServices`

### Methods inherited from interface org.opensaml.saml.saml2.common.TimeBoundSAMLObject

`getValidUntil, isValid, setValidUntil`

### Methods inherited from interface org.opensaml.core.xml.XMLObject

`detach, ensureDOM, getDOM, getElementQName, getIDIndex, getNamespaceManager, getNamespaces, getNoNamespaceSchemaLocation, getObjectMetadata, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, isNil, isNilXSBoolean, releaseChildrenDOM, releaseDOM, releaseParentDOM, resolveID, resolveIDFromRoot, setDOM, setNil, setNil, setNoNamespaceSchemaLocation, setParent, setSchemaLocation`

## Field Details

### authnRequestSigned

@Nullable private XSBooleanValue authnRequestSigned
value for isAuthnRequestSigned attribute.

### assertionSigned

@Nullable private XSBooleanValue assertionSigned
value for the want assertion signed attribute.

### assertionConsumerServices

@Nonnull private final XMLObjectChildrenList<AssertionConsumerService> assertionConsumerServices
AssertionConsumerService children.

### attributeConsumingServices

@Nonnull private final XMLObjectChildrenList<AttributeConsumingService> attributeConsumingServices
AttributeConsumingService children.

## Constructor Details

### SPSSODescriptorImpl

protected SPSSODescriptorImpl(@Nullable String namespaceURI, @Nonnull String elementLocalName, @Nullable String namespacePrefix)
Constructor.

Parameters:
  `namespaceURI` - the namespace the element is in
  `elementLocalName` - the local name of the XML element this Object represents
  `namespacePrefix` - the prefix for the given namespace

## Method Details

### isAuthnRequestsSigned

@Nullable public Boolean isAuthnRequestsSigned()
Gets whether this service signs AuthN requests.

Specified by:
  `isAuthnRequestsSigned` in interface `SPSSODescriptor`
Returns:
  true of this service signs requests, false if not

### isAuthnRequestsSignedXSBoolean

@Nullable public XSBooleanValue isAuthnRequestsSignedXSBoolean()
Gets whether this service signs AuthN requests.

Specified by:
  `isAuthnRequestsSignedXSBoolean` in interface `SPSSODescriptor`
Returns:
  true of this service signs requests, false if not

### setAuthnRequestsSigned

public void setAuthnRequestsSigned(@Nullable Boolean newIsSigned)
Sets whether this service signs AuthN requests. Boolean values will be marshalled to either "true" or "false".

Specified by:
  `setAuthnRequestsSigned` in interface `SPSSODescriptor`
Parameters:
  `newIsSigned` - true of this service signs requests, false if not

### setAuthnRequestsSigned

public void setAuthnRequestsSigned(@Nullable XSBooleanValue isSigned)
Sets whether this service signs AuthN requests.

Specified by:
  `setAuthnRequestsSigned` in interface `SPSSODescriptor`
Parameters:
  `isSigned` - true of this service signs requests, false if not

### getWantAssertionsSigned

@Nullable public Boolean getWantAssertionsSigned()
Gets whether this service wants assertions signed.

Specified by:
  `getWantAssertionsSigned` in interface `SPSSODescriptor`
Returns:
  true if this service wants assertions signed, false if not

### getWantAssertionsSignedXSBoolean

@Nullable public XSBooleanValue getWantAssertionsSignedXSBoolean()
Gets whether this service wants assertions signed.

Specified by:
  `getWantAssertionsSignedXSBoolean` in interface `SPSSODescriptor`
Returns:
  true if this service wants assertions signed, false if not

### setWantAssertionsSigned

public void setWantAssertionsSigned(@Nullable Boolean wantAssestionSigned)
Sets whether this service wants assertions signed. Boolean values will be marshalled to either "true" or "false".

Specified by:
  `setWantAssertionsSigned` in interface `SPSSODescriptor`
Parameters:
  `wantAssestionSigned` - true if this service wants assertions signed, false if not

### setWantAssertionsSigned

public void setWantAssertionsSigned(@Nullable XSBooleanValue wantAssestionSigned)
Sets whether this service wants assertions signed.

Specified by:
  `setWantAssertionsSigned` in interface `SPSSODescriptor`
Parameters:
  `wantAssestionSigned` - true if this service wants assertions signed, false if not

### getAssertionConsumerServices

@Nonnull @Live public List<AssertionConsumerService> getAssertionConsumerServices()
Gets a list of assertion consumer service `Endpoint`s for this service.

Specified by:
  `getAssertionConsumerServices` in interface `SPSSODescriptor`
Returns:
  list of assertion consumer service `Endpoint`s for this service

### getDefaultAssertionConsumerService

@Nullable public AssertionConsumerService getDefaultAssertionConsumerService()
Gets the default assertion consumer service.

The selection algorithm used is:

1. Select the first service with an explicit `isDefault=true`
2. Select the first service with no explicit `isDefault`
3. Select the first service

Specified by:
  `getDefaultAssertionConsumerService` in interface `SPSSODescriptor`
Returns:
  default assertion consumer service (or null if there are no assertion consumer services defined)

### getAttributeConsumingServices

@Nonnull @Live public List<AttributeConsumingService> getAttributeConsumingServices()
Gets a list of attribute consuming service descriptors for this service.

Specified by:
  `getAttributeConsumingServices` in interface `SPSSODescriptor`
Returns:
  list of attribute consuming service descriptors for this service

### getDefaultAttributeConsumingService

@Nullable public AttributeConsumingService getDefaultAttributeConsumingService()
Gets the default attribute consuming service.

The selection algorithm used is:

1. Select the first service with an explicit `isDefault=true`
2. Select the first service with no explicit `isDefault`
3. Select the first service

Specified by:
  `getDefaultAttributeConsumingService` in interface `SPSSODescriptor`
Returns:
  default attribute consuming service (or null if there are no attribute consuming services defined)

### getEndpoints

@Nonnull @NotLive @Unmodifiable public List<Endpoint> getEndpoints()
Gets immutable list of endpoints for this role.

Specified by:
  `getEndpoints` in interface `RoleDescriptor`
Overrides:
  `getEndpoints` in class `SSODescriptorImpl`
Returns:
  immutable list of endpoints for this role

### getEndpoints

@Nonnull @NotLive @Unmodifiable public List<Endpoint> getEndpoints(@Nonnull QName type)
Gets a read-only list of endpoints for this role for the given type.

Specified by:
  `getEndpoints` in interface `RoleDescriptor`
Overrides:
  `getEndpoints` in class `SSODescriptorImpl`
Parameters:
  `type` - the type of endpoints to retrieve
Returns:
  immutable list of endpoints for this role

### getOrderedChildren

@Nullable @NotLive @Unmodifiable public List<XMLObject> getOrderedChildren()
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.

Specified by:
  `getOrderedChildren` in interface `XMLObject`
Overrides:
  `getOrderedChildren` in class `SSODescriptorImpl`
Returns:
  ordered list of child elements