summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Thomas Nguyen <tnd@google.com> 2024-09-12 16:12:01 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-09-12 16:12:01 +0000
commit7cc8ea4c8e0a28751b55abedc1a4b11dcfd9fe28 (patch)
treefa55e05348864d8339ada0b52133cbcc839b2f61
parenta61bb061163fb97d09eb8d4d39397bb7bab4727f (diff)
parent9a9f3de9ec9ece325ca1cabf735a3fcb38a7374a (diff)
Merge "Add the new API onSendDatagramRequested" into main
-rw-r--r--telephony/java/android/telephony/satellite/ISatelliteTransmissionUpdateCallback.aidl7
-rw-r--r--telephony/java/android/telephony/satellite/SatelliteManager.java6
-rw-r--r--telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java9
3 files changed, 22 insertions, 0 deletions
diff --git a/telephony/java/android/telephony/satellite/ISatelliteTransmissionUpdateCallback.aidl b/telephony/java/android/telephony/satellite/ISatelliteTransmissionUpdateCallback.aidl
index 579fda320e9a..a0f01bded764 100644
--- a/telephony/java/android/telephony/satellite/ISatelliteTransmissionUpdateCallback.aidl
+++ b/telephony/java/android/telephony/satellite/ISatelliteTransmissionUpdateCallback.aidl
@@ -50,4 +50,11 @@ oneway interface ISatelliteTransmissionUpdateCallback {
* Satellite location is based on magnetic north direction.
*/
void onSatellitePositionChanged(in PointingInfo pointingInfo);
+
+ /**
+ * Called when framework receives a request to send a datagram.
+ *
+ * @param datagramType The type of the requested datagram.
+ */
+ void onSendDatagramRequested(int datagramType);
}
diff --git a/telephony/java/android/telephony/satellite/SatelliteManager.java b/telephony/java/android/telephony/satellite/SatelliteManager.java
index 284e2bd8aa6c..90dae3be058c 100644
--- a/telephony/java/android/telephony/satellite/SatelliteManager.java
+++ b/telephony/java/android/telephony/satellite/SatelliteManager.java
@@ -1220,6 +1220,12 @@ public final class SatelliteManager {
() -> callback.onReceiveDatagramStateChanged(
state, receivePendingCount, errorCode)));
}
+
+ @Override
+ public void onSendDatagramRequested(int datagramType) {
+ executor.execute(() -> Binder.withCleanCallingIdentity(
+ () -> callback.onSendDatagramRequested(datagramType)));
+ }
};
sSatelliteTransmissionUpdateCallbackMap.put(callback, internalCallback);
telephony.startSatelliteTransmissionUpdates(errorCallback, internalCallback);
diff --git a/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java b/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
index d8bd66284fb0..046ae5fdeb3c 100644
--- a/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteTransmissionUpdateCallback.java
@@ -75,4 +75,13 @@ public interface SatelliteTransmissionUpdateCallback {
void onReceiveDatagramStateChanged(
@SatelliteManager.SatelliteDatagramTransferState int state, int receivePendingCount,
@SatelliteManager.SatelliteResult int errorCode);
+
+ /**
+ * Called when framework receives a request to send a datagram.
+ *
+ * @param datagramType The type of the requested datagram.
+ *
+ * @hide
+ */
+ default void onSendDatagramRequested(@SatelliteManager.DatagramType int datagramType) {}
}