Package org.opensaml.saml.saml2.core.impl

# Class SubjectImpl

java.lang.Object
org.opensaml.core.xml.AbstractXMLObject
org.opensaml.saml.saml2.core.impl.SubjectImpl

All Implemented Interfaces:
  `XMLObject`, `SAMLObject`, `Subject`

public class SubjectImpl extends AbstractXMLObject implements Subject
Concrete implementation of `Subject`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private BaseID`
`baseID`
BaseID child element.
`private EncryptedID`
`encryptedID`
EncryptedID child element.
`private NameID`
`nameID`
NameID child element.
`private final XMLObjectChildrenList<SubjectConfirmation>`
`subjectConfirmations`
Subject Confirmations of the Subject.

### Fields inherited from interface org.opensaml.saml.saml2.core.Subject

`DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME`

## Constructor Summary

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

## Method Summary

Modifier and Type
Method
Description
`BaseID`
`getBaseID()`
Gets the base identifier of the principal for this request.
`EncryptedID`
`getEncryptedID()`
Gets the encrypted name identifier of the principal for this request.
`NameID`
`getNameID()`
Gets the name identifier of the principal for this request.
`List<XMLObject>`
`getOrderedChildren()`
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.
`List<SubjectConfirmation>`
`getSubjectConfirmations()`
Gets the confirmations made about this subject.
`void`
`setBaseID(BaseID newBaseID)`
Sets the base identifier of the principal for this request.
`void`
`setEncryptedID(EncryptedID newEncryptedID)`
Sets the encrypted name identifier of the principal for this request.
`void`
`setNameID(NameID newNameID)`
Sets the name identifier of the principal for this request.

### 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, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### 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

### baseID

@Nullable private BaseID baseID
BaseID child element.

### nameID

@Nullable private NameID nameID
NameID child element.

### encryptedID

@Nullable private EncryptedID encryptedID
EncryptedID child element.

### subjectConfirmations

@Nonnull private final XMLObjectChildrenList<SubjectConfirmation> subjectConfirmations
Subject Confirmations of the Subject.

## Constructor Details

### SubjectImpl

protected SubjectImpl(@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

### getBaseID

@Nullable public BaseID getBaseID()
Gets the base identifier of the principal for this request.

Specified by:
  `getBaseID` in interface `Subject`
Returns:
  the base identifier of the principal for this request

### setBaseID

public void setBaseID(@Nullable BaseID newBaseID)
Sets the base identifier of the principal for this request.

Specified by:
  `setBaseID` in interface `Subject`
Parameters:
  `newBaseID` - the base identifier of the principal for this request

### getNameID

@Nullable public NameID getNameID()
Gets the name identifier of the principal for this request.

Specified by:
  `getNameID` in interface `Subject`
Returns:
  the name identifier of the principal for this request

### setNameID

public void setNameID(@Nullable NameID newNameID)
Sets the name identifier of the principal for this request.

Specified by:
  `setNameID` in interface `Subject`
Parameters:
  `newNameID` - the name identifier of the principal for this request

### getEncryptedID

@Nullable public EncryptedID getEncryptedID()
Gets the encrypted name identifier of the principal for this request.

Specified by:
  `getEncryptedID` in interface `Subject`
Returns:
  the encrypted name identifier of the principal for this request

### setEncryptedID

public void setEncryptedID(@Nullable EncryptedID newEncryptedID)
Sets the encrypted name identifier of the principal for this request.

Specified by:
  `setEncryptedID` in interface `Subject`
Parameters:
  `newEncryptedID` - the new encrypted name identifier of the principal for this request

### getSubjectConfirmations

@Nonnull @Live public List<SubjectConfirmation> getSubjectConfirmations()
Gets the confirmations made about this subject.

Specified by:
  `getSubjectConfirmations` in interface `Subject`
Returns:
  the confirmations made about this subject

### 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`
Returns:
  ordered list of child elements