#include <FBaseErrors.h>
#include <FBaseSysLog.h>
#include <FAppPkgPackageInfo.h>
+#include <FAppPkgPackageAppInfo.h>
#include <FBaseRt_LibraryImpl.h>
#include "FAppPkg_PackageManagerImpl.h"
#include "FAppPkg_PackageInfoImpl.h"
#include "FApp_AppManagerImpl.h"
-#include "FApp_TemplateUtil.h"
#include "FApp_IAppEventListener.h"
using namespace Tizen::App::Package;
bool
_ServiceAppImpl::OnAppInitializing(void)
{
- const String& packageId = _AppInfo::GetPackageId();
- const String& exeName = _AppInfo::GetAppExecutableName();
+ SysTryReturn(NID_APP, __pServiceApp != null, false, E_INVALID_STATE, "[E_INVALID_STATE] Getting ServiceApp instance failed.");
- HashMapT<String, _AppFeatureInfoImpl*>* pInfo = _PackageManagerImpl::GetInstance()->GetPackageAppFeatureMapN(packageId, exeName);
+ const AppId& appId = _AppInfo::GetApplicationId();
- if (pInfo)
+ std::unique_ptr<PackageAppInfo> pInfo(_PackageManagerImpl::GetInstance()->GetPackageAppInfoN(appId));
+ if (pInfo.get())
{
- _AppFeatureInfoImpl* pFeature = null;
-
- result r = pInfo->GetValue(USE_UI_KEY, pFeature);
-
- if (r == E_SUCCESS)
+ const _PackageAppInfoImpl* pInfoImpl = _PackageAppInfoImpl::GetInstance(pInfo.get());
+ if (pInfoImpl)
{
- const String& val = pFeature->GetValue();
- if (val == USE_UI_VAL_TRUE)
+ const String& useUi = pInfoImpl->GetAppFeature(USE_UI_KEY);
+ const String& lifeDuration = pInfoImpl->GetAppFeature(LIFE_DURATION_KEY);
+
+ if (useUi.Equals(USE_UI_VAL_TRUE, false))
{
SysLog(NID_APP, "Using remote ui on service application.");
pInit = reinterpret_cast<result (*)()>(lib.GetProcAddress(L"InitializeUiFramework"));
if (pInit)
{
- r = (*pInit)();
+ result r = (*pInit)();
SysLog(NID_APP, "[%s] UI initialized.", GetErrorMessage(r));
}
}
- }
- r = pInfo->GetValue(LIFE_DURATION_KEY, pFeature);
- if (r == E_SUCCESS)
- {
- const String& val = pFeature->GetValue();
- r = Integer::Parse(val, __lifeDuration);
- if( r == E_SUCCESS )
+ if (!lifeDuration.IsEmpty())
{
- SysLog(NID_APP, "LifeDuration is (%d) millis.", __lifeDuration);
+ result r = Integer::Parse(lifeDuration, __lifeDuration);
+ if( r == E_SUCCESS )
+ {
+ SysLog(NID_APP, "LifeDuration is (%d) millis.", __lifeDuration);
+ }
}
- }
- _DeleteCollectionMapValue<String, _AppFeatureInfoImpl>(*pInfo);
- delete pInfo;
+ }
}
- SysTryReturn(NID_APP, __pServiceApp != null, false, E_INVALID_STATE, "[E_INVALID_STATE] Getting ServiceApp instance failed.");
return __pServiceApp->OnAppInitializing(*(AppRegistry::GetInstance()));
}
Tizen::Base::Collection::IMap* GetUiThemeListN(const PackageId& packageId) const;
Tizen::Base::Collection::ArrayList* GetPackageAppInfoImplListN(const PackageId& packageId) const;
- Tizen::Base::Collection::ArrayList* GetPackageAppFeatureListN(const PackageId& packageId, const Tizen::Base::String& executableName) const;
- Tizen::Base::Collection::HashMapT<Tizen::Base::String, _AppFeatureInfoImpl*>* GetPackageAppFeatureMapN(const PackageId& packageId, const Tizen::Base::String& executableName) const;
Tizen::Base::Collection::ArrayList* GetAppLaunchConditionListN(const Tizen::Base::String& packageName) const;
result GetPackageName(const PackageId& packageId, const Tizen::Base::String* pName, char* pPackageName, int bufferSize);
return pList;
}
-ArrayList*
-_PackageManagerImpl::GetPackageAppFeatureListN(const PackageId& packageId, const Tizen::Base::String& appExecutableName) const
-{
- ArrayList* pAppInfoList = GetPackageAppInfoImplListN(packageId);
- SysTryReturn(NID_APP, pAppInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] AppInfo list instance must not be null.");
-
- ArrayList* pResult = null;
-
- for (int i = 0; i < pAppInfoList->GetCount(); i++)
- {
- const _PackageAppInfoImpl* pAppInfoImpl = static_cast<const _PackageAppInfoImpl*>(pAppInfoList->GetAt(i));
- if (pAppInfoImpl == null)
- {
- continue;
- }
-
- if (pAppInfoImpl->GetName() == appExecutableName)
- {
- pResult = pAppInfoImpl->GetAppFeatureListN();
- goto OUT;
- }
- }
-
-OUT:
- pAppInfoList->RemoveAll(true);
- delete pAppInfoList;
-
- return pResult;
-}
-
-HashMapT<String, _AppFeatureInfoImpl*>*
-_PackageManagerImpl::GetPackageAppFeatureMapN(const PackageId& packageId, const Tizen::Base::String& appExecutableName) const
-{
- ArrayList* pAppInfoList = GetPackageAppInfoImplListN(packageId);
- SysTryReturn(NID_APP, pAppInfoList != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] AppInfo list instance must not be null.");
-
- HashMapT<String, _AppFeatureInfoImpl*>* pResult = null;
-
- std::auto_ptr<IEnumerator> pEnum(pAppInfoList->GetEnumeratorN());
-
- while (pEnum->MoveNext() == E_SUCCESS)
- {
- const _PackageAppInfoImpl* pAppInfoImpl = static_cast<const _PackageAppInfoImpl*>(pEnum->GetCurrent());
- if (pAppInfoImpl == null)
- {
- continue;
- }
-
- if (pAppInfoImpl->GetName() == appExecutableName)
- {
- pResult = pAppInfoImpl->GetAppFeatureMapN();
- goto OUT;
- }
- }
-
-OUT:
- pAppInfoList->RemoveAll(true);
- delete pAppInfoList;
-
- return pResult;
-}
ArrayList*
_PackageManagerImpl::GetAppLaunchConditionListN(const String& packageName) const