WidgetHandle removal - part 3.
authorTomasz Iwanek <t.iwanek@samsung.com>
Tue, 23 Oct 2012 14:18:14 +0000 (16:18 +0200)
committerTaejeong Lee <taejeong.lee@samsung.com>
Fri, 2 Nov 2012 07:20:11 +0000 (16:20 +0900)
[Issue#]       N/A
[Feature]      Removes widget handle usages: debug, widget info at installtion success etc.
[Cause]        N/A
[Solution]     N/A
[Verification] Install, reinstall, uninstall any widget.
[SCMRequest]   Depends on wrt-commons chanegs:
http://slp-info.sec.samsung.net/gerrit/#/c/105113/

Changes from commons differs only with widget construction from pkgname which is tested in previous commits, so no advanced method of verification is needed.

Change-Id: Ib920c3af09672a8a3dde62a357618083e5a6aa08

src/commons/wrt_common_types.h
src/jobs/widget_install/job_widget_install.cpp
src/jobs/widget_install/job_widget_install.h
src/jobs/widget_install/task_widget_config.cpp
src/misc/feature_logic.cpp
src/misc/feature_logic.h
src/pkg-manager/backendlib.cpp
src/wrt-installer/wrt_installer.cpp

index 9b80c8a..49b3100 100644 (file)
 */
 typedef DPL::Optional<WidgetVersion> OptionalWidgetVersion;
 
-
 /* Define db type */
-typedef WrtDB::DbWidgetHandle WidgetHandle;
-typedef WrtDB::DbWidgetHandleList WidgetHandleList;
-
 typedef WrtDB::DbWidgetFeature WidgetFeature;
 typedef WrtDB::DbWidgetFeatureSet WidgetFeatureSet;
 
index 11e2b25..8f9df0c 100755 (executable)
@@ -662,7 +662,7 @@ void JobWidgetInstall::displayWidgetInfo()
 
     std::ostringstream out;
     WidgetLocalizedInfo localizedInfo =
-        W3CFileLocalization::getLocalizedInfo(dao.getHandle()); //TODO: pkgname arg
+        W3CFileLocalization::getLocalizedInfo(*dao.getPkgname());
 
     out << std::endl <<
         "===================================== INSTALLED WIDGET INFO ========="\
@@ -673,7 +673,7 @@ void JobWidgetInstall::displayWidgetInfo()
     out << std::endl << "Width:                       " << size.width;
     out << std::endl << "Height:                      " << size.height;
     out << std::endl << "Start File:                  " <<
-        W3CFileLocalization::getStartFile(dao.getHandle()); //TODO: pkgname arg
+        W3CFileLocalization::getStartFile(*dao.getPkgname());
     out << std::endl << "Version:                     " << dao.getVersion();
     out << std::endl << "Licence:                     " <<
         localizedInfo.license;
@@ -688,7 +688,7 @@ void JobWidgetInstall::displayWidgetInfo()
         dao.isDistributorSigned();
     out << std::endl << "Widget trusted:              " << dao.isTrusted();
 
-    OptionalWidgetIcon icon = W3CFileLocalization::getIcon(dao.getHandle()); //TODO: pkgname arg
+    OptionalWidgetIcon icon = W3CFileLocalization::getIcon(*dao.getPkgname());
     DPL::OptionalString iconSrc =
         !!icon ? icon->src : DPL::OptionalString::Null;
     out << std::endl << "Icon:                        " << iconSrc;
index 671f7fd..6e4281b 100644 (file)
@@ -42,8 +42,6 @@ class JobWidgetInstall :
     public JobContextBase<WidgetInstallationStruct>   //TODO typedef
 {
   private:
-    typedef DPL::Optional<WidgetHandle> OptionalWidgetHandle;
-
     InstallerContext m_installerContext;
 
     //TODO move it to base class of all jobs -> make it base template class??
index 66f4eea..c1f0706 100644 (file)
@@ -48,7 +48,6 @@
 
 
 namespace { // anonymous
-const WidgetHandle WIDGET_HANDLE_START_VALUE = 1000;
 const DPL::String BR = DPL::FromUTF8String("<br>");
 const std::string WIDGET_NOT_COMPATIBLE = "This widget is "
         "not compatible with WRT.<br><br>";
index 0c2f161..bef730f 100644 (file)
@@ -29,7 +29,7 @@
 namespace Jobs {
 namespace WidgetInstall {
 
-FeatureLogic::FeatureLogic(WidgetHandle handle)
+FeatureLogic::FeatureLogic(WrtDB::DbWidgetHandle handle)
   : m_rejected(false)
 {
     WrtDB::WidgetDAOReadOnly widgetDao(handle);
index 8c38c6f..da3731b 100644 (file)
@@ -33,7 +33,7 @@ namespace WidgetInstall {
 class FeatureLogic : DPL::Noncopyable {
   public:
 
-    FeatureLogic(WidgetHandle handle);
+    FeatureLogic(WrtDB::DbWidgetHandle handle);
 
     bool isDone() const;
 
index 372ffbd..639df95 100644 (file)
@@ -91,10 +91,10 @@ static int pkg_plugin_get_installed_apps_list(const char * /*category*/,
 
 
     WrtDB::WrtDatabase::attachToThreadRO();
-    WidgetHandleList hndlList = WidgetDAOReadOnly::getHandleList();
+    WidgetPkgNameList pkgnameslList = WidgetDAOReadOnly::getPkgnameList();
     *count = 0;
 
-    FOREACH(iterator, hndlList) {
+    FOREACH(iterator, pkgnameslList) {
         package_manager_pkg_info_t *pkg_info =
             static_cast<package_manager_pkg_info_t*>
             (malloc(sizeof(package_manager_pkg_info_t)));
@@ -110,13 +110,11 @@ static int pkg_plugin_get_installed_apps_list(const char * /*category*/,
             pkg_last->next = pkg_info;
         }
 
-        WidgetDAOReadOnly widget(*iterator);
-        DPL::Optional<DPL::String> pkgname = widget.getPkgname();
+        WidgetPkgName pkgname = **iterator;
+        WidgetDAOReadOnly widget(pkgname);
         strncpy(pkg_info->pkg_type, "wgt", PKG_TYPE_STRING_LEN_MAX);
-        if(!pkgname.IsNull()) {
-            snprintf(pkg_info->pkg_name, PKG_NAME_STRING_LEN_MAX, "%s",
-                    DPL::ToUTF8String(*pkgname).c_str());
-        }
+        snprintf(pkg_info->pkg_name, PKG_NAME_STRING_LEN_MAX, "%s",
+                DPL::ToUTF8String(pkgname).c_str());
 
         DPL::Optional<DPL::String> version = widget.getVersion();
         if (!version.IsNull()) {
index ba86072..354cb5a 100644 (file)
@@ -204,20 +204,6 @@ void WrtInstaller::OnCreate()
                 LogDebug("Not available type");
                 break;
         }
-    } else {
-        // Launch widget based on application basename
-        size_t pos = arg.find_last_of('/');
-
-        if (pos != std::string::npos) {
-            arg = arg.erase(0, pos + 1);
-        }
-
-        if (sscanf(arg.c_str(), "%i", &m_handle) != 1) {
-            printf("failed: invalid widget handle\n");
-            return showHelpAndQuit();
-        }
-
-        LogDebug("Widget Id: " << m_handle << " (" << arg << ")");
     }
 
     AddStep(&WrtInstaller::shutdownStep);