diff options
author | Bretty White <geekman3454@protonmail.com> | 2018-07-18 16:29:39 -0400 |
---|---|---|
committer | Bretty White <geekman3454@protonmail.com> | 2018-07-18 16:29:39 -0400 |
commit | ec14c74ad5f1aa01026bdd075a38810460bddabf (patch) | |
tree | 97035654cc6d5342426658d63ac399ba706f8bf3 | |
parent | 77f9fb3b227035f4b0b919552bcd63d2698c3da3 (diff) | |
download | sdl_android-ec14c74ad5f1aa01026bdd075a38810460bddabf.tar.gz |
change to completion listener
3 files changed, 27 insertions, 17 deletions
diff --git a/sdl_android/src/main/java/com/smartdevicelink/api/BaseSubManager.java b/sdl_android/src/main/java/com/smartdevicelink/api/BaseSubManager.java index ac7e020f9..890c40247 100644 --- a/sdl_android/src/main/java/com/smartdevicelink/api/BaseSubManager.java +++ b/sdl_android/src/main/java/com/smartdevicelink/api/BaseSubManager.java @@ -20,6 +20,7 @@ public abstract class BaseSubManager { private final Object STATE_LOCK = new Object(); public static final int SETTING_UP = 0x00, READY = 0x30, SHUTDOWN = 0x60; protected final ISdl internalInterface; + private CompletionListener completionListener; public BaseSubManager(@NonNull ISdl internalInterface){ this.internalInterface = internalInterface; @@ -27,6 +28,18 @@ public abstract class BaseSubManager { } /** + * Called to start + * @param listener + */ + public void start(CompletionListener listener){ + this.completionListener = listener; + if(state == READY){ + completionListener.onComplete(true); + completionListener = null; + } + } + + /** * <p>Called when manager is being torn down</p> */ public void dispose(){ @@ -37,6 +50,13 @@ public abstract class BaseSubManager { synchronized (STATE_LOCK) { this.state = state; } + if(state == READY){ + completionListener.onComplete(true); + completionListener = null; + }else if(state == SHUTDOWN){ + completionListener.onComplete(false); + completionListener = null; + } } public int getState() { diff --git a/sdl_android/src/main/java/com/smartdevicelink/api/InitializationListener.java b/sdl_android/src/main/java/com/smartdevicelink/api/InitializationListener.java deleted file mode 100644 index f7a342ff0..000000000 --- a/sdl_android/src/main/java/com/smartdevicelink/api/InitializationListener.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.smartdevicelink.api; - -public interface InitializationListener { - /** - * Returns whether a initialization was successful or not - * @param success - success or fail - */ - void OnInitialized(boolean success); -} diff --git a/sdl_android/src/main/java/com/smartdevicelink/api/SdlManager.java b/sdl_android/src/main/java/com/smartdevicelink/api/SdlManager.java index 3b037981a..50defe985 100644 --- a/sdl_android/src/main/java/com/smartdevicelink/api/SdlManager.java +++ b/sdl_android/src/main/java/com/smartdevicelink/api/SdlManager.java @@ -64,10 +64,10 @@ public class SdlManager implements ProxyBridge.LifecycleListener { private TemplateColorScheme dayColorScheme, nightColorScheme; private final ProxyBridge proxyBridge= new ProxyBridge(this); + private CompletionListener initListener; + private boolean initialized = false; //public LockScreenConfig lockScreenConfig; - private InitializationListener initListener; - private boolean initialized = false; // Managers /* @@ -79,11 +79,11 @@ public class SdlManager implements ProxyBridge.LifecycleListener { private PermissionManager permissionManager; */ - InitializationListener subManagerListener = new InitializationListener() { + CompletionListener subManagerListener = new CompletionListener() { boolean allSucceeded = true; int subManagerCount = 1; // Update per amount of sub managers implemented @Override - public void OnInitialized(boolean success) { + public void onComplete(boolean success) { if(!success){ allSucceeded = false; } @@ -93,7 +93,7 @@ public class SdlManager implements ProxyBridge.LifecycleListener { initialized = true; } if(initListener != null){ - initListener.OnInitialized(allSucceeded); + initListener.onComplete(allSucceeded); initListener = null; } } @@ -278,7 +278,6 @@ public class SdlManager implements ProxyBridge.LifecycleListener { sdlManager.hmiLanguage = Language.EN_US; } - sdlManager.initialize(); sdlManager.proxy = new SdlProxyBase(sdlManager.proxyBridge, sdlManager.appName, sdlManager.shortAppName, sdlManager.isMediaApp, sdlManager.hmiLanguage, sdlManager.hmiLanguage, sdlManager.hmiTypes, sdlManager.appId, sdlManager.transport, sdlManager.vrSynonyms, sdlManager.ttsChunks, sdlManager.dayColorScheme, sdlManager.nightColorScheme) {}; } catch (SdlException e) { e.printStackTrace(); @@ -406,10 +405,10 @@ public class SdlManager implements ProxyBridge.LifecycleListener { // LIFECYCLE / OTHER // STARTUP - public void start(InitializationListener listener){ + public void start(CompletionListener listener){ initListener = listener; if(initialized){ - listener.OnInitialized(true); + listener.onComplete(true); } } |