Top Description Fields Constructors Methods
org.apache.sshd.client.config.keys

public Class ClientIdentityFileWatcher

extends ModifiableFileWatcher
implements ClientIdentityProvider, ClientIdentityLoaderHolder, FilePasswordProviderHolder
Class Inheritance
All Implemented Interfaces
org.apache.sshd.common.config.keys.FilePasswordProviderHolder, org.apache.sshd.client.config.keys.ClientIdentityLoaderHolder, org.apache.sshd.client.config.keys.ClientIdentityProvider
Imports
java.io.IOException, java.nio.file.Path, java.security.GeneralSecurityException, .KeyPair, .PublicKey, java.util.Map, .Objects, java.util.concurrent.atomic.AtomicReference, org.apache.sshd.common.config.keys.FilePasswordProvider, .FilePasswordProviderHolder, .KeyUtils, org.apache.sshd.common.session.SessionContext, org.apache.sshd.common.util.io.IoUtils, .ModifiableFileWatcher, org.apache.sshd.common.util.io.resource.PathResource

A ClientIdentityProvider that watches a given key file re-loading its contents if it is ever modified, deleted or (re-)created
Author
Apache MINA SSHD Project

Field Summary

Modifier and TypeField and Description
private final AtomicReference<Iterable<KeyPair>>
private final ClientIdentityLoaderHolder
private final FilePasswordProviderHolder
private final boolean
Inherited from org.apache.sshd.common.util.io.ModifiableFileWatcher:
optionsSTRICTLY_PROHIBITED_FILE_PERMISSION

Constructor Summary

AccessConstructor and Description
public
public
public
public

Method Summary

Modifier and TypeMethod and Description
public Iterable<KeyPair>
getClientIdentities(SessionContext
The SessionContext for invoking this load command - may be null if not invoked within a session context (e.g., offline tool).
session
)

Implements org.apache.sshd.client.config.keys.ClientIdentityProvider.getClientIdentities.

Provides a KeyPair representing the client identity

public ClientIdentityLoader
public FilePasswordProvider
public boolean
protected Iterable<KeyPair>
Inherited from org.apache.sshd.common.util.io.ModifiableFileWatcher:
checkReloadRequiredexistsgetPathlastModifiedresetReloadAttributessizetoPathResourcetoPathResourcetoStringupdateReloadAttributesvalidateStrictConfigFilePermissions

Field Detail

identitiesHolderback to summary
private final AtomicReference<Iterable<KeyPair>> identitiesHolder
loaderHolderback to summary
private final ClientIdentityLoaderHolder loaderHolder
providerHolderback to summary
private final FilePasswordProviderHolder providerHolder
strictback to summary
private final boolean strict

Constructor Detail

ClientIdentityFileWatcherback to summary
public ClientIdentityFileWatcher(Path path, ClientIdentityLoader loader, FilePasswordProvider provider)
ClientIdentityFileWatcherback to summary
public ClientIdentityFileWatcher(Path path, ClientIdentityLoader loader, FilePasswordProvider provider, boolean strict)
ClientIdentityFileWatcherback to summary
public ClientIdentityFileWatcher(Path path, ClientIdentityLoaderHolder loader, FilePasswordProviderHolder provider)
ClientIdentityFileWatcherback to summary
public ClientIdentityFileWatcher(Path path, ClientIdentityLoaderHolder loader, FilePasswordProviderHolder provider, boolean strict)

Method Detail

getClientIdentitiesback to summary
public Iterable<KeyPair> getClientIdentities(SessionContext session) throws IOException, GeneralSecurityException

Implements org.apache.sshd.client.config.keys.ClientIdentityProvider.getClientIdentities.

Doc from org.apache.sshd.client.config.keys.ClientIdentityProvider.getClientIdentities.

Provides a KeyPair representing the client identity

Parameters
session:SessionContext

The SessionContext for invoking this load command - may be null if not invoked within a session context (e.g., offline tool).

Returns:Iterable<KeyPair>

The client identities - may be null/empty if no currently available identity from this provider

Note

the provider may return a different value every time this method is called - e.g., if it is (re-)loading contents from a file.

Annotations
@Override
Exceptions
IOException:
If failed to load the identity
GeneralSecurityException:
If failed to parse the identity
getClientIdentityLoaderback to summary
public ClientIdentityLoader getClientIdentityLoader()

Implements org.apache.sshd.client.config.keys.ClientIdentityLoaderHolder.getClientIdentityLoader.

Returns:ClientIdentityLoader

Doc from org.apache.sshd.client.config.keys.ClientIdentityLoaderHolder.getClientIdentityLoader.

The ClientIdentityLoader to use in order to load client key pair identities - never null

Annotations
@Override
getFilePasswordProviderback to summary
public FilePasswordProvider getFilePasswordProvider()

Implements org.apache.sshd.common.config.keys.FilePasswordProviderHolder.getFilePasswordProvider.

Returns:FilePasswordProvider

Doc from org.apache.sshd.common.config.keys.FilePasswordProviderHolder.getFilePasswordProvider.

The FilePasswordProvider to use if need to load encrypted identities keys - never null

Annotations
@Override
isStrictback to summary
public boolean isStrict()
reloadClientIdentitiesback to summary
protected Iterable<KeyPair> reloadClientIdentities(SessionContext session, Path path) throws IOException, GeneralSecurityException