org.opensaml.saml2.metadata.impl
Class SSODescriptorImpl

java.lang.Object
  extended by org.opensaml.xml.AbstractXMLObject
      extended by org.opensaml.xml.signature.AbstractSignableXMLObject
          extended by org.opensaml.xml.AbstractValidatingSignableXMLObject
              extended by org.opensaml.common.impl.AbstractSignableSAMLObject
                  extended by org.opensaml.saml2.metadata.impl.RoleDescriptorImpl
                      extended by org.opensaml.saml2.metadata.impl.SSODescriptorImpl
All Implemented Interfaces:
SAMLObject, SignableSAMLObject, CacheableSAMLObject, TimeBoundSAMLObject, RoleDescriptor, SSODescriptor, AttributeExtensibleXMLObject, SignableXMLObject, ValidatingXMLObject, XMLObject
Direct Known Subclasses:
IDPSSODescriptorImpl, SPSSODescriptorImpl

public abstract class SSODescriptorImpl
extends RoleDescriptorImpl
implements SSODescriptor

Concrete implementation of SSODescriptor.


Field Summary
private  XMLObjectChildrenList<ArtifactResolutionService> artifactResolutionServices
          Supported artifact resolutions services.
private  XMLObjectChildrenList<ManageNameIDService> manageNameIDServices
          Manage NameID services for this entity.
private  XMLObjectChildrenList<NameIDFormat> nameIDFormats
          NameID formats supported by this entity.
private  XMLObjectChildrenList<SingleLogoutService> singleLogoutServices
          Logout services for this SSO entity.
 
Fields inherited from interface org.opensaml.saml2.metadata.SSODescriptor
DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME
 
Fields inherited from interface org.opensaml.saml2.metadata.RoleDescriptor
ERROR_URL_ATTRIB_NAME, ID_ATTRIB_NAME, PROTOCOL_ENUMERATION_ATTRIB_NAME
 
Fields inherited from interface org.opensaml.saml2.common.TimeBoundSAMLObject
VALID_UNTIL_ATTRIB_NAME, VALID_UNTIL_ATTRIB_QNAME
 
Fields inherited from interface org.opensaml.saml2.common.CacheableSAMLObject
CACHE_DURATION_ATTRIB_NAME, CACHE_DURATION_ATTRIB_QNAME
 
Constructor Summary
protected SSODescriptorImpl(String namespaceURI, String elementLocalName, String namespacePrefix)
          Constructor.
 
Method Summary
 List<ArtifactResolutionService> getArtifactResolutionServices()
          Gets a list of artifact resolution services for this service.
 ArtifactResolutionService getDefaultArtifactResolutionService()
          Gets the default artifact resolution service.
 ArtifactResolutionService getDefaultArtificateResolutionService()
          Gets the default artifact resolution service.
 List<Endpoint> getEndpoints()
          Gets a read-only 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<ManageNameIDService> getManageNameIDServices()
          Gets a list of manage NameId services for this service.
 List<NameIDFormat> getNameIDFormats()
          Gets the list of NameID formats this service supports.
 List<XMLObject> getOrderedChildren()
          
 List<SingleLogoutService> getSingleLogoutServices()
          Gets a list of single logout services for this service.
 
Methods inherited from class org.opensaml.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.common.impl.AbstractSignableSAMLObject
equals, prepareForAssignment, setSignature
 
Methods inherited from class org.opensaml.xml.AbstractValidatingSignableXMLObject
deregisterValidator, getValidators, registerValidator, validate, validateChildren
 
Methods inherited from class org.opensaml.xml.signature.AbstractSignableXMLObject
getSignature, isSigned
 
Methods inherited from class org.opensaml.xml.AbstractXMLObject
addNamespace, detach, getDOM, getElementQName, getIDIndex, getNamespaceManager, getNamespaces, getNoNamespaceSchemaLocation, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, isNil, isNilXSBoolean, manageQualifiedAttributeNamespace, prepareAttributeValueForAssignment, prepareElementContentForAssignment, prepareForAssignment, prepareForAssignment, prepareForAssignment, prepareForAssignment, registerOwnID, releaseChildrenDOM, releaseDOM, releaseParentDOM, releaseThisAndChildrenDOM, releaseThisandParentDOM, removeNamespace, resolveID, resolveIDFromRoot, setDOM, setElementNamespacePrefix, setElementQName, setNil, setNil, setNoNamespaceSchemaLocation, setParent, setSchemaLocation, setSchemaType
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.opensaml.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.common.SignableSAMLObject
getSignatureReferenceID
 
