Class LazyClientIdentityIterator
java.lang.Object
org.apache.sshd.client.config.keys.LazyClientIdentityIterator
Wraps several
ClientIdentityProvider into a KeyPair Iterator that invokes each provider
"lazily" - i.e., only when Iterator.hasNext() is invoked. This prevents password protected private
keys to be decrypted until they are actually needed.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected KeyPairprotected booleanprivate final Function<? super ClientIdentityProvider, ? extends Iterable<KeyPair>> private final Iterator<? extends ClientIdentityProvider> -
Constructor Summary
ConstructorsConstructorDescriptionLazyClientIdentityIterator(Iterator<? extends ClientIdentityProvider> providers, Function<? super ClientIdentityProvider, ? extends Iterable<KeyPair>> kpExtractor, Predicate<KeyPair> filter) -
Method Summary
Modifier and TypeMethodDescriptionFunction<? super ClientIdentityProvider, ? extends Iterable<KeyPair>> Iterator<? extends ClientIdentityProvider> booleanhasNext()next()toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Iterator
forEachRemaining, remove
-
Field Details
-
finished
protected boolean finished -
currentIdentities
-
currentPair
-
providers
-
kpExtractor
-
filter
-
-
Constructor Details
-
LazyClientIdentityIterator
public LazyClientIdentityIterator(Iterator<? extends ClientIdentityProvider> providers, Function<? super ClientIdentityProvider, ? extends Iterable<KeyPair>> kpExtractor, Predicate<KeyPair> filter) - Parameters:
providers- The providers - ignored ifnullkpExtractor- The (nevernull) extractor of theKeyPairfrom theClientIdentityProviderargument. If returned pair isnullthen next provider is queried.filter- Any further filter to apply on (non-null) key pairs before returning it as theIterator.next()result.
-
-
Method Details
-
getProviders
-
getIdentitiesExtractor
public Function<? super ClientIdentityProvider,? extends Iterable<KeyPair>> getIdentitiesExtractor() -
getFilter
-
hasNext
public boolean hasNext() -
next
-
toString
-