Class FileWatcherKeyPairResourceLoader
java.lang.Object
org.apache.sshd.common.util.logging.AbstractLoggingBean
org.apache.sshd.common.util.io.ModifiableFileWatcher
org.apache.sshd.common.config.keys.loader.FileWatcherKeyPairResourceLoader
- All Implemented Interfaces:
KeyPairResourceLoader
public class FileWatcherKeyPairResourceLoader
extends ModifiableFileWatcher
implements KeyPairResourceLoader
Tracks a file containing
KeyPair-s an re-loads it whenever a change has been sensed in the monitored file (if
it exists)-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate KeyPairResourceLoaderprotected final AtomicReference<Collection<KeyPair>> Fields inherited from class org.apache.sshd.common.util.io.ModifiableFileWatcher
options, STRICTLY_PROHIBITED_FILE_PERMISSIONFields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
logFields inherited from interface org.apache.sshd.common.config.keys.loader.KeyPairResourceLoader
EMPTY, MAX_CIPHER_NAME_LENGTH, MAX_KEY_COMMENT_LENGTH, MAX_KEY_TYPE_NAME_LENGTH, MAX_PRIVATE_KEY_DATA_SIZE, MAX_PUBLIC_KEY_DATA_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionFileWatcherKeyPairResourceLoader(Path file, KeyPairResourceLoader delegateLoader) FileWatcherKeyPairResourceLoader(Path file, KeyPairResourceLoader delegateLoader, LinkOption... options) -
Method Summary
Modifier and TypeMethodDescriptionloadKeyPairs(SessionContext session, NamedResource resourceKey, FilePasswordProvider passwordProvider, List<String> lines) Loads key pairs from the given resource text linesprotected Collection<KeyPair> reloadKeyPairs(SessionContext session, NamedResource resourceKey, FilePasswordProvider passwordProvider, List<String> lines) voidMethods inherited from class org.apache.sshd.common.util.io.ModifiableFileWatcher
checkReloadRequired, exists, getPath, lastModified, resetReloadAttributes, size, toPathResource, toPathResource, toString, updateReloadAttributes, validateStrictConfigFilePermissionsMethods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warnMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.sshd.common.config.keys.loader.KeyPairResourceLoader
loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs, loadKeyPairs
-
Field Details
-
keysHolder
-
delegateLoader
-
-
Constructor Details
-
FileWatcherKeyPairResourceLoader
-
FileWatcherKeyPairResourceLoader
public FileWatcherKeyPairResourceLoader(Path file, KeyPairResourceLoader delegateLoader, LinkOption... options)
-
-
Method Details
-
getKeyPairResourceLoader
-
setKeyPairResourceLoader
-
loadKeyPairs
public Collection<KeyPair> loadKeyPairs(SessionContext session, NamedResource resourceKey, FilePasswordProvider passwordProvider, List<String> lines) throws IOException, GeneralSecurityException Description copied from interface:KeyPairResourceLoaderLoads key pairs from the given resource text lines- Specified by:
loadKeyPairsin interfaceKeyPairResourceLoader- Parameters:
session- TheSessionContextfor invoking this load command - may benullif not invoked within a session context (e.g., offline tool or session unknown).resourceKey- A hint as to the origin of the text linespasswordProvider- TheFilePasswordProviderto use in case the data is encrypted - may benullif no encrypted data is expectedlines- TheListof lines as read from the resource- Returns:
- The extracted
KeyPairs - may benull/empty if none. Note: the resource loader may decide to skip unknown lines if more than one key pair type is encoded in it - Throws:
IOException- If failed to process the linesGeneralSecurityException- If failed to generate the keys from the parsed data
-
reloadKeyPairs
protected Collection<KeyPair> reloadKeyPairs(SessionContext session, NamedResource resourceKey, FilePasswordProvider passwordProvider, List<String> lines) throws IOException, GeneralSecurityException - Throws:
IOExceptionGeneralSecurityException
-