AddAbortStep(&TaskFileManipulation::StepAbortRenamePath);
}
AddStep(&TaskFileManipulation::StepCreatePrivateStorageDir);
+ AddStep(&TaskFileManipulation::StepCreateSharedFolder);
AddStep(&TaskFileManipulation::StepLinkForPreload);
} else {
AddStep(&TaskFileManipulation::StepPrepareExternalDir);
AddStep(&TaskFileManipulation::StepInstallToExternal);
AddStep(&TaskFileManipulation::StepCreatePrivateStorageDir);
+ AddStep(&TaskFileManipulation::StepCreateSharedFolder);
AddAbortStep(&TaskFileManipulation::StepAbortCreateExternalDir);
}
}
WidgetInstallToExtSingleton::Instance().deinitialize();
}
+
+void TaskFileManipulation::StepCreateSharedFolder()
+{
+ LogDebug("StepCreateSharedFolder");
+ std::string sharedPath = m_context.locations->getSharedRootDir();
+ LogDebug("Create shared directory : " <<
+ m_context.locations->getSharedRootDir());
+
+ WrtUtilMakeDir(sharedPath);
+
+ if (m_context.isUpdateMode) { //update
+ std::string backData = m_context.locations->getBackupSharedDir();
+ LogDebug("copy shared storage " << backData << " to " << sharedPath);
+ if (!DirectoryApi::DirectoryCopy(backData, sharedPath)) {
+ LogError("Failed to rename " << backData << " to " << sharedPath);
+ ThrowMsg(Exceptions::BackupFailed,
+ "Error occurs copy shared strage files");
+ }
+ } else {
+ WrtUtilMakeDir(m_context.locations->getSharedResourceDir());
+ WrtUtilMakeDir(m_context.locations->getSharedDataDir());
+ WrtUtilMakeDir(m_context.locations->getSharedTrustedDir());
+ }
+}
} //namespace WidgetInstall
} //namespace Jobs
{
m_appid = appid;
}
+
+std::string WidgetLocation::getSharedRootDir() const
+{
+ /* TODO : add wrt-commons*/
+ return getUserDataRootDir() + "/shared";
+}
+
+std::string WidgetLocation::getSharedResourceDir() const
+{
+ return getSharedRootDir() + "/res";
+}
+
+std::string WidgetLocation::getSharedDataDir() const
+{
+ return getSharedRootDir() + "/data";
+}
+
+std::string WidgetLocation::getSharedTrustedDir() const
+{
+ return getSharedRootDir() + "/trusted";
+}
+
+std::string WidgetLocation::getBackupSharedDir() const
+{
+ return getBackupDir() + "/shared";
+}
std::string getBackupPrivateDir() const; // /opt/apps/[pkg].backup/data
std::string getUserDataRootDir() const; // /opt/usr/apps/[package]
std::string getPrivateStorageDir() const; // /opt/usr/apps/[package]/data
+ std::string getSharedRootDir() const; // /opt/usr/apps/[package]/shared
+ std::string getSharedResourceDir() const; // /opt/usr/apps/[package]/shared/res
+ std::string getSharedDataDir() const; // /opt/usr/apps/[package]/shared/data
+ std::string getSharedTrustedDir() const; // /opt/usr/apps/[package]/shared/trusted
+ std::string getBackupSharedDir() const; // /opt/usr/apps/[package].backup/shared
// Temporary paths
/**