Change IsDownloaded() API
authorDuyoung Jang <duyoung.jang@samsung.com>
Tue, 28 May 2013 00:02:47 +0000 (09:02 +0900)
committerDuyoung Jang <duyoung.jang@samsung.com>
Tue, 28 May 2013 00:08:16 +0000 (09:08 +0900)
Change-Id: If7181ee61fb0c03bbd769d3e611ddd19173aa51f
Signed-off-by: Duyoung Jang <duyoung.jang@samsung.com>
src/app/package/FAppPkg_PackageInfoImpl.cpp

index 5295cc7..a819fb1 100755 (executable)
@@ -1040,7 +1040,9 @@ _PackageInfoImpl::Construct(const PackageId& packageId)
        int installedTime = 0;
        pkgmgrinfo_installed_storage storage = PMINFO_INTERNAL_STORAGE;
        bool removable = true;
+       bool movable = true;
        bool preloaded = true;
+       bool updated = true;
 
        std::unique_ptr<char[]> pPackageId(_StringConverter::CopyToCharArrayN(packageId));
        SysTryReturnResult(NID_APP, pPackageId, E_OUT_OF_MEMORY, "pPackageId is null");
@@ -1118,17 +1120,46 @@ _PackageInfoImpl::Construct(const PackageId& packageId)
                SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_removable() is failed. result = [%d]", result);
        }
 
-       result = pkgmgrinfo_pkginfo_is_preload(__packageInfoHandle, &preloaded);
+       result = pkgmgrinfo_pkginfo_is_movable(__packageInfoHandle, &movable);
        if (result == PMINFO_R_OK)
        {
-               if (preloaded == false)
+               __movable = movable;
+       }
+       else
+       {
+               SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_movable() is failed. result = [%d]", result);
+       }
+
+       result = pkgmgrinfo_pkginfo_is_update(__packageInfoHandle, &updated);
+       if (result == PMINFO_R_OK)
+       {
+               if (updated == true)
                {
                        __downloaded = true;
                }
+               else
+               {
+                       result = pkgmgrinfo_pkginfo_is_preload(__packageInfoHandle, &preloaded);
+                       if (result == PMINFO_R_OK)
+                       {
+                               if (preloaded == true)
+                               {
+                                       __downloaded = false;
+                               }
+                               else
+                               {
+                                       __downloaded = true;
+                               }
+                       }
+                       else
+                       {
+                               SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_preload() is failed. result = [%d]", result);
+                       }
+               }
        }
        else
        {
-               SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_preload() is failed. result = [%d]", result);
+               SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_update() is failed. result = [%d]", result);
        }
 
        result = pkgmgrinfo_pkginfo_get_description(__packageInfoHandle, &pDescription);
@@ -1232,10 +1263,10 @@ _PackageInfoImpl::Construct(const PackageId& packageId)
                SysLog(NID_APP, "pkgmgrinfo_pkginfo_get_root_path() is failed. result = [%d]", result);
        }
 
-       SysLog(NID_APP, "package(%ls), version(%ls), type(%ls), displayName(%ls), uninstallable(%d), downloaded(%d), "
-                                                                       "externalStorage(%d), mainApp(%ls), storeClient(%ls), appRootPath(%ls)",
-                       __id.GetPointer(), __version.GetPointer(), __type.GetPointer(), __displayName.GetPointer(), __uninstallable, __downloaded,
-                       __externalStorage, __mainAppId.GetPointer(), __storeClientId.GetPointer(), __appRootPath.GetPointer());
+       SysLog(NID_APP, "package(%ls), version(%ls), type(%ls), displayName(%ls), uninstallable(%d), downloaded(%d), updated(%d), preloaded(%d)"
+                                                                       "movable(%d), externalStorage(%d), mainApp(%ls), storeClient(%ls), appRootPath(%ls)",
+                       __id.GetPointer(), __version.GetPointer(), __type.GetPointer(), __displayName.GetPointer(), __uninstallable, __downloaded, updated, preloaded,
+                       __movable, __externalStorage, __mainAppId.GetPointer(), __storeClientId.GetPointer(), __appRootPath.GetPointer());
 
        return r;
 }