From 1a54828a7ba9796e8a0f002e6ae1a83f07aadf20 Mon Sep 17 00:00:00 2001 From: xdavidwu Date: Fri, 29 Oct 2021 22:25:56 +0800 Subject: [PATCH] make mount timeout configurable --- src/main/java/org/safcephfs/CephFSDocumentsProvider.java | 4 +++- src/main/java/org/safcephfs/MainActivity.java | 7 ++++++- src/main/res/values/strings.xml | 1 + src/main/res/xml/main_pre.xml | 3 +++ 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/safcephfs/CephFSDocumentsProvider.java b/src/main/java/org/safcephfs/CephFSDocumentsProvider.java index 1c40b01..0acbda1 100644 --- a/src/main/java/org/safcephfs/CephFSDocumentsProvider.java +++ b/src/main/java/org/safcephfs/CephFSDocumentsProvider.java @@ -154,10 +154,12 @@ public class CephFSDocumentsProvider extends DocumentsProvider { key = settings.getString("key", ""); id = settings.getString("id", ""); path = settings.getString("path", ""); + String timeout = settings.getString("timeout", ""); + timeout = timeout.matches("\\d+") ? timeout : "20"; cm = new CephMount(id); cm.conf_set("mon_host", mon); cm.conf_set("key", key); - cm.conf_set("client_mount_timeout", "20"); + cm.conf_set("client_mount_timeout", timeout); checkPermissions = settings.getBoolean("permissions", true); if (!checkPermissions) { cm.conf_set("client_permissions", "false"); diff --git a/src/main/java/org/safcephfs/MainActivity.java b/src/main/java/org/safcephfs/MainActivity.java index 019878e..21e1fe3 100644 --- a/src/main/java/org/safcephfs/MainActivity.java +++ b/src/main/java/org/safcephfs/MainActivity.java @@ -13,7 +13,7 @@ import java.util.Arrays; public class MainActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener { - private EditTextPreference monText, pathText, idText, keyText; + private EditTextPreference monText, pathText, idText, keyText, timeoutText; private void notifyRootChanges(){ Uri uri = DocumentsContract.buildRootsUri("org.safcephfs"); @@ -29,6 +29,7 @@ public class MainActivity extends PreferenceActivity pathText = (EditTextPreference) findPreference("path"); idText = (EditTextPreference) findPreference("id"); keyText = (EditTextPreference) findPreference("key"); + timeoutText = (EditTextPreference) findPreference("timeout"); SharedPreferences settings = getPreferenceScreen().getSharedPreferences(); settings.registerOnSharedPreferenceChangeListener(this); @@ -40,6 +41,7 @@ public class MainActivity extends PreferenceActivity idText.setSummary(settings.getString("id", "")); if (!settings.getString("key", "").equals("")) keyText.setSummary(getString(R.string.key_filled)); + timeoutText.setSummary(settings.getString("timeout", "")); } @Override @@ -71,6 +73,9 @@ public class MainActivity extends PreferenceActivity else keyText.setSummary(getString(R.string.key_filled)); break; + case "timeout": + timeoutText.setSummary(settings.getString("timeout", "")); + break; } } } diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 4ef87d3..cd1f47b 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -15,4 +15,5 @@ Miscellaneous Settings Enforce file permissions Whether to enforce file permissions. + Connection timeout in seconds diff --git a/src/main/res/xml/main_pre.xml b/src/main/res/xml/main_pre.xml index cafc2f5..512cee8 100644 --- a/src/main/res/xml/main_pre.xml +++ b/src/main/res/xml/main_pre.xml @@ -21,5 +21,8 @@ + -- 2.43.0