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

# Class LogoutRequestImpl

java.lang.Object
org.opensaml.core.xml.AbstractXMLObject
org.opensaml.xmlsec.signature.AbstractSignableXMLObject
org.opensaml.saml.common.AbstractSignableSAMLObject
org.opensaml.saml.saml2.core.impl.RequestAbstractTypeImpl
org.opensaml.saml.saml2.core.impl.LogoutRequestImpl

All Implemented Interfaces:
  `XMLObject`, `SAMLObject`, `SignableSAMLObject`, `LogoutMessage`, `LogoutRequest`, `RequestAbstractType`, `SignableXMLObject`

public class LogoutRequestImpl extends RequestAbstractTypeImpl implements LogoutRequest
A concrete implementation of `LogoutRequest`.

## 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 Instant`
`notOnOrAfter`
NotOnOrAfter attribute.
`private String`
`reason`
Reason attribute.
`private final XMLObjectChildrenList<SessionIndex>`
`sessionIndexes`
SessionIndex child elements.

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

`ADMIN_REASON, DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, GLOBAL_TIMEOUT_REASON, NOT_ON_OR_AFTER_ATTRIB_NAME, NOT_ON_OR_AFTER_ATTRIB_QNAME, REASON_ATTRIB_NAME, SP_TIMEOUT_REASON, TYPE_LOCAL_NAME, TYPE_NAME, USER_REASON`

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

`CONSENT_ATTRIB_NAME, DESTINATION_ATTRIB_NAME, EXPLICIT_CONSENT, ID_ATTRIB_NAME, IMPLICIT_CONSENT, INAPPLICABLE_CONSENT, ISSUE_INSTANT_ATTRIB_NAME, ISSUE_INSTANT_ATTRIB_QNAME, OBTAINED_CONSENT, PRIOR_CONSENT, TYPE_LOCAL_NAME, TYPE_NAME, UNAVAILABLE_CONSENT, UNSPECIFIED_CONSENT, VERSION_ATTRIB_NAME`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`LogoutRequestImpl(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 encrytped name identifier of the principal for this request.
`NameID`
`getNameID()`
Gets the name identifier of the principal for this request.
`Instant`
`getNotOnOrAfter()`
Get the NotOnOrAfter attrib value of the request.
`List<XMLObject>`
`getOrderedChildren()`
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.
`String`
`getReason()`
Get the Reason attrib value of the request.
`List<SessionIndex>`
`getSessionIndexes()`
Get the list of SessionIndexes for the request.
`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.
`void`
`setNotOnOrAfter(Instant newNotOnOrAfter)`
Set the NotOnOrAfter attrib value of the request.
`void`
`setReason(String newReason)`
Set the Reason attrib value of the request.

### Methods inherited from class org.opensaml.saml.saml2.core.impl.RequestAbstractTypeImpl

`getConsent, getDestination, getExtensions, getID, getIssueInstant, getIssuer, getSignatureReferenceID, getVersion, setConsent, setDestination, setExtensions, setID, setIssueInstant, setIssuer, setVersion`

### 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.saml.saml2.core.RequestAbstractType

`getConsent, getDestination, getExtensions, getID, getIssueInstant, getIssuer, getVersion, setConsent, setDestination, setExtensions, setID, setIssueInstant, setIssuer, setVersion`

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

### reason

@Nullable private String reason
Reason attribute.

### notOnOrAfter

@Nullable private Instant notOnOrAfter
NotOnOrAfter attribute.

### baseID

@Nullable private BaseID baseID
BaseID child element.

### nameID

@Nullable private NameID nameID
NameID child element.

### encryptedID

@Nullable private EncryptedID encryptedID
EncryptedID child element.

### sessionIndexes

@Nonnull private final XMLObjectChildrenList<SessionIndex> sessionIndexes
SessionIndex child elements.

## Constructor Details

### LogoutRequestImpl

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

### getReason

@Nullable public String getReason()
Get the Reason attrib value of the request.

Specified by:
  `getReason` in interface `LogoutRequest`
Returns:
  the Reason value of the request

### setReason

public void setReason(@Nullable String newReason)
Set the Reason attrib value of the request.

Specified by:
  `setReason` in interface `LogoutRequest`
Parameters:
  `newReason` - the new Reason value of the request

### getNotOnOrAfter

@Nullable public Instant getNotOnOrAfter()
Get the NotOnOrAfter attrib value of the request.

Specified by:
  `getNotOnOrAfter` in interface `LogoutRequest`
Returns:
  the NotOnOrAfter value of the request

### setNotOnOrAfter

public void setNotOnOrAfter(@Nullable Instant newNotOnOrAfter)
Set the NotOnOrAfter attrib value of the request.

Specified by:
  `setNotOnOrAfter` in interface `LogoutRequest`
Parameters:
  `newNotOnOrAfter` - the new NotOnOrAfter value of the request

### getBaseID

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

Specified by:
  `getBaseID` in interface `LogoutRequest`
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 `LogoutRequest`
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 `LogoutRequest`
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 `LogoutRequest`
Parameters:
  `newNameID` - the name identifier of the principal for this request

### getEncryptedID

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

Specified by:
  `getEncryptedID` in interface `LogoutRequest`
Returns:
  the encrytped 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 `LogoutRequest`
Parameters:
  `newEncryptedID` - the new encrypted name identifier of the principal for this request

### getSessionIndexes

@Nonnull @Live public List<SessionIndex> getSessionIndexes()
Get the list of SessionIndexes for the request.

Specified by:
  `getSessionIndexes` in interface `LogoutRequest`
Returns:
  the list of SessionIndexes

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