Package org.opensaml.soap.wssecurity.impl

# Class SecurityTokenReferenceImpl

java.lang.Object
org.opensaml.core.xml.AbstractXMLObject
org.opensaml.soap.wssecurity.impl.AbstractWSSecurityObject
org.opensaml.soap.wssecurity.impl.SecurityTokenReferenceImpl

All Implemented Interfaces:
  `AttributeExtensibleXMLObject`, `ElementExtensibleXMLObject`, `XMLObject`, `IdBearing`, `SecurityTokenReference`, `UsageBearing`, `WSSecurityObject`

public class SecurityTokenReferenceImpl extends AbstractWSSecurityObject implements SecurityTokenReference
SecurityTokenReferenceImpl.

## Field Summary

Fields
Modifier and Type
Field
Description
`private String`
`id`
The <wsu:Id> attribute value.
`private final AttributeMap`
`unknownAttributes`
Wildcard attributes.
`private final IndexedXMLObjectChildrenList<XMLObject>`
`unknownChildren`
Wildcard child elements.
`private List<String>`
`usages`
List of <wsse:Usage> attribute values.

### Fields inherited from interface org.opensaml.soap.wssecurity.IdBearing

`WSU_ID_ATTR_LOCAL_NAME, WSU_ID_ATTR_NAME`

### Fields inherited from interface org.opensaml.soap.wssecurity.SecurityTokenReference

`ELEMENT_LOCAL_NAME, ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME`

### Fields inherited from interface org.opensaml.soap.wssecurity.UsageBearing

`WSSE_USAGE_ATTR_LOCAL_NAME, WSSE_USAGE_ATTR_NAME`

## Constructor Summary

Constructors
Constructor
Description
`SecurityTokenReferenceImpl(String namespaceURI, String elementLocalName, String namespacePrefix)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`List<XMLObject>`
`getOrderedChildren()`
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.
`AttributeMap`
`getUnknownAttributes()`
Gets a mutable map of the attributes.
`List<XMLObject>`
`getUnknownXMLObjects()`
Gets the list of XMLObjects added to this XMLObject as part of the "any" content model.
`List<XMLObject>`
`getUnknownXMLObjects(QName typeOrName)`
Gets the list of XMLObjects added to this XMLObject as part of the "any" content model, and which match the specified QName.
`List<String>`
`getWSSEUsages()`
Returns the list of `wsse:@Usage` attributes value.
`String`
`getWSUId()`
Returns the `@wsu:Id` attribute value.
`void`
`setWSSEUsages(List<String> newUsages)`
Sets the list of `wsse:@Usage` attributes value.
`void`
`setWSUId(String newId)`
Sets the `@wsu:Id` attribute value.

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

### id

@Nullable private String id
The <wsu:Id> attribute value.

### usages

@Nullable private List<String> usages
List of <wsse:Usage> attribute values.

### unknownAttributes

@Nonnull private final AttributeMap unknownAttributes
Wildcard attributes.

### unknownChildren

@Nonnull private final IndexedXMLObjectChildrenList<XMLObject> unknownChildren
Wildcard child elements.

## Constructor Details

### SecurityTokenReferenceImpl

public SecurityTokenReferenceImpl(@Nullable String namespaceURI, @Nonnull String elementLocalName, @Nullable String namespacePrefix)
Constructor.

Parameters:
  `namespaceURI` - namespace of the element
  `elementLocalName` - name of the element
  `namespacePrefix` - namespace prefix of the element

## Method Details

### getWSSEUsages

@Nullable public List<String> getWSSEUsages()
Returns the list of `wsse:@Usage` attributes value.

Specified by:
  `getWSSEUsages` in interface `UsageBearing`
Returns:
  the list of attribute values

### setWSSEUsages

public void setWSSEUsages(@Nullable List<String> newUsages)
Sets the list of `wsse:@Usage` attributes value.

Specified by:
  `setWSSEUsages` in interface `UsageBearing`
Parameters:
  `newUsages` - the list of attribute values

### getWSUId

@Nullable public String getWSUId()
Returns the `@wsu:Id` attribute value.

Specified by:
  `getWSUId` in interface `IdBearing`
Returns:
  The `@wsu:Id` attribute value or `null`.

### setWSUId

public void setWSUId(@Nullable String newId)
Sets the `@wsu:Id` attribute value.

Specified by:
  `setWSUId` in interface `IdBearing`
Parameters:
  `newId` - The `@wsu:Id` attribute value

### getUnknownAttributes

@Nonnull public AttributeMap getUnknownAttributes()
Gets a mutable map of the attributes. The map key is the namespace qualified name of the attribute, the map value is the value of the attribute.

Specified by:
  `getUnknownAttributes` in interface `AttributeExtensibleXMLObject`
Returns:
  a map of the attributes

### getUnknownXMLObjects

@Nonnull public List<XMLObject> getUnknownXMLObjects()
Gets the list of XMLObjects added to this XMLObject as part of the "any" content model.

Specified by:
  `getUnknownXMLObjects` in interface `ElementExtensibleXMLObject`
Returns:
  list of XMLObjects added to this XMLObject as part of the "any" content model

### getUnknownXMLObjects

@Nonnull public List<XMLObject> getUnknownXMLObjects(@Nonnull QName typeOrName)
Gets the list of XMLObjects added to this XMLObject as part of the "any" content model, and which match the specified QName.

Specified by:
  `getUnknownXMLObjects` in interface `ElementExtensibleXMLObject`
Parameters:
  `typeOrName` - the QName of the statements to return
Returns:
  list of XMLObjects added to this XMLObject as part of the "any" content model TODO: think this should be typed List<? extends XMLObject>

### getOrderedChildren

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