summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilal Alsharifi <bilal.alsharifi@gmail.com>2020-05-29 13:44:08 -0400
committerBilal Alsharifi <bilal.alsharifi@gmail.com>2020-05-29 13:44:08 -0400
commit2e23c196821cd99acd2a3d9a7d61cb14770e4705 (patch)
treeaeff8eb5d76a9e9fc7352b3047a54eed49d4e6e7
parentb414208899ac8872b4bacf85c99cd2c14c467199 (diff)
downloadsdl_android-2e23c196821cd99acd2a3d9a7d61cb14770e4705.tar.gz
Update code formatting
-rw-r--r--android/sdl_android/src/main/java/com/smartdevicelink/managers/SdlManager.java155
-rw-r--r--android/sdl_android/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java17
-rw-r--r--base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java76
-rw-r--r--base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java46
-rw-r--r--javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java76
-rw-r--r--javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java17
6 files changed, 154 insertions, 233 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 6be06f673..4b4cbddef 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
@@ -74,23 +74,79 @@ public class SdlManager extends BaseSdlManager{
private Context context;
private LockScreenConfig lockScreenConfig;
-
// Managers
private LockScreenManager lockScreenManager;
private VideoStreamManager videoStreamManager;
private AudioStreamManager audioStreamManager;
+ /**
+ * Starts up a SdlManager, and calls provided callback called once all BaseSubManagers are done setting up
+ */
+ @Override
+ public void start(){
+ if (lifecycleManager == null) {
+ if(transport!= null && transport.getTransportType() == TransportType.MULTIPLEX){
+ //Do the thing
+ MultiplexTransportConfig multiplexTransportConfig = (MultiplexTransportConfig)(transport);
+ final MultiplexTransportConfig.TransportListener devListener = multiplexTransportConfig.getTransportListener();
+ multiplexTransportConfig.setTransportListener(new MultiplexTransportConfig.TransportListener() {
+ @Override
+ public void onTransportEvent(List<TransportRecord> connectedTransports, boolean audioStreamTransportAvail, boolean videoStreamTransportAvail) {
+
+ //Pass to submanagers that need it
+ if(videoStreamManager != null){
+ videoStreamManager.handleTransportUpdated(connectedTransports, audioStreamTransportAvail, videoStreamTransportAvail);
+ }
+
+ if(audioStreamManager != null){
+ audioStreamManager.handleTransportUpdated(connectedTransports, audioStreamTransportAvail, videoStreamTransportAvail);
+ }
+ //If the developer supplied a listener to start, it is time to call that
+ if(devListener != null){
+ devListener.onTransportEvent(connectedTransports,audioStreamTransportAvail,videoStreamTransportAvail);
+ }
+ }
+ });
+
+ //If the requires audio support has not been set, it should be set to true if the
+ //app is a media app, and false otherwise
+ if(multiplexTransportConfig.requiresAudioSupport() == null){
+ multiplexTransportConfig.setRequiresAudioSupport(isMediaApp);
+ }
+ }
+
+ super.start();
+ }
+ }
@Override
- void onProxyClosed(SdlDisconnectedReason reason) {
- Log.i(TAG,"Proxy is closed.");
- if(managerListener != null){
- managerListener.onDestroy();
+ protected void initialize(){
+ // Instantiate sub managers
+ this.permissionManager = new PermissionManager(_internalInterface);
+ this.fileManager = new FileManager(_internalInterface, context, fileManagerConfig);
+ if (lockScreenConfig.isEnabled()) {
+ this.lockScreenManager = new LockScreenManager(lockScreenConfig, context, _internalInterface);
+ }
+ this.screenManager = new ScreenManager(_internalInterface, this.fileManager);
+ if(getAppTypes().contains(AppHMIType.NAVIGATION) || getAppTypes().contains(AppHMIType.PROJECTION)){
+ this.videoStreamManager = new VideoStreamManager(_internalInterface);
+ } else {
+ this.videoStreamManager = null;
+ }
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN
+ && (getAppTypes().contains(AppHMIType.NAVIGATION) || getAppTypes().contains(AppHMIType.PROJECTION)) ) {
+ this.audioStreamManager = new AudioStreamManager(_internalInterface, context);
+ } else {
+ this.audioStreamManager = null;
}
- if (!reason.equals(SdlDisconnectedReason.LANGUAGE_CHANGE)){
- dispose();
+ // Start sub managers
+ this.permissionManager.start(subManagerListener);
+ this.fileManager.start(subManagerListener);
+ if (lockScreenConfig.isEnabled()){
+ this.lockScreenManager.start(subManagerListener);
}
+ this.screenManager.start(subManagerListener);
}
@Override
@@ -153,33 +209,15 @@ public class SdlManager extends BaseSdlManager{
}
@Override
- protected void initialize(){
- // Instantiate sub managers
- this.permissionManager = new PermissionManager(_internalInterface);
- this.fileManager = new FileManager(_internalInterface, context, fileManagerConfig);
- if (lockScreenConfig.isEnabled()) {
- this.lockScreenManager = new LockScreenManager(lockScreenConfig, context, _internalInterface);
- }
- this.screenManager = new ScreenManager(_internalInterface, this.fileManager);
- if(getAppTypes().contains(AppHMIType.NAVIGATION) || getAppTypes().contains(AppHMIType.PROJECTION)){
- this.videoStreamManager = new VideoStreamManager(_internalInterface);
- } else {
- this.videoStreamManager = null;
- }
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN
- && (getAppTypes().contains(AppHMIType.NAVIGATION) || getAppTypes().contains(AppHMIType.PROJECTION)) ) {
- this.audioStreamManager = new AudioStreamManager(_internalInterface, context);
- } else {
- this.audioStreamManager = null;
+ void onProxyClosed(SdlDisconnectedReason reason) {
+ Log.i(TAG,"Proxy is closed.");
+ if(managerListener != null){
+ managerListener.onDestroy();
}
- // Start sub managers
- this.permissionManager.start(subManagerListener);
- this.fileManager.start(subManagerListener);
- if (lockScreenConfig.isEnabled()){
- this.lockScreenManager.start(subManagerListener);
+ if (!reason.equals(SdlDisconnectedReason.LANGUAGE_CHANGE)){
+ dispose();
}
- this.screenManager.start(subManagerListener);
}
/** Dispose SdlManager and clean its resources
@@ -226,8 +264,6 @@ public class SdlManager extends BaseSdlManager{
}
// MANAGER GETTERS
-
-
/**
* Gets the VideoStreamManager. <br>
* The VideoStreamManager returned will only be not null if the registered app type is
@@ -255,7 +291,6 @@ public class SdlManager extends BaseSdlManager{
return audioStreamManager;
}
-
/**
* Gets the LockScreenManager. <br>
* <strong>Note: LockScreenManager should be used only after SdlManager.start() CompletionListener callback is completed successfully.</strong>
@@ -269,59 +304,9 @@ public class SdlManager extends BaseSdlManager{
return lockScreenManager;
}
-
-
// PROTECTED GETTERS
-
protected LockScreenConfig getLockScreenConfig() { return lockScreenConfig; }
-
-
- // LIFECYCLE / OTHER
-
- // STARTUP
-
- /**
- * Starts up a SdlManager, and calls provided callback called once all BaseSubManagers are done setting up
- */
- @Override
- public void start(){
- if (lifecycleManager == null) {
- if(transport!= null && transport.getTransportType() == TransportType.MULTIPLEX){
- //Do the thing
- MultiplexTransportConfig multiplexTransportConfig = (MultiplexTransportConfig)(transport);
- final MultiplexTransportConfig.TransportListener devListener = multiplexTransportConfig.getTransportListener();
- multiplexTransportConfig.setTransportListener(new MultiplexTransportConfig.TransportListener() {
- @Override
- public void onTransportEvent(List<TransportRecord> connectedTransports, boolean audioStreamTransportAvail, boolean videoStreamTransportAvail) {
-
- //Pass to submanagers that need it
- if(videoStreamManager != null){
- videoStreamManager.handleTransportUpdated(connectedTransports, audioStreamTransportAvail, videoStreamTransportAvail);
- }
-
- if(audioStreamManager != null){
- audioStreamManager.handleTransportUpdated(connectedTransports, audioStreamTransportAvail, videoStreamTransportAvail);
- }
- //If the developer supplied a listener to start, it is time to call that
- if(devListener != null){
- devListener.onTransportEvent(connectedTransports,audioStreamTransportAvail,videoStreamTransportAvail);
- }
- }
- });
-
- //If the requires audio support has not been set, it should be set to true if the
- //app is a media app, and false otherwise
- if(multiplexTransportConfig.requiresAudioSupport() == null){
- multiplexTransportConfig.setRequiresAudioSupport(isMediaApp);
- }
- }
-
- super.start();
- }
- }
-
-
// BUILDER
public static class Builder extends BaseSdlManager.Builder{
/**
@@ -358,7 +343,6 @@ public class SdlManager extends BaseSdlManager{
return this;
}
-
/**
* Sets the Context
* @param context
@@ -368,7 +352,6 @@ public class SdlManager extends BaseSdlManager{
return this;
}
-
/**
* Build SdlManager ang get it ready to be started
* <strong>Note: new instance of SdlManager should be created on every connection. SdlManager cannot be reused after getting disposed.</strong>
diff --git a/android/sdl_android/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java b/android/sdl_android/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
index 71f3adc8f..dca8d0253 100644
--- a/android/sdl_android/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
+++ b/android/sdl_android/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
@@ -36,14 +36,11 @@ import android.support.annotation.RestrictTo;
import com.smartdevicelink.SdlConnection.SdlSession;
import com.smartdevicelink.SdlConnection.SdlSession2;
-import com.smartdevicelink.proxy.SystemCapabilityManager;
import com.smartdevicelink.transport.BaseTransportConfig;
import com.smartdevicelink.transport.MultiplexTransportConfig;
import com.smartdevicelink.transport.TCPTransportConfig;
import com.smartdevicelink.transport.enums.TransportType;
-import java.util.HashMap;
-
/**
* The lifecycle manager creates a central point for all SDL session logic to converge. It should only be used by
* the library itself. Usage outside the library is not permitted and will not be protected for in the future.
@@ -52,17 +49,7 @@ import java.util.HashMap;
@RestrictTo(RestrictTo.Scope.LIBRARY)
public class LifecycleManager extends BaseLifecycleManager {
public LifecycleManager(AppConfig appConfig, BaseTransportConfig config, LifecycleListener listener){
-
- this.lifecycleListener = listener;
-
- this.rpcListeners = new HashMap<>();
- this.rpcResponseListeners = new HashMap<>();
- this.rpcNotificationListeners = new HashMap<>();
- this.rpcRequestListeners = new HashMap<>();
-
- this.appConfig = appConfig;
- this.minimumProtocolVersion = appConfig.getMinimumProtocolVersion();
- this.minimumRPCVersion = appConfig.getMinimumRPCVersion();
+ super(appConfig, config, listener);
if (config != null && config.getTransportType().equals(TransportType.MULTIPLEX)) {
this.session = new SdlSession2(sdlConnectionListener, (MultiplexTransportConfig) config);
@@ -71,7 +58,5 @@ public class LifecycleManager extends BaseLifecycleManager {
}else {
this.session = SdlSession.createSession((byte)getProtocolVersion().getMajor(),sdlConnectionListener, config);
}
-
- this.systemCapabilityManager = new SystemCapabilityManager(internalInterface);
}
}
diff --git a/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java b/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
index cc5494ff9..c09c0560c 100644
--- a/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
+++ b/base/src/main/java/com/smartdevicelink/managers/BaseSdlManager.java
@@ -110,7 +110,6 @@ abstract class BaseSdlManager {
FileManager fileManager;
ScreenManager screenManager;
-
// INTERNAL INTERFACE
/**
* This is from the LifeCycleManager directly. In the future if there is a reason to be a man in the middle
@@ -118,7 +117,6 @@ abstract class BaseSdlManager {
*/
ISdl _internalInterface;
-
// Initialize with anonymous lifecycleListener
final LifecycleManager.LifecycleListener lifecycleListener = new LifecycleManager.LifecycleListener() {
boolean initStarted = false;
@@ -149,7 +147,6 @@ abstract class BaseSdlManager {
BaseSdlManager.this.onProxyClosed(reason);
}
-
@Override
public void onError(LifecycleManager lifeCycleManager, String info, Exception e) {
@@ -167,30 +164,12 @@ abstract class BaseSdlManager {
}
};
- // PROTECTED GETTERS
- protected String getAppName() { return appName; }
-
- protected String getAppId() { return appId; }
-
- protected String getShortAppName() { return shortAppName; }
-
- protected Version getMinimumProtocolVersion() { return minimumProtocolVersion; }
-
- protected Version getMinimumRPCVersion() { return minimumRPCVersion; }
-
- protected Language getHmiLanguage() { return hmiLanguage; }
-
- protected TemplateColorScheme getDayColorScheme() { return dayColorScheme; }
-
- protected TemplateColorScheme getNightColorScheme() { return nightColorScheme; }
-
- protected Vector<AppHMIType> getAppTypes() { return hmiTypes; }
-
- protected Vector<String> getVrSynonyms() { return vrSynonyms; }
-
- protected Vector<TTSChunk> getTtsChunks() { return ttsChunks; }
-
- protected BaseTransportConfig getTransport() { return transport; }
+ // ABSTRACT METHODS
+ abstract void retryChangeRegistration();
+ abstract void onProxyClosed(SdlDisconnectedReason reason);
+ abstract void checkState();
+ abstract void initialize();
+ public abstract void dispose();
protected void checkLifecycleConfiguration() {
final Language actualLanguage = lifecycleManager.getRegisterAppInterfaceResponse().getLanguage();
@@ -321,14 +300,6 @@ abstract class BaseSdlManager {
}
}
- abstract void retryChangeRegistration();
- abstract void onProxyClosed(SdlDisconnectedReason reason);
- abstract void checkState();
- abstract void initialize();
- public abstract void dispose();
-
-
-
/**
* Starts up a SdlManager, and calls provided callback called once all BaseSubManagers are done setting up
*/
@@ -362,7 +333,6 @@ abstract class BaseSdlManager {
lifecycleManager.start();
}
-
void onReady(){
// Set the app icon
if (BaseSdlManager.this.appIcon != null && BaseSdlManager.this.appIcon.getName() != null) {
@@ -383,11 +353,32 @@ abstract class BaseSdlManager {
}
}
+ // PROTECTED GETTERS
+ protected String getAppName() { return appName; }
+ protected String getAppId() { return appId; }
+ protected String getShortAppName() { return shortAppName; }
+ protected Version getMinimumProtocolVersion() { return minimumProtocolVersion; }
+ protected Version getMinimumRPCVersion() { return minimumRPCVersion; }
+ protected Language getHmiLanguage() { return hmiLanguage; }
+
+ protected TemplateColorScheme getDayColorScheme() { return dayColorScheme; }
+
+ protected TemplateColorScheme getNightColorScheme() { return nightColorScheme; }
+
+ protected Vector<AppHMIType> getAppTypes() { return hmiTypes; }
+
+ protected Vector<String> getVrSynonyms() { return vrSynonyms; }
+
+ protected Vector<TTSChunk> getTtsChunks() { return ttsChunks; }
+
+ protected BaseTransportConfig getTransport() { return transport; }
+
+ protected FileManagerConfig getFileManagerConfig() { return fileManagerConfig; }
// MANAGER GETTERS
/**
@@ -464,10 +455,6 @@ abstract class BaseSdlManager {
return null;
}
- // PROTECTED GETTERS
-
- protected FileManagerConfig getFileManagerConfig() { return fileManagerConfig; }
-
/**
* Retrieves the auth token, if any, that was attached to the StartServiceACK for the RPC
* service from the module. For example, this should be used to login to a user account.
@@ -499,7 +486,6 @@ abstract class BaseSdlManager {
* @param listener listener for updates and completions
*/
public void sendSequentialRPCs(final List<? extends RPCMessage> rpcs, final OnMultipleRequestListener listener){
-
List<RPCRequest> rpcRequestList = new ArrayList<>();
for (int i = 0; i < rpcs.size(); i++) {
if (rpcs.get(i) instanceof RPCRequest){
@@ -524,7 +510,6 @@ abstract class BaseSdlManager {
* @param listener listener for updates and completions
*/
public void sendRPCs(List<? extends RPCMessage> rpcs, final OnMultipleRequestListener listener) {
-
List<RPCRequest> rpcRequestList = new ArrayList<>();
for (int i = 0; i < rpcs.size(); i++) {
if (rpcs.get(i) instanceof RPCRequest){
@@ -569,10 +554,6 @@ abstract class BaseSdlManager {
_internalInterface.removeOnRPCRequestListener(requestId, listener);
}
- // LIFECYCLE / OTHER
-
-
-
// BUILDER
public static class Builder {
SdlManager sdlManager;
@@ -677,7 +658,6 @@ abstract class BaseSdlManager {
* MEDIA HMIType should be included.
*/
public Builder setAppTypes(final Vector<AppHMIType> hmiTypes){
-
sdlManager.hmiTypes = hmiTypes;
if (hmiTypes != null) {
@@ -770,7 +750,6 @@ abstract class BaseSdlManager {
}
public SdlManager build() {
-
if (sdlManager.appName == null) {
throw new IllegalArgumentException("You must specify an app name by calling setAppName");
}
@@ -820,5 +799,4 @@ abstract class BaseSdlManager {
lifecycleManager.startRPCEncryption();
}
}
-
}
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 241670bbe..3f7f6c73e 100644
--- a/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java
+++ b/base/src/main/java/com/smartdevicelink/managers/lifecycle/BaseLifecycleManager.java
@@ -104,49 +104,51 @@ import java.util.concurrent.CopyOnWriteArrayList;
abstract class BaseLifecycleManager {
private static final String TAG = "Lifecycle Manager";
-
public static final Version MAX_SUPPORTED_RPC_VERSION = new Version(6, 0, 0);
// Protected Correlation IDs
- private final int REGISTER_APP_INTERFACE_CORRELATION_ID = 65529,
+ private final int REGISTER_APP_INTERFACE_CORRELATION_ID = 65529,
UNREGISTER_APP_INTERFACE_CORRELATION_ID = 65530;
-
// Sdl Synchronization Objects
private static final Object RPC_LISTENER_LOCK = new Object(),
ON_UPDATE_LISTENER_LOCK = new Object(),
ON_REQUEST_LISTENER_LOCK = new Object(),
ON_NOTIFICATION_LISTENER_LOCK = new Object();
-
-
SdlSession session;
AppConfig appConfig;
-
- //protected Version protocolVersion = new Version(1,0,0);
- protected Version rpcSpecVersion = MAX_SUPPORTED_RPC_VERSION;
-
-
+ Version rpcSpecVersion = MAX_SUPPORTED_RPC_VERSION;
HashMap<Integer, CopyOnWriteArrayList<OnRPCListener>> rpcListeners;
HashMap<Integer, OnRPCResponseListener> rpcResponseListeners;
HashMap<Integer, CopyOnWriteArrayList<OnRPCNotificationListener>> rpcNotificationListeners;
HashMap<Integer, CopyOnWriteArrayList<OnRPCRequestListener>> rpcRequestListeners;
-
SystemCapabilityManager systemCapabilityManager;
private EncryptionLifecycleManager encryptionLifecycleManager;
-
- protected RegisterAppInterfaceResponse raiResponse = null;
-
+ RegisterAppInterfaceResponse raiResponse = null;
private OnHMIStatus currentHMIStatus;
- protected boolean firstTimeFull = true;
-
+ boolean firstTimeFull = true;
LifecycleListener lifecycleListener;
-
private List<Class<? extends SdlSecurityBase>> _secList = null;
private String authToken;
Version minimumProtocolVersion;
Version minimumRPCVersion;
+ BaseLifecycleManager(AppConfig appConfig, BaseTransportConfig config, LifecycleListener listener){
+ this.lifecycleListener = listener;
+
+ this.rpcListeners = new HashMap<>();
+ this.rpcResponseListeners = new HashMap<>();
+ this.rpcNotificationListeners = new HashMap<>();
+ this.rpcRequestListeners = new HashMap<>();
+
+ this.appConfig = appConfig;
+ this.minimumProtocolVersion = appConfig.getMinimumProtocolVersion();
+ this.minimumRPCVersion = appConfig.getMinimumRPCVersion();
+
+ this.systemCapabilityManager = new SystemCapabilityManager(internalInterface);
+ }
+
public void start(){
try {
setupInternalRpcListeners();
@@ -154,7 +156,6 @@ abstract class BaseLifecycleManager {
} catch (SdlException e) {
e.printStackTrace();
}
-
}
/**
@@ -322,7 +323,6 @@ abstract class BaseLifecycleManager {
return this.raiResponse;
}
-
/**
* Get the current OnHMIStatus
* @return OnHMIStatus object represents the current OnHMIStatus
@@ -353,7 +353,6 @@ abstract class BaseLifecycleManager {
return null;
}
-
/* *******************************************************************************************************
********************************** INTERNAL - RPC LISTENERS !! START !! *********************************
*********************************************************************************************************/
@@ -367,7 +366,6 @@ abstract class BaseLifecycleManager {
addRpcListener(FunctionID.UNREGISTER_APP_INTERFACE, rpcListener);
}
-
private OnRPCListener rpcListener = new OnRPCListener() {
@Override
public void onReceived(RPCMessage message) {
@@ -723,8 +721,6 @@ abstract class BaseLifecycleManager {
**************************************** RPC LISTENERS !! END !! ****************************************
*********************************************************************************************************/
-
-
private void sendRPCMessagePrivate(RPCMessage message){
try {
//FIXME this is temporary until the next major release of the library where OK is removed
@@ -757,7 +753,6 @@ abstract class BaseLifecycleManager {
}
}
-
message.format(rpcSpecVersion,true);
byte[] msgBytes = JsonRPCMarshaller.marshall(message, (byte)getProtocolVersion().getMajor());
@@ -833,8 +828,6 @@ abstract class BaseLifecycleManager {
}
}
-
-
/* *******************************************************************************************************
*************************************** ISdlConnectionListener START ************************************
*********************************************************************************************************/
@@ -1354,7 +1347,6 @@ abstract class BaseLifecycleManager {
}
}
-
/**
* Temporary method to bridge the new PLAY_PAUSE and OKAY button functionality with the old
* OK button name. This should be removed during the next major release
diff --git a/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java b/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
index 53843c1bd..a5e36b8b2 100644
--- a/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
+++ b/javaSE/src/main/java/com/smartdevicelink/managers/SdlManager.java
@@ -42,7 +42,6 @@ import com.smartdevicelink.proxy.rpc.enums.SdlDisconnectedReason;
import com.smartdevicelink.transport.enums.TransportType;
import com.smartdevicelink.util.DebugTool;
-
/**
* <strong>SDLManager</strong> <br>
*
@@ -57,16 +56,43 @@ import com.smartdevicelink.util.DebugTool;
*/
public class SdlManager extends BaseSdlManager {
+ /**
+ * Starts up a SdlManager, and calls provided callback called once all BaseSubManagers are done setting up
+ */
+ @SuppressWarnings("unchecked")
+ public void start() {
+ Runtime.getRuntime().addShutdownHook(new Thread() {
+ @Override
+ public void run() {
+ dispose();
+ }
+ });
- @Override
- void onProxyClosed(SdlDisconnectedReason reason) {
- Log.i(TAG,"Proxy is closed.");
- if(managerListener != null){
- managerListener.onDestroy(SdlManager.this);
+ Log.i(TAG, "start");
+ if (lifecycleManager == null) {
+ if (transport != null
+ && (transport.getTransportType().equals(TransportType.WEB_SOCKET_SERVER) || transport.getTransportType().equals(TransportType.CUSTOM))) {
+ super.start();
+ } else {
+ throw new RuntimeException("No transport provided");
+ }
}
}
@Override
+ protected void initialize(){
+ // Instantiate sub managers
+ this.permissionManager = new PermissionManager(_internalInterface);
+ this.fileManager = new FileManager(_internalInterface, fileManagerConfig);
+ this.screenManager = new ScreenManager(_internalInterface, this.fileManager);
+
+ // Start sub managers
+ this.permissionManager.start(subManagerListener);
+ this.fileManager.start(subManagerListener);
+ this.screenManager.start(subManagerListener);
+ }
+
+ @Override
void checkState() {
if (permissionManager != null && fileManager != null && screenManager != null ){
if (permissionManager.getState() == BaseSubManager.READY && fileManager.getState() == BaseSubManager.READY && screenManager.getState() == BaseSubManager.READY){
@@ -116,16 +142,11 @@ public class SdlManager extends BaseSdlManager {
}
@Override
- protected void initialize(){
- // Instantiate sub managers
- this.permissionManager = new PermissionManager(_internalInterface);
- this.fileManager = new FileManager(_internalInterface, fileManagerConfig);
- this.screenManager = new ScreenManager(_internalInterface, this.fileManager);
-
- // Start sub managers
- this.permissionManager.start(subManagerListener);
- this.fileManager.start(subManagerListener);
- this.screenManager.start(subManagerListener);
+ void onProxyClosed(SdlDisconnectedReason reason) {
+ Log.i(TAG,"Proxy is closed.");
+ if(managerListener != null){
+ managerListener.onDestroy(SdlManager.this);
+ }
}
@Override
@@ -154,29 +175,6 @@ public class SdlManager extends BaseSdlManager {
transitionToState(BaseSubManager.SHUTDOWN);
}
- /**
- * Starts up a SdlManager, and calls provided callback called once all BaseSubManagers are done setting up
- */
- @SuppressWarnings("unchecked")
- public void start() {
- Runtime.getRuntime().addShutdownHook(new Thread() {
- @Override
- public void run() {
- dispose();
- }
- });
-
- Log.i(TAG, "start");
- if (lifecycleManager == null) {
- if (transport != null
- && (transport.getTransportType().equals(TransportType.WEB_SOCKET_SERVER) || transport.getTransportType().equals(TransportType.CUSTOM))) {
- super.start();
- } else {
- throw new RuntimeException("No transport provided");
- }
- }
- }
-
// BUILDER
public static class Builder extends BaseSdlManager.Builder {
/**
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 0025f3368..e3c45516a 100644
--- a/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
+++ b/javaSE/src/main/java/com/smartdevicelink/managers/lifecycle/LifecycleManager.java
@@ -35,11 +35,8 @@ package com.smartdevicelink.managers.lifecycle;
import android.support.annotation.RestrictTo;
import com.smartdevicelink.SdlConnection.SdlSession;
-import com.smartdevicelink.proxy.SystemCapabilityManager;
import com.smartdevicelink.transport.BaseTransportConfig;
-import java.util.HashMap;
-
/**
* The lifecycle manager creates a central point for all SDL session logic to converge. It should only be used by
* the library itself. Usage outside the library is not permitted and will not be protected for in the future.
@@ -47,19 +44,7 @@ import java.util.HashMap;
@RestrictTo(RestrictTo.Scope.LIBRARY)
public class LifecycleManager extends BaseLifecycleManager {
public LifecycleManager(AppConfig appConfig, BaseTransportConfig config, LifecycleListener listener){
-
- this.lifecycleListener = listener;
-
- this.rpcListeners = new HashMap<>();
- this.rpcResponseListeners = new HashMap<>();
- this.rpcNotificationListeners = new HashMap<>();
- this.rpcRequestListeners = new HashMap<>();
-
- this.appConfig = appConfig;
- this.minimumProtocolVersion = appConfig.getMinimumProtocolVersion();
- this.minimumRPCVersion = appConfig.getMinimumRPCVersion();
+ super(appConfig, config, listener);
this.session = new SdlSession(sdlConnectionListener, config);
-
- this.systemCapabilityManager = new SystemCapabilityManager(internalInterface);
}
}