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

# Class KeyDescriptorImpl

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

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

public class KeyDescriptorImpl extends AbstractXMLObject implements KeyDescriptor
Concrete implementation of `KeyDescriptor`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final XMLObjectChildrenList<EncryptionMethod>`
`encryptionMethods`
Encryption methods supported by the entity.
`private KeyInfo`
`keyInfo`
Key information.
`private UsageType`
`keyUseType`
Key usage type.

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

`DEFAULT_ELEMENT_LOCAL_NAME, DEFAULT_ELEMENT_NAME, TYPE_LOCAL_NAME, TYPE_NAME, USE_ATTRIB_NAME`

## Constructor Summary

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

## Method Summary

Modifier and Type
Method
Description
`List<EncryptionMethod>`
`getEncryptionMethods()`
Gets the encryption methods that are supported by the entity.
`KeyInfo`
`getKeyInfo()`
Gets information about the key, including the key itself.
`List<XMLObject>`
`getOrderedChildren()`
Gets an unmodifiable list of child elements in the order that they will appear in the DOM.
`UsageType`
`getUse()`
Gets the use of this key.
`void`
`setKeyInfo(KeyInfo newKeyInfo)`
Sets information about the key, including the key itself.
`void`
`setUse(UsageType newType)`
Sets the use of this key.

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

### keyUseType

@Nullable private UsageType keyUseType
Key usage type.

### keyInfo

@Nullable private KeyInfo keyInfo
Key information.

### encryptionMethods

@Nonnull private final XMLObjectChildrenList<EncryptionMethod> encryptionMethods
Encryption methods supported by the entity.

## Constructor Details

### KeyDescriptorImpl

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

### getUse

@Nullable public UsageType getUse()
Gets the use of this key.

Specified by:
  `getUse` in interface `KeyDescriptor`
Returns:
  the use of this key

### setUse

public void setUse(@Nullable UsageType newType)
Sets the use of this key.

Specified by:
  `setUse` in interface `KeyDescriptor`
Parameters:
  `newType` - the use of this key

### getKeyInfo

@Nullable public KeyInfo getKeyInfo()
Gets information about the key, including the key itself.

Specified by:
  `getKeyInfo` in interface `KeyDescriptor`
Returns:
  information about the key, including the key itself

### setKeyInfo

public void setKeyInfo(@Nullable KeyInfo newKeyInfo)
Sets information about the key, including the key itself.

Specified by:
  `setKeyInfo` in interface `KeyDescriptor`
Parameters:
  `newKeyInfo` - information about the key, including the key itself

### getEncryptionMethods

@Nonnull @Live public List<EncryptionMethod> getEncryptionMethods()
Gets the encryption methods that are supported by the entity.

Specified by:
  `getEncryptionMethods` in interface `KeyDescriptor`
Returns:
  the encryption methods that are supported by the entity

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