Package org.keycloak.rotation
Class CompositeKeyLocator
- java.lang.Object
-
- org.keycloak.rotation.CompositeKeyLocator
-
- All Implemented Interfaces:
Iterable<Key>,KeyLocator
public class CompositeKeyLocator extends Object implements KeyLocator, Iterable<Key>
KeyLocatorthat represents a list of multipleKeyLocators. Key is searched from the first to the lastKeyLocatorin the order given by the list. If there are multipleKeyLocators providing key with the same key ID, the first matching key is returned.- Author:
- hmlnarik
-
-
Constructor Summary
Constructors Constructor Description CompositeKeyLocator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(KeyLocator keyLocator)Registers a givenKeyLocatoras the lastKeyLocator.voidaddFirst(KeyLocator keyLocator)Registers a givenKeyLocatoras the firstKeyLocator.voidclear()Clears the list of registeredKeyLocatorsKeygetKey(String kid)Returns a key with a particular ID.Iterator<Key>iterator()voidrefreshKeyCache()If this key locator caches keys in any way, forces this cache cleanup and refreshing the keys.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
getKey
public Key getKey(String kid) throws KeyManagementException
Description copied from interface:KeyLocatorReturns a key with a particular ID.- Specified by:
getKeyin interfaceKeyLocator- Parameters:
kid- Key ID- Returns:
- key, which should be used for verify signature on given "input"
- Throws:
KeyManagementException
-
refreshKeyCache
public void refreshKeyCache()
Description copied from interface:KeyLocatorIf this key locator caches keys in any way, forces this cache cleanup and refreshing the keys.- Specified by:
refreshKeyCachein interfaceKeyLocator
-
addFirst
public void addFirst(KeyLocator keyLocator)
Registers a givenKeyLocatoras the firstKeyLocator.
-
add
public void add(KeyLocator keyLocator)
Registers a givenKeyLocatoras the lastKeyLocator.
-
clear
public void clear()
Clears the list of registeredKeyLocators
-
-