bootstrap: Avoid unnecessary object search and clean 87/260987/2 submit/tizen/20210708.061620 submit/tizen/20210708.061625
authorWoochanlee <wc0917.lee@samsung.com>
Thu, 8 Jul 2021 05:40:38 +0000 (14:40 +0900)
committerwoochan lee <wc0917.lee@samsung.com>
Thu, 8 Jul 2021 06:13:22 +0000 (06:13 +0000)
A command that does not create an object no need to clean the object.

Change-Id: I2c4e81a3a8739b2b4e28e8bf98ff8ed68aa961ba

org.tizen.aurum-bootstrap/inc/AurumServiceImpl.h
org.tizen.aurum-bootstrap/src/AurumServiceImpl.cc

index 9c0d63779313d076a304b145e71668f785c8a2a6..10577af4d83c1ae55c9ef31664694b6760942dc3 100644 (file)
@@ -10,7 +10,7 @@ public:
     virtual ~aurumServiceImpl();
 
 protected:
-    ::grpc::Status execute(Command *cmd);
+    ::grpc::Status execute(Command *cmd, bool clean);
 
 public:
     ::grpc::Status killServer(::grpc::ServerContext *  context,
index 705b76836b7c81ee8d0ac56db587af13188c37c5..bf12ff8adab0a2c4ee600cfc1bba875f321137cd 100644 (file)
@@ -17,12 +17,12 @@ aurumServiceImpl::aurumServiceImpl()
     AccessibleWatcher::getInstance();
 }
 
-::grpc::Status aurumServiceImpl::execute(Command* cmd)
+::grpc::Status aurumServiceImpl::execute(Command* cmd, bool clean)
 {
     std::unique_ptr<PreCommand>  proxyPreCmd  = std::make_unique<PreCommand>(cmd);
     std::unique_ptr<PostCommand> proxyPostCmd = std::make_unique<PostCommand>(proxyPreCmd.get());
     ::grpc::Status rst = proxyPostCmd->execute();
-    ObjectMapper::getInstance()->cleanUp();
+    if (clean) ObjectMapper::getInstance()->cleanUp();
     return rst;
 }
 
@@ -36,7 +36,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspEmpty* response)
 {
     std::unique_ptr<KillServerCommand> cmd = std::make_unique<KillServerCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::aurumServiceImpl::findElement(
@@ -44,7 +44,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspFindElement* response)
 {
     std::unique_ptr<FindElementCommand> cmd = std::make_unique<FindElementCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::aurumServiceImpl::click(
@@ -52,7 +52,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspClick* response)
 {
     std::unique_ptr<ClickCommand> cmd = ClickCommand::createCommand(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::getValue(::grpc::ServerContext*      context,
@@ -60,7 +60,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                           ::aurum::RspGetValue*       response)
 {
     std::unique_ptr<GetValueCommand> cmd = std::make_unique<GetValueCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::setValue(::grpc::ServerContext*      context,
@@ -68,7 +68,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                           ::aurum::RspSetValue*       response)
 {
     std::unique_ptr<SetValueCommand> cmd = std::make_unique<SetValueCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::getAttribute(
@@ -76,7 +76,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspGetAttribute* response)
 {
     std::unique_ptr<GetAttributeCommand> cmd = GetAttributeCommand::createCommand(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::getSize(::grpc::ServerContext*     context,
@@ -84,7 +84,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                          ::aurum::RspGetSize*       response)
 {
     std::unique_ptr<GetSizeCommand> cmd = std::make_unique<GetSizeCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::clear(::grpc::ServerContext*   context,
@@ -92,7 +92,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                        ::aurum::RspClear*       response)
 {
     std::unique_ptr<ClearCommand> cmd = std::make_unique<ClearCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }
 
 ::grpc::Status aurumServiceImpl::installApp(
@@ -101,7 +101,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspInstallApp*                        response)
 {
     std::unique_ptr<InstallAppCommand> cmd = std::make_unique<InstallAppCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::removeApp(::grpc::ServerContext*       context,
@@ -109,7 +109,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                            ::aurum::RspRemoveApp* response)
 {
     std::unique_ptr<RemoveAppCommand> cmd = std::make_unique<RemoveAppCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::getAppInfo(
@@ -117,7 +117,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspGetAppInfo* response)
 {
     std::unique_ptr<GetAppInfoCommand> cmd = std::make_unique<GetAppInfoCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::launchApp(::grpc::ServerContext*       context,
@@ -125,7 +125,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                            ::aurum::RspLaunchApp* response)
 {
     std::unique_ptr<LaunchAppCommand> cmd = std::make_unique<LaunchAppCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::closeApp(::grpc::ServerContext*      context,
@@ -133,7 +133,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                           ::aurum::RspCloseApp*       response)
 {
     std::unique_ptr<CloseAppCommand> cmd = std::make_unique<CloseAppCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::touchDown(::grpc::ServerContext*       context,
@@ -141,7 +141,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                            ::aurum::RspTouchDown* response)
 {
     std::unique_ptr<TouchDownCommand> cmd = std::make_unique<TouchDownCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::touchUp(::grpc::ServerContext*     context,
@@ -149,7 +149,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                          ::aurum::RspTouchUp*       response)
 {
     std::unique_ptr<TouchUpCommand> cmd = std::make_unique<TouchUpCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::touchMove(::grpc::ServerContext*       context,
@@ -157,7 +157,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                            ::aurum::RspTouchMove* response)
 {
     std::unique_ptr<TouchMoveCommand> cmd = std::make_unique<TouchMoveCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::longClick(::grpc::ServerContext*   context,
@@ -165,7 +165,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                            ::aurum::RspClick*       response)
 {
     std::unique_ptr<LongClickCommand> cmd = std::make_unique<LongClickCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::flick(::grpc::ServerContext*   context,
@@ -173,7 +173,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                        ::aurum::RspFlick*       response)
 {
     std::unique_ptr<FlickCommand> cmd = std::make_unique<FlickCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::getDeviceTime(
@@ -181,7 +181,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspGetDeviceTime* response)
 {
     std::unique_ptr<GetDeviceTimeCommand> cmd = std::make_unique<GetDeviceTimeCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::getLocation(
@@ -189,7 +189,7 @@ aurumServiceImpl::~aurumServiceImpl()
     ::aurum::RspGetLocation* response)
 {
     std::unique_ptr<GetLocationCommand> cmd = std::make_unique<GetLocationCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::sendKey(::grpc::ServerContext* context,
@@ -197,7 +197,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                          ::aurum::RspKey*       response)
 {
     std::unique_ptr<SendKeyCommand> cmd = std::make_unique<SendKeyCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::takeScreenshot(::grpc::ServerContext* context,
@@ -205,7 +205,7 @@ aurumServiceImpl::~aurumServiceImpl()
                                                 ::grpc::ServerWriter< ::aurum::RspTakeScreenshot>* writer)
 {
     std::unique_ptr<TakeScreenshotCommand> cmd = std::make_unique<TakeScreenshotCommand>(request, writer);
-    return execute(cmd.get());
+    return execute(cmd.get(), false);
 }
 
 ::grpc::Status aurumServiceImpl::dumpObjectTree(::grpc::ServerContext *context,
@@ -213,5 +213,5 @@ aurumServiceImpl::~aurumServiceImpl()
                            ::aurum::RspDumpObjectTree *      response)
 {
     std::unique_ptr<DumpObjectTreeCommand> cmd = std::make_unique<DumpObjectTreeCommand>(request, response);
-    return execute(cmd.get());
+    return execute(cmd.get(), true);
 }