static const char BUNDLE_KEY_PREFIX_OSP[] = "__OSP_";
static const char BUNDLE_KEY_PREFIX_UG[] = "__UG_";
-static const char OSP_K_SUBMODE_CALLEE[] = "__OSP_SUB_CALLEE__";
-static const char OSP_K_SERVICE_CALLEE[] = "__OSP_SERVICE_CALLEE__";
+static const char OSP_K_RAISE_MODE[] = "__OSP_RAISE_MODE__";
_AppArg::_AppArg(void)
void
-_AppArg::UpdateSubMode(bundle* pBundle)
+_AppArg::UpdateRaiseMode(bundle* pBundle)
{
- appsvc_add_data(pBundle, OSP_K_SUBMODE_CALLEE, "1");
+ appsvc_add_data(pBundle, OSP_K_RAISE_MODE, "1");
}
bool
-_AppArg::IsSubMode(bundle* pBundle)
+_AppArg::IsRaiseMode(bundle* pBundle)
{
- const char* p = appsvc_get_data(pBundle, OSP_K_SUBMODE_CALLEE);
+ const char* p = appsvc_get_data(pBundle, OSP_K_RAISE_MODE);
return (p && (strncmp(p, "1", sizeof(char)) == 0));
}
-
-void
-_AppArg::UpdateServiceApp(bundle* pBundle)
-{
- appsvc_add_data(pBundle, OSP_K_SERVICE_CALLEE, "1");
-}
-
-
-bool
-_AppArg::IsServiceApp(bundle* pBundle)
-{
- const char* p = appsvc_get_data(pBundle, OSP_K_SERVICE_CALLEE);
- return (p && (strncmp(p, "1", sizeof(char)) == 0));
-}
-
-
int
_AppArg::GetRequestIdFromBundle(bundle* pBundle)
{
, public Tizen::Base::Runtime::IEventArg
{
public:
- _AppControlResponseEventArg(IAppControlResponseListener* pResponseListener, _AppControlResponseType type, const AppId& appId, const Tizen::Base::String& operationId, result res, AppCtrlResult appControlResult, const Tizen::Base::Collection::IMap* pExtraData, int reqId, bool isSubMode)
+ _AppControlResponseEventArg(IAppControlResponseListener* pResponseListener, _AppControlResponseType type, const AppId& appId, const Tizen::Base::String& operationId, result res, AppCtrlResult appControlResult, const Tizen::Base::Collection::IMap* pExtraData, int reqId, bool isRaiseMode)
: __pResponseListener(pResponseListener)
, __type(type)
, __appId(appId.GetPointer())
, __appControlResult(appControlResult)
, __pExtraData(pExtraData)
, __reqId(reqId)
- , __isSubMode(isSubMode)
+ , __isRaiseMode(isRaiseMode)
{
}
return __reqId;
}
- bool IsSubMode(void) const
+ bool IsRaiseMode(void) const
{
- return __isSubMode;
+ return __isRaiseMode;
}
private:
const AppCtrlResult __appControlResult;
const Tizen::Base::Collection::IMap* __pExtraData;
const int __reqId;
- const bool __isSubMode;
+ const bool __isRaiseMode;
}; // _AppControlEventArg
} } // Tizen::App
{
if(pEventArg->GetType() == _APPCONTROL_RESPONSETYPE_COMPLETE)
{
- _AppControlManager::InvokeAppControlCompleteListener(*pResponseListener, pEventArg->GetAppId(), pEventArg->GetOperationId(), pEventArg->GetAppControlResult(), pEventArg->GetExtraData(), pEventArg->IsSubMode());
+ _AppControlManager::InvokeAppControlCompleteListener(*pResponseListener, pEventArg->GetAppId(), pEventArg->GetOperationId(), pEventArg->GetAppControlResult(), pEventArg->GetExtraData(), pEventArg->IsRaiseMode());
_AppControlResponseEvent* pResponseEvent = null;
_AppControlManager::GetInstance()->GetAppControlResponseEventContainer()->GetValue(pEventArg->GetRequestId(), pResponseEvent);
if (pResponseEvent != null)
{
String oId(operationId);
- _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_START, actualAppId, oId, r, APP_CTRL_RESULT_SUCCEEDED, null, reqId, false);
+ _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_START, actualAppId, oId, r, APP_CTRL_RESULT_SUCCEEDED, null, reqId, true);
if (pResponseEventArg != null)
{
void
-_AppControlManager::InvokeAppControlCompleteListener(IAppControlResponseListener& listener, const AppId& appId, const String& op, AppCtrlResult res, const IMap* pExtraData, bool noRaise)
+_AppControlManager::InvokeAppControlCompleteListener(IAppControlResponseListener& listener, const AppId& appId, const String& op, AppCtrlResult res, const IMap* pExtraData, bool isRaiseMode)
{
listener.OnAppControlCompleteResponseReceived(appId, op, res, pExtraData);
- if (!noRaise)
+ if (isRaiseMode)
{
_AppImpl::GetInstance()->SendUserEvent(_APP_EVENT_RAISE, null, false);
}
void
-_AppControlManager::InvokeLegacyAppControlCompleteListener(IAppControlEventListener& listener, const AppId& appId, const String& op, const IList* pList, bool noRaise)
+_AppControlManager::InvokeLegacyAppControlCompleteListener(IAppControlEventListener& listener, const AppId& appId, const String& op, const IList* pList, bool isRaiseMode)
{
listener.OnAppControlCompleted(appId, op, pList);
- if (!noRaise)
+ if (isRaiseMode)
{
_AppImpl::GetInstance()->SendUserEvent(_APP_EVENT_RAISE, null, false);
}
SysLog(NID_APP, "Invoking callback 0x%x for (%ls, %ls).", pInfo->pListener, aId.GetPointer(), oId.GetPointer());
- const bool isSubMode = (property & _APPCONTROL_PROPERTY_SUBMODE);
- const bool isServiceCallee = (property & _APPCONTROL_PROPERTY_SERVICE_CALLEE);
+ const bool isRaiseMode = (property & _APPCONTROL_PROPERTY_RAISE_MODE);
if (pInfo->isLegacy)
{
ArrayList list(SingleObjectDeleter);
_AppArg::FillLegacyAppControlResult(list, res, pArgs, aId);
- InvokeLegacyAppControlCompleteListener(*pListener, aId, oId, &list, isSubMode | isServiceCallee);
+ InvokeLegacyAppControlCompleteListener(*pListener, aId, oId, &list, isRaiseMode);
}
else
{
if (pResponseEvent != null)
{
- _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_COMPLETE, aId, oId, E_SUCCESS, static_cast<AppCtrlResult>(res), const_cast<IMap*> (pArgs), responseEventRequestId, isSubMode);
+ _AppControlResponseEventArg* pResponseEventArg = new (std::nothrow) _AppControlResponseEventArg(pListener, _APPCONTROL_RESPONSETYPE_COMPLETE, aId, oId, E_SUCCESS, static_cast<AppCtrlResult>(res), const_cast<IMap*> (pArgs), responseEventRequestId, isRaiseMode);
if (pResponseEventArg != null)
{
pResponseEvent->Fire(*pResponseEventArg);
}
else
{
- InvokeAppControlCompleteListener(*pListener, aId, oId, ConvertAppControlResultCode(res), pArgs, isSubMode | isServiceCallee);
+ InvokeAppControlCompleteListener(*pListener, aId, oId, ConvertAppControlResultCode(res), pArgs, isRaiseMode);
SysLog(NID_APP, "Listener called directly");
delete pArgs;
}
_AppControlManager::FinishAppControl(int reqId, int res, IMap* pMap)
{
SysLog(NID_APP, "req %d, res %d.", reqId, res);
- _NativeAppControlEventArg* pArg = new (std::nothrow) _NativeAppControlEventArg(reqId, res, pMap, _APPCONTROL_PROPERTY_SUBMODE);
+ _NativeAppControlEventArg* pArg = new (std::nothrow) _NativeAppControlEventArg(reqId, res, pMap, _APPCONTROL_PROPERTY_RAISE_MODE);
SysTryReturnVoidResult(NID_APP, pArg != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Return argument allocation failure.");
SendAppControlEvent(*pArg);
}
else
{
- InvokeAppControlCompleteListener(*pResponseListener, pEventArg->GetAppId(), pEventArg->GetOperationId(), pEventArg->GetAppControlResult(), pEventArg->GetExtraData(), pEventArg->IsSubMode());
+ InvokeAppControlCompleteListener(*pResponseListener, pEventArg->GetAppId(), pEventArg->GetOperationId(), pEventArg->GetAppControlResult(), pEventArg->GetExtraData(), !pEventArg->IsRaiseMode());
SysLog(NID_APP, "Listener called");
_AppControlResponseEvent* pResponseEvent = null;
}
else
{
+ const bool isSubMode = _AppInfo::IsSubMode();
+ const bool isService = _AppInfo::GetAppType() & _APP_TYPE_SERVICE_APP;
+ bool isRaiseMode = true;
+
if (reqId == 0)
{
firstRequestSent = true;
}
- const bool isService = _AppInfo::GetAppType() & _APP_TYPE_SERVICE_APP;
+ if (isSubMode || isService)
+ {
+ isRaiseMode = false;
+ }
//resArg.Print();
- result r = _Aul::SendResult(arg.GetBundle(), static_cast<appsvc_result_val>(ret), _AppInfo::IsSubMode(), isService);
+ result r = _Aul::SendResult(arg.GetBundle(), static_cast<appsvc_result_val>(ret), isRaiseMode);
SysLog(NID_APP, "Sent AppControl event for %d.", reqId);
return r;
}
result
-_Aul::SendResult(bundle* b, appsvc_result_val res, bool isSubMode, bool isServiceApp)
+_Aul::SendResult(bundle* b, appsvc_result_val res, bool isRaiseMode)
{
// to skip error handling, of appsvc_send_result, use aul_send_service_result() directly.
//int ret = appsvc_send_result(b, res);
snprintf(tmp, 32, "%d", static_cast<int>(res));
appsvc_add_data(b, APP_SVC_K_RES_VAL, tmp);
- if (isSubMode)
+ if (isRaiseMode)
{
- _AppArg::UpdateSubMode(b);
- }
-
- if (isServiceApp)
- {
- _AppArg::UpdateServiceApp(b);
+ _AppArg::UpdateRaiseMode(b);
}
const int aul_ret = aul_send_service_result(b);
resultArg.UpdateKeyValue(OSP_K_DATACONTROL_PROTOCOL_VERSION, version);
//resultArg.Print();
- r = _Aul::SendResult(resultArg.GetBundle(), static_cast< appsvc_result_val >(0), false, false);
+ r = _Aul::SendResult(resultArg.GetBundle(), static_cast< appsvc_result_val >(0), false);
SysTryCatch(NID_APP, !IsFailed(r), , r, "[%s] Failed to send result.", GetErrorMessage(r));
// Erases _AppArg after sending the result back to the caller
static void UpdateKeyValue(bundle* b, const char* pKey, const Tizen::Base::String& value);
- static void UpdateSubMode(bundle* b);
+ static void UpdateRaiseMode(bundle* b);
- static bool IsSubMode(bundle* b);
-
- static void UpdateServiceApp(bundle* b);
-
- static bool IsServiceApp(bundle* b);
+ static bool IsRaiseMode(bundle* b);
static AppId GetCalleeAppId(bundle* b);
{
_APPCONTROL_PROPERTY_NONE = 0x0,
_APPCONTROL_PROPERTY_PUBLIC = 0x01,
- _APPCONTROL_PROPERTY_SUBMODE = 0x1000,
- _APPCONTROL_PROPERTY_SERVICE_CALLEE = 0x2000,
+ _APPCONTROL_PROPERTY_RAISE_MODE = 0x1000,
};
class _OSP_LOCAL_ _AppControlImpl
void StopAppControlResponseListener(IAppControlResponseListener* pLisetener);
- static void InvokeAppControlCompleteListener(IAppControlResponseListener& listener, const AppId& appId, const Tizen::Base::String& op, AppCtrlResult res, const Tizen::Base::Collection::IMap* pExtraData, bool noRaise);
+ static void InvokeAppControlCompleteListener(IAppControlResponseListener& listener, const AppId& appId, const Tizen::Base::String& op, AppCtrlResult res, const Tizen::Base::Collection::IMap* pExtraData, bool isRaiseMode);
- static void InvokeLegacyAppControlCompleteListener(IAppControlEventListener& listener, const AppId& appId, const Tizen::Base::String& op, const Tizen::Base::Collection::IList* pList, bool noRaise);
+ static void InvokeLegacyAppControlCompleteListener(IAppControlEventListener& listener, const AppId& appId, const Tizen::Base::String& op, const Tizen::Base::Collection::IList* pList, bool isRaiseMode);
private:
_OSP_LOCAL_ _AppControlManager(void);
static result TerminateApplicationByPid(int pid);
- static result SendResult(bundle* b, appsvc_result_val res, bool isSubMode, bool isServiceApp);
+ static result SendResult(bundle* b, appsvc_result_val res, bool isRaiseMode);
static bool IsRunning(const Tizen::Base::String& appId);