Mount gadget resource paths for NUIGadget
[platform/core/appfw/launchpad.git] / src / launchpad-process-pool / loader_factory.cc
index e62b8c3..5d9b604 100644 (file)
@@ -75,7 +75,7 @@ LoaderFactory& LoaderFactory::GetInst() {
 }
 
 std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
-    LoaderInfoPtr info) {
+    LoaderInfoPtr info, std::shared_ptr<LoaderMount> loader_mount) {
   auto app_types = GetAppTypeString(info);
   int loader_id = static_cast<int>((info->GetExe() == "null") ?
       PadLoaderId::Direct : PadLoaderId::Static);
@@ -85,12 +85,14 @@ std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
       context = HydraLoaderContext::Builder()
         .SetLoaderInfo(std::move(info))
         .SetLoaderId(loader_id)
-        .SetActive();
+        .SetActive()
+        .SetLoaderMount(std::move(loader_mount));
     } else {
       context = LoaderContext::Builder()
         .SetLoaderInfo(std::move(info))
         .SetLoaderId(loader_id)
-        .SetActive();
+        .SetActive()
+        .SetLoaderMount(std::move(loader_mount));
     }
   } catch (const Exception& e) {
     _E("Exception occurs. error(%s)", e.what());
@@ -109,7 +111,7 @@ std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
 }
 
 std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
-    tizen_base::Bundle b) {
+    tizen_base::Bundle b, std::shared_ptr<LoaderMount> loader_mount) {
   auto caller_pid = b.GetString(kAulCallerPid);
   if (caller_pid.empty())
     return nullptr;
@@ -126,7 +128,8 @@ std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
         .SetLoaderInfo(std::move(loader_info))
         .SetLoaderId(loader_id)
         .SetCallerPid(std::stoi(caller_pid))
-        .SetActive();
+        .SetActive()
+        .SetLoaderMount(std::move(loader_mount));
     if (context == nullptr)
         return nullptr;
   } catch (const Exception& e) {
@@ -138,7 +141,8 @@ std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
 }
 
 std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
-    LoaderInfoPtr info, pid_t caller_pid) {
+    LoaderInfoPtr info, pid_t caller_pid,
+    std::shared_ptr<LoaderMount> loader_mount) {
   int loader_id = MakeDynamicLoaderId();
   LoaderContext* context;
   try {
@@ -146,7 +150,8 @@ std::shared_ptr<LoaderContext> LoaderFactory::CreateLoaderContext(
         .SetLoaderInfo(std::move(info))
         .SetLoaderId(loader_id)
         .SetCallerPid(caller_pid)
-        .SetActive();
+        .SetActive()
+        .SetLoaderMount(std::move(loader_mount));
     if (context == nullptr)
       return nullptr;
   } catch (const Exception& e) {