+wrt-plugins-tizen (0.2.77) unstable; urgency=low
+
+ * Bug fix on Power and MediaContent
+ * Git : slp/pkgs/w/wrt-plugins-tizen
+ * Tag : wrt-plugins-tizen_0.2.77
+
+ -- Kisub Song <kisubs.song@samsung.com> Tue, 04 Sep 2012 13:57:20 +0900
+
wrt-plugins-tizen (0.2.76) unstable; urgency=low
* Bug fix on Power and MediaContent
Name: wrt-plugins-tizen
Summary: JavaScript plugins for WebRuntime
-Version: 0.2.76
+Version: 0.2.77
Release: 0
Group: TO_BE_FILLED
License: TO_BE_FILLED
{
if(m_addressBookEmitters.size() != 0)
{
- ContactListenerManagerSingleton::Instance().unregisterAppListChangedCallbacks(this);
+ ContactsSvcChangeListenerManagerSingleton::Instance().unregisterAppListChangedCallbacks(this);
}
}
{
LogDebug("Watch registered initially");
- ContactListenerManagerSingleton::Instance().registerAppListChangedCallbacks(this, m_id);
+ ContactsSvcChangeListenerManagerSingleton::Instance().registerAppListChangedCallbacks(this, m_id);
}
m_addressBookEmitters.attach(emitter);
- long id = ContactListenerManagerSingleton::Instance().getWatchIdAndInc();
+ long id = ContactsSvcChangeListenerManagerSingleton::Instance().getWatchIdAndInc();
m_watchIdMap[id] = emitter->getId();
event->setId(id);
{
LogDebug("No watcher is registered. unsubscribing from contact service.");
- ContactListenerManagerSingleton::Instance().unregisterAppListChangedCallbacks(this);
+ ContactsSvcChangeListenerManagerSingleton::Instance().unregisterAppListChangedCallbacks(this);
}
event->setResult(true);
#include <API/Contact/IAddressBook.h>
#include <API/Contact/IContact.h>
-#include "ContactListenerManager.h"
+#include "ContactsSvcChangeListenerManager.h"
namespace TizenApis {
namespace Platform {
* limitations under the License.
*/
/*
- * @file ContactListenerManager.cpp
+ * @file ContactsSvcChangeListenerManager.cpp
* @author Kisub Song (kisubs.song@samsung.com)
* @version 0.1
* @brief
*/
-#include "ContactListenerManager.h"
+#include "ContactsSvcChangeListenerManager.h"
#include <contacts-svc.h>
#include "ContactObjectP2AConverter.h"
#include "query-svc/query-service.h"
-IMPLEMENT_SINGLETON(TizenApis::Platform::Contact::ContactListenerManager)
+IMPLEMENT_SINGLETON(TizenApis::Platform::Contact::ContactsSvcChangeListenerManager)
namespace TizenApis {
namespace Platform {
using namespace WrtDeviceApis::Commons;
using namespace TizenApis::Api::Contact;
-ContactListenerManager::ContactListenerManager() :
+ContactsSvcChangeListenerManager::ContactsSvcChangeListenerManager() :
+ EventRequestReceiver< EventInvokeChangeListener >(ThreadEnum::CONTACT_THREAD),
m_callbackRegistered(false),
m_latestVersion(0),
m_watchIdAcc(0)
{
}
-ContactListenerManager::~ContactListenerManager()
+ContactsSvcChangeListenerManager::~ContactsSvcChangeListenerManager()
{
if(m_callbackRegistered)
{
}
}
-void ContactListenerManager::registerAppListChangedCallbacks(IContactEventCallbacks *callbacks, int addressBookId)
+void ContactsSvcChangeListenerManager::registerAppListChangedCallbacks(IContactEventCallbacks *callbacks, int addressBookId)
{
if(callbacks == NULL)
{
m_callbacks[addressBookId] = callbacks;
}
-void ContactListenerManager::unregisterAppListChangedCallbacks(IContactEventCallbacks *callbacks)
+void ContactsSvcChangeListenerManager::unregisterAppListChangedCallbacks(IContactEventCallbacks *callbacks)
{
if(callbacks == NULL)
{
}
}
-void ContactListenerManager::unregisterAppListChangedCallbacks(int addressBookId)
+void ContactsSvcChangeListenerManager::unregisterAppListChangedCallbacks(int addressBookId)
{
if(m_callbacks.size() == 0)
{
}
}
-long ContactListenerManager::getWatchIdAndInc()
+long ContactsSvcChangeListenerManager::getWatchIdAndInc()
{
return ++m_watchIdAcc;
}
-void ContactListenerManager::contactsSvcEventCallback(void *data)
+void ContactsSvcChangeListenerManager::contactsSvcEventCallback(void *data)
{
+ // This callback is to be called from main thread.
if(data == NULL)
{
LogWarning("contacts-service listener passed NULL user_data");
return;
}
- ContactListenerManager *contactListenerMgr = static_cast<ContactListenerManager *>(data);
+ ContactsSvcChangeListenerManager *contactListenerMgr = static_cast<ContactsSvcChangeListenerManager *>(data);
contactListenerMgr->contactsSvcEventCallback();
}
-void ContactListenerManager::contactsSvcEventCallback()
+void ContactsSvcChangeListenerManager::contactsSvcEventCallback()
+{
+ EventInvokeChangeListenerPtr event(new EventInvokeChangeListener());
+
+ event->setForAsynchronousCall(NULL);
+ EventRequestReceiver< EventInvokeChangeListener >::PostRequest(event);
+}
+
+void ContactsSvcChangeListenerManager::OnRequestReceived(const EventInvokeChangeListenerPtr &event)
{
LogDebug("entered");
if(!m_callbackRegistered)
m_latestVersion = get_contact_version();
}
-void ContactListenerManager::registerContactSvcChangedCallbacks()
+void ContactsSvcChangeListenerManager::registerContactSvcChangedCallbacks()
{
int errorCode = 0;
m_callbackRegistered = true;
}
-void ContactListenerManager::unregisterContactSvcChangedCallbacks()
+void ContactsSvcChangeListenerManager::unregisterContactSvcChangedCallbacks()
{
int errorCode = 0;
m_callbackRegistered = false;
}
-IContactEventCallbacks* ContactListenerManager::getContactEventCallbacks(int id)
+IContactEventCallbacks* ContactsSvcChangeListenerManager::getContactEventCallbacks(int id)
{
if(m_callbacks.find(id) == m_callbacks.end())
return NULL;
* limitations under the License.
*/
/*
- * @file ContactListenerManager.h
+ * @file ContactsSvcChangeListenerManager.h
* @author Kisub Song (kisubs.song@samsung.com)
* @version 0.1
* @brief
#include <set>
#include <dpl/shared_ptr.h>
#include <dpl/singleton.h>
+#include <Commons/EventReceiver.h>
+#include <Commons/IEvent.h>
#include <API/Contact/IContact.h>
class IContactEventCallbacks
{
public:
- friend class ContactListenerManager;
+ friend class ContactsSvcChangeListenerManager;
IContactEventCallbacks() {}
~IContactEventCallbacks() {}
virtual void onContactEventRemoved(TizenApis::Api::Contact::StringArrayPtr &contactIds) = 0;
};
-class ContactListenerManager
+class EventInvokeChangeListener :
+ public WrtDeviceApis::Commons::IEvent<EventInvokeChangeListener>
+{
+};
+typedef DPL::SharedPtr<EventInvokeChangeListener> EventInvokeChangeListenerPtr;
+
+class ContactsSvcChangeListenerManager :
+ public WrtDeviceApis::Commons::EventRequestReceiver< EventInvokeChangeListener >
{
public:
- ContactListenerManager();
- virtual ~ContactListenerManager();
+ ContactsSvcChangeListenerManager();
+ virtual ~ContactsSvcChangeListenerManager();
// Can throw InvalidArgumentException or PlatformException
void registerAppListChangedCallbacks(IContactEventCallbacks *callbacks, int addressBookId);
private:
static void contactsSvcEventCallback(void *data);
void contactsSvcEventCallback();
+ virtual void OnRequestReceived(const EventInvokeChangeListenerPtr &event);
void registerContactSvcChangedCallbacks();
void unregisterContactSvcChangedCallbacks();
long m_watchIdAcc;
public:
- friend class DPL::Singleton<ContactListenerManager>;
+ friend class DPL::Singleton<ContactsSvcChangeListenerManager>;
};
-typedef DPL::Singleton<ContactListenerManager> ContactListenerManagerSingleton;
+typedef DPL::Singleton<ContactsSvcChangeListenerManager> ContactsSvcChangeListenerManagerSingleton;
} // Contact
} // Platform
${CURRENT_PATH}/ContactObjectP2AConverter.cpp
${CURRENT_PATH}/ContactSearchEngine.cpp
${CURRENT_PATH}/ContactFilterValidator.cpp
+ ${CURRENT_PATH}/ContactsSvcChangeListenerManager.cpp
${CURRENT_PATH}/ContactsSvcWrapper.cpp
- ${CURRENT_PATH}/ContactListenerManager.cpp
${CURRENT_PATH}/ContactUtility.cpp
${CURRENT_PATH}/ContactDownloadManager.cpp
${CURRENT_PATH}/query-svc/query-svc.c