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

Commit 0534690f authored by Nirav Atre's avatar Nirav Atre
Browse files

Make safeunion@1.0 test HAL Java-compatible

This change removes Java-incompatible types (memory, handle) from the
safeunion@1.0 test HAL. Moving forward, the idea is to keep this HAL
Java & C++-friendly, and create another version (likely safeunion@2.0)
to regress on C++-only types; tracked by b/110269925.

Bug: n/a
Test: Ran the existing hidl_test suite
Change-Id: Ic7458c3f5b571e77e5f894a9854a2b201f53fe18
parent 5f64ae98
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -10,6 +10,6 @@ hidl_interface {
    interfaces: [
        "android.hidl.base@1.0",
    ],
    gen_java: false,
    gen_java: true,
}
+0 −13
Original line number Diff line number Diff line
@@ -62,14 +62,6 @@ interface ISafeUnion {
        SmallSafeUnion l;
    };

    // TODO(b/110269925): Test more HIDL types. Missing:
    // death_recipient, fmq_{sync,unsync}, pointer, ref.
    safe_union MiscTypesSafeUnion {
        memory a;
        handle b;
        bitfield<BitField> c;
    };

    safe_union InterfaceTypeSafeUnion {
        uint32_t a;
        int8_t[7] b;
@@ -90,11 +82,6 @@ interface ISafeUnion {
    setK(LargeSafeUnion myUnion, LargeSafeUnion.K k) generates (LargeSafeUnion myUnion);
    setL(LargeSafeUnion myUnion, SmallSafeUnion l) generates (LargeSafeUnion myUnion);

    newMiscTypesSafeUnion() generates (MiscTypesSafeUnion myUnion);
    setMiscA(MiscTypesSafeUnion myUnion, memory a) generates (MiscTypesSafeUnion myUnion);
    setMiscB(MiscTypesSafeUnion myUnion, handle b) generates (MiscTypesSafeUnion myUnion);
    setMiscC(MiscTypesSafeUnion myUnion, bitfield<BitField> c) generates (MiscTypesSafeUnion myUnion);

    newInterfaceTypeSafeUnion() generates (InterfaceTypeSafeUnion myUnion);
    setInterfaceA(InterfaceTypeSafeUnion myUnion, uint32_t a) generates (InterfaceTypeSafeUnion myUnion);
    setInterfaceB(InterfaceTypeSafeUnion myUnion, int8_t[7] b) generates (InterfaceTypeSafeUnion myUnion);
+0 −38
Original line number Diff line number Diff line
@@ -153,44 +153,6 @@ Return<void> SafeUnion::setL(const LargeSafeUnion& myUnion, const SmallSafeUnion
    return Void();
}

Return<void> SafeUnion::newMiscTypesSafeUnion(newMiscTypesSafeUnion_cb _hidl_cb) {
    LOG(INFO) << "SERVER(SafeUnion) newMiscTypesSafeUnion()";

    MiscTypesSafeUnion ret;
    _hidl_cb(ret);
    return Void();
}

Return<void> SafeUnion::setMiscA(const MiscTypesSafeUnion& myUnion, const hidl_memory& a, setMiscA_cb _hidl_cb) {
    LOG(INFO) << "SERVER(SafeUnion) setMiscA(myUnion, " << toString(a) << ")";

    MiscTypesSafeUnion myNewUnion = myUnion;
    myNewUnion.a(a);

    _hidl_cb(myNewUnion);
    return Void();
}

Return<void> SafeUnion::setMiscB(const MiscTypesSafeUnion& myUnion, const hidl_handle& b, setMiscB_cb _hidl_cb) {
    LOG(INFO) << "SERVER(SafeUnion) setMiscB(myUnion, " << toString(b) << ")";

    MiscTypesSafeUnion myNewUnion = myUnion;
    myNewUnion.b(b);

    _hidl_cb(myNewUnion);
    return Void();
}

Return<void> SafeUnion::setMiscC(const MiscTypesSafeUnion& myUnion, hidl_bitfield<BitField> c, setMiscC_cb _hidl_cb) {
    LOG(INFO) << "SERVER(SafeUnion) setMiscC(myUnion, " << c << ")";

    MiscTypesSafeUnion myNewUnion = myUnion;
    myNewUnion.c(c);

    _hidl_cb(myNewUnion);
    return Void();
}

Return<void> SafeUnion::newInterfaceTypeSafeUnion(newInterfaceTypeSafeUnion_cb _hidl_cb) {
    LOG(INFO) << "SERVER(SafeUnion) newInterfaceTypeSafeUnion()";

+0 −5
Original line number Diff line number Diff line
@@ -48,11 +48,6 @@ struct SafeUnion : public ISafeUnion {
    Return<void> setK(const LargeSafeUnion& myUnion, const LargeSafeUnion::K& k, setK_cb _hidl_cb) override;
    Return<void> setL(const LargeSafeUnion& myUnion, const SmallSafeUnion& l, setL_cb _hidl_cb) override;

    Return<void> newMiscTypesSafeUnion(newMiscTypesSafeUnion_cb _hidl_cb) override;
    Return<void> setMiscA(const MiscTypesSafeUnion& myUnion, const hidl_memory& a, setMiscA_cb _hidl_cb) override;
    Return<void> setMiscB(const MiscTypesSafeUnion& myUnion, const hidl_handle& b, setMiscB_cb _hidl_cb) override;
    Return<void> setMiscC(const MiscTypesSafeUnion& myUnion, hidl_bitfield<BitField> c, setMiscC_cb _hidl_cb) override;

    Return<void> newInterfaceTypeSafeUnion(newInterfaceTypeSafeUnion_cb _hidl_cb) override;
    Return<void> setInterfaceA(const InterfaceTypeSafeUnion& myUnion, uint32_t a, setInterfaceA_cb _hidl_cb) override;
    Return<void> setInterfaceB(const InterfaceTypeSafeUnion& myUnion, const hidl_array<int8_t, 7>& b, setInterfaceB_cb _hidl_cb) override;