diff options
author | Joel Fischer <joeljfischer@gmail.com> | 2017-08-02 15:54:36 -0400 |
---|---|---|
committer | Joel Fischer <joeljfischer@gmail.com> | 2017-08-02 15:54:36 -0400 |
commit | bbafdb5157a8d7e72e9503a6e7199efcc4e07582 (patch) | |
tree | e6afe976439a38c95c80178b2b43f8bfc7d6da6b /SmartDeviceLink/SDLConfiguration.m | |
parent | 4c8bc1a347e2bca5a7f0f987e52d957479878e05 (diff) | |
download | sdl_ios-bbafdb5157a8d7e72e9503a6e7199efcc4e07582.tar.gz |
In progress updates to how configurations are set for streaming media
Diffstat (limited to 'SmartDeviceLink/SDLConfiguration.m')
-rw-r--r-- | SmartDeviceLink/SDLConfiguration.m | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/SmartDeviceLink/SDLConfiguration.m b/SmartDeviceLink/SDLConfiguration.m index 550f68496..724ec01d8 100644 --- a/SmartDeviceLink/SDLConfiguration.m +++ b/SmartDeviceLink/SDLConfiguration.m @@ -11,6 +11,7 @@ #import "SDLLifecycleConfiguration.h" #import "SDLLockScreenConfiguration.h" #import "SDLLogConfiguration.h" +#import "SDLStreamingMediaConfiguration.h" NS_ASSUME_NONNULL_BEGIN @@ -49,6 +50,25 @@ NS_ASSUME_NONNULL_BEGIN return [[self alloc] initWithLifecycle:lifecycleConfig lockScreen:lockScreenConfig logging:logConfig]; } +- (instancetype)initWithLifecycle:(SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia:(nullable SDLStreamingMediaConfiguration *)streamingMediaConfig { + self = [super init]; + if (!self) { + return nil; + } + + _lifecycleConfig = lifecycleConfig; + _lockScreenConfig = lockScreenConfig ?: [SDLLockScreenConfiguration enabledConfiguration]; + _loggingConfig = logConfig ?: [SDLLogConfiguration defaultConfiguration]; + + if (_streamingMediaConfig != nil) { + NSAssert(!([_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeNavigation] || [_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeProjection]), @"You should only set a streaming media configuration if your app is a NAVIGATION or PROJECTION HMI type"); + _streamingMediaConfig = streamingMediaConfig; + } else { + NSAssert(([_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeNavigation] || [_lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeProjection]), @"If your app is a NAVIGATION or PROJECTION HMI type, you must set a streaming media configuration on SDLConfiguration"); + } + + return self; +} #pragma mark - NSCopying |