From 62a280b4b6263abb6f23475cd6bfb298d33f6c69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Mon, 15 Jun 2015 23:32:19 -0400 Subject: [PATCH] dring: implement signal to retreive cache/data paths The API to get data/cache paths are Java only. Currently we need to access files and cache paths but the design keeps the possibility to access other paths using the name signal. Refs #75320 Change-Id: I3f3d52b53633c713071bb0e31803291c51d27b46 --- .../cx/ring/service/ConfigurationManagerCallback.java | 11 +++++++++++ ring-android/app/src/main/jni/configurationmanager.i | 2 ++ ring-android/app/src/main/jni/jni_interface.i | 1 + 3 files changed, 14 insertions(+) diff --git a/ring-android/app/src/main/java/cx/ring/service/ConfigurationManagerCallback.java b/ring-android/app/src/main/java/cx/ring/service/ConfigurationManagerCallback.java index 6217a7eff..ceb49699c 100644 --- a/ring-android/app/src/main/java/cx/ring/service/ConfigurationManagerCallback.java +++ b/ring-android/app/src/main/java/cx/ring/service/ConfigurationManagerCallback.java @@ -22,6 +22,7 @@ */ package cx.ring.service; +import android.content.Context; import android.content.Intent; import android.util.Log; @@ -80,4 +81,14 @@ public class ConfigurationManagerCallback extends ConfigurationCallback { ret.add(audioParams.getBufferSize()); } + @Override + public void getAppDataPath(String name, StringVect ret) { + if (name.equals("files")) + ret.add(mService.getFilesDir().getAbsolutePath()); + else if(name.equals("cache")) + ret.add(mService.getCacheDir().getAbsolutePath()); + else + ret.add(mService.getDir(name, Context.MODE_PRIVATE).getAbsolutePath()); + } + } diff --git a/ring-android/app/src/main/jni/configurationmanager.i b/ring-android/app/src/main/jni/configurationmanager.i index e6ae5f6d2..350a5cfb7 100644 --- a/ring-android/app/src/main/jni/configurationmanager.i +++ b/ring-android/app/src/main/jni/configurationmanager.i @@ -50,6 +50,7 @@ public: virtual void errorAlert(int alert){} virtual void getHardwareAudioFormat(std::vector<int32_t>* /*params_ret*/){} + virtual void getAppDataPath(const std::string& /* name */, std::vector<std::string>* /*path_ret*/){} }; %} @@ -187,4 +188,5 @@ public: virtual void errorAlert(int alert){} virtual void getHardwareAudioFormat(std::vector<int32_t>* /*params_ret*/){} + virtual void getAppDataPath(const std::string& /* name */, std::vector<std::string>* /*path_ret*/){} }; \ No newline at end of file diff --git a/ring-android/app/src/main/jni/jni_interface.i b/ring-android/app/src/main/jni/jni_interface.i index bb32d6d55..ded68b9cd 100644 --- a/ring-android/app/src/main/jni/jni_interface.i +++ b/ring-android/app/src/main/jni/jni_interface.i @@ -197,6 +197,7 @@ void init(ConfigurationCallback* confM, Callback* callM) { exportable_callback<ConfigurationSignal::CertificateExpired>(bind(&ConfigurationCallback::certificateExpired, confM, _1 )), exportable_callback<ConfigurationSignal::CertificateStateChanged>(bind(&ConfigurationCallback::certificateStateChanged, confM, _1, _2, _3 )), exportable_callback<ConfigurationSignal::GetHardwareAudioFormat>(bind(&ConfigurationCallback::getHardwareAudioFormat, confM, _1 )), + exportable_callback<ConfigurationSignal::GetAppDataPath>(bind(&ConfigurationCallback::getAppDataPath, confM, _1, _2 )) }; /* -- GitLab