//
#include <SecurityExceptions.h>
-#include <CallbackUserData.h>
#include <GlobalContextManager.h>
#include <JSUtil.h>
#include <ArgumentValidator.h>
#include <TimeTracer.h>
#include "JSPowerManager.h"
-#include "plugin_config.h"
+#include "plugin_config_impl.h"
#include "PowerManager.h"
#include <Logger.h>
void JSPowerManager::initialize(JSContextRef context, JSObjectRef object)
{
+ LoggerD("entered");
+ PowerManagerPriv *priv = new PowerManagerPriv(GlobalContextManager::getInstance()->getGlobalContext(context));
+ JSObjectSetPrivate(object, static_cast<void*>(priv));
}
void JSPowerManager::finalize(JSObjectRef object)
{
- CallbackUserData *callback = static_cast<CallbackUserData*>(JSObjectGetPrivate(object));
- if( callback != NULL ){
- PowerManager::getInstance()->removeScreenStateChangedCallback(callback);
+ LoggerD("entered");
+ PowerManagerPriv *priv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(object));
+ if( priv != NULL ){
+ PowerManager::getInstance()->removeScreenStateChangedCallback(priv);
JSObjectSetPrivate(object, NULL);
- delete callback;
+ delete priv;
}
}
JSValueRef* exception)
{
LoggerD("entered");
- TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
- AceSecurityStatus status = POWER_CHECK_ACCESS(POWER_FUNCTION_API_REQUEST);
- TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+ if (!thisPriv) {
+ LoggerE("private object is null");
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "Wrong object");
+ }
+ TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
+ TIZEN_CHECK_ACCESS(context, exception, thisPriv, POWER_FUNCTION_API_REQUEST);
try{
ArgumentValidator validator(context, argumentCount, arguments);
try{
ArgumentValidator validator(context, argumentCount, arguments);
JSObjectRef func = validator.toFunction(0);
- CallbackUserData *callback = static_cast<CallbackUserData*>(JSObjectGetPrivate(thisObject));
- if( callback == NULL ){
- callback = new CallbackUserData(GlobalContextManager::getInstance()->getGlobalContext(context));
- JSObjectSetPrivate(thisObject, callback);
- }
- callback->setSuccessCallback(func);
- PowerManager::getInstance()->addScreenStateChangedCallback(callback);
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+ thisPriv->setSuccessCallback(func);
+ PowerManager::getInstance()->addScreenStateChangedCallback(thisPriv);
}catch(const BasePlatformException& err){
return JSWebAPIErrorFactory::postException(context, exception, err);
LoggerD("entered");
TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
- CallbackUserData *callback = static_cast<CallbackUserData*>(JSObjectGetPrivate(thisObject));
- if( callback != NULL ){
- PowerManager::getInstance()->removeScreenStateChangedCallback(callback);
- JSObjectSetPrivate(thisObject, NULL);
- delete callback;
- }
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+
TIME_TRACER_ITEM_END(__FUNCTION__, 0);
return JSValueMakeUndefined(context);
}
JSValueRef* exception)
{
LoggerD("entered");
+
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+ if (!thisPriv) {
+ LoggerE("private object is null");
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "Wrong object");
+ }
TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
- AceSecurityStatus status = POWER_CHECK_ACCESS(POWER_FUNCTION_API_RELEASE);
- TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
+ TIZEN_CHECK_ACCESS(context, exception, thisPriv, POWER_FUNCTION_API_SET_SCREEN_BRIGHTNESS);
+
try{
ArgumentValidator validator(context, argumentCount, arguments);
JSValueRef* exception)
{
LoggerD("entered");
+
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+ if (!thisPriv) {
+ LoggerE("private object is null");
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "Wrong object");
+ }
TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
- AceSecurityStatus status = POWER_CHECK_ACCESS(POWER_FUNCTION_API_RELEASE);
- TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
+ TIZEN_CHECK_ACCESS(context, exception, thisPriv, POWER_FUNCTION_API_TURN_SCREEN_ON);
try{
PowerManager::getInstance()->setScreenState(true);
JSValueRef* exception)
{
LoggerD("entered");
+ PowerManagerPriv *thisPriv = static_cast<PowerManagerPriv*>(JSObjectGetPrivate(thisObject));
+ if (!thisPriv) {
+ LoggerE("private object is null");
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "Wrong object");
+ }
TIME_TRACER_ITEM_BEGIN(__FUNCTION__, 0);
- AceSecurityStatus status = POWER_CHECK_ACCESS(POWER_FUNCTION_API_RELEASE);
- TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
+ TIZEN_CHECK_ACCESS(context, exception, thisPriv, POWER_FUNCTION_API_TURN_SCREEN_OFF);
try{
PowerManager::getInstance()->setScreenState(false);