summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2024-02-01 18:59:17 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-02-01 18:59:17 +0000
commit6afeed1ec2f5ac98654271fc93c6c1bf73d930c9 (patch)
treeb8889c87d7c964661d5095c8675d36e8f65d1b65
parent2ff8f1c370e04f32b1e51172ff760a471754f10a (diff)
parent19118326420b9b38dc1f0c213571ca45f6ebc8ef (diff)
downloadav-6afeed1ec2f5ac98654271fc93c6c1bf73d930c9.tar.gz
Merge "libmedia_eco_service: Start using libbinder_ndk" into main
-rw-r--r--media/eco/Android.bp4
-rw-r--r--media/eco/ECOService.cpp3
-rw-r--r--media/eco/ECOServiceStatsProvider.cpp3
-rw-r--r--media/eco/ECOSession.cpp6
-rw-r--r--media/eco/include/eco/ECOService.h14
-rw-r--r--media/eco/include/eco/ECOServiceInfoListener.h5
-rw-r--r--media/eco/include/eco/ECOServiceStatsProvider.h5
-rw-r--r--media/eco/include/eco/ECOSession.h5
-rw-r--r--media/eco/tests/Android.bp35
-rw-r--r--media/eco/tests/EcoServiceTest.cpp1
-rw-r--r--media/eco/tests/FakeECOServiceInfoListener.cpp2
-rw-r--r--media/eco/tests/FakeECOServiceInfoListener.h1
-rw-r--r--media/eco/tests/FakeECOServiceStatsProvider.cpp2
-rw-r--r--media/eco/tests/FakeECOServiceStatsProvider.h1
14 files changed, 34 insertions, 53 deletions
diff --git a/media/eco/Android.bp b/media/eco/Android.bp
index 10a1d6c..d4cb82f 100644
--- a/media/eco/Android.bp
+++ b/media/eco/Android.bp
@@ -20,6 +20,7 @@ aidl_interface {
enabled: true,
additional_shared_libraries: [
"libmedia_ecoservice_ecodata",
+ "libbinder_ndk",
],
},
ndk: {
@@ -46,6 +47,7 @@ cc_library {
shared_libs: [
"libbase",
"libbinder",
+ "libbinder_ndk",
"liblog",
"libutils",
],
@@ -89,6 +91,7 @@ cc_library_shared {
],
shared_libs: [
"libbinder",
+ "libbinder_ndk",
"libcutils",
"liblog",
"libutils",
@@ -96,6 +99,7 @@ cc_library_shared {
],
export_shared_lib_headers: [
"libbinder",
+ "libbinder_ndk",
],
sanitize: {
diff --git a/media/eco/ECOService.cpp b/media/eco/ECOService.cpp
index e95dee5..434485f 100644
--- a/media/eco/ECOService.cpp
+++ b/media/eco/ECOService.cpp
@@ -19,7 +19,6 @@
#include "eco/ECOService.h"
-#include <binder/BinderService.h>
#include <cutils/atomic.h>
#include <inttypes.h>
#include <pthread.h>
@@ -158,4 +157,4 @@ status_t ECOService::dump(int fd, const Vector<String16>& args) {
} // namespace eco
} // namespace media
-} // namespace android \ No newline at end of file
+} // namespace android
diff --git a/media/eco/ECOServiceStatsProvider.cpp b/media/eco/ECOServiceStatsProvider.cpp
index 11947fd..90f1a23 100644
--- a/media/eco/ECOServiceStatsProvider.cpp
+++ b/media/eco/ECOServiceStatsProvider.cpp
@@ -18,6 +18,7 @@
#define LOG_TAG "ECOServiceStatsProvider"
#include <eco/ECOServiceStatsProvider.h>
+#include <binder/IServiceManager.h>
#include <utils/Timers.h>
namespace android {
@@ -34,7 +35,7 @@ ECOServiceStatsProvider::ECOServiceStatsProvider(
mECOSession(session),
mProviderName(name) {
ALOGD("%s, construct with w: %d, h: %d, isCameraRecording: %d, ProviderName:%s",
- __func__, width, height, isCameraRecording, name);
+ __func__, mWidth, mHeight, isCameraRecording, name);
}
Status ECOServiceStatsProvider::getType(int32_t* _aidl_return) {
diff --git a/media/eco/ECOSession.cpp b/media/eco/ECOSession.cpp
index f2791dc..db85571 100644
--- a/media/eco/ECOSession.cpp
+++ b/media/eco/ECOSession.cpp
@@ -19,7 +19,7 @@
//#define DEBUG_ECO_SESSION
#include "eco/ECOSession.h"
-#include <binder/BinderService.h>
+#include <android/binder_ibinder.h>
#include <cutils/atomic.h>
#include <inttypes.h>
#include <pthread.h>
@@ -383,7 +383,7 @@ Status ECOSession::addStatsProvider(
}
ECOLOGV("Try to add stats provider name: %s uid: %d pid %d", ::android::String8(name).c_str(),
- IPCThreadState::self()->getCallingUid(), IPCThreadState::self()->getCallingPid());
+ AIBinder_getCallingUid(), AIBinder_getCallingPid());
if (provider == nullptr) {
ECOLOGE("%s: provider must not be null", __FUNCTION__);
@@ -484,7 +484,7 @@ Status ECOSession::addInfoListener(
}
ECOLOGD("Info listener name: %s uid: %d pid %d", ::android::String8(name).c_str(),
- IPCThreadState::self()->getCallingUid(), IPCThreadState::self()->getCallingPid());
+ AIBinder_getCallingUid(), AIBinder_getCallingPid());
mListener = listener;
mListenerName = name;
diff --git a/media/eco/include/eco/ECOService.h b/media/eco/include/eco/ECOService.h
index cc6dc64..d0d732a 100644
--- a/media/eco/include/eco/ECOService.h
+++ b/media/eco/include/eco/ECOService.h
@@ -18,7 +18,7 @@
#define ANDROID_MEDIA_ECO_SERVICE_H_
#include <android/media/eco/BnECOService.h>
-#include <binder/BinderService.h>
+#include <binder/IServiceManager.h>
#include <utils/Mutex.h>
#include <list>
@@ -50,10 +50,8 @@ using android::media::eco::ECOSession;
* ECOServiceStatsProvider and ECOServiceInfoListener should remove themselves from ECOSession.
* Then ECOService will safely destroy the ECOSession.
*/
-class ECOService : public BinderService<ECOService>,
- public BnECOService,
+class ECOService : public BnECOService,
public virtual IBinder::DeathRecipient {
- friend class BinderService<ECOService>;
public:
ECOService();
@@ -67,6 +65,14 @@ public:
virtual Status getSessions(::std::vector<sp<IBinder>>* _aidl_return);
+ static status_t instantiate() {
+ bool allowIsolated = false;
+ int dumpFlags = IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT;
+ sp<IServiceManager> sm(defaultServiceManager());
+ return sm->addService(String16(getServiceName()), new ECOService(), allowIsolated,
+ dumpFlags);
+ }
+
// Implementation of BinderService<T>
static char const* getServiceName() { return "media.ecoservice"; }
diff --git a/media/eco/include/eco/ECOServiceInfoListener.h b/media/eco/include/eco/ECOServiceInfoListener.h
index 8a08a69..86d379f 100644
--- a/media/eco/include/eco/ECOServiceInfoListener.h
+++ b/media/eco/include/eco/ECOServiceInfoListener.h
@@ -19,7 +19,6 @@
#include <android/media/eco/BnECOServiceInfoListener.h>
#include <android/media/eco/IECOSession.h>
-#include <binder/BinderService.h>
#include <condition_variable>
#include <memory>
@@ -37,10 +36,8 @@ using ::android::binder::Status;
/**
* ECOServiceInfoListener interface class.
*/
-class ECOServiceInfoListener : public BinderService<IECOServiceInfoListener>,
- public BnECOServiceInfoListener,
+class ECOServiceInfoListener : public BnECOServiceInfoListener,
public virtual IBinder::DeathRecipient {
- friend class BinderService<IECOServiceInfoListener>;
public:
// Create a ECOServiceInfoListener with specifed width, height and isCameraRecording.
diff --git a/media/eco/include/eco/ECOServiceStatsProvider.h b/media/eco/include/eco/ECOServiceStatsProvider.h
index ed0ca7d..c81f0b8 100644
--- a/media/eco/include/eco/ECOServiceStatsProvider.h
+++ b/media/eco/include/eco/ECOServiceStatsProvider.h
@@ -20,7 +20,6 @@
#include <android/media/eco/BnECOServiceStatsProvider.h>
#include <android/media/eco/IECOSession.h>
#include <android/media/eco/IECOService.h>
-#include <binder/BinderService.h>
#include <condition_variable>
#include <memory>
@@ -39,10 +38,8 @@ using ::android::binder::Status;
/**
* ECOServiceStatsProvider interface class.
*/
-class ECOServiceStatsProvider : public BinderService<IECOServiceStatsProvider>,
- public BnECOServiceStatsProvider,
+class ECOServiceStatsProvider : public BnECOServiceStatsProvider,
public virtual IBinder::DeathRecipient {
- friend class BinderService<IECOServiceStatsProvider>;
public:
virtual ~ECOServiceStatsProvider() {}
diff --git a/media/eco/include/eco/ECOSession.h b/media/eco/include/eco/ECOSession.h
index 90f9d94..9fb0bdc 100644
--- a/media/eco/include/eco/ECOSession.h
+++ b/media/eco/include/eco/ECOSession.h
@@ -19,7 +19,6 @@
#include <android/media/eco/BnECOSession.h>
#include <android/media/eco/IECOServiceStatsProvider.h>
-#include <binder/BinderService.h>
#include <condition_variable>
#include <deque>
@@ -47,10 +46,8 @@ using ::android::binder::Status;
* it only supports resolution of up to 720P and only for camera recording use case. Also, it only
* supports encoder as the provider and camera as listener.
*/
-class ECOSession : public BinderService<ECOSession>,
- public BnECOSession,
+class ECOSession : public BnECOSession,
public virtual IBinder::DeathRecipient {
- friend class BinderService<ECOSession>;
public:
virtual ~ECOSession();
diff --git a/media/eco/tests/Android.bp b/media/eco/tests/Android.bp
index 70390cc..abd8037 100644
--- a/media/eco/tests/Android.bp
+++ b/media/eco/tests/Android.bp
@@ -3,20 +3,15 @@ package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
-cc_defaults{
- name : "libmedia_ecoservice_tests_defaults",
- cflags : [
+cc_defaults {
+ name: "libmedia_ecoservice_tests_defaults",
+ cflags: [
"-Wall",
"-Werror",
],
-}
-
-cc_test {
- name: "EcoDataTest",
- defaults: ["libmedia_ecoservice_tests_defaults"],
- srcs: ["EcoDataTest.cpp"],
shared_libs: [
"libbinder",
+ "libbinder_ndk",
"libcutils",
"libutils",
"liblog",
@@ -25,20 +20,18 @@ cc_test {
}
cc_test {
+ name: "EcoDataTest",
+ defaults: ["libmedia_ecoservice_tests_defaults"],
+ srcs: ["EcoDataTest.cpp"],
+}
+
+cc_test {
name: "EcoSessionTest",
defaults: ["libmedia_ecoservice_tests_defaults"],
srcs: [
"EcoSessionTest.cpp",
"FakeECOServiceStatsProvider.cpp",
"FakeECOServiceInfoListener.cpp",
- ],
-
- shared_libs: [
- "libbinder",
- "libcutils",
- "libutils",
- "liblog",
- "libmedia_ecoservice",
],
}
@@ -50,13 +43,5 @@ cc_test {
"EcoServiceTest.cpp",
"FakeECOServiceStatsProvider.cpp",
"FakeECOServiceInfoListener.cpp",
- ],
-
- shared_libs: [
- "libbinder",
- "libcutils",
- "libutils",
- "liblog",
- "libmedia_ecoservice",
],
}
diff --git a/media/eco/tests/EcoServiceTest.cpp b/media/eco/tests/EcoServiceTest.cpp
index 7b5f227..df54c53 100644
--- a/media/eco/tests/EcoServiceTest.cpp
+++ b/media/eco/tests/EcoServiceTest.cpp
@@ -22,6 +22,7 @@
#include <android-base/unique_fd.h>
#include <binder/Parcel.h>
#include <binder/Parcelable.h>
+#include <binder/IServiceManager.h>
#include <cutils/ashmem.h>
#include <gtest/gtest.h>
#include <math.h>
diff --git a/media/eco/tests/FakeECOServiceInfoListener.cpp b/media/eco/tests/FakeECOServiceInfoListener.cpp
index 2a4a285..10a6851 100644
--- a/media/eco/tests/FakeECOServiceInfoListener.cpp
+++ b/media/eco/tests/FakeECOServiceInfoListener.cpp
@@ -20,8 +20,6 @@
#include "FakeECOServiceInfoListener.h"
#include <android-base/unique_fd.h>
-#include <binder/IPCThreadState.h>
-#include <binder/IServiceManager.h>
#include <binder/Parcel.h>
#include <binder/Parcelable.h>
#include <cutils/ashmem.h>
diff --git a/media/eco/tests/FakeECOServiceInfoListener.h b/media/eco/tests/FakeECOServiceInfoListener.h
index 9974b63..7c23275 100644
--- a/media/eco/tests/FakeECOServiceInfoListener.h
+++ b/media/eco/tests/FakeECOServiceInfoListener.h
@@ -19,7 +19,6 @@
#include <android-base/unique_fd.h>
#include <android/media/eco/BnECOServiceInfoListener.h>
#include <android/media/eco/IECOSession.h>
-#include <binder/BinderService.h>
#include <binder/Parcel.h>
#include <binder/Parcelable.h>
#include <cutils/ashmem.h>
diff --git a/media/eco/tests/FakeECOServiceStatsProvider.cpp b/media/eco/tests/FakeECOServiceStatsProvider.cpp
index 883a830..4bf0ca4 100644
--- a/media/eco/tests/FakeECOServiceStatsProvider.cpp
+++ b/media/eco/tests/FakeECOServiceStatsProvider.cpp
@@ -20,8 +20,6 @@
#include "FakeECOServiceStatsProvider.h"
#include <android-base/unique_fd.h>
-#include <binder/IPCThreadState.h>
-#include <binder/IServiceManager.h>
#include <binder/Parcel.h>
#include <binder/Parcelable.h>
#include <cutils/ashmem.h>
diff --git a/media/eco/tests/FakeECOServiceStatsProvider.h b/media/eco/tests/FakeECOServiceStatsProvider.h
index 0f60d02..bf14a53 100644
--- a/media/eco/tests/FakeECOServiceStatsProvider.h
+++ b/media/eco/tests/FakeECOServiceStatsProvider.h
@@ -18,7 +18,6 @@
#include <android-base/unique_fd.h>
#include <android/media/eco/BnECOServiceStatsProvider.h>
-#include <binder/BinderService.h>
#include <binder/Parcel.h>
#include <binder/Parcelable.h>
#include <cutils/ashmem.h>