From b987af122174dafa66a7273fa92b8cd27e4d89ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Mon, 14 Mar 2016 14:43:54 -0400
Subject: [PATCH] dring: run non-blocking constant methods in the calling
 thread

Should reduce UI latency

Tuleap: #468
Change-Id: Ic51b6b44daa73ffba8d0eea0d86733e011150a6a
---
 .../java/cx/ring/service/DRingService.java    | 25 ++++++-------------
 1 file changed, 7 insertions(+), 18 deletions(-)

diff --git a/ring-android/app/src/main/java/cx/ring/service/DRingService.java b/ring-android/app/src/main/java/cx/ring/service/DRingService.java
index 2864ecd0d..8ddd6c5cf 100644
--- a/ring-android/app/src/main/java/cx/ring/service/DRingService.java
+++ b/ring-android/app/src/main/java/cx/ring/service/DRingService.java
@@ -796,13 +796,8 @@ public class DRingService extends Service {
 
         @Override
         public Map<String, String> getAccountTemplate(final String accountType) throws RemoteException {
-            return getExecutor().executeAndReturn(new SipRunnableWithReturn<Map<String, String>>() {
-                @Override
-                protected Map<String, String> doRun() throws SameThreadException {
-                    Log.i(TAG, "DRingService.getAccountTemplate() thread running...");
-                    return Ringservice.getAccountTemplate(accountType).toNative();
-                }
-            });
+            Log.i(TAG, "DRingService.getAccountTemplate() " + accountType);
+            return Ringservice.getAccountTemplate(accountType).toNative();
         }
 
         @SuppressWarnings("unchecked")
@@ -1292,11 +1287,10 @@ public class DRingService extends Service {
             getExecutor().execute(new SipRunnable() {
                 @Override
                 protected void doRun() throws SameThreadException, RemoteException {
-                    Log.i(TAG, "DRingService.setActiveAudioCodecList() thread running...");
-                    UintVect list = new UintVect();
-                    for (Object codec : codecs) {
+                    Log.i(TAG, "DRingService.setActiveCodecList() thread running...");
+                    UintVect list = new UintVect(codecs.size());
+                    for (Object codec : codecs)
                         list.add((Long) codec);
-                    }
                     Ringservice.setActiveCodecList(accountID, list);
                 }
             });
@@ -1361,13 +1355,8 @@ public class DRingService extends Service {
 
         @Override
         public List<String> getTlsSupportedMethods(){
-            return getExecutor().executeAndReturn(new SipRunnableWithReturn<List<String>>() {
-                @Override
-                protected List<String> doRun() throws SameThreadException {
-                    Log.i(TAG, "DRingService.getCredentials() thread running...");
-                    return SwigNativeConverter.convertSwigToNative(Ringservice.getSupportedTlsMethod());
-                }
-            });
+            Log.i(TAG, "DRingService.getTlsSupportedMethods()");
+            return SwigNativeConverter.convertSwigToNative(Ringservice.getSupportedTlsMethod());
         }
 
         @Override
-- 
GitLab