Loading packages/MediaComponents/src/com/android/media/MediaLibraryService2Impl.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -24,7 +24,7 @@ import android.media.MediaLibraryService2.MediaLibrarySession; import android.media.MediaLibraryService2.MediaLibrarySession.Builder; import android.media.MediaLibraryService2.MediaLibrarySession.Builder; import android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback; import android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase; import android.media.MediaPlaylistController; import android.media.MediaPlaylistAgent; import android.media.MediaSession2; import android.media.MediaSession2; import android.media.MediaSession2.ControllerInfo; import android.media.MediaSession2.ControllerInfo; import android.media.MediaSessionService2; import android.media.MediaSessionService2; Loading Loading @@ -68,7 +68,7 @@ public class MediaLibraryService2Impl extends MediaSessionService2Impl implement public static class MediaLibrarySessionImpl extends MediaSession2Impl public static class MediaLibrarySessionImpl extends MediaSession2Impl implements MediaLibrarySessionProvider { implements MediaLibrarySessionProvider { public MediaLibrarySessionImpl(Context context, public MediaLibrarySessionImpl(Context context, MediaPlayerBase player, String id, MediaPlaylistController mplc, MediaPlayerBase player, String id, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider, VolumeProvider2 volumeProvider, PendingIntent sessionActivity, Executor callbackExecutor, PendingIntent sessionActivity, Executor callbackExecutor, MediaLibrarySessionCallback callback) { MediaLibrarySessionCallback callback) { Loading packages/MediaComponents/src/com/android/media/MediaSession2Impl.java +6 −8 Original line number Original line Diff line number Diff line Loading @@ -21,14 +21,12 @@ import static android.media.SessionToken2.TYPE_LIBRARY_SERVICE; import static android.media.SessionToken2.TYPE_SESSION; import static android.media.SessionToken2.TYPE_SESSION; import static android.media.SessionToken2.TYPE_SESSION_SERVICE; import static android.media.SessionToken2.TYPE_SESSION_SERVICE; import android.Manifest.permission; import android.annotation.NonNull; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.Nullable; import android.app.PendingIntent; import android.app.PendingIntent; import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo; import android.media.AudioAttributes; import android.media.AudioAttributes; import android.media.AudioManager; import android.media.AudioManager; Loading @@ -39,7 +37,7 @@ import android.media.MediaLibraryService2; import android.media.MediaMetadata2; import android.media.MediaMetadata2; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase.PlayerEventCallback; import android.media.MediaPlayerBase.PlayerEventCallback; import android.media.MediaPlaylistController; import android.media.MediaPlaylistAgent; import android.media.MediaSession2; import android.media.MediaSession2; import android.media.MediaSession2.Builder; import android.media.MediaSession2.Builder; import android.media.MediaSession2.Command; import android.media.MediaSession2.Command; Loading Loading @@ -107,7 +105,7 @@ public class MediaSession2Impl implements MediaSession2Provider { @GuardedBy("mLock") @GuardedBy("mLock") private MediaPlayerBase mPlayer; private MediaPlayerBase mPlayer; @GuardedBy("mLock") @GuardedBy("mLock") private MediaPlaylistController mMplc; private MediaPlaylistAgent mMplc; @GuardedBy("mLock") @GuardedBy("mLock") private VolumeProvider2 mVolumeProvider; private VolumeProvider2 mVolumeProvider; @GuardedBy("mLock") @GuardedBy("mLock") Loading @@ -127,7 +125,7 @@ public class MediaSession2Impl implements MediaSession2Provider { * @param callback * @param callback */ */ public MediaSession2Impl(Context context, MediaPlayerBase player, String id, public MediaSession2Impl(Context context, MediaPlayerBase player, String id, MediaPlaylistController mplc, VolumeProvider2 volumeProvider, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider, PendingIntent sessionActivity, PendingIntent sessionActivity, Executor callbackExecutor, SessionCallback callback) { Executor callbackExecutor, SessionCallback callback) { // TODO(jaewan): Keep other params. // TODO(jaewan): Keep other params. Loading Loading @@ -206,7 +204,7 @@ public class MediaSession2Impl implements MediaSession2Provider { } } @Override @Override public void updatePlayer_impl(MediaPlayerBase player, MediaPlaylistController mplc, public void updatePlayer_impl(MediaPlayerBase player, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider) throws IllegalArgumentException { VolumeProvider2 volumeProvider) throws IllegalArgumentException { ensureCallingThread(); ensureCallingThread(); if (player == null) { if (player == null) { Loading Loading @@ -1271,7 +1269,7 @@ public class MediaSession2Impl implements MediaSession2Provider { String mId; String mId; Executor mCallbackExecutor; Executor mCallbackExecutor; C mCallback; C mCallback; MediaPlaylistController mMplc; MediaPlaylistAgent mMplc; VolumeProvider2 mVolumeProvider; VolumeProvider2 mVolumeProvider; PendingIntent mSessionActivity; PendingIntent mSessionActivity; Loading Loading @@ -1300,7 +1298,7 @@ public class MediaSession2Impl implements MediaSession2Provider { } } @Override @Override public void setPlaylistController_impl(MediaPlaylistController mplc) { public void setPlaylistController_impl(MediaPlaylistAgent mplc) { if (mplc == null) { if (mplc == null) { throw new IllegalArgumentException("mplc shouldn't be null"); throw new IllegalArgumentException("mplc shouldn't be null"); } } Loading packages/MediaComponents/src/com/android/media/MediaSession2Stub.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -435,10 +435,10 @@ public class MediaSession2Stub extends IMediaSession2.Stub { session.getInstance().stop(); session.getInstance().stop(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_PREV_ITEM: case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_PREV_ITEM: session.getInstance().skipToPrevious(); session.getInstance().skipToPreviousItem(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_NEXT_ITEM: case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_NEXT_ITEM: session.getInstance().skipToNext(); session.getInstance().skipToNextItem(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_PREPARE: case MediaSession2.COMMAND_CODE_PLAYBACK_PREPARE: session.getInstance().prepare(); session.getInstance().prepare(); Loading packages/MediaComponents/test/src/android/media/MediaController2Test.java +7 −7 Original line number Original line Diff line number Diff line Loading @@ -118,8 +118,8 @@ public class MediaController2Test extends MediaSession2TestBase { @Ignore @Ignore @Test @Test public void testSkipToPrevious() throws InterruptedException { public void testSkipToPreviousItem() throws InterruptedException { mController.skipToPrevious(); mController.skipToPreviousItem(); try { try { assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); } catch (InterruptedException e) { } catch (InterruptedException e) { Loading @@ -129,8 +129,8 @@ public class MediaController2Test extends MediaSession2TestBase { } } @Test @Test public void testSkipToNext() throws InterruptedException { public void testSkipToNextItem() throws InterruptedException { mController.skipToNext(); mController.skipToNextItem(); try { try { assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); } catch (InterruptedException e) { } catch (InterruptedException e) { Loading Loading @@ -211,7 +211,7 @@ public class MediaController2Test extends MediaSession2TestBase { } catch (InterruptedException e) { } catch (InterruptedException e) { fail(e.getMessage()); fail(e.getMessage()); } } assertTrue(mPlayer.mSetCurrentPlaylistItemCalled); assertTrue(mPlayer.mSetCurrentPlaylistCalled); assertEquals(itemIndex, mPlayer.mCurrentItem); assertEquals(itemIndex, mPlayer.mCurrentItem); } } */ */ Loading Loading @@ -622,9 +622,9 @@ public class MediaController2Test extends MediaSession2TestBase { player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.stop(); controller.stop(); player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.skipToNext(); controller.skipToNextItem(); player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.skipToPrevious(); controller.skipToPreviousItem(); } } // This may hang if deadlock happens. // This may hang if deadlock happens. latch.countDown(); latch.countDown(); Loading packages/MediaComponents/test/src/android/media/MediaSession2Test.java +5 −5 Original line number Original line Diff line number Diff line Loading @@ -189,18 +189,18 @@ public class MediaSession2Test extends MediaSession2TestBase { } } @Test @Test public void testSkipToNext() throws Exception { public void testSkipToNextItem() throws Exception { sHandler.postAndSync(() -> { sHandler.postAndSync(() -> { mSession.skipToNext(); mSession.skipToNextItem(); assertTrue(mPlayer.mSkipToNextCalled); assertTrue(mPlayer.mSkipToNextCalled); }); }); } } @Ignore @Ignore @Test @Test public void testSkipToPrevious() throws Exception { public void testSkipToPreviousItem() throws Exception { sHandler.postAndSync(() -> { sHandler.postAndSync(() -> { mSession.skipToPrevious(); mSession.skipToPreviousItem(); assertTrue(mPlayer.mSkipToPreviousCalled); assertTrue(mPlayer.mSkipToPreviousCalled); }); }); } } Loading Loading @@ -356,7 +356,7 @@ public class MediaSession2Test extends MediaSession2TestBase { assertEquals(1, callback.commands.size()); assertEquals(1, callback.commands.size()); assertEquals(MediaSession2.COMMAND_CODE_PLAYBACK_PAUSE, assertEquals(MediaSession2.COMMAND_CODE_PLAYBACK_PAUSE, (long) callback.commands.get(0).getCommandCode()); (long) callback.commands.get(0).getCommandCode()); controller.skipToNext(); controller.skipToNextItem(); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mSkipToNextCalled); assertTrue(mPlayer.mSkipToNextCalled); assertFalse(mPlayer.mPauseCalled); assertFalse(mPlayer.mPauseCalled); Loading Loading
packages/MediaComponents/src/com/android/media/MediaLibraryService2Impl.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -24,7 +24,7 @@ import android.media.MediaLibraryService2.MediaLibrarySession; import android.media.MediaLibraryService2.MediaLibrarySession.Builder; import android.media.MediaLibraryService2.MediaLibrarySession.Builder; import android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback; import android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase; import android.media.MediaPlaylistController; import android.media.MediaPlaylistAgent; import android.media.MediaSession2; import android.media.MediaSession2; import android.media.MediaSession2.ControllerInfo; import android.media.MediaSession2.ControllerInfo; import android.media.MediaSessionService2; import android.media.MediaSessionService2; Loading Loading @@ -68,7 +68,7 @@ public class MediaLibraryService2Impl extends MediaSessionService2Impl implement public static class MediaLibrarySessionImpl extends MediaSession2Impl public static class MediaLibrarySessionImpl extends MediaSession2Impl implements MediaLibrarySessionProvider { implements MediaLibrarySessionProvider { public MediaLibrarySessionImpl(Context context, public MediaLibrarySessionImpl(Context context, MediaPlayerBase player, String id, MediaPlaylistController mplc, MediaPlayerBase player, String id, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider, VolumeProvider2 volumeProvider, PendingIntent sessionActivity, Executor callbackExecutor, PendingIntent sessionActivity, Executor callbackExecutor, MediaLibrarySessionCallback callback) { MediaLibrarySessionCallback callback) { Loading
packages/MediaComponents/src/com/android/media/MediaSession2Impl.java +6 −8 Original line number Original line Diff line number Diff line Loading @@ -21,14 +21,12 @@ import static android.media.SessionToken2.TYPE_LIBRARY_SERVICE; import static android.media.SessionToken2.TYPE_SESSION; import static android.media.SessionToken2.TYPE_SESSION; import static android.media.SessionToken2.TYPE_SESSION_SERVICE; import static android.media.SessionToken2.TYPE_SESSION_SERVICE; import android.Manifest.permission; import android.annotation.NonNull; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.Nullable; import android.app.PendingIntent; import android.app.PendingIntent; import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo; import android.media.AudioAttributes; import android.media.AudioAttributes; import android.media.AudioManager; import android.media.AudioManager; Loading @@ -39,7 +37,7 @@ import android.media.MediaLibraryService2; import android.media.MediaMetadata2; import android.media.MediaMetadata2; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase; import android.media.MediaPlayerBase.PlayerEventCallback; import android.media.MediaPlayerBase.PlayerEventCallback; import android.media.MediaPlaylistController; import android.media.MediaPlaylistAgent; import android.media.MediaSession2; import android.media.MediaSession2; import android.media.MediaSession2.Builder; import android.media.MediaSession2.Builder; import android.media.MediaSession2.Command; import android.media.MediaSession2.Command; Loading Loading @@ -107,7 +105,7 @@ public class MediaSession2Impl implements MediaSession2Provider { @GuardedBy("mLock") @GuardedBy("mLock") private MediaPlayerBase mPlayer; private MediaPlayerBase mPlayer; @GuardedBy("mLock") @GuardedBy("mLock") private MediaPlaylistController mMplc; private MediaPlaylistAgent mMplc; @GuardedBy("mLock") @GuardedBy("mLock") private VolumeProvider2 mVolumeProvider; private VolumeProvider2 mVolumeProvider; @GuardedBy("mLock") @GuardedBy("mLock") Loading @@ -127,7 +125,7 @@ public class MediaSession2Impl implements MediaSession2Provider { * @param callback * @param callback */ */ public MediaSession2Impl(Context context, MediaPlayerBase player, String id, public MediaSession2Impl(Context context, MediaPlayerBase player, String id, MediaPlaylistController mplc, VolumeProvider2 volumeProvider, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider, PendingIntent sessionActivity, PendingIntent sessionActivity, Executor callbackExecutor, SessionCallback callback) { Executor callbackExecutor, SessionCallback callback) { // TODO(jaewan): Keep other params. // TODO(jaewan): Keep other params. Loading Loading @@ -206,7 +204,7 @@ public class MediaSession2Impl implements MediaSession2Provider { } } @Override @Override public void updatePlayer_impl(MediaPlayerBase player, MediaPlaylistController mplc, public void updatePlayer_impl(MediaPlayerBase player, MediaPlaylistAgent mplc, VolumeProvider2 volumeProvider) throws IllegalArgumentException { VolumeProvider2 volumeProvider) throws IllegalArgumentException { ensureCallingThread(); ensureCallingThread(); if (player == null) { if (player == null) { Loading Loading @@ -1271,7 +1269,7 @@ public class MediaSession2Impl implements MediaSession2Provider { String mId; String mId; Executor mCallbackExecutor; Executor mCallbackExecutor; C mCallback; C mCallback; MediaPlaylistController mMplc; MediaPlaylistAgent mMplc; VolumeProvider2 mVolumeProvider; VolumeProvider2 mVolumeProvider; PendingIntent mSessionActivity; PendingIntent mSessionActivity; Loading Loading @@ -1300,7 +1298,7 @@ public class MediaSession2Impl implements MediaSession2Provider { } } @Override @Override public void setPlaylistController_impl(MediaPlaylistController mplc) { public void setPlaylistController_impl(MediaPlaylistAgent mplc) { if (mplc == null) { if (mplc == null) { throw new IllegalArgumentException("mplc shouldn't be null"); throw new IllegalArgumentException("mplc shouldn't be null"); } } Loading
packages/MediaComponents/src/com/android/media/MediaSession2Stub.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -435,10 +435,10 @@ public class MediaSession2Stub extends IMediaSession2.Stub { session.getInstance().stop(); session.getInstance().stop(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_PREV_ITEM: case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_PREV_ITEM: session.getInstance().skipToPrevious(); session.getInstance().skipToPreviousItem(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_NEXT_ITEM: case MediaSession2.COMMAND_CODE_PLAYBACK_SKIP_NEXT_ITEM: session.getInstance().skipToNext(); session.getInstance().skipToNextItem(); break; break; case MediaSession2.COMMAND_CODE_PLAYBACK_PREPARE: case MediaSession2.COMMAND_CODE_PLAYBACK_PREPARE: session.getInstance().prepare(); session.getInstance().prepare(); Loading
packages/MediaComponents/test/src/android/media/MediaController2Test.java +7 −7 Original line number Original line Diff line number Diff line Loading @@ -118,8 +118,8 @@ public class MediaController2Test extends MediaSession2TestBase { @Ignore @Ignore @Test @Test public void testSkipToPrevious() throws InterruptedException { public void testSkipToPreviousItem() throws InterruptedException { mController.skipToPrevious(); mController.skipToPreviousItem(); try { try { assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); } catch (InterruptedException e) { } catch (InterruptedException e) { Loading @@ -129,8 +129,8 @@ public class MediaController2Test extends MediaSession2TestBase { } } @Test @Test public void testSkipToNext() throws InterruptedException { public void testSkipToNextItem() throws InterruptedException { mController.skipToNext(); mController.skipToNextItem(); try { try { assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); } catch (InterruptedException e) { } catch (InterruptedException e) { Loading Loading @@ -211,7 +211,7 @@ public class MediaController2Test extends MediaSession2TestBase { } catch (InterruptedException e) { } catch (InterruptedException e) { fail(e.getMessage()); fail(e.getMessage()); } } assertTrue(mPlayer.mSetCurrentPlaylistItemCalled); assertTrue(mPlayer.mSetCurrentPlaylistCalled); assertEquals(itemIndex, mPlayer.mCurrentItem); assertEquals(itemIndex, mPlayer.mCurrentItem); } } */ */ Loading Loading @@ -622,9 +622,9 @@ public class MediaController2Test extends MediaSession2TestBase { player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.stop(); controller.stop(); player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.skipToNext(); controller.skipToNextItem(); player.notifyPlaybackState(state); player.notifyPlaybackState(state); controller.skipToPrevious(); controller.skipToPreviousItem(); } } // This may hang if deadlock happens. // This may hang if deadlock happens. latch.countDown(); latch.countDown(); Loading
packages/MediaComponents/test/src/android/media/MediaSession2Test.java +5 −5 Original line number Original line Diff line number Diff line Loading @@ -189,18 +189,18 @@ public class MediaSession2Test extends MediaSession2TestBase { } } @Test @Test public void testSkipToNext() throws Exception { public void testSkipToNextItem() throws Exception { sHandler.postAndSync(() -> { sHandler.postAndSync(() -> { mSession.skipToNext(); mSession.skipToNextItem(); assertTrue(mPlayer.mSkipToNextCalled); assertTrue(mPlayer.mSkipToNextCalled); }); }); } } @Ignore @Ignore @Test @Test public void testSkipToPrevious() throws Exception { public void testSkipToPreviousItem() throws Exception { sHandler.postAndSync(() -> { sHandler.postAndSync(() -> { mSession.skipToPrevious(); mSession.skipToPreviousItem(); assertTrue(mPlayer.mSkipToPreviousCalled); assertTrue(mPlayer.mSkipToPreviousCalled); }); }); } } Loading Loading @@ -356,7 +356,7 @@ public class MediaSession2Test extends MediaSession2TestBase { assertEquals(1, callback.commands.size()); assertEquals(1, callback.commands.size()); assertEquals(MediaSession2.COMMAND_CODE_PLAYBACK_PAUSE, assertEquals(MediaSession2.COMMAND_CODE_PLAYBACK_PAUSE, (long) callback.commands.get(0).getCommandCode()); (long) callback.commands.get(0).getCommandCode()); controller.skipToNext(); controller.skipToNextItem(); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mCountDownLatch.await(WAIT_TIME_MS, TimeUnit.MILLISECONDS)); assertTrue(mPlayer.mSkipToNextCalled); assertTrue(mPlayer.mSkipToNextCalled); assertFalse(mPlayer.mPauseCalled); assertFalse(mPlayer.mPauseCalled); Loading