Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Streaming Media Manager Updates #514

Merged
merged 77 commits into from
Aug 17, 2017

Conversation

asm09fsu
Copy link
Contributor

@asm09fsu asm09fsu commented Jan 28, 2017

Fixes #583

This PR is ready for review.

Risk

This PR makes major API changes.

Testing Plan

This will be using Unit Tests to test switching from different states.

Summary

This PR is based off the proposal here.

Changelog

Enchancements
  • Completely rewritten SDLStreamingMediaManager to handle all application, HMI, and streaming states.

Tasks Remaining:

  • Add Unit tests
  • Remove background screen string
  • Add logging

…media_manager

* origin/develop: (62 commits)
  Fix an example app error
  Fix merge errors
  Make properties nonatomic
  Updated implementation files for SDLDateTime & SDLGetWaypoints to reflect nullability changes.
  Fix DateTime nullability
  Fix GetWayPoints nullability
  Removed SDLTTSChunkFactory from project.
  Removed SDLRPCRequestFactory from project.
  Minor updates to a number of classes’ nullability annotations
  Removed dispose and destroy methods.
  added nullability annotations to category.
  Updated response to remove nullability for nonnull properties.
  Remove a test focus
  Fixed test cases
  Fix podspec not updated with latest version number
  Update for v4.5.0
  Follow style guide for boolean check
  Added nullability annotations for transport classes.
  Added nullability annotations to Utility classes.
  Added nullability annotation to SDLGlobals, and changed singleton name to fix issue with not being usable in swift.
  ...

# Conflicts:
#	SmartDeviceLink/SDLProxy.h
#	SmartDeviceLink/SDLProxy.m
#	SmartDeviceLink/SDLStreamingMediaManager.m
…ld off on possibly informing the developer that the streaming is ready before UIApplicationState of Active is set.
…eam (this becomes an issue if we are going from background to foreground, where video would try to start twice).
…media_manager

* origin/develop:
  Removed unused property in unit test.
  Fixed renamed variable in unit tests.
  Update for v4.5.1
  Added a ParameterAssert instead of throwing an exception, along with returning a handler with an error.
  Updated to throw an exception instead of returning an error for nil requests being sent.
  Adding a spec to test sending nil request.
  Added check for nil request in sending.
  Fixed issue around not calculating an SDLPutFile's currentOffset correctly. Updated unit tests to cover all SDLPutFiles, not just the first.
  Added in missing implementations of dictionary categories.
  Moved the import from SDLRPCStruct to implementation of all classes to remove build warning of redefinition
  Removed nonexistent files from project
  Added nullability annotations.
  Fixed issue using incorrect name for search address.
  Migrated to using a category instead of adding the classes to the subclass of SDLRPCStruct.
  Updated missing parameters.
  Updated setter/getter for all rpcs and structs to use convenience methods.
…media_manager

* origin/develop:
  Fixed issue with incorrectly parsing SDLRPCResponses.
@asm09fsu asm09fsu added enhancement proposal Accepted SDL Evolution Proposal labels Jan 28, 2017
@asm09fsu asm09fsu added this to the 5.0.0 milestone Jan 28, 2017
@codecov-io
Copy link

codecov-io commented Jan 30, 2017

Codecov Report

Merging #514 into develop will increase coverage by 1.48%.
The diff coverage is 40%.

@@             Coverage Diff             @@
##           develop     #514      +/-   ##
===========================================
+ Coverage    54.98%   56.47%   +1.48%     
===========================================
  Files          268      272       +4     
  Lines         5832     6010     +178     
  Branches       481      496      +15     
===========================================
+ Hits          3207     3394     +187     
+ Misses        2472     2441      -31     
- Partials       153      175      +22

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 14adcab...8b2dc21. Read the comment docs.

…media_manager

* origin/develop:
  Set compressionSession to null so we do not accidentally over-release it.
  Added check for hmi equality and old send delegate if not equal.
  Updated FrameData cases.
  Set swift-version for cocoapods until we can upgrade tests
  Update to v4.5.2
  Run clang-format
  Moved point at which we set the logging to be before we initialize anything within the lifecycle manager.
  Update logger to initialize on lifecycle initialization, not start
  Fixed issue with SDLDebugTool not keeping state with proxy recycle.
  Updated protocol enums to match spec.

# Conflicts:
#	SmartDeviceLink/SDLStreamingMediaManager.m
…media_manager

* origin/develop:
  Fixed issue from merging in master branch.
…media_manager

* origin/develop:
  Fixed issue with calling streaming media manager if proxy is started, but not connected.

# Conflicts:
#	SmartDeviceLink/SDLProxy.m
joeljfischer and others added 13 commits August 3, 2017 15:47
# Conflicts:
#	SmartDeviceLink-iOS.xcodeproj/project.pbxproj
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
Signed-off-by: NicoleYarroch <nicole@livio.io>
…ger_podspec

Required files added to .podspec
@joeljfischer joeljfischer self-assigned this Aug 15, 2017
@@ -104,6 +107,10 @@ - (instancetype)initWithConfiguration:(SDLConfiguration *)configuration delegate
_fileManager = [[SDLFileManager alloc] initWithConnectionManager:self];
_permissionManager = [[SDLPermissionManager alloc] init];
_lockScreenManager = [[SDLLockScreenManager alloc] initWithConfiguration:_configuration.lockScreenConfig notificationDispatcher:_notificationDispatcher presenter:[[SDLLockScreenPresenter alloc] init]];

if ([configuration.lifecycleConfig.appType isEqualToEnum:SDLAppHMITypeNavigation]) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should include the projection type as well

@joeljfischer joeljfischer merged commit c860335 into release/5.0.0 Aug 17, 2017
@joeljfischer joeljfischer deleted the feature/streaming_media_manager branch August 17, 2017 17:06
@asm09fsu
Copy link
Contributor Author

🙏🏻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal Accepted SDL Evolution Proposal
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants