Merge "[Satellite] Reset the counter stats at the beginning of the session." into main
diff --git a/src/java/com/android/internal/telephony/satellite/SatelliteController.java b/src/java/com/android/internal/telephony/satellite/SatelliteController.java
index 7530a5d..5484de6 100644
--- a/src/java/com/android/internal/telephony/satellite/SatelliteController.java
+++ b/src/java/com/android/internal/telephony/satellite/SatelliteController.java
@@ -1296,8 +1296,8 @@
// If Satellite enable/disable request returned Error, no need to wait for radio
argument.callback.accept(error);
}
-
if (argument.enableSatellite) {
+ mSessionMetricsStats.resetSessionStatsShadowCounters();
mSessionMetricsStats.setInitializationResult(error)
.setSatelliteTechnology(getSupportedNtnRadioTechnology())
.setInitializationProcessingTime(
diff --git a/src/java/com/android/internal/telephony/satellite/metrics/SessionMetricsStats.java b/src/java/com/android/internal/telephony/satellite/metrics/SessionMetricsStats.java
index a234378..2ae8f9d 100644
--- a/src/java/com/android/internal/telephony/satellite/metrics/SessionMetricsStats.java
+++ b/src/java/com/android/internal/telephony/satellite/metrics/SessionMetricsStats.java
@@ -46,9 +46,13 @@
private long mTerminationProcessingTimeMillis;
private int mSessionDurationSec;
private int mCountOfSuccessfulOutgoingDatagram;
+ private int mShadowCountOfSuccessfulOutgoingDatagram;
private int mCountOfFailedOutgoingDatagram;
+ private int mShadowCountOfFailedOutgoingDatagram;
private int mCountOfTimedOutUserMessagesWaitingForConnection;
+ private int mShadowCountOfTimedOutUserMessagesWaitingForConnection;
private int mCountOfTimedOutUserMessagesWaitingForAck;
+ private int mShadowCountOfTimedOutUserMessagesWaitingForAck;
private int mCountOfSuccessfulIncomingDatagram;
private int mCountOfIncomingDatagramFailed;
private boolean mIsDemoMode;
@@ -131,6 +135,7 @@
}
mCountOfSuccessfulOutgoingDatagram++;
+ mShadowCountOfSuccessfulOutgoingDatagram++;
logd("addCountOfSuccessfulOutgoingDatagram: current count="
+ mCountOfSuccessfulOutgoingDatagram);
return this;
@@ -146,6 +151,7 @@
}
mCountOfFailedOutgoingDatagram++;
+ mShadowCountOfFailedOutgoingDatagram++;
logd("addCountOfFailedOutgoingDatagram: current count=" + mCountOfFailedOutgoingDatagram);
if (resultCode == SatelliteManager.SATELLITE_RESULT_NOT_REACHABLE) {
@@ -166,6 +172,7 @@
}
mCountOfTimedOutUserMessagesWaitingForConnection++;
+ mShadowCountOfTimedOutUserMessagesWaitingForConnection++;
logd("addCountOfTimedOutUserMessagesWaitingForConnection: current count="
+ mCountOfTimedOutUserMessagesWaitingForConnection);
return this;
@@ -180,6 +187,7 @@
}
mCountOfTimedOutUserMessagesWaitingForAck++;
+ mShadowCountOfTimedOutUserMessagesWaitingForAck++;
logd("addCountOfTimedOutUserMessagesWaitingForAck: current count="
+ mCountOfTimedOutUserMessagesWaitingForAck);
return this;
@@ -278,12 +286,12 @@
public void requestSatelliteSessionStats(int subId, @NonNull ResultReceiver result) {
Bundle bundle = new Bundle();
SatelliteSessionStats sessionStats = new SatelliteSessionStats.Builder()
- .setCountOfSuccessfulUserMessages(mCountOfSuccessfulOutgoingDatagram)
- .setCountOfUnsuccessfulUserMessages(mCountOfFailedOutgoingDatagram)
+ .setCountOfSuccessfulUserMessages(mShadowCountOfSuccessfulOutgoingDatagram)
+ .setCountOfUnsuccessfulUserMessages(mShadowCountOfFailedOutgoingDatagram)
.setCountOfTimedOutUserMessagesWaitingForConnection(
- mCountOfTimedOutUserMessagesWaitingForConnection)
+ mShadowCountOfTimedOutUserMessagesWaitingForConnection)
.setCountOfTimedOutUserMessagesWaitingForAck(
- mCountOfTimedOutUserMessagesWaitingForAck)
+ mShadowCountOfTimedOutUserMessagesWaitingForAck)
.setCountOfUserMessagesInQueueToBeSent(
DatagramDispatcher.getInstance().getPendingUserMessagesCount())
.build();
@@ -322,6 +330,14 @@
mCountOfAutoExitDueToTnNetwork = 0;
}
+ public void resetSessionStatsShadowCounters() {
+ logd("resetTheStatsCounters");
+ mShadowCountOfSuccessfulOutgoingDatagram = 0;
+ mShadowCountOfFailedOutgoingDatagram = 0;
+ mShadowCountOfTimedOutUserMessagesWaitingForConnection = 0;
+ mShadowCountOfTimedOutUserMessagesWaitingForAck = 0;
+ }
+
private static void logd(@NonNull String log) {
if (DBG) {
Log.d(TAG, log);