diff options
| author | 2018-10-09 18:50:59 +0000 | |
|---|---|---|
| committer | 2018-10-09 18:50:59 +0000 | |
| commit | 2cb822feeb6827f2e5bd185bcc0072a271187acc (patch) | |
| tree | 1527aceccb4730bbb22ba52eee2ce88c19178392 | |
| parent | 37465f925629896f71a5b85055e550664523bcc8 (diff) | |
| parent | dc153bb120445cddcb93d39ac731b101352c6664 (diff) | |
Merge "libbinder_ndk: convenience method for isRemote"
| -rw-r--r-- | libs/binder/ndk/include_ndk/android/binder_interface_utils.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/binder/ndk/include_ndk/android/binder_interface_utils.h b/libs/binder/ndk/include_ndk/android/binder_interface_utils.h index f5c8bce8ae..a133d490a4 100644 --- a/libs/binder/ndk/include_ndk/android/binder_interface_utils.h +++ b/libs/binder/ndk/include_ndk/android/binder_interface_utils.h @@ -69,6 +69,12 @@ public: // This either returns the single existing implementation or creates a new implementation. virtual SpAIBinder asBinder() = 0; + + /** + * Returns whether this interface is in a remote process. If it cannot be determined locally, + * this will be checked using AIBinder_isRemote. + */ + virtual bool isRemote() = 0; }; // wrapper analog to BnInterface @@ -80,6 +86,8 @@ public: SpAIBinder asBinder() override; + bool isRemote() override { return true; } + protected: // This function should only be called by asBinder. Otherwise, there is a possibility of // multiple AIBinder* objects being created for the same instance of an object. @@ -99,6 +107,8 @@ public: SpAIBinder asBinder() override; + bool isRemote() override { return AIBinder_isRemote(mBinder.get()); } + private: SpAIBinder mBinder; }; |