summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorThierry Strudel <tstrudel@google.com>2021-04-08 16:20:12 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2021-04-08 16:20:12 +0000
commite7edb005c5d8f4e9c5be2a3a9d2120f9b919cf98 (patch)
tree0dac553af039e1158b95827502cb16b0f28b2f42 /core/java
parent283beee2256661c200d79bc90ef80a1ea48bdde7 (diff)
parentdd0543f051f851a5d4397b4a4e38c865275a16bc (diff)
Merge "UWB: Add Reason to onRangingStop()" into sc-dev
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/uwb/IUwbRangingCallbacks.aidl6
-rw-r--r--core/java/android/uwb/RangingManager.java5
-rw-r--r--core/java/android/uwb/RangingSession.java10
3 files changed, 15 insertions, 6 deletions
diff --git a/core/java/android/uwb/IUwbRangingCallbacks.aidl b/core/java/android/uwb/IUwbRangingCallbacks.aidl
index f71f3ff7ad44..f15debbf3e6f 100644
--- a/core/java/android/uwb/IUwbRangingCallbacks.aidl
+++ b/core/java/android/uwb/IUwbRangingCallbacks.aidl
@@ -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
diff --git a/core/java/android/uwb/RangingManager.java b/core/java/android/uwb/RangingManager.java
index 5c7f0f5cb1e0..ff8b91207166 100644
--- a/core/java/android/uwb/RangingManager.java
+++ b/core/java/android/uwb/RangingManager.java
@@ -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);
}
}
diff --git a/core/java/android/uwb/RangingSession.java b/core/java/android/uwb/RangingSession.java
index 52ec5bde0dac..345b69df84d5 100644
--- a/core/java/android/uwb/RangingSession.java
+++ b/core/java/android/uwb/RangingSession.java
@@ -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));
}
/**