Methods inherited from interface org.opensaml.xml.signature.SignableXMLObject
getSignature, isSigned, setSignature
 
Methods inherited from interface org.opensaml.saml2.common.TimeBoundSAMLObject
getValidUntil, isValid, setValidUntil
 
Methods inherited from interface org.opensaml.saml2.common.CacheableSAMLObject
getCacheDuration, setCacheDuration
 
Methods inherited from interface org.opensaml.xml.validation.ValidatingXMLObject
deregisterValidator, getValidators, registerValidator, validate
 
Methods inherited from interface org.opensaml.xml.XMLObject
addNamespace, detach, getDOM, getElementQName, getIDIndex, getNamespaceManager, getNamespaces, getNoNamespaceSchemaLocation, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, isNil, isNilXSBoolean, releaseChildrenDOM, releaseDOM, releaseParentDOM, removeNamespace, resolveID, resolveIDFromRoot, setDOM, setNil, setNil, setNoNamespaceSchemaLocation, setParent, setSchemaLocation
 
Methods inherited from interface org.opensaml.xml.AttributeExtensibleXMLObject
getUnknownAttributes
 

Field Detail

artifactResolutionServices

private final XMLObjectChildrenList<ArtifactResolutionService> artifactResolutionServices
Supported artifact resolutions services.


singleLogoutServices

private final XMLObjectChildrenList<SingleLogoutService> singleLogoutServices
Logout services for this SSO entity.


manageNameIDServices

private final XMLObjectChildrenList<ManageNameIDService> manageNameIDServices
Manage NameID services for this entity.


nameIDFormats

private final XMLObjectChildrenList<NameIDFormat> nameIDFormats
NameID formats supported by this entity.

Constructor Detail

SSODescriptorImpl

protected SSODescriptorImpl(String namespaceURI,
                            String elementLocalName,
                            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 Detail

getArtifactResolutionServices

public List<ArtifactResolutionService> getArtifactResolutionServices()
Gets a list of artifact resolution services for this service.

Specified by:
getArtifactResolutionServices in interface SSODescriptor
Returns:
list of artifact resolution services for this service

getDefaultArtifactResolutionService

public ArtifactResolutionService getDefaultArtifactResolutionService()
Gets the default artifact resolution 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:
getDefaultArtifactResolutionService in interface SSODescriptor
Returns:
default artifact resolution service (or null if there are no artifact resolution services defined)

getDefaultArtificateResolutionService

public ArtifactResolutionService getDefaultArtificateResolutionService()
Gets the default artifact resolution 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:
getDefaultArtificateResolutionService in interface SSODescriptor
Returns:
default artifact resolution service (or null if there are no artifact resolution services defined)

getSingleLogoutServices

public List<SingleLogoutService> getSingleLogoutServices()
Gets a list of single logout services for this service.

Specified by:
getSingleLogoutServices in interface SSODescriptor
Returns:
list of single logout services for this service

getManageNameIDServices

public List<ManageNameIDService> getManageNameIDServices()
Gets a list of manage NameId services for this service.

Specified by:
getManageNameIDServices in interface SSODescriptor
Returns:
list of manage NameId services for this service

getNameIDFormats

public List<NameIDFormat> getNameIDFormats()
Gets the list of NameID formats this service supports.

Specified by:
getNameIDFormats in interface SSODescriptor
Returns:
NameID formats this service supports

getEndpoints

public List<Endpoint> getEndpoints()
Gets a read-only list of endpoints for this role.

Specified by:
getEndpoints in interface RoleDescriptor
Returns:
immutable list of endpoints for this role

getEndpoints

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

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

getOrderedChildren

public List<XMLObject> getOrderedChildren()

Specified by:
getOrderedChildren in interface XMLObject
Overrides:
getOrderedChildren in class RoleDescriptorImpl


Copyright © 1999-2012. All Rights Reserved.