Support 'debug' in Java.
Now that there are NativeHandles. Note that this affects the in-process
ABI of HIDL objects by adding a new method, but this isn't an ABI we
are relying on for the GSI.
Example:
class Foo extends IFoo.Stub {
@Override
public void debug(NativeHandle handle, ArrayList<String> args) {
FileDescriptor fd = handle.getFileDescriptor();
...
}
...
}
Fixes: 112334405
Test: manual
Change-Id: I2da714451dbc5094c1722dff19f195e98e0b22dc
diff --git a/Interface.cpp b/Interface.cpp
index 44eb872..dae7535 100644
--- a/Interface.cpp
+++ b/Interface.cpp
@@ -424,20 +424,18 @@
return false;
}
- method->fillImplementation(
- HIDL_DEBUG_TRANSACTION,
- {
- {IMPL_INTERFACE,
- [](auto &out) {
- out << "(void)fd;\n"
- << "(void)options;\n"
- << "return ::android::hardware::Void();\n";
- }
- },
- }, /* cppImpl */
- {
- /* unused, as the debug method is hidden from Java */
- } /* javaImpl */
+ method->fillImplementation(HIDL_DEBUG_TRANSACTION,
+ {
+ {IMPL_INTERFACE,
+ [](auto& out) {
+ out << "(void)fd;\n"
+ << "(void)options;\n"
+ << "return ::android::hardware::Void();\n";
+ }},
+ }, /* cppImpl */
+ {
+ {IMPL_INTERFACE, [](auto& out) { out << "return;\n"; }},
+ } /* javaImpl */
);
return true;