MediaTranscodingService: Simplify TranscodingClientManager.
Change the singleton to return reference instead of sp<>;
Bug: 145233472
Test: Unit test.
Change-Id: Ie5b8631ec9e917d80805f63c77618e24720f53bc
diff --git a/services/mediatranscoding/MediaTranscodingService.cpp b/services/mediatranscoding/MediaTranscodingService.cpp
index 480844e..82d4161 100644
--- a/services/mediatranscoding/MediaTranscodingService.cpp
+++ b/services/mediatranscoding/MediaTranscodingService.cpp
@@ -45,9 +45,9 @@
}
}
-MediaTranscodingService::MediaTranscodingService() {
+MediaTranscodingService::MediaTranscodingService()
+ : mTranscodingClientManager(TranscodingClientManager::getInstance()) {
ALOGV("MediaTranscodingService is created");
- mTranscodingClientManager = TranscodingClientManager::getInstance();
}
MediaTranscodingService::~MediaTranscodingService() {
@@ -64,7 +64,7 @@
write(fd, result.string(), result.size());
Vector<String16> args;
- mTranscodingClientManager->dumpAllClients(fd, args);
+ mTranscodingClientManager.dumpAllClients(fd, args);
return OK;
}
@@ -124,7 +124,7 @@
int32_t clientId = in_clientPid;
// Checks if the client already registers.
- if (mTranscodingClientManager->isClientIdRegistered(clientId)) {
+ if (mTranscodingClientManager.isClientIdRegistered(clientId)) {
return Status::fromServiceSpecificError(ERROR_ALREADY_EXISTS);
}
@@ -132,7 +132,7 @@
std::unique_ptr<TranscodingClientManager::ClientInfo> newClient =
std::make_unique<TranscodingClientManager::ClientInfo>(
in_client, clientId, in_clientPid, in_clientUid, in_opPackageName);
- status_t err = mTranscodingClientManager->addClient(std::move(newClient));
+ status_t err = mTranscodingClientManager.addClient(std::move(newClient));
if (err != OK) {
*_aidl_return = kInvalidClientId;
return STATUS_ERROR_FMT(err, "Failed to add client to TranscodingClientManager");
@@ -164,13 +164,13 @@
}
}
- *_aidl_return = (mTranscodingClientManager->removeClient(clientId) == OK);
+ *_aidl_return = (mTranscodingClientManager.removeClient(clientId) == OK);
return Status::ok();
}
Status MediaTranscodingService::getNumOfClients(int32_t* _aidl_return) {
ALOGD("MediaTranscodingService::getNumOfClients");
- *_aidl_return = mTranscodingClientManager->getNumOfClients();
+ *_aidl_return = mTranscodingClientManager.getNumOfClients();
return Status::ok();
}