Interface PasswordIdentityProvider
-
- All Known Subinterfaces:
AuthenticationIdentitiesProvider
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface PasswordIdentityProvider
-
-
Field Summary
Fields Modifier and Type Field Description static PasswordIdentityProviderEMPTY_PASSWORDS_PROVIDERAn "empty" implementation ofPasswordIdentityProviderthat returns and empty group of passwordsstatic java.util.function.Function<PasswordIdentityProvider,java.lang.Iterable<java.lang.String>>LOADERInvokesloadPasswords()and returns the result.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description static java.lang.Iterable<java.lang.String>iterableOf(java.util.Collection<? extends PasswordIdentityProvider> providers)Wraps a group ofPasswordIdentityProviderinto anIterableof their combined passwordsstatic java.util.Iterator<java.lang.String>iteratorOf(PasswordIdentityProvider provider)Resolves a non-nulliterator of the available passwordsstatic java.util.Iterator<java.lang.String>iteratorOf(PasswordIdentityProvider identities, PasswordIdentityProvider passwords)Creates a "unified"Iteratorof passwords out of 2 possiblePasswordIdentityProviderjava.lang.Iterable<java.lang.String>loadPasswords()static PasswordIdentityProvidermultiProvider(java.util.Collection<? extends PasswordIdentityProvider> providers)Wraps a group ofPasswordIdentityProviderinto a single onestatic PasswordIdentityProvidermultiProvider(PasswordIdentityProvider... providers)Wraps a group ofPasswordIdentityProviderinto a single onestatic PasswordIdentityProviderresolvePasswordIdentityProvider(PasswordIdentityProvider identities, PasswordIdentityProvider passwords)Creates a "unified"PasswordIdentityProviderout of 2 possible ones as follows:static PasswordIdentityProviderwrapPasswords(java.lang.Iterable<java.lang.String> passwords)Wraps a group of passwords into aPasswordIdentityProviderstatic PasswordIdentityProviderwrapPasswords(java.lang.String... passwords)Wraps a group of passwords into aPasswordIdentityProvider
-
-
-
Field Detail
-
EMPTY_PASSWORDS_PROVIDER
static final PasswordIdentityProvider EMPTY_PASSWORDS_PROVIDER
An "empty" implementation ofPasswordIdentityProviderthat returns and empty group of passwords
-
LOADER
static final java.util.function.Function<PasswordIdentityProvider,java.lang.Iterable<java.lang.String>> LOADER
InvokesloadPasswords()and returns the result. Ignoresnullproviders (i.e., returns an empty iterable instance)
-
-
Method Detail
-
loadPasswords
java.lang.Iterable<java.lang.String> loadPasswords()
- Returns:
- The currently available passwords - ignored if
null
-
iteratorOf
static java.util.Iterator<java.lang.String> iteratorOf(PasswordIdentityProvider identities, PasswordIdentityProvider passwords)
Creates a "unified"Iteratorof passwords out of 2 possiblePasswordIdentityProvider- Parameters:
identities- The registered passwordspasswords- Extra available passwords- Returns:
- The wrapping iterator
- See Also:
resolvePasswordIdentityProvider(PasswordIdentityProvider, PasswordIdentityProvider)
-
iteratorOf
static java.util.Iterator<java.lang.String> iteratorOf(PasswordIdentityProvider provider)
Resolves a non-nulliterator of the available passwords- Parameters:
provider- ThePasswordIdentityProvider- ignored ifnull(i.e., return an empty iterator)- Returns:
- A non-
nulliterator - which may be empty if no provider or no passwords
-
resolvePasswordIdentityProvider
static PasswordIdentityProvider resolvePasswordIdentityProvider(PasswordIdentityProvider identities, PasswordIdentityProvider passwords)
Creates a "unified"
PasswordIdentityProviderout of 2 possible ones as follows:- If both are
nullthen returnnull. - If either one is
nullthen use the non-nullone. - If both are the same instance then use it.
- Otherwise, returns a wrapper that groups both providers.
- Parameters:
identities- The registered passwordspasswords- The extra available passwords- Returns:
- The resolved provider
- See Also:
multiProvider(PasswordIdentityProvider...)
- If both are
-
multiProvider
static PasswordIdentityProvider multiProvider(PasswordIdentityProvider... providers)
Wraps a group ofPasswordIdentityProviderinto a single one- Parameters:
providers- The providers - ignored ifnull/empty (i.e., returnsEMPTY_PASSWORDS_PROVIDER- Returns:
- The wrapping provider
- See Also:
multiProvider(Collection)
-
multiProvider
static PasswordIdentityProvider multiProvider(java.util.Collection<? extends PasswordIdentityProvider> providers)
Wraps a group ofPasswordIdentityProviderinto a single one- Parameters:
providers- The providers - ignored ifnull/empty (i.e., returnsEMPTY_PASSWORDS_PROVIDER- Returns:
- The wrapping provider
-
iterableOf
static java.lang.Iterable<java.lang.String> iterableOf(java.util.Collection<? extends PasswordIdentityProvider> providers)
Wraps a group ofPasswordIdentityProviderinto anIterableof their combined passwords- Parameters:
providers- The providers - ignored ifnull/empty (i.e., returns an empty iterable instance)- Returns:
- The wrapping iterable
-
wrapPasswords
static PasswordIdentityProvider wrapPasswords(java.lang.String... passwords)
Wraps a group of passwords into aPasswordIdentityProvider- Parameters:
passwords- The passwords - ignored ifnull/empty (i.e., returnsEMPTY_PASSWORDS_PROVIDER)- Returns:
- The provider wrapper
-
wrapPasswords
static PasswordIdentityProvider wrapPasswords(java.lang.Iterable<java.lang.String> passwords)
Wraps a group of passwords into aPasswordIdentityProvider- Parameters:
passwords- The passwordsIterable- ignored ifnull(i.e., returnsEMPTY_PASSWORDS_PROVIDER)- Returns:
- The provider wrapper
-
-