Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34cfe56b authored by Hyundo Moon's avatar Hyundo Moon Committed by Android (Google) Code Review
Browse files

Merge "Remove MediaSessionEngine"

parents 37d4372c 073edf0e
Loading
Loading
Loading
Loading
+599 −61

File changed.

Preview size limit exceeded, changes collapsed.

+0 −1236

File deleted.

Preview size limit exceeded, changes collapsed.

+79 −84
Original line number Original line Diff line number Diff line
@@ -49,9 +49,9 @@ public final class SessionCallbackLink implements Parcelable {
     * Constructor for stub (Callee)
     * Constructor for stub (Callee)
     * @hide
     * @hide
     */
     */
    public SessionCallbackLink(@NonNull Context context) {
    public SessionCallbackLink(@NonNull Context context, MediaSession session) {
        mContext = context;
        mContext = context;
        mISessionCallback = new CallbackStub();
        mISessionCallback = new CallbackStub(session);
    }
    }


    /**
    /**
@@ -62,15 +62,6 @@ public final class SessionCallbackLink implements Parcelable {
        mISessionCallback = ISessionCallback.Stub.asInterface(binder);
        mISessionCallback = ISessionCallback.Stub.asInterface(binder);
    }
    }


    /**
     * Set {@link MediaSessionEngine} which will be used by {@link CallbackStub}.
     */
    void setSessionEngine(@Nullable MediaSessionEngine sessionImpl) {
        if (mISessionCallback instanceof CallbackStub) {
            ((CallbackStub) mISessionCallback).mSessionImpl = new WeakReference<>(sessionImpl);
        }
    }

    /**
    /**
     * Notify session that a controller sends a command.
     * Notify session that a controller sends a command.
     *
     *
@@ -568,7 +559,11 @@ public final class SessionCallbackLink implements Parcelable {
            };
            };


    private class CallbackStub extends ISessionCallback.Stub {
    private class CallbackStub extends ISessionCallback.Stub {
        private WeakReference<MediaSessionEngine> mSessionImpl;
        private WeakReference<MediaSession> mMediaSession;

        private CallbackStub(MediaSession session) {
            mMediaSession = new WeakReference<>(session);
        }


        private RemoteUserInfo createRemoteUserInfo(String packageName, int pid, int uid) {
        private RemoteUserInfo createRemoteUserInfo(String packageName, int pid, int uid) {
            return new RemoteUserInfo(packageName, pid, uid);
            return new RemoteUserInfo(packageName, pid, uid);
@@ -580,9 +575,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchCommand(createRemoteUserInfo(packageName, pid, uid),
                    session.dispatchCommand(createRemoteUserInfo(packageName, pid, uid),
                            command, args, cb);
                            command, args, cb);
                }
                }
            } finally {
            } finally {
@@ -596,9 +591,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchMediaButton(
                    session.dispatchMediaButton(
                            createRemoteUserInfo(packageName, pid, uid), mediaButtonIntent);
                            createRemoteUserInfo(packageName, pid, uid), mediaButtonIntent);
                }
                }
            } finally {
            } finally {
@@ -615,9 +610,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchMediaButton(createRemoteUserInfo(packageName, pid, uid),
                    session.dispatchMediaButton(createRemoteUserInfo(packageName, pid, uid),
                            mediaButtonIntent);
                            mediaButtonIntent);
                }
                }
            } finally {
            } finally {
@@ -631,9 +626,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPrepare(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchPrepare(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -646,9 +641,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPrepareFromMediaId(
                    session.dispatchPrepareFromMediaId(
                            createRemoteUserInfo(packageName, pid, uid), mediaId, extras);
                            createRemoteUserInfo(packageName, pid, uid), mediaId, extras);
                }
                }
            } finally {
            } finally {
@@ -662,9 +657,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPrepareFromSearch(
                    session.dispatchPrepareFromSearch(
                            createRemoteUserInfo(packageName, pid, uid), query, extras);
                            createRemoteUserInfo(packageName, pid, uid), query, extras);
                }
                }
            } finally {
            } finally {
@@ -678,9 +673,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPrepareFromUri(
                    session.dispatchPrepareFromUri(
                            createRemoteUserInfo(packageName, pid, uid), uri, extras);
                            createRemoteUserInfo(packageName, pid, uid), uri, extras);
                }
                }
            } finally {
            } finally {
@@ -694,9 +689,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPlay(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchPlay(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -709,9 +704,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPlayFromMediaId(
                    session.dispatchPlayFromMediaId(
                            createRemoteUserInfo(packageName, pid, uid), mediaId, extras);
                            createRemoteUserInfo(packageName, pid, uid), mediaId, extras);
                }
                }
            } finally {
            } finally {
@@ -725,9 +720,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPlayFromSearch(
                    session.dispatchPlayFromSearch(
                            createRemoteUserInfo(packageName, pid, uid), query, extras);
                            createRemoteUserInfo(packageName, pid, uid), query, extras);
                }
                }
            } finally {
            } finally {
@@ -741,9 +736,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPlayFromUri(
                    session.dispatchPlayFromUri(
                            createRemoteUserInfo(packageName, pid, uid), uri, extras);
                            createRemoteUserInfo(packageName, pid, uid), uri, extras);
                }
                }
            } finally {
            } finally {
@@ -757,9 +752,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchSkipToItem(
                    session.dispatchSkipToItem(
                            createRemoteUserInfo(packageName, pid, uid), id);
                            createRemoteUserInfo(packageName, pid, uid), id);
                }
                }
            } finally {
            } finally {
@@ -773,9 +768,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPause(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchPause(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -788,9 +783,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchStop(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchStop(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -803,9 +798,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchNext(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchNext(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -818,9 +813,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchPrevious(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchPrevious(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -833,9 +828,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchFastForward(
                    session.dispatchFastForward(
                            createRemoteUserInfo(packageName, pid, uid));
                            createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
@@ -849,9 +844,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchRewind(createRemoteUserInfo(packageName, pid, uid));
                    session.dispatchRewind(createRemoteUserInfo(packageName, pid, uid));
                }
                }
            } finally {
            } finally {
                Binder.restoreCallingIdentity(token);
                Binder.restoreCallingIdentity(token);
@@ -864,9 +859,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchSeekTo(
                    session.dispatchSeekTo(
                            createRemoteUserInfo(packageName, pid, uid), pos);
                            createRemoteUserInfo(packageName, pid, uid), pos);
                }
                }
            } finally {
            } finally {
@@ -880,9 +875,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchRate(
                    session.dispatchRate(
                            createRemoteUserInfo(packageName, pid, uid), rating);
                            createRemoteUserInfo(packageName, pid, uid), rating);
                }
                }
            } finally {
            } finally {
@@ -896,9 +891,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchSetPlaybackSpeed(
                    session.dispatchSetPlaybackSpeed(
                            createRemoteUserInfo(packageName, pid, uid), speed);
                            createRemoteUserInfo(packageName, pid, uid), speed);
                }
                }
            } finally {
            } finally {
@@ -912,9 +907,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchCustomAction(
                    session.dispatchCustomAction(
                            createRemoteUserInfo(packageName, pid, uid), action, args);
                            createRemoteUserInfo(packageName, pid, uid), action, args);
                }
                }
            } finally {
            } finally {
@@ -928,9 +923,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchAdjustVolume(
                    session.dispatchAdjustVolume(
                            createRemoteUserInfo(packageName, pid, uid), direction);
                            createRemoteUserInfo(packageName, pid, uid), direction);
                }
                }
            } finally {
            } finally {
@@ -944,9 +939,9 @@ public final class SessionCallbackLink implements Parcelable {
            ensureMediaControlPermission();
            ensureMediaControlPermission();
            final long token = Binder.clearCallingIdentity();
            final long token = Binder.clearCallingIdentity();
            try {
            try {
                MediaSessionEngine sessionImpl = mSessionImpl.get();
                MediaSession session = mMediaSession.get();
                if (sessionImpl != null) {
                if (session != null) {
                    sessionImpl.dispatchSetVolumeTo(
                    session.dispatchSetVolumeTo(
                            createRemoteUserInfo(packageName, pid, uid), value);
                            createRemoteUserInfo(packageName, pid, uid), value);
                }
                }
            } finally {
            } finally {