Persist FTP/SFTP debug log preference
-Commit/apply FtpDebug_key state to persistent preferences -Configure SFTP/JSch logging based on FtpDebug_key/LogFilename state on app startup
This commit is contained in:
@@ -832,7 +832,7 @@ namespace keepass2android
|
|||||||
new OneDrive2FullFileStorage(),
|
new OneDrive2FullFileStorage(),
|
||||||
new OneDrive2MyFilesFileStorage(),
|
new OneDrive2MyFilesFileStorage(),
|
||||||
new OneDrive2AppFolderFileStorage(),
|
new OneDrive2AppFolderFileStorage(),
|
||||||
new SftpFileStorage(LocaleManager.LocalizedAppContext, this),
|
CreateSftpFileStorage(),
|
||||||
new NetFtpFileStorage(LocaleManager.LocalizedAppContext, this, IsFtpDebugEnabled),
|
new NetFtpFileStorage(LocaleManager.LocalizedAppContext, this, IsFtpDebugEnabled),
|
||||||
new WebDavFileStorage(this),
|
new WebDavFileStorage(this),
|
||||||
new PCloudFileStorage(LocaleManager.LocalizedAppContext, this),
|
new PCloudFileStorage(LocaleManager.LocalizedAppContext, this),
|
||||||
@@ -855,6 +855,28 @@ namespace keepass2android
|
|||||||
.GetBoolean(LocaleManager.LocalizedAppContext.GetString(Resource.String.FtpDebug_key), false);
|
.GetBoolean(LocaleManager.LocalizedAppContext.GetString(Resource.String.FtpDebug_key), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IFileStorage CreateSftpFileStorage()
|
||||||
|
{
|
||||||
|
Context ctx = LocaleManager.LocalizedAppContext;
|
||||||
|
SftpFileStorage fileStorage = new SftpFileStorage(ctx, this);
|
||||||
|
|
||||||
|
var storage = new SftpStorage(ctx);
|
||||||
|
if (IsFtpDebugEnabled())
|
||||||
|
{
|
||||||
|
string? logFilename = null;
|
||||||
|
if (Kp2aLog.LogToFile)
|
||||||
|
{
|
||||||
|
logFilename = Kp2aLog.LogFilename;
|
||||||
|
}
|
||||||
|
storage.SetJschLogging(true, logFilename);
|
||||||
|
} else
|
||||||
|
{
|
||||||
|
storage.SetJschLogging(false, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
return fileStorage;
|
||||||
|
}
|
||||||
|
|
||||||
public void TriggerReload(Context ctx, Action<bool> actionOnResult)
|
public void TriggerReload(Context ctx, Action<bool> actionOnResult)
|
||||||
{
|
{
|
||||||
Handler handler = new Handler(Looper.MainLooper);
|
Handler handler = new Handler(Looper.MainLooper);
|
||||||
|
|||||||
@@ -401,7 +401,11 @@ namespace keepass2android
|
|||||||
#if !EXCLUDE_JAVAFILESTORAGE && !NoNet
|
#if !EXCLUDE_JAVAFILESTORAGE && !NoNet
|
||||||
private void OnJSchDebugChanged(object sender, Preference.PreferenceChangeEventArgs e)
|
private void OnJSchDebugChanged(object sender, Preference.PreferenceChangeEventArgs e)
|
||||||
{
|
{
|
||||||
SetJSchLogging((bool)e.NewValue);
|
bool debugEnabled = (bool)e.NewValue;
|
||||||
|
SetJSchLogging(debugEnabled);
|
||||||
|
|
||||||
|
string prefKey = Application.Context.GetString(Resource.String.FtpDebug_key);
|
||||||
|
PreferenceManager.SharedPreferences.Edit().PutBoolean(prefKey, debugEnabled).Apply();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetJSchLogging(bool enabled)
|
private void SetJSchLogging(bool enabled)
|
||||||
|
|||||||
Reference in New Issue
Block a user