org.apache.xml.security.keys.keyresolver
Class KeyResolver

java.lang.Object
  extended byorg.apache.xml.security.keys.keyresolver.KeyResolver

public class KeyResolver
extends java.lang.Object

KeyResolver is factory class for subclass of KeyResolverSpi that represent child element of KeyInfo.

Version:
%I%, %G%
Author:
$Author: coheigea $

Field Summary
protected  KeyResolverSpi _resolverSpi
          Field _resolverSpi
protected  StorageResolver _storage
          Field _storage
 
Method Summary
 java.lang.String getProperty(java.lang.String key)
          Method getProperty
static java.security.PublicKey getPublicKey(org.w3c.dom.Element element, java.lang.String BaseURI, StorageResolver storage)
          Method getPublicKey
static java.security.cert.X509Certificate getX509Certificate(org.w3c.dom.Element element, java.lang.String BaseURI, StorageResolver storage)
          Method getX509Certificate
static void hit(java.util.Iterator hintI)
          This method is called when a KeyResolver is successful with the hope that this information can improve performance.
static void init()
          The init() function is called by org.apache.xml.security.Init.init()
static java.util.Iterator iterator()
           
static int length()
          Method length
static void register(java.lang.String className)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
static void registerAtStart(java.lang.String className)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
 java.security.PublicKey resolvePublicKey(org.w3c.dom.Element element, java.lang.String BaseURI, StorageResolver storage)
          Method resolvePublicKey
 java.lang.String resolverClassName()
          Method resolverClassName
 javax.crypto.SecretKey resolveSecretKey(org.w3c.dom.Element element, java.lang.String BaseURI, StorageResolver storage)
           
 java.security.cert.X509Certificate resolveX509Certificate(org.w3c.dom.Element element, java.lang.String BaseURI, StorageResolver storage)
          Method resolveX509Certificate
 void setProperty(java.lang.String key, java.lang.String value)
          Method setProperty
 boolean understandsProperty(java.lang.String propertyToTest)
          Method understandsProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_resolverSpi

protected KeyResolverSpi _resolverSpi
Field _resolverSpi


_storage

protected StorageResolver _storage
Field _storage

Method Detail

length

public static int length()
Method length

Returns:
the length of resolvers registered

hit

public static void hit(java.util.Iterator hintI)
This method is called when a KeyResolver is successful with the hope that this information can improve performance.

Parameters:
hintI -

getX509Certificate

public static final java.security.cert.X509Certificate getX509Certificate(org.w3c.dom.Element element,
                                                                          java.lang.String BaseURI,
                                                                          StorageResolver storage)
                                                                   throws KeyResolverException
Method getX509Certificate

Parameters:
element -
BaseURI -
storage -
Returns:
The certificate represented by the element.
Throws:
KeyResolverException

getPublicKey

public static final java.security.PublicKey getPublicKey(org.w3c.dom.Element element,
                                                         java.lang.String BaseURI,
                                                         StorageResolver storage)
                                                  throws KeyResolverException
Method getPublicKey

Parameters:
element -
BaseURI -
storage -
Returns:
the public key contained in the element
Throws:
KeyResolverException

init

public static void init()
The init() function is called by org.apache.xml.security.Init.init()


register

public static void register(java.lang.String className)
                     throws java.lang.ClassNotFoundException,
                            java.lang.IllegalAccessException,
                            java.lang.InstantiationException
This method is used for registering KeyResolverSpis which are available to all KeyInfo objects. This means that personalized KeyResolverSpis should only be registered directly to the KeyInfo using KeyInfo.registerInternalKeyResolver(org.apache.xml.security.keys.keyresolver.KeyResolverSpi).

Parameters:
className -
Throws:
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.ClassNotFoundException

registerAtStart

public static void registerAtStart(java.lang.String className)
This method is used for registering KeyResolverSpis which are available to all KeyInfo objects. This means that personalized KeyResolverSpis should only be registered directly to the KeyInfo using KeyInfo.registerInternalKeyResolver(org.apache.xml.security.keys.keyresolver.KeyResolverSpi).

Parameters:
className -

resolvePublicKey

public java.security.PublicKey resolvePublicKey(org.w3c.dom.Element element,
                                                java.lang.String BaseURI,
                                                StorageResolver storage)
                                         throws KeyResolverException
Method resolvePublicKey

Parameters:
element -
BaseURI -
storage -
Returns:
resolved public key from the registered from the elements
Throws:
KeyResolverException

resolveX509Certificate

public java.security.cert.X509Certificate resolveX509Certificate(org.w3c.dom.Element element,
                                                                 java.lang.String BaseURI,
                                                                 StorageResolver storage)
                                                          throws KeyResolverException
Method resolveX509Certificate

Parameters:
element -
BaseURI -
storage -
Returns:
resolved X509certificate key from the registered from the elements
Throws:
KeyResolverException

resolveSecretKey

public javax.crypto.SecretKey resolveSecretKey(org.w3c.dom.Element element,
                                               java.lang.String BaseURI,
                                               StorageResolver storage)
                                        throws KeyResolverException
Parameters:
element -
BaseURI -
storage -
Returns:
resolved SecretKey key from the registered from the elements
Throws:
KeyResolverException

setProperty

public void setProperty(java.lang.String key,
                        java.lang.String value)
Method setProperty

Parameters:
key -
value -

getProperty

public java.lang.String getProperty(java.lang.String key)
Method getProperty

Parameters:
key -
Returns:
the property setted for this resolver

understandsProperty

public boolean understandsProperty(java.lang.String propertyToTest)
Method understandsProperty

Parameters:
propertyToTest -
Returns:
true if the resolver understands property propertyToTest

resolverClassName

public java.lang.String resolverClassName()
Method resolverClassName

Returns:
the name of the resolver.

iterator

public static java.util.Iterator iterator()