#include <widget_uninstall/widget_uninstall_errors.h>
#include <dpl/wrt-dao-ro/global_config.h>
#include <dpl/wrt-dao-ro/widget_dao_read_only.h>
-#include <installer_log.h>
+#include <dpl/log/secure_log.h>
+
+#if USE(CORE_HYBRID_PKG)
+#include <dpl/utils/wrt_utility.h>
+#endif
using namespace WrtDB;
namespace {
const int MAX_BUF_SIZE = 128;
+
+#if USE(CORE_HYBRID_PKG)
+const char* CORE_UNINSTALL_STR = "/usr/etc/package-manager/backend/rpm -uv ";
+const char* const CORE_MANIFEST_XML = "tizen-manifest.xml";
+#else
const char* OSP_INSTALL_STR = "/usr/etc/package-manager/backend/tpk -uv ";
+#endif
}
namespace Jobs {
_D("Step : Uninstall Osp service");
std::ostringstream commStr;
- commStr << OSP_INSTALL_STR << BashUtils::escape_arg(m_context.tzPkgid);
- _D("osp uninstall command : %s", commStr.str().c_str());
+#if USE(CORE_HYBRID_PKG)
+ WidgetDAOReadOnly dao(WidgetDAOReadOnly::getTizenAppId(DPL::FromUTF8String(m_context.tzPkgid)));
+ std::string pkgPath = DPL::ToUTF8String(*dao.getWidgetInstalledPath());
+ if (bf::exists(bf::path(pkgPath + "/" + CORE_MANIFEST_XML)))
+ commStr << CORE_UNINSTALL_STR << BashUtils::escape_arg(m_context.tzPkgid);
+#else
+ commStr << OSP_INSTALL_STR << BashUtils::escape_arg(m_context.tzPkgid);
+#endif
+ _D("Hybrid uninstall command : %s", commStr.str().c_str());
char readBuf[MAX_BUF_SIZE];
FILE *fd;
void TaskUninstallOspsvc::StartStep()
{
- _D("--------- <TaskUninstallOspsvc> : START ----------");
+ LOGI("--------- <TaskUninstallOspsvc> : START ----------");
}
void TaskUninstallOspsvc::EndStep()
{
- _D("--------- <TaskUninstallOspsvc> : END ----------");
+ LOGI("--------- <TaskUninstallOspsvc> : END ----------");
}
} //namespace WidgetUninstall
} //namespace Jobs