Revert "Use built-in count variables rather than explicit count variables for chre_api_test.proto"

This reverts commit df72b46f732d8b6cb7a3a3b368f5e2943abce6dd.

Reason for revert: PtsContextHubChreConcurrencyTest#runAccelerometerConcurrencyTest fails 

Bug: b/278884429
Change-Id: I0e1c5f00d4683405b8b1bc21c6ea735b2dc4901d
diff --git a/apps/test/common/chre_api_test/rpc/chre_api_test.proto b/apps/test/common/chre_api_test/rpc/chre_api_test.proto
index b87aa35..37a4f99 100644
--- a/apps/test/common/chre_api_test/rpc/chre_api_test.proto
+++ b/apps/test/common/chre_api_test/rpc/chre_api_test.proto
@@ -93,9 +93,7 @@
 // Contains event filters for gathering events
 message GatherEventsInput {
   repeated uint32 eventTypes = 1;
-
-  // Deprecated: We use the built-in count variable now
-  uint32 eventTypeCount = 2 [deprecated = true];
+  uint32 eventTypeCount = 2;
   uint32 eventCount = 3;
   uint64 timeoutInNs = 4;
 }
@@ -262,9 +260,7 @@
 // Scan filter for BLE scanning
 message ChreBleScanFilter {
   int32 rssiThreshold = 1;
-
-  // Deprecated: We use the built-in count variable now
-  uint32 scanFilterCount = 2 [deprecated = true];
+  uint32 scanFilterCount = 2;
   repeated ChreBleGenericFilter scanFilters = 3;
 }
 
diff --git a/apps/test/common/chre_api_test/src/chre_api_test_manager.cc b/apps/test/common/chre_api_test/src/chre_api_test_manager.cc
index cce2fe4..e3041f3 100644
--- a/apps/test/common/chre_api_test/src/chre_api_test_manager.cc
+++ b/apps/test/common/chre_api_test/src/chre_api_test_manager.cc
@@ -251,15 +251,23 @@
     return;
   }
 
