#include <FIoDatabase.h>
#include <FIoDbEnumerator.h>
#include <FIoDbStatement.h>
+#include <FIoFile.h>
#include <FBaseSysLog.h>
#include <FBaseUtilStringTokenizer.h>
#include <FSecPrivilegeInfo.h>
if (__fromDatabase)
{
SysTryReturn(NID_APP, __id.IsEmpty() == false, 0, E_SYSTEM, "id is IsEmpty.");
+ SysTryReturn(NID_APP, __type.IsEmpty() == false, 0, E_SYSTEM, "type is IsEmpty.");
std::unique_ptr<char[]> pPackage(_StringConverter::CopyToCharArrayN(__id));
SysTryReturn(NID_APP, pPackage, 0, E_OUT_OF_MEMORY, "pPackage is null.");
+ std::unique_ptr<char[]> pType(_StringConverter::CopyToCharArrayN(__type));
+ SysTryReturn(NID_APP, pType, 0, E_OUT_OF_MEMORY, "pType is null.");
+
void* pClient = pkgmgr_client_new(PC_REQUEST);
SysTryReturn(NID_APP, pClient, 0, E_SYSTEM, "pkgmgr_client_new() failed.");
- SysLog(NID_APP, "pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, %s)", pPackage.get());
- size = pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, 0, pClient, null, pPackage.get(), null, null, null);
+ SysLog(NID_APP, "pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, %s, %s)", pType.get(), pPackage.get());
+ size = pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, 0, pClient, pType.get(), pPackage.get(), null, null, null);
pkgmgr_client_free(pClient);
}
if (__fromDatabase)
{
SysTryReturn(NID_APP, __id.IsEmpty() == false, 0, E_SYSTEM, "id is IsEmpty.");
+ SysTryReturn(NID_APP, __type.IsEmpty() == false, 0, E_SYSTEM, "type is IsEmpty.");
std::unique_ptr<char[]> pPackage(_StringConverter::CopyToCharArrayN(__id));
SysTryReturn(NID_APP, pPackage, 0, E_OUT_OF_MEMORY, "pPackage is null.");
+ std::unique_ptr<char[]> pType(_StringConverter::CopyToCharArrayN(__type));
+ SysTryReturn(NID_APP, pType, 0, E_OUT_OF_MEMORY, "pType is null.");
+
void* pClient = pkgmgr_client_new(PC_REQUEST);
SysTryReturn(NID_APP, pClient, 0, E_SYSTEM, "pkgmgr_client_new() failed.");
- SysLog(NID_APP, "pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, %s)", pPackage.get());
- dataSize = pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, 1, pClient, null, pPackage.get(), null, null, null);
+ SysLog(NID_APP, "pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, %s, %s)", pType.get(), pPackage.get());
+ dataSize = pkgmgr_client_request_service(PM_REQUEST_GET_SIZE, 1, pClient, pType.get(), pPackage.get(), null, null, null);
pkgmgr_client_free(pClient);
}
String appDisplayName = pPackageAppInfo->GetAppDisplayName();
bool menuIconVisible = pPackageAppInfo->IsMenuIconVisible();
bool mainApp = pPackageAppInfo->IsMainApp();
- String tempIconPath = pPackageAppInfoImpl->GetAppTempIconPath();
+
+ int size = 0;
+ char* pIcon = pPackageAppInfoImpl->GetAppMenuIconBufferN(size);
+ if (pIcon)
+ {
+ pImpl->SetAppMenuIconBuffer(pIcon, size);
+ delete [] pIcon;
+ }
pImpl->SetAppId(appId);
pImpl->SetAppName(appName);
pImpl->SetAppDisplayName(appDisplayName);
pImpl->SetMenuIconVisible(menuIconVisible);
pImpl->SetMainApp(mainApp);
- pImpl->SetAppTempIconPath(tempIconPath);
return pInfo.release();
}
return r;
}
+bool
+_PackageInfoImpl::IsPreloaded(void) const
+{
+ return __preloaded;
+}
+
+bool
+_PackageInfoImpl::IsUpdated(void) const
+{
+ return __updated;
+}
+
result
_PackageInfoImpl::AddPackageAppInfo(const PackageAppInfo& packageAppInfo)
{
, __uninstallable(true)
, __movable(false)
, __downloaded(false)
+ , __preloaded(false)
+ , __updated(false)
, __iconAvailable(false)
, __externalStorage(false)
, __fromDatabase(false)
pkgmgrinfo_installed_storage storage = PMINFO_INTERNAL_STORAGE;
bool removable = true;
bool movable = true;
- bool preloaded = true;
- bool updated = true;
+ bool preloaded = false;
+ bool updated = false;
std::unique_ptr<char[]> pPackageId(_StringConverter::CopyToCharArrayN(packageId));
SysTryReturnResult(NID_APP, pPackageId, E_OUT_OF_MEMORY, "pPackageId is null");
SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_movable() is failed. result = [%d]", result);
}
+ result = pkgmgrinfo_pkginfo_is_preload(__packageInfoHandle, &preloaded);
+ if (result == PMINFO_R_OK)
+ {
+ __preloaded = preloaded;
+ }
+ else
+ {
+ SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_preload() is failed. result = [%d]", result);
+ }
+
result = pkgmgrinfo_pkginfo_is_update(__packageInfoHandle, &updated);
if (result == PMINFO_R_OK)
{
- if (updated == true)
+ __updated = updated;
+ }
+ else
+ {
+ SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_update() is failed. result = [%d]", result);
+ }
+
+ if (updated == true)
+ {
+ __downloaded = true;
+ }
+ else
+ {
+ if (preloaded == true)
{
- __downloaded = true;
+ __downloaded = false;
}
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);
- }
+ __downloaded = true;
}
}
- else
- {
- SysLog(NID_APP, "pkgmgrinfo_pkginfo_is_update() is failed. result = [%d]", result);
- }
result = pkgmgrinfo_pkginfo_get_description(__packageInfoHandle, &pDescription);
if (result == PMINFO_R_OK)
result = pkgmgrinfo_pkginfo_get_installed_time(__packageInfoHandle, &installedTime);
if (result == PMINFO_R_OK)
{
- SysLog(NID_APP, "pkgmgrinfo_pkginfo_get_installed_time(): installedTime = [%d]", installedTime);
-
time_t dateTime = (time_t) installedTime;
struct tm* pGmTime = null;
DateTime tempTime;
tempTime.SetValue(pGmTime->tm_year + 1900, pGmTime->tm_mon + 1, pGmTime->tm_mday, pGmTime->tm_hour, pGmTime->tm_min, pGmTime->tm_sec);
__dateTime = tempTime;
- SysLog(NID_APP, "Time %d %d/%d, %d:%d:%d", tempTime.GetYear(), tempTime.GetMonth(), tempTime.GetDay(), tempTime.GetHour(), tempTime.GetMinute(), tempTime.GetSecond());
}
}
else