Package org.opensaml.xmlsec.keyinfo.impl.provider

# Class ECKeyValueProvider

java.lang.Object
org.opensaml.xmlsec.keyinfo.impl.provider.AbstractKeyInfoProvider
org.opensaml.xmlsec.keyinfo.impl.provider.ECKeyValueProvider

All Implemented Interfaces:
  `KeyInfoProvider`

public class ECKeyValueProvider extends AbstractKeyInfoProvider
Implementation of `KeyInfoProvider` which supports `ECKeyValue`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final org.slf4j.Logger`
`log`
Class logger.

## Constructor Summary

Constructors
Constructor
Description
`ECKeyValueProvider()`

## Method Summary

Modifier and Type
Method
Description
`protected ECKeyValue`
`getECKeyValue(XMLObject xmlObject)`
Get the ECKeyValue from the passed XML object.
`boolean`
`handles(XMLObject keyInfoChild)`
Evaluate whether the given provider should attempt to handle resolving a credential from the specified KeyInfo child.
`Collection<Credential>`
`process(KeyInfoCredentialResolver resolver, XMLObject keyInfoChild, CriteriaSet criteriaSet, KeyInfoResolutionContext kiContext)`
Process a specified KeyInfo child (XMLobject) and attempt to resolve a credential from it.

### Methods inherited from class org.opensaml.xmlsec.keyinfo.impl.provider.AbstractKeyInfoProvider

`buildCredentialContext, extractKeyValue`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### log

private final org.slf4j.Logger log
Class logger.

## Constructor Details

### ECKeyValueProvider

public ECKeyValueProvider()

## Method Details

### handles

public boolean handles(@Nonnull XMLObject keyInfoChild)
Evaluate whether the given provider should attempt to handle resolving a credential from the specified KeyInfo child. An evaluation of `true` does not guarantee that a credential can or will be extracted form the particular KeyInfo child, only that processing should be attempted.

Parameters:
  `keyInfoChild` - the KeyInfo child object to consider
Returns:
  true if the provider should attempt to resolve credentials, false otherwise

### process

@Nullable @Unmodifiable @NotLive public Collection<Credential> process(@Nonnull KeyInfoCredentialResolver resolver, @Nonnull XMLObject keyInfoChild, @Nullable CriteriaSet criteriaSet, @Nonnull KeyInfoResolutionContext kiContext) throws SecurityException
Process a specified KeyInfo child (XMLobject) and attempt to resolve a credential from it.

Parameters:
  `resolver` - reference to a resolver which is calling the provider
  `keyInfoChild` - the KeyInfo child being processed
  `criteriaSet` - the credential criteria the credential must satisfy
  `kiContext` - the resolution context, used for sharing state amongst resolvers and providers
Returns:
  a resolved Credential collection, or null
Throws:
  `SecurityException` - if there is an error during credential resolution. Note: failure to resolve a credential is not an error.

### getECKeyValue

@Nullable protected ECKeyValue getECKeyValue(@Nonnull XMLObject xmlObject)
Get the ECKeyValue from the passed XML object.

Parameters:
  `xmlObject` - an XML object, presumably either a `KeyValue` or an `ECKeyValue`
Returns:
  the ECKeyValue which was found, or null if none