-  if (request.eventTypes_count == 0) {
-    LOGE("GatherEvents: request.eventTypes_count == 0");
+  if (request.eventTypeCount > kMaxNumEventTypes) {
+    LOGE("GatherEvents: request.eventTypeCount is out of bounds");
     ChreApiTestManagerSingleton::get()->setPermissionForNextMessage(
         CHRE_MESSAGE_PERMISSION_NONE);
     writer.Finish();
     return;
   }
 
-  for (uint32_t i = 0; i < request.eventTypes_count; ++i) {
+  if (request.eventTypeCount == 0) {
+    LOGE("GatherEvents: request.eventTypeCount == 0");
+    ChreApiTestManagerSingleton::get()->setPermissionForNextMessage(
+        CHRE_MESSAGE_PERMISSION_NONE);
+    writer.Finish();
+    return;
+  }
+
+  for (uint32_t i = 0; i < request.eventTypeCount; ++i) {
     if (request.eventTypes[i] < std::numeric_limits<uint16_t>::min() ||
         request.eventTypes[i] > std::numeric_limits<uint16_t>::max()) {
       LOGE("GatherEvents: invalid request.eventTypes at index: %" PRIu32, i);
@@ -283,7 +291,7 @@
     sendFailureAndFinishCloseWriter(mEventWriter);
     mEventTimerHandle = CHRE_TIMER_INVALID;
   } else {
-    mEventTypeCount = request.eventTypes_count;
+    mEventTypeCount = request.eventTypeCount;
     mEventExpectedCount = request.eventCount;
     mEventSentCount = 0;
     LOGD("GatherEvents: mEventTypeCount: %" PRIu32
diff --git a/apps/test/common/chre_api_test/src/chre_api_test_service.cc b/apps/test/common/chre_api_test/src/chre_api_test_service.cc
index 58951a6..d767168 100644
--- a/apps/test/common/chre_api_test/src/chre_api_test_service.cc
+++ b/apps/test/common/chre_api_test/src/chre_api_test_service.cc
@@ -28,6 +28,7 @@
 /**
  * The following constants are defined in chre_api_test.options.
  */
+constexpr uint32_t kMaxBleScanFilters = 10;
 constexpr size_t kMaxNameStringBufferSize = 100;
 constexpr size_t kMaxHostEndpointNameBufferSize = 51;
 constexpr size_t kMaxHostEndpointTagBufferSize = 51;
@@ -81,32 +82,33 @@
     return false;
   }
 
-  if (request.filter.scanFilters_count == 0) {
-    LOGE("ChreBleStartScanAsync: invalid filter.scanFilters_count");
+  if (request.filter.scanFilterCount == 0 ||
+      request.filter.scanFilterCount > kMaxBleScanFilters) {
+    LOGE("ChreBleStartScanAsync: invalid filter.scanFilterCount");
     return false;
   }
 
-  chreBleGenericFilter genericFilters[request.filter.scanFilters_count];
+  chreBleGenericFilter genericFilters[request.filter.scanFilterCount];
   if (!validateBleScanFilters(request.filter.scanFilters, genericFilters,
-                              request.filter.scanFilters_count)) {
+                              request.filter.scanFilterCount)) {
     return false;
   }
 
   struct chreBleScanFilter filter;
   filter.rssiThreshold = request.filter.rssiThreshold;
-  filter.scanFilterCount = request.filter.scanFilters_count;
+  filter.scanFilterCount = request.filter.scanFilterCount;
   filter.scanFilters = genericFilters;
 
   chreBleScanMode mode = static_cast<chreBleScanMode>(request.mode);
   response.status = chreBleStartScanAsync(mode, request.reportDelayMs, &filter);
 
   LOGD("ChreBleStartScanAsync: mode: %s, reportDelayMs: %" PRIu32
-       ", scanFilterCount: %" PRIu16 ", status: %s",
+       ", scanFilterCount: %" PRIu32 ", status: %s",
        mode == CHRE_BLE_SCAN_MODE_BACKGROUND
            ? "background"
            : (mode == CHRE_BLE_SCAN_MODE_FOREGROUND ? "foreground"
                                                     : "aggressive"),
-       request.reportDelayMs, request.filter.scanFilters_count,
+       request.reportDelayMs, request.filter.scanFilterCount,
        response.status ? "true" : "false");
   return true;
 }
diff --git a/java/test/ble_concurrency/src/com/google/android/chre/test/bleconcurrency/ContextHubBleConcurrencyTestExecutor.java b/java/test/ble_concurrency/src/com/google/android/chre/test/bleconcurrency/ContextHubBleConcurrencyTestExecutor.java
index 837edf7..9b881af 100644
--- a/java/test/ble_concurrency/src/com/google/android/chre/test/bleconcurrency/ContextHubBleConcurrencyTestExecutor.java
+++ b/java/test/ble_concurrency/src/com/google/android/chre/test/bleconcurrency/ContextHubBleConcurrencyTestExecutor.java
@@ -130,6 +130,7 @@
 
         return ChreApiTest.ChreBleScanFilter.newBuilder()
                 .setRssiThreshold(RSSI_THRESHOLD)
+                .setScanFilterCount(2)
                 .addScanFilters(eddystoneFilter)
                 .addScanFilters(nearbyFastpairFilter)
                 .build();
diff --git a/java/test/utils/src/com/google/android/utils/chre/ChreApiTestUtil.java b/java/test/utils/src/com/google/android/utils/chre/ChreApiTestUtil.java
index 8fa9eca..5100445 100644
--- a/java/test/utils/src/com/google/android/utils/chre/ChreApiTestUtil.java
+++ b/java/test/utils/src/com/google/android/utils/chre/ChreApiTestUtil.java
@@ -309,6 +309,7 @@
 
         ChreApiTest.GatherEventsInput input = ChreApiTest.GatherEventsInput.newBuilder()
                 .addAllEventTypes(eventTypes)
+                .setEventTypeCount(eventTypes.size())
                 .setEventCount(eventCount)
                 .setTimeoutInNs(timeoutInNs)
                 .build();