N_SE-38636 : proper exception code
[platform/framework/native/appfw.git] / src / app / FApp_AppControlImpl.cpp
index a43f50f..f7fac9d 100755 (executable)
@@ -1,5 +1,4 @@
 //
-// Open Service Platform
 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
 //
 // Licensed under the Apache License, Version 2.0 (the License);
@@ -503,7 +502,7 @@ _AppControlImpl::AppControlCbLegacy(void* data, _AppArg* pArg, _AppArg* pResArg,
                        provider = pEntry->provider;
                        oId = pEntry->operation;
 
-                       SysLog(NID_APP, "Legacy AppControl name (%ls, %ls).", provider.GetPointer(), oId.GetPointer());
+                       SysLog(NID_APP, "Legacy AppControl(%ls, %ls).", provider.GetPointer(), oId.GetPointer());
                }
        }
 
@@ -568,7 +567,7 @@ _AppControlImpl::AppControlCb(void* data, _AppArg* pArg, _AppArg* pResArg, servi
                        provider = pEntry->provider;
                        oId = pEntry->operation;
 
-                       SysLog(NID_APP, "Original AppControl name (%ls, %ls).", provider.GetPointer(), oId.GetPointer());
+                       SysLog(NID_APP, "Original AppControl(%ls, %ls).", provider.GetPointer(), oId.GetPointer());
                }
        }
 
@@ -595,7 +594,7 @@ _AppControlImpl::AppControlCb(void* data, _AppArg* pArg, _AppArg* pResArg, servi
 
        if (pResponseEvent != null)
        {
-               _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_COMPLETE, provider, oId, E_SUCCESS, ret, pMap.get(), reqId);
+               _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_COMPLETE, provider, oId, E_SUCCESS, ret, pMap.release(), reqId);
                pResponseEvent->Fire(*pResponseEventArg);
                SysLog(NID_APP, "OnAppControlCompleteResponseReceived, pResponseEvent is Fired");
        }
@@ -645,11 +644,10 @@ _AppControlImpl::StartNative(const IList* pDataList, IAppControlEventListener* p
        // after acquring request number, pLib should be managed from the list, not CATCH
        if (IsFailed(r))
        {
-               SetLastResult(E_SYSTEM);
                _AppControlManager::GetInstance()->__inAppManager.RemoveItem(req);
-               SysLog(NID_APP, "[E_SYSTEM] A system error has occurred with %s.", GetErrorMessage(r));
+               SysLog(NID_APP, "[%s] A system error has occurred.", GetErrorMessage(r));
 
-               return E_SYSTEM;
+               return r;
        }
 
        _reqId = req;
@@ -734,11 +732,10 @@ _AppControlImpl::StartNative(const String* pUriData, const String* pMimeType, co
        // after acquring request number, pLib should be managed from the list, not CATCH
        if (IsFailed(r))
        {
-               SetLastResult(E_SYSTEM);
                _AppControlManager::GetInstance()->__inAppManager.RemoveItem(req);
-               SysLog(NID_APP, "[E_SYSTEM] A system error has occurred with %s.", GetErrorMessage(r));
+               SysLog(NID_APP, "[%s] A system error has occurred.", GetErrorMessage(r));
 
-               return E_SYSTEM;
+               return r;
        }
 
        _reqId = req;
@@ -820,7 +817,7 @@ IsValidAppControl(const String& appcontrolID)
                || (appcontrolID == L"tizen.memo")
                || (appcontrolID == L"tizen.contacts")
                || (appcontrolID == L"tizen.calendar")
-               || (appcontrolID == L"tizen.events")
+               || (appcontrolID == L"tizen.todo")
                || (appcontrolID == L"tizen.email")
                || (appcontrolID == L"tizen.settings")
                || (appcontrolID == L"tizen.messages")
@@ -876,14 +873,19 @@ _AppControlImpl::Stop(void)
 String
 _AppControlImpl::GetAppName(void)
 {
-       if ((_property & _APPCONTROL_PROPERTY_OSP) && _appName.IsEmpty())
+       if (_appName.IsEmpty())
        {
-               const AppId& appId = _path;
+               AppId appId = GetAppId();
+               AppId aliasAppId = _AppControlRegistry::GetInstance()->GetAliasAppId(appId);
+               if (!aliasAppId.IsEmpty())
+               {
+                       appId = aliasAppId;
+               }
 
                std::unique_ptr<PackageAppInfo> pInfo(_PackageManagerImpl::GetInstance()->GetPackageAppInfoN(appId));
-
                if (pInfo.get())
                {
+                       SysLog(NID_APP, "PackageInfo of appId(%ls) exists", appId.GetPointer());
                        const String& name = pInfo->GetAppName();
                        if (name == L"_AppControl")
                        {
@@ -908,7 +910,10 @@ _AppControlImpl::GetAppName(void)
                        {
                                _appName = pInfo->GetAppDisplayName();
                        }
-                       SysLog(NID_APP, "Initializing AppName(%ls) for %ls.", _appName.GetPointer(), appId.GetPointer());
+               }
+               else
+               {
+                       SysLog(NID_APP, "PackageInfo of appId(%ls) does not exist", appId.GetPointer());
                }
        }
 
@@ -936,9 +941,15 @@ _AppControlImpl::GetOperationId(void) const
 IList*
 _AppControlImpl::GetCategoryListN(void) const
 {
-       const AppId& appId = GetAppId();
+       AppId appId = GetAppId();
        SysTryReturn(NID_APP, !appId.IsEmpty(), null, E_SYSTEM, "[E_SYSTEM] Empty appId.");
 
+       AppId aliasAppId = _AppControlRegistry::GetInstance()->GetAliasAppId(appId);
+       if (!aliasAppId.IsEmpty())
+       {
+               appId = aliasAppId;
+       }
+
        SysLog(NID_APP, "Acquiring category for app %ls.", appId.GetPointer());
 
        std::unique_ptr<PackageAppInfo> pAppInfo(_PackageManagerImpl::GetInstance()->GetPackageAppInfoN(appId));