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

java.lang.Object
  extended by org.apache.xml.security.keys.keyresolver.KeyResolver

public class KeyResolver
extends Object

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


Method Summary
 String getProperty(String key)
          Method getProperty
static PublicKey getPublicKey(Element element, String baseURI, StorageResolver storage)
          Method getPublicKey
static X509Certificate getX509Certificate(Element element, String baseURI, StorageResolver storage)
          Method getX509Certificate
static Iterator<KeyResolverSpi> iterator()
           
static int length()
          Method length
static void register(KeyResolverSpi keyResolverSpi, boolean start)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
static void register(String className, boolean globalResolver)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
static void registerAtStart(String className, boolean globalResolver)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
static void registerClassNames(List<String> classNames)
          This method is used for registering KeyResolverSpis which are available to all KeyInfo objects.
static void registerDefaultResolvers()
          This method registers the default resolvers.
 PublicKey resolvePublicKey(Element element, String baseURI, StorageResolver storage)
          Method resolvePublicKey
 String resolverClassName()
          Method resolverClassName
 SecretKey resolveSecretKey(Element element, String baseURI, StorageResolver storage)
           
 X509Certificate resolveX509Certificate(Element element, String baseURI, StorageResolver storage)
          Method resolveX509Certificate
 void setProperty(String key, String value)
          Method setProperty
 boolean understandsProperty(String propertyToTest)
          Method understandsProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

length

public static int length()
Method length

Returns:
the length of resolvers registered

getX509Certificate

public static final X509Certificate getX509Certificate(Element element,
                                                       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 PublicKey getPublicKey(Element element,
                                           String baseURI,
                                           StorageResolver storage)
                                    throws KeyResolverException
Method getPublicKey

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

register

public static void register(String className,
                            boolean globalResolver)
                     throws ClassNotFoundException,
                            IllegalAccessException,
                            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). Please note that this method will create a new copy of the underlying array, as the underlying collection is a CopyOnWriteArrayList.

Parameters:
className -
globalResolver - Whether the KeyResolverSpi is a global resolver or not
Throws:
InstantiationException
IllegalAccessException
ClassNotFoundException

registerAtStart

public static void registerAtStart(String className,
                                   boolean globalResolver)
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). Please note that this method will create a new copy of the underlying array, as the underlying collection is a CopyOnWriteArrayList.

Parameters:
className -
globalResolver - Whether the KeyResolverSpi is a global resolver or not

register

public static void register(KeyResolverSpi keyResolverSpi,
                            boolean start)
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). Please note that this method will create a new copy of the underlying array, as the underlying collection is a CopyOnWriteArrayList.

Parameters:
keyResolverSpi - a KeyResolverSpi instance to register
start - whether to register the KeyResolverSpi at the start of the list or not

registerClassNames

public static void registerClassNames(List<String> classNames)
                               throws ClassNotFoundException,
                                      IllegalAccessException,
                                      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). The KeyResolverSpi instances are not registered as a global resolver.

Parameters:
classNames -
Throws:
InstantiationException
IllegalAccessException
ClassNotFoundException

registerDefaultResolvers

public static void registerDefaultResolvers()
This method registers the default resolvers.


resolvePublicKey

public PublicKey resolvePublicKey(Element element,
                                  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 X509Certificate resolveX509Certificate(Element element,
                                              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 SecretKey resolveSecretKey(Element element,
                                  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(String key,
                        String value)
Method setProperty

Parameters:
key -
value -

getProperty

public String getProperty(String key)
Method getProperty

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

understandsProperty

public boolean understandsProperty(String propertyToTest)
Method understandsProperty

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

resolverClassName

public String resolverClassName()
Method resolverClassName

Returns:
the name of the resolver.

iterator

public static Iterator<KeyResolverSpi> iterator()


Copyright © 2000–2014 The Apache Software Foundation. All rights reserved.