refinement of osp-appfw log messages
[platform/framework/native/appfw.git] / src / app / package / FAppPkg_PackageAppInfoImpl.cpp
index ad1169b..1081299 100755 (executable)
@@ -167,74 +167,61 @@ _PackageAppInfoImpl::GetAppMenuIconN(void) const
 HashMap*
 _PackageAppInfoImpl::GetAppMetadataListN(void) const
 {
-       HashMap* pMap = null;
-
        if (__fromDatabase)
        {
                SysTryReturn(NID_APP, __pAppInfoHandle, null, E_SYSTEM, "__pAppInfoHandle is null.");
 
-               result r = E_SUCCESS;
                int res = PMINFO_R_OK;
 
-               pMap = new (std::nothrow) HashMap();
+               std::unique_ptr< HashMap > pMap(new (std::nothrow) HashMap());
                SysTryReturn(NID_APP, pMap, null, E_OUT_OF_MEMORY, "ArrayList creation failure.");
                pMap->Construct();
 
-               res = pkgmgrinfo_appinfo_foreach_metadata(__pAppInfoHandle, MetadataHandler, pMap);
-               if (res != PMINFO_R_OK)
-               {
-                       SysLog(NID_APP, "pkgmgrinfo_appinfo_foreach_metadata() is failed. result = [%d]", res);
-                       r = E_SYSTEM;
+               res = pkgmgrinfo_appinfo_foreach_metadata(__pAppInfoHandle, MetadataHandler, pMap.get());
+               SysTryReturn(NID_APP, res == PMINFO_R_OK, null, E_SYSTEM, "pkgmgrinfo_appinfo_foreach_metadata() failed. [%d]", res);
 
-                       pMap->RemoveAll(true);
-                       pMap = null;
+               if (pMap->GetCount() <= 0)
+               {
+                       return null;
                }
 
-               SetLastResult(r);
+               return pMap.release();
        }
        else
        {
                SysLog(NID_APP, "GetAppMetadataListN() is not available.");
+               return null;
        }
-
-       return pMap;
 }
 
 ArrayList*
 _PackageAppInfoImpl::GetAppCategoryListN(void) const
 {
-       ArrayList* pList = null;
-
        if (__fromDatabase)
        {
                SysTryReturn(NID_APP, __pAppInfoHandle, null, E_SYSTEM, "[E_SYSTEM] __pAppInfoHandle is null.");
 
-               result r = E_SUCCESS;
                int res = PMINFO_R_OK;
 
-               pList = new (std::nothrow) ArrayList();
+               std::unique_ptr< ArrayList > pList(new (std::nothrow) ArrayList());
                SysTryReturn(NID_APP, pList, null, E_OUT_OF_MEMORY, "ArrayList creation failure.");
                pList->Construct();
 
-               res = pkgmgrinfo_appinfo_foreach_category(__pAppInfoHandle, CategoryHandler, pList);
-               if (res != PMINFO_R_OK)
-               {
-                       SysLog(NID_APP, "pkgmgrinfo_appinfo_foreach_category() is failed. result = [%d]", res);
-                       r = E_SYSTEM;
+               res = pkgmgrinfo_appinfo_foreach_category(__pAppInfoHandle, CategoryHandler, pList.get());
+               SysTryReturn(NID_APP, res == PMINFO_R_OK, null, E_SYSTEM, "pkgmgrinfo_appinfo_foreach_category() failed. [%d]", res);
 
-                       pList->RemoveAll(true);
-                       pList = null;
+               if (pList->GetCount() <= 0)
+               {
+                       return null;
                }
 
-               SetLastResult(r);
-
+               return pList.release();
        }
        else
        {
                SysLog(NID_APP, "GetAppCategoryListN() is not available.");
+               return null;
        }
-
-       return pList;
 }
 
 bool
@@ -320,6 +307,8 @@ _PackageAppInfoImpl::GetInstance(PackageAppInfo* pPackageAppInfo)
 result
 _PackageAppInfoImpl::Construct(const AppId& appId)
 {
+       SysTryReturnResult(NID_APP, appId.IsEmpty() == false, E_INVALID_ARG, "appId is empty.");
+
        int res = PMINFO_R_OK;
        char* pExePath = null;
        char* pDisplayName = null;
@@ -333,7 +322,7 @@ _PackageAppInfoImpl::Construct(const AppId& appId)
        SysTryReturnResult(NID_APP, pAppId, E_OUT_OF_MEMORY, "pAppId is null");
 
        res = pkgmgrinfo_appinfo_get_appinfo(pAppId.get(), &__pAppInfoHandle);
-       SysTryReturnResult(NID_APP, res == 0, E_SYSTEM, "pkgmgrinfo_appinfo_get_appinfo failed, res = [%d]", res);
+       SysTryReturnResult(NID_APP, res == 0, E_SYSTEM, "pkgmgrinfo_appinfo_get_appinfo failed, res = [%d], app = [%s]", res, pAppId.get());
 
        __fromDatabase = true;
 
@@ -464,7 +453,8 @@ _PackageAppInfoImpl::MetadataHandler(const char* pKey, const char* pValue, void*
        SysLog(NID_APP, "Key = [%s], Value = [%s]", pKey, pValue);
 
        MultiHashMap* pMultiMap = (MultiHashMap*) pUserData;
-       pMultiMap->Add(*(new (std::nothrow) String(pKey)), *(new (std::nothrow) String(pValue)));
+       result r = pMultiMap->Add(*(new (std::nothrow) String(pKey)), *(new (std::nothrow) String(pValue)));
+       SysTryReturn(NID_APP, r == E_SUCCESS, -1, E_SYSTEM, "pMultiMap->Add() failed. [%s]", GetErrorMessage(GetLastResult()));
 
        return 0;
 }