namespace
{
static const RequestId LOCAL_EVENT_REQUEST_UPDATE = 0;
+static const wchar_t INVALID_INSTANCE[] = L"file://invalid instance id";
+static const char APPNAME_OSP_APPWIDGET_SERVICE[] = "osp-appwidget-service";
+static const int TIMER_DURATION_PING = 120000;
+//extern const int UPDATE_PERIOD_MSEC_MIN;
}
-extern const int UPDATE_PERIOD_MSEC_MIN;
-const wchar_t INVALID_INSTANCE[] = L"file://invalid instance id";
AppWidgetManagerService* AppWidgetManagerService::__pTheInstance = null;
AppWidgetManagerService::~AppWidgetManagerService(void)
{
+ SysLog(NID_SHELL, "Enter.");
__pingTimer.Cancel();
DeinitializeCoreDaemonEventReceiver();
+ SysLog(NID_SHELL, "Exit.");
}
AppWidgetManagerService*
{
if( __pTheInstance == null)
{
- __pTheInstance = CreateInstance("osp-appwidget-service");
+ __pTheInstance = CreateInstance(APPNAME_OSP_APPWIDGET_SERVICE);
}
return __pTheInstance;
}
AppWidgetManagerService*
-AppWidgetManagerService::CreateInstance(const char* pIdForCoreDaemon)
+AppWidgetManagerService::CreateInstance(const char* pCoreDaemonId)
{
if( __pTheInstance == null)
{
__pTheInstance = new AppWidgetManagerService();
SysTryReturn(NID_SHELL, __pTheInstance != null, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
- result r = __pTheInstance->Construct(pIdForCoreDaemon);
+ result r = __pTheInstance->Construct(pCoreDaemonId);
SysAssertf(!IsFailed(r), "Failed to construct AppWidgetManagerService");
SysLog(NID_SHELL, "AppWidgetManagerService is created.");
}
}
result
-AppWidgetManagerService::Construct(const char* pIdForCoreDaemon)
+AppWidgetManagerService::Construct(const char* pCoreDaemonId)
{
_AppWidgetManagerStub::StartIpcServer();
SettingInfo::AddSettingEventListener(*this);
- return InitializeCoreDaemonEventReceiver(pIdForCoreDaemon);
+ static __HashMapDefaultProviderT <String> strHashCodeProvider;
+ static ComparerT <String> strComparer;
+
+ r = __appWidgetContextList.Construct(0, 0, strHashCodeProvider, strComparer);
+ SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute Construct.");
+
+ r = __appContextList.Construct(0, 0, strHashCodeProvider, strComparer);
+ SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute Construct.");
+
+ return InitializeCoreDaemonEventReceiver(pCoreDaemonId);
}
int
ret = provider_send_hello();
if (ret == 0)
{
- SysLog(NID_SHELL, "success to be connected with master daemon");
+ SysLog(NID_SHELL, "Success to be connected with master daemon");
AppWidgetManagerService::GetInstance()->StartPingTimer();
}
else
{
- SysLog(NID_SHELL, "failed to provider_send_hello()");
+ SysLog(NID_SHELL, "Failed to invoke provider_send_hello()");
}
return ret;
}
int
AppWidgetManagerService::AppWidgetDisconnected(struct event_arg *arg, void* data)
{
- SysLog(NID_SHELL, "success to be disconnected with master daemon");
+ SysLog(NID_SHELL, "Disconnected with master daemon");
return 0;
}
AppWidgetManagerService::StartPingTimer(void)
{
__pingTimer.Construct(*this);
- __pingTimer.StartAsRepeatable(120000);
+ __pingTimer.StartAsRepeatable(TIMER_DURATION_PING);
}
void
AppWidgetManagerService::OnTimerExpired(Timer& timer)
{
- SysLog(NID_SHELL, "provider_send_ping");
provider_send_ping();
}
-//TODO: remove unused param 'appId'
_AppWidgetContext*
-AppWidgetManagerService::Find(const String& appId, const String& instanceId) const
+AppWidgetManagerService::Find(const String& instanceId) const
{
_AppWidgetContext* pAppWidgetContext = null;
__appWidgetContextList.GetValue(instanceId, pAppWidgetContext);
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
- if (pValue->GetAppId() == appId)
+ if (pContext->GetAppId() == appId)
{
providerCount++;
}
AppWidgetManagerService::OnIpcClientConnected(const _IpcServer& server, int clientId)
{
String appId = server.GetClientApplicationId();
- SysLog(NID_SHELL, "(%ls)\n", appId.GetPointer());
+ SysLog(NID_SHELL, "appId(%ls)", appId.GetPointer());
_AppContext* pAppContext = null;
__appContextList.GetValue(appId, pAppContext);
AppWidgetManagerService::OnIpcClientDisconnected(const _IpcServer& server, int clientId)
{
String appId = server.GetClientApplicationId();
- SysLog(NID_SHELL, "(%ls)\n", appId.GetPointer());
+ SysLog(NID_SHELL, "appId(%ls)", appId.GetPointer());
_AppContext* pAppContext = null;
__appContextList.GetValue(appId, pAppContext);
unique_ptr< IMapEnumeratorT<String, _AppWidgetContext*> > pAppWidgetContextEnum(__appWidgetContextList.GetMapEnumeratorN());
SysTryReturnVoidResult(NID_SHELL, pAppWidgetContextEnum, E_SYSTEM, "");
- _AppWidgetContext* pValue = null;
+ _AppWidgetContext* pContext = null;
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- pAppWidgetContextEnum->GetValue(pValue);
- SysSecureLog(NID_SHELL, "%ls, %ls, %ls", pValue->GetInstanceId().GetPointer(), pValue->GetProviderId().GetPointer(), appId.GetPointer());
+ pAppWidgetContextEnum->GetValue(pContext);
+ SysSecureLog(NID_SHELL, "%ls, %ls, %ls", pContext->GetInstanceId().GetPointer(), pContext->GetProviderId().GetPointer(), appId.GetPointer());
- if (pValue->GetAppId() == appId)
+ if (pContext->GetAppId() == appId)
{
- if (clientId == -1)
- {
- SysLog(NID_SHELL, "client is unregistered.");
- pValue->OnDisconnected();
-
- if (pValue->GetAppWidgetPopup())
- {
- pValue->OnPopupDestoyed();
- }
- }
- else
- {
- SysLog(NID_SHELL, "client is registered.(%d)", clientId);
- }
+ SysLog(NID_SHELL, "client(%d) is unregistered.", clientId);
+ pContext->OnDisconnected();
}
}
}
-wchar_t KEY_SETTING_FONT_SIZE[] = L"http://tizen.org/setting/font.size";
-wchar_t KEY_SETTING_FONT_TYPE[] = L"http://tizen.org/setting/font.type";
-wchar_t KEY_SETTING_LANGUAGE[] = L"http://tizen.org/setting/locale.language";
-wchar_t KEY_SETTING_COUNTRY[] = L"http://tizen.org/setting/locale.country";
-
void
AppWidgetManagerService::OnSettingChanged(Tizen::Base::String& key)
{
+// const static wchar_t KEY_SETTING_FONT_SIZE[] = L"http://tizen.org/setting/font.size";
+ const static wchar_t KEY_SETTING_FONT_TYPE[] = L"http://tizen.org/setting/font.type";
+ const static wchar_t KEY_SETTING_LANGUAGE[] = L"http://tizen.org/setting/locale.language";
+ const static wchar_t KEY_SETTING_COUNTRY[] = L"http://tizen.org/setting/locale.country";
+
if( key == KEY_SETTING_FONT_TYPE
// || key == KEY_SETTING_FONT_SIZE
|| key == KEY_SETTING_LANGUAGE
}
_AppWidgetContext*
-AppWidgetManagerService::AddAppWidget(const Tizen::Base::String& name, const Tizen::Base::String& providerId, const Tizen::Base::String& instanceId, int width, int height, int period, int priority)
+AppWidgetManagerService::AddAppWidget(const Tizen::Base::String& userInfo, const Tizen::Base::String& providerId, const Tizen::Base::String& instanceId, int width, int height, int period, int priority)
{
AppId appId;
String providerName;
__appContextList.GetValue(appId, pAppContext);
}
- _AppWidgetContext* pAppWidgetContext = new (std::nothrow)_AppWidgetContext(pAppContext, name, providerId, instanceId, width, height, period, priority);
+ _AppWidgetContext* pAppWidgetContext = new (std::nothrow)_AppWidgetContext(pAppContext, userInfo, providerId, instanceId, width, height, period, priority);
SysTryReturn(NID_SHELL, pAppWidgetContext, 0, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
__appWidgetContextList.Add(pAppWidgetContext->GetInstanceId(), pAppWidgetContext);
}
result
-AppWidgetManagerService::RemoveAppWidget(const char* pPackageName, const char* pId, bool free)
+AppWidgetManagerService::RemoveAppWidget(const char* pProviderId, const char* pId)
{
- SysTryReturn(NID_SHELL, ( pPackageName != null && pId != null), null, E_INVALID_ARG, "[E_INVALID_ARG]");
+ SysTryReturn(NID_SHELL, ( pProviderId != null && pId != null), null, E_INVALID_ARG, "[E_INVALID_ARG]");
- _AppWidgetContext* pAppWidgetContext = Find(pPackageName, pId);
+ _AppWidgetContext* pAppWidgetContext = Find(pId);
SysTryReturn(NID_SHELL, pAppWidgetContext, null, E_OBJ_NOT_FOUND, "[E_OBJ_NOT_FOUND]");
result r = __appWidgetContextList.Remove(pAppWidgetContext->GetInstanceId());
delete pAppWidgetContext;
- SysLog(NID_SHELL, "AppWidget(%s, %s) is removed. remain count(%d)", pPackageName, pId, __appWidgetContextList.GetCount());
+ SysLog(NID_SHELL, "AppWidget(%s, %s) is removed. remain count(%d)", pProviderId, pId, __appWidgetContextList.GetCount());
return r;
}
SysTryReturn(NID_SHELL, arg->id != null, EINVAL, E_INVALID_ARG, "[E_INVALID_ARG]");
SysTryReturn(NID_SHELL, arg->type == event_arg::EVENT_NEW, -EPERM, E_SUCCESS, "invalid argument from master");
- SysSecureLog(NID_SHELL, "packageName(%s) id(%s) content(%s) cluster(%s) category(%s)", arg->pkgname, arg->id, arg->info.lb_create.content, arg->info.lb_create.cluster, arg->info.lb_create.category);
+ SysSecureLog(NID_SHELL, "providerId(%s) id(%s) content(%s) cluster(%s) category(%s)", arg->pkgname, arg->id, arg->info.lb_create.content, arg->info.lb_create.cluster, arg->info.lb_create.category);
AppWidgetManagerService* pAppWidgetService = AppWidgetManagerService::GetInstance();
- SysTryReturn (NID_SHELL, pAppWidgetService->Find(arg->pkgname, arg->id) == null, -EBUSY, E_SUCCESS,"already exist");
+ SysTryReturn (NID_SHELL, pAppWidgetService->Find(arg->id) == null, -EBUSY, E_SUCCESS,"already exist");
- double default_priority = 1.0f;
+ const double default_priority = 1.0f;
_AppWidgetContext* pAppWidgetContext = pAppWidgetService->AddAppWidget(arg->info.lb_create.content, arg->pkgname, arg->id, arg->info.lb_create.width, arg->info.lb_create.height, arg->info.lb_create.period * 1000, default_priority);
*priority = pAppWidgetContext->GetPriority();
int
AppWidgetManagerService::OnAppWidgetUpdate(struct event_arg *arg, void* data)
{
- if( arg->id == null || strlen(arg->id) < 1)
+ bool isInstanceIdSpecified = (arg->id == null || strlen(arg->id) < 1) ? false : true;
+ if (isInstanceIdSpecified == false)
{
- SysLog(NID_SHELL, "updating alls");
- AppWidgetManagerService::GetInstance()->UpdateAllAppWidgetsByAppId(arg->pkgname);
+ AppWidgetManagerService::GetInstance()->UpdateAppWidgetsByProviderId(arg->pkgname);
}
else
{
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->pkgname, arg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
pAppWidgetContext->OnUpdate(L"");
}
}
int
-AppWidgetManagerService::UpdateAllAppWidgetsByAppId(const String& providerId)
+AppWidgetManagerService::UpdateAppWidgetsByProviderId(const String& providerId)
{
+ SysLog(NID_SHELL, "");
+
unique_ptr< IMapEnumeratorT<String, _AppWidgetContext*> > pAppWidgetContextEnum(__appWidgetContextList.GetMapEnumeratorN());
SysTryReturn(NID_SHELL, pAppWidgetContextEnum, 0, E_SYSTEM, "[E_SYSTEM]");
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
- if (pValue->GetProviderId() == providerId)
+ if (pContext->GetProviderId() == providerId)
{
- pValue->OnUpdate(L"");
+ pContext->OnUpdate(L"");
}
}
AppWidgetManagerService* pAppWidgetManagerService = AppWidgetManagerService::GetInstance();
- _AppWidgetContext* pAppWidgetContext = pAppWidgetManagerService->Find(arg->pkgname, arg->id);
- SysSecureTryReturn(NID_SHELL, pAppWidgetContext, 0, E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = pAppWidgetManagerService->Find(arg->id);
+ SysSecureTryReturn(NID_SHELL, pAppWidgetContext, 0, E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
result r = pAppWidgetContext->OnRemoved();
SysTryReturn(NID_SHELL, !IsFailed(r), 0, E_SYSTEM, "[E_SYSTEM] Failed to execute OnRemoved.");
- r = pAppWidgetManagerService->RemoveAppWidget(arg->pkgname, arg->id, true);
+ r = pAppWidgetManagerService->RemoveAppWidget(arg->pkgname, arg->id);
SysTryReturn(NID_SHELL, !IsFailed(r), 0, E_SYSTEM, "[E_SYSTEM] Failed to execute RemoveAppWidget.");
SysLog(NID_SHELL, "Exit");
AppWidgetManagerService::OnAppWidgetPopupCreate(struct event_arg *arg, void* data)
{
SysTryReturn (NID_SHELL, arg->type == event_arg::EVENT_PD_CREATE, -EPERM, E_SUCCESS, "invalid argument from master");
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s), x(%d), y(%d), width(%f), height(%f), priority(%d)", arg->pkgname, arg->id, arg->info.pd_create.x, arg->info.pd_create.y, arg->info.pd_create.w, arg->info.pd_create.h);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s), x(%d), y(%d), width(%f), height(%f), priority(%d)", arg->pkgname, arg->id, arg->info.pd_create.x, arg->info.pd_create.y, arg->info.pd_create.w, arg->info.pd_create.h);
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->pkgname, arg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
pAppWidgetContext->OnPopupCreated(arg->info.pd_create.x, arg->info.pd_create.y, arg->info.pd_create.w, arg->info.pd_create.h);
AppWidgetManagerService::OnAppWidgetPopupDestroy(struct event_arg *arg, void* data)
{
SysTryReturn (NID_SHELL, arg->type == event_arg::EVENT_PD_DESTROY, -EPERM, E_SUCCESS, "invalid argument from master");
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->pkgname, arg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s)", arg->pkgname, arg->id);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s)", arg->pkgname, arg->id);
pAppWidgetContext->OnPopupDestoyed();
return 0;
{
SysTryReturn(NID_SHELL, arg, 0, E_SUCCESS, "arg is null!");
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->pkgname, arg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , 0, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , 0, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s)", arg->pkgname, arg->id);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s)", arg->pkgname, arg->id);
pAppWidgetContext->OnBackground();
return 0;
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
- pValue->OnBackground();
+ pContext->OnBackground();
}
return 0;
{
SysTryReturn(NID_SHELL, pArg || pArg->id || pArg->pkgname, 0, E_SUCCESS, "pArg is null!");
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(pArg->pkgname, pArg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", pArg->pkgname, pArg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(pArg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", pArg->pkgname, pArg->id);
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s)", pArg->pkgname, pArg->id);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s)", pArg->pkgname, pArg->id);
pAppWidgetContext->OnForeground();
return 0;
}
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
- pValue->OnForeground();
+ pContext->OnForeground();
}
return 0;
{
SysTryReturn (NID_SHELL, arg->type == event_arg::EVENT_CLICKED, -EPERM, E_SUCCESS, "invalid argument from master");
SysTryReturn(NID_SHELL, arg != null, -EPERM, E_SUCCESS, "arg is null!");
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s), clicked.event(%s), clicked.x(%f), clicked.y(%f)", arg->pkgname, arg->id, arg->info.clicked.event, arg->info.clicked.x, arg->info.clicked.y);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s), clicked.event(%s), clicked.x(%f), clicked.y(%f)", arg->pkgname, arg->id, arg->info.clicked.event, arg->info.clicked.x, arg->info.clicked.y);
return 0;
}
SysTryReturn(NID_SHELL, arg || arg->id || arg->pkgname, 0, E_SUCCESS, "arg is null!");
SysTryReturn (NID_SHELL, arg->type == event_arg::EVENT_RESIZE, -EPERM, E_SUCCESS, "invalid argument from master");
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s), resize.w(%d), resize.h(%d)", arg->pkgname, arg->id, arg->info.resize.w, arg->info.resize.h);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s), resize.w(%d), resize.h(%d)", arg->pkgname, arg->id, arg->info.resize.w, arg->info.resize.h);
- _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->pkgname, arg->id);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for appId(%s), instanceId(%s)", arg->pkgname, arg->id);
+ _AppWidgetContext* pAppWidgetContext = AppWidgetManagerService::GetInstance()->Find(arg->id);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for providerId(%s), instanceId(%s)", arg->pkgname, arg->id);
pAppWidgetContext->OnResize(arg->info.resize.w, arg->info.resize.h);
AppWidgetManagerService::OnAppWidgetPeriodChanged(struct event_arg *arg, void* data)
{
SysTryReturn(NID_SHELL, arg != null, 0, E_SUCCESS, "arg is null!");
- SysSecureLog(NID_SHELL, "packageName(%s), id(%s), width(%d), height(%d), priority(%d)", arg->pkgname, arg->id);
+ SysSecureLog(NID_SHELL, "providerId(%s), id(%s), width(%d), height(%d), priority(%d)", arg->pkgname, arg->id);
return 0;
}
SysTryReturn(NID_SHELL, arg->pkgname != null, EINVAL, E_INVALID_ARG, "[E_INVALID_ARG]");
SysTryReturn(NID_SHELL, arg->id != null, EINVAL, E_INVALID_ARG, "[E_INVALID_ARG]");
- SysSecureLog(NID_SHELL, "packageName(%s) id(%s) content(%s) cluster(%s) category(%s)", arg->pkgname, arg->id, arg->info.lb_recreate.content, arg->info.lb_recreate.cluster, arg->info.lb_recreate.category);
+ SysSecureLog(NID_SHELL, "providerId(%s) id(%s) content(%s) cluster(%s) category(%s)", arg->pkgname, arg->id, arg->info.lb_recreate.content, arg->info.lb_recreate.cluster, arg->info.lb_recreate.category);
AppWidgetManagerService* pAppWidgetManagerService = AppWidgetManagerService::GetInstance();
SysTryReturn(NID_SHELL, pAppWidgetManagerService != null, -EBUSY, E_SYSTEM, "Failed to get the instance for AppWidgetManagerService.");
- double default_priority = 1.0f;
+ const double default_priority = 1.0f;
_AppWidgetContext* pAppWidgetContext = pAppWidgetManagerService->AddAppWidget(arg->info.lb_create.content, arg->pkgname, arg->id, arg->info.lb_create.width, arg->info.lb_create.height, arg->info.lb_create.period * 1000, default_priority);
SysTryReturn(NID_SHELL, pAppWidgetContext != null, -EBUSY, E_SYSTEM, "Failed to add the appwidget.");
}
result
-AppWidgetManagerService::InitializeCoreDaemonEventReceiver(const char *pIdForCoreDaemon)
+AppWidgetManagerService::InitializeCoreDaemonEventReceiver(const char *pCoreDaemonId)
{
- SysTryReturnResult(NID_SHELL, pIdForCoreDaemon != null, E_INVALID_ARG, "pIdForCoreDaemon should not be null!");
-
- static __HashMapDefaultProviderT <String> strHashCodeProvider;
- static ComparerT <String> strComparer;
-
- result r = __appWidgetContextList.Construct(0, 0, strHashCodeProvider, strComparer);
- SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute Construct.");
-
- r = __appContextList.Construct(0, 0, strHashCodeProvider, strComparer);
- SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute Construct.");
+ SysTryReturnResult(NID_SHELL, pCoreDaemonId != null, E_INVALID_ARG, "pCoreDaemonId should not be null!");
- /*!
- * \note
- * Only for the buffer type
- */
struct event_handler cbs;
memset(&cbs, 0, sizeof(event_handler));
cbs.lb_recreate = OnAppWidgetRecreate;/* Recover from the fault of slave */
//cbs.content_event = OnAppWidgetContentEvent,
- int ret = provider_init(null, pIdForCoreDaemon, &cbs, this);
+ int ret = provider_init(null, pCoreDaemonId, &cbs, this);
SysTryReturnResult(NID_SHELL, ret == 0, E_SYSTEM, "provider_init failed.");
- SysLog(NID_SHELL, "provider_init is invoked with (%s)", pIdForCoreDaemon);
+ SysLog(NID_SHELL, "provider_init is invoked with (%s)", pCoreDaemonId);
return E_SUCCESS;
}
result
AppWidgetManagerService::DeinitializeCoreDaemonEventReceiver(void)
{
- SysLog(NID_SHELL, "Enter.");
provider_fini();
- SysLog(NID_SHELL, "Exit.");
return E_SUCCESS;
}
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
if ( (updateAllSuspended == true && AppManager::GetInstance()->IsRunning(appId) == false )
- || ( pValue->GetAppId() == appId && pValue->GetProviderName() == providerName ) )
+ || ( pContext->GetAppId() == appId && pContext->GetProviderName() == providerName ) )
{
- ArrayList* pArray = new (std::nothrow) ArrayList();
- SysTryReturnResult(NID_SHELL, pArray, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
-
- pArray->Construct();
- pArray->Add(pValue);
- pArray->Add(new String(argument));
-
- result r = __handlerThread.SendUserEvent(LOCAL_EVENT_REQUEST_UPDATE, pArray);
- SysTryLog(NID_SHELL, !IsFailed(r), "[%s] Propagated.", GetErrorMessage(r));
-
- SysLog(NID_SHELL, "UserEvent(%d) is sent for '%ls.%ls'.", LOCAL_EVENT_REQUEST_UPDATE, pValue->GetAppId().GetPointer(), pValue->GetProviderName().GetPointer() );
+ RequestUpdate(pContext, argument);
found = true;
}
}
result
AppWidgetManagerService::RequestUpdate(_AppWidgetContext* pAppWidgetContext, const String& argument)
{
- if (pAppWidgetContext)
- {
- ArrayList* pArray = new (std::nothrow) ArrayList();
- SysTryReturnResult(NID_SHELL, pArray, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
-
- pArray->Construct();
- pArray->Add(pAppWidgetContext);
- pArray->Add(new String(argument));
-
- result r = __handlerThread.SendUserEvent(LOCAL_EVENT_REQUEST_UPDATE, pArray);
- SysTryLog(NID_SHELL, !IsFailed(r), "[%s] Propagated.", GetErrorMessage(r));
- }
- else
+ if (pAppWidgetContext == null)
{
SysLog(NID_SHELL, "pAppWidgetContext is null.");
}
- return E_SUCCESS;
-}
-
-result
-AppWidgetManagerService::RequestUpdateInstance(const Tizen::Base::String& instanceId, const Tizen::Base::String& argument)
-{
- SysSecureLog(NID_SHELL, "%ls, %ls", instanceId.GetPointer(), argument.GetPointer() );
-
- _AppWidgetContext* pAppWidgetContext = Find(L"", instanceId);
- SysTryReturnResult(NID_SHELL, pAppWidgetContext, E_OBJ_NOT_FOUND, "Failed to find the object.");
-
ArrayList* pArray = new (std::nothrow) ArrayList();
SysTryReturnResult(NID_SHELL, pArray, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
result r = __handlerThread.SendUserEvent(LOCAL_EVENT_REQUEST_UPDATE, pArray);
SysTryLog(NID_SHELL, !IsFailed(r), "[%s] Propagated.", GetErrorMessage(r));
+ SysLog(NID_SHELL, "UserEvent(%d) is sent for '%ls.%ls'.", LOCAL_EVENT_REQUEST_UPDATE, pAppWidgetContext->GetAppId().GetPointer(), pAppWidgetContext->GetProviderName().GetPointer() );
+
+ return E_SUCCESS;
+}
+
+result
+AppWidgetManagerService::RequestUpdateInstance(const Tizen::Base::String& instanceId, const Tizen::Base::String& argument)
+{
+ SysSecureLog(NID_SHELL, "%ls, %ls", instanceId.GetPointer(), argument.GetPointer() );
+
+ _AppWidgetContext* pAppWidgetContext = Find(instanceId);
+ SysTryReturnResult(NID_SHELL, pAppWidgetContext, E_OBJ_NOT_FOUND, "Failed to find the object(%ls).", instanceId.GetPointer());
+ RequestUpdate(pAppWidgetContext, argument);
return E_SUCCESS;
}
result
-AppWidgetManagerService::RequestSharedMemoryId(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height, int& shmId)
+AppWidgetManagerService::AcquireRemoteBuffer(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height, int& bufferId)
{
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
- shmId = pAppWidgetContext->GetSharedMemId(width, height);
- SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , shmId != -1, "[E_SYSTEM] failed to GetSharedMemId for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
+ bufferId = pAppWidgetContext->AcquireRemoteBuffer(width, height);
+ SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , bufferId != -1, "[E_SYSTEM] failed to AcquireRemoteBuffer for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
return E_SUCCESS;
}
result
-AppWidgetManagerService::RequestSharedMemoryIdForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height, int& shmId)
+AppWidgetManagerService::AcquireRemoteBufferForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height, int& bufferId)
{
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
_AppWidgetPopupContext* pPopupContext = pAppWidgetContext->GetAppWidgetPopup();
SysSecureTryReturnResult(NID_SHELL, pPopupContext , E_SYSTEM, "[E_SYSTEM] pPd is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
- shmId = pPopupContext->GetSharedMemId(width, height);
- SysSecureTryReturnResult(NID_SHELL, shmId != -1, E_SYSTEM, "Failed to GetSharedMemId for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
+ bufferId = pPopupContext->AcquireRemoteBuffer(width, height);
+ SysSecureTryReturnResult(NID_SHELL, bufferId != -1, E_SYSTEM, "Failed to AcquireRemoteBuffer for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
return E_SUCCESS;
}
result
-AppWidgetManagerService::RequestSyncSharedMemory(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height)
+AppWidgetManagerService::SyncRemoteBuffer(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int width, int height)
{
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
- return pAppWidgetContext->RequestUpdateRemote(width, height);
+ return pAppWidgetContext->SyncRemoteBuffer(width, height);
}
result
-AppWidgetManagerService::RequestSyncSharedMemoryForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
+AppWidgetManagerService::SyncRemoteBufferForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
{
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext->GetAppWidgetPopup(), E_SYSTEM, "[E_SYSTEM] GetAppWidgetPopup() returns null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
- return pAppWidgetContext->GetAppWidgetPopup()->RequestUpdateRemote();
+ return pAppWidgetContext->GetAppWidgetPopup()->SyncRemoteBuffer();
}
result
-AppWidgetManagerService::RequestReleaseSharedMemory(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
+AppWidgetManagerService::ReleaseRemoteBuffer(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
{
return E_SUCCESS;
}
result
-AppWidgetManagerService::RequestReleaseSharedMemoryForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
+AppWidgetManagerService::ReleaseRemoteBufferForPD(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId)
{
return E_SUCCESS;
}
{
SysLog(NID_SHELL, "ENTER");
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext, E_SYSTEM, "pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
providerCount = GetProviderCount(pAppWidgetContext->GetAppId());
- std::unique_ptr<char[]> packageName(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetProviderId()));
+ std::unique_ptr<char[]> providerId(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetProviderId()));
std::unique_ptr<char[]> id(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetInstanceId()));
- int ret = provider_send_deleted(packageName.get(), id.get());
+ int ret = provider_send_deleted(providerId.get(), id.get());
SysTryReturnResult(NID_SHELL, ret >= 0 , E_SYSTEM, "Failed to execute provider_send_deleted.");
//result r = pAppWidgetContext->OnRemoved();
//SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute OnRemoved.");
- result r = RemoveAppWidget(packageName.get(), id.get(), true);
+ result r = RemoveAppWidget(providerId.get(), id.get());
SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute RemoveAppWidget.");
providerCount--;
}
else
{
- pAppWidgetContext = this->Find(appId, instanceId);
+ pAppWidgetContext = this->Find(instanceId);
}
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext, E_SYSTEM, "pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
- std::unique_ptr<char[]> packageName(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetProviderId()));
+ std::unique_ptr<char[]> providerId(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetProviderId()));
std::unique_ptr<char[]> id(_StringConverter::CopyToCharArrayN(pAppWidgetContext->GetInstanceId()));
- int ret = provider_send_deleted(packageName.get(), id.get());
+ int ret = provider_send_deleted(providerId.get(), id.get());
SysTryReturnResult(NID_SHELL, ret >= 0 , E_SYSTEM, "Failed to execute provider_send_deleted.");
//result r = pAppWidgetContext->OnRemoved();
//SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute OnRemoved.");
- result r = RemoveAppWidget(packageName.get(), id.get(), true);
+ result r = RemoveAppWidget(providerId.get(), id.get());
SysTryReturnResult(NID_SHELL, !IsFailed(r), E_SYSTEM, "Failed to execute RemoveAppWidget.");
}
else // for pending event excluding touch event.
result
AppWidgetManagerService::SendAccessStatus(const Tizen::App::AppId& appId, const Tizen::Base::String& instanceId, int accessStatus)
{
- _AppWidgetContext* pAppWidgetContext = this->Find(appId, instanceId);
+ _AppWidgetContext* pAppWidgetContext = this->Find(instanceId);
SysSecureTryReturnResult(NID_SHELL, pAppWidgetContext , E_SYSTEM, "[E_SYSTEM] pAppWidgetContext is null for (%ls) (%ls)", appId.GetPointer(), instanceId.GetPointer());
return pAppWidgetContext->SendAccessStatus(accessStatus);
while (pAppWidgetContextEnum->MoveNext() == E_SUCCESS)
{
- _AppWidgetContext* pValue = null;
- pAppWidgetContextEnum->GetValue(pValue);
+ _AppWidgetContext* pContext = null;
+ pAppWidgetContextEnum->GetValue(pContext);
- r = pValue->SendPendingEvent();
+ r = pContext->SendPendingEvent();
if (r == E_SUCCESS)
{
- (pValue->GetAppContext())->__isWaitingResult = false;
+ (pContext->GetAppContext())->__isWaitingResult = false;
SysLog(NID_SHELL, "Found pending event.");
break;
}
{
if (E_DATA_NOT_FOUND)
{
- (pValue->GetAppContext())->__isWaitingResult = false;
+ (pContext->GetAppContext())->__isWaitingResult = false;
}
}
}