summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilal Alsharifi <bilal.alsharifi@gmail.com>2020-06-19 13:54:07 -0400
committerBilal Alsharifi <bilal.alsharifi@gmail.com>2020-06-19 13:54:07 -0400
commit2138ec75bd29e8e01073fcfd602200fede7938e6 (patch)
tree9d1e2c755d2f28f9902493df5ab1aa5fc4c19dd1
parent170771fbb44cfb6d05f45f111c11741714fc98b6 (diff)
downloadsdl_android-feature/change_lang_reconnect.tar.gz
Put the onProxyClosed() logic in BaseSdlManagerfeature/change_lang_reconnect
-rw-r--r--android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java8
-rw-r--r--base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java7
-rw-r--r--base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java3
-rw-r--r--javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java8
-rw-r--r--javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java18
5 files changed, 22 insertions, 22 deletions
diff --git a/android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java b/android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java
index c4a7a10cc..e73a5b62d 100644
--- a/android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java
+++ b/android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java
@@ -211,14 +211,6 @@ public class SdlManager extends BaseSdlManager {
}
}
- @Override
- void onProxyClosed(SdlDisconnectedReason reason) {
- Log.i(TAG, "Proxy is closed.");
- if (reason == null || !reason.equals(SdlDisconnectedReason.LANGUAGE_CHANGE)) {
- dispose();
- }
- }
-
/**
* Dispose SdlManager and clean its resources
* <strong>Note: new instance of SdlManager should be created on every connection. SdlManager cannot be reused after getting disposed.</strong>
diff --git a/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java b/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
index c52f27b2d..be128c303 100644
--- a/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
+++ b/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
@@ -142,7 +142,10 @@ abstract class BaseSdlManager {
@Override
public void onProxyClosed(LifecycleManager lifeCycleManager, String info, Exception e, SdlDisconnectedReason reason) {
- BaseSdlManager.this.onProxyClosed(reason);
+ Log.i(TAG, "Proxy is closed.");
+ if (reason == null || !reason.equals(SdlDisconnectedReason.LANGUAGE_CHANGE)) {
+ dispose();
+ }
}
@Override
@@ -165,8 +168,6 @@ abstract class BaseSdlManager {
// ABSTRACT METHODS
abstract void retryChangeRegistration();
- abstract void onProxyClosed(SdlDisconnectedReason reason);
-
abstract void checkState();
abstract void initialize();
diff --git a/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java b/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java
index eeb8c6da6..ece981121 100644
--- a/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java
+++ b/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java
@@ -1496,8 +1496,7 @@ abstract class BaseLifecycleManager {
}
}
- void cycleProxy(SdlDisconnectedReason disconnectedReason) {
- }
+ abstract void cycleProxy(SdlDisconnectedReason disconnectedReason);
void onTransportDisconnected(String info, boolean availablePrimary, BaseTransportConfig transportConfig) {
}
diff --git a/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java b/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
index a711438cc..3edb6b4ea 100644
--- a/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
+++ b/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
@@ -142,14 +142,6 @@ public class SdlManager extends BaseSdlManager {
}
@Override
- void onProxyClosed(SdlDisconnectedReason reason) {
- Log.i(TAG, "Proxy is closed.");
- if (managerListener != null) {
- managerListener.onDestroy(SdlManager.this);
- }
- }
-
- @Override
public void dispose() {
if (this.permissionManager != null) {
this.permissionManager.dispose();
diff --git a/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java b/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
index 4a5e3747d..2bd6c1a78 100644
--- a/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
+++ b/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
@@ -35,6 +35,8 @@ package com.smartdevicelink.managers.lifecycle;
import android.support.annotation.RestrictTo;
import com.smartdevicelink.SdlConnection.SdlSession;
+import com.smartdevicelink.exception.SdlException;
+import com.smartdevicelink.proxy.rpc.enums.SdlDisconnectedReason;
import com.smartdevicelink.transport.BaseTransportConfig;
/**
@@ -54,10 +56,24 @@ public class LifecycleManager extends BaseLifecycleManager {
}
@Override
+ void cycleProxy(SdlDisconnectedReason disconnectedReason) {
+ if (session != null) {
+ if (session.getIsConnected()) {
+ session.close();
+ }
+ try {
+ session.startSession();
+ } catch (SdlException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ @Override
void onTransportDisconnected(String info, boolean availablePrimary, BaseTransportConfig transportConfig) {
super.onTransportDisconnected(info, availablePrimary, transportConfig);
if (!availablePrimary) {
- onClose(info, null);
+ onClose(info, null, null);
}
}
}