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

Commit d70f84d7 authored by Matthew Sedam's avatar Matthew Sedam
Browse files

Pass the context hub ID to getPreloadedNanoappIds in the HAL

Bug: 271846335
Test: m, flash, boot # normal
Test: logs # normal
Test: Dump context hub service and AIDL HAL # normal
Test: atest VtsAidlHalContextHubTargetTest
Change-Id: I8268bdab0aaf58863d71c7d065aa89223368199b
parent 6d065549
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ interface IContextHub {
  void sendMessageToHub(in int contextHubId, in android.hardware.contexthub.ContextHubMessage message);
  void onHostEndpointConnected(in android.hardware.contexthub.HostEndpointInfo hostEndpointInfo);
  void onHostEndpointDisconnected(char hostEndpointId);
  long[] getPreloadedNanoappIds();
  long[] getPreloadedNanoappIds(in int contextHubId);
  void onNanSessionStateChanged(in android.hardware.contexthub.NanSessionStateUpdate update);
  void setTestMode(in boolean enable);
  const int EX_CONTEXT_HUB_UNSPECIFIED = (-1) /* -1 */;
+4 −2
Original line number Diff line number Diff line
@@ -200,9 +200,11 @@ interface IContextHub {
     * Provides the list of preloaded nanoapp IDs on the system. The output of this API must
     * not change.
     *
     * @return The list of preloaded nanoapp IDs
     * @param contextHubId The identifier of the Context Hub.
     *
     * @return The list of preloaded nanoapp IDs.
     */
    long[] getPreloadedNanoappIds();
    long[] getPreloadedNanoappIds(in int contextHubId);

    /**
     * Invoked when the state of the NAN session requested through handleNanSessionRequest()
+2 −1
Original line number Diff line number Diff line
@@ -76,7 +76,8 @@ ScopedAStatus ContextHub::queryNanoapps(int32_t in_contextHubId) {
    }
}

ScopedAStatus ContextHub::getPreloadedNanoappIds(std::vector<int64_t>* out_preloadedNanoappIds) {
ScopedAStatus ContextHub::getPreloadedNanoappIds(int32_t /* in_contextHubId */,
                                                 std::vector<int64_t>* out_preloadedNanoappIds) {
    if (out_preloadedNanoappIds == nullptr) {
        return ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
    }
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ class ContextHub : public BnContextHub {
    ::ndk::ScopedAStatus onSettingChanged(Setting in_setting, bool in_enabled) override;
    ::ndk::ScopedAStatus queryNanoapps(int32_t in_contextHubId) override;
    ::ndk::ScopedAStatus getPreloadedNanoappIds(
            std::vector<int64_t>* out_preloadedNanoappIds) override;
            int32_t in_contextHubId, std::vector<int64_t>* out_preloadedNanoappIds) override;
    ::ndk::ScopedAStatus registerCallback(
            int32_t in_contextHubId, const std::shared_ptr<IContextHubCallback>& in_cb) override;
    ::ndk::ScopedAStatus sendMessageToHub(int32_t in_contextHubId,
+3 −3
Original line number Diff line number Diff line
@@ -186,10 +186,10 @@ TEST_P(ContextHubAidl, TestQueryApps) {
    }
}

// Calls getPreloadedNanoapps() and verifies there are preloaded nanoapps
TEST_P(ContextHubAidl, TestGetPreloadedNanoapps) {
// Calls getPreloadedNanoappsIds() and verifies there are preloaded nanoapps
TEST_P(ContextHubAidl, TestGetPreloadedNanoappIds) {
    std::vector<int64_t> preloadedNanoappIds;
    Status status = contextHub->getPreloadedNanoappIds(&preloadedNanoappIds);
    Status status = contextHub->getPreloadedNanoappIds(getHubId(), &preloadedNanoappIds);
    if (status.exceptionCode() == Status::EX_UNSUPPORTED_OPERATION ||
        status.transactionError() == android::UNKNOWN_TRANSACTION) {
        GTEST_SKIP() << "Not supported -> old API; or not implemented";