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

Commit dd0543f0 authored by Harpreet Eli Sangha's avatar Harpreet Eli Sangha
Browse files

UWB: Add Reason to onRangingStop()



Bug: 184689372
Test: atest android.uwb
Signed-off-by: default avatarHarpreet Eli Sangha <eliptus@google.com>
Change-Id: Iff880ac6d8343df784fb8cb830ec830749351820
parent 1f0cc466
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -14218,7 +14218,7 @@ package android.uwb {
    method public void onStartFailed(int, @NonNull android.os.PersistableBundle);
    method public void onStarted(@NonNull android.os.PersistableBundle);
    method public void onStopFailed(int, @NonNull android.os.PersistableBundle);
    method public void onStopped();
    method public void onStopped(int, @NonNull android.os.PersistableBundle);
    field public static final int REASON_BAD_PARAMETERS = 3; // 0x3
    field public static final int REASON_GENERIC_ERROR = 4; // 0x4
    field public static final int REASON_LOCAL_REQUEST = 1; // 0x1
+5 −1
Original line number Diff line number Diff line
@@ -92,9 +92,13 @@ interface IUwbRangingCallbacks {
   * Called when the ranging session has been stopped
   *
   * @param sessionHandle the session the callback is being invoked for
   * @param reason the reason the session was stopped
   * @param parameters protocol specific parameters
   */

  void onRangingStopped(in SessionHandle sessionHandle);
  void onRangingStopped(in SessionHandle sessionHandle,
                        RangingChangeReason reason,
                        in PersistableBundle parameters);

  /**
   * Called when a ranging session fails to stop
+3 −2
Original line number Diff line number Diff line
@@ -171,7 +171,8 @@ public class RangingManager extends android.uwb.IUwbRangingCallbacks.Stub {
    }

    @Override
    public void onRangingStopped(SessionHandle sessionHandle) {
    public void onRangingStopped(SessionHandle sessionHandle, @RangingChangeReason int reason,
            PersistableBundle params) {
        synchronized (this) {
            if (!hasSession(sessionHandle)) {
                Log.w(TAG, "onRangingStopped - received unexpected SessionHandle: "
@@ -180,7 +181,7 @@ public class RangingManager extends android.uwb.IUwbRangingCallbacks.Stub {
            }

            RangingSession session = mRangingSessionTable.get(sessionHandle);
            session.onRangingStopped();
            session.onRangingStopped(convertToReason(reason), params);
        }
    }

+7 −3
Original line number Diff line number Diff line
@@ -191,8 +191,11 @@ public final class RangingSession implements AutoCloseable {

        /**
         * Invoked when a request to stop the session succeeds
         *
         * @param reason reason for the session stop
         * @param parameters protocol specific parameters related to the stop reason
         */
        void onStopped();
        void onStopped(@Reason int reason, @NonNull PersistableBundle parameters);

        /**
         * Invoked when a request to stop the session fails
@@ -434,14 +437,15 @@ public final class RangingSession implements AutoCloseable {
    /**
     * @hide
     */
    public void onRangingStopped() {
    public void onRangingStopped(@Callback.Reason int reason,
            @NonNull PersistableBundle params) {
        if (mState == State.CLOSED) {
            Log.w(TAG, "onRangingStopped invoked for a closed session");
            return;
        }

        mState = State.IDLE;
        executeCallback(() -> mCallback.onStopped());
        executeCallback(() -> mCallback.onStopped(reason, params));
    }

    /**
+2 −2
Original line number Diff line number Diff line
@@ -128,8 +128,8 @@ public class RangingManagerTest {
        rangingManager.onRangingReconfigureFailed(handle, REASON, PARAMS);
        verify(callback, times(1)).onReconfigureFailed(eq(REASON), eq(PARAMS));

        rangingManager.onRangingStopped(handle);
        verify(callback, times(1)).onStopped();
        rangingManager.onRangingStopped(handle, REASON, PARAMS);
        verify(callback, times(1)).onStopped(eq(REASON), eq(PARAMS));

        rangingManager.onRangingStopFailed(handle, REASON, PARAMS);
        verify(callback, times(1)).onStopFailed(eq(REASON), eq(PARAMS));