Interface KeyIdentityProvider
- All Known Subinterfaces:
AuthenticationIdentitiesProvider,KeyPairProvider
- All Known Implementing Classes:
AbstractGeneratorHostKeyProvider,AbstractKeyPairProvider,AbstractResourceKeyPairProvider,BouncyCastleGeneratorHostKeyProvider,BuiltinClientIdentitiesWatcher,ClassLoadableResourceKeyPairProvider,ClientIdentitiesWatcher,DefaultClientIdentitiesWatcher,FileKeyPairProvider,LazyClientKeyIdentityProvider,MappedKeyPairProvider,MultiKeyIdentityProvider,SimpleGeneratorHostKeyProvider
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final KeyIdentityProviderAn "empty" implementation ofKeyIdentityProviderthat returns an empty group of key pairs -
Method Summary
Modifier and TypeMethodDescriptionstatic KeyPairAttempts to find the first non-nullKeyPairstatic booleanisEmpty(KeyIdentityProvider provider) iterableOf(SessionContext session, Collection<? extends KeyIdentityProvider> providers) loadKeys(SessionContext session) Load available keys.static KeyIdentityProvidermultiProvider(Collection<? extends KeyIdentityProvider> providers) Wraps a group ofKeyIdentityProviderinto a single onestatic KeyIdentityProvidermultiProvider(KeyIdentityProvider... providers) Wraps a group ofKeyIdentityProviderinto a single onestatic KeyIdentityProviderresolveKeyIdentityProvider(KeyIdentityProvider identities, KeyIdentityProvider keys) Creates a "unified"KeyIdentityProviderout of 2 possible ones as follows:static KeyIdentityProviderwrapKeyPairs(Iterable<KeyPair> pairs) Wraps a group ofKeyPairs into aKeyIdentityProviderstatic KeyIdentityProviderwrapKeyPairs(KeyPair... pairs) Wraps a group ofKeyPairs into aKeyIdentityProvider
-
Field Details
-
EMPTY_KEYS_PROVIDER
An "empty" implementation ofKeyIdentityProviderthat returns an empty group of key pairs
-
-
Method Details
-
loadKeys
Load available keys.- Parameters:
session- TheSessionContextfor invoking this load command - may benullif not invoked within a session context (e.g., offline tool or session unknown).- Returns:
- an
Iterableinstance of available keys - ignored ifnull - Throws:
IOException- If failed to read/parse the keys dataGeneralSecurityException- If failed to generate the keys
-
isEmpty
- Parameters:
provider- TheKeyIdentityProviderinstance to verify- Returns:
trueif instance isnullor theEMPTY_KEYS_PROVIDER
-
resolveKeyIdentityProvider
static KeyIdentityProvider resolveKeyIdentityProvider(KeyIdentityProvider identities, KeyIdentityProvider keys) Creates a "unified"
KeyIdentityProviderout of 2 possible ones as follows:- If both are
nullthen returnnull. - If either one is
null/emptythen use the non-nullone. - If both are the same instance then use the instance.
- Otherwise, returns a wrapper that groups both providers.
- Parameters:
identities- The registered key pair identitieskeys- The extra available key pairs- Returns:
- The resolved provider
- See Also:
- If both are
-
multiProvider
Wraps a group ofKeyIdentityProviderinto a single one- Parameters:
providers- The providers - ignored ifnull/empty (i.e., returnsEMPTY_KEYS_PROVIDER)- Returns:
- The wrapping provider
- See Also:
-
multiProvider
Wraps a group ofKeyIdentityProviderinto a single one- Parameters:
providers- The providers - ignored ifnull/empty (i.e., returnsEMPTY_KEYS_PROVIDER)- Returns:
- The wrapping provider
- See Also:
-
iterableOf
static Iterable<KeyPair> iterableOf(SessionContext session, Collection<? extends KeyIdentityProvider> providers) - Parameters:
session- TheSessionContextfor invoking this load command - may benullif not invoked within a session context (e.g., offline tool or session unknown).providers- The group of providers - ignored ifnull/empty (i.e., returns an empty iterable instance)- Returns:
- The wrapping iterable
-
wrapKeyPairs
Wraps a group ofKeyPairs into aKeyIdentityProvider- Parameters:
pairs- The key pairs - ignored ifnull/empty (i.e., returnsEMPTY_KEYS_PROVIDER).- Returns:
- The provider wrapper
-
wrapKeyPairs
Wraps a group ofKeyPairs into aKeyIdentityProvider- Parameters:
pairs- The key pairsIterable- ignored ifnull(i.e., returnsEMPTY_KEYS_PROVIDER).- Returns:
- The provider wrapper
-
exhaustCurrentIdentities
Attempts to find the first non-nullKeyPair- Parameters:
ids- TheIterator- ignored ifnullor no next element available- Returns:
- The first non-
nullkey pair found in the iterator -nullif all elements exhausted without such an entry
-