tizen 2.4 release
[framework/web/wrt-commons.git] / modules / custom_handler_dao / include / wrt-commons / custom-handler-dao-ro / CustomHandlerDatabase.h
@@ -18,8 +18,8 @@
 #define _CUSTOM_HANDLER_DATABASE_H_
 
 #include <dpl/thread.h>
-#include <dpl/mutex.h>
 #include <dpl/db/thread_database_support.h>
+#include <mutex>
 
 namespace CustomHandlerDB {
 namespace Interface {
@@ -27,25 +27,25 @@ void attachDatabaseRO();
 void attachDatabaseRW();
 void detachDatabase();
 
-extern DPL::Mutex g_dbQueriesMutex;
+extern std::mutex g_dbQueriesMutex;
 extern DPL::DB::ThreadDatabaseSupport g_dbInterface;
 } // namespace Interface
 } // namespace CustomHandlerDB
 
-#define CUSTOM_HANDLER_DB_INTERNAL(tlsCommand, InternalType)                   \
-    static DPL::ThreadLocalVariable<InternalType> *tlsCommand##Ptr = NULL;   \
-    {                                                                          \
-        DPL::Mutex::ScopedLock lock(                                           \
-            &CustomHandlerDB::Interface::g_dbQueriesMutex);                \
-        if (!tlsCommand##Ptr) {                                              \
-            static DPL::ThreadLocalVariable<InternalType> tmp;                 \
-            tlsCommand##Ptr = &tmp;                                          \
-        }                                                                      \
-    }                                                                          \
-    DPL::ThreadLocalVariable<InternalType> &tlsCommand = *tlsCommand##Ptr;   \
-    if (tlsCommand.IsNull())                                                   \
-    {                                                                          \
-        tlsCommand = InternalType(&CustomHandlerDB::Interface::g_dbInterface); \
+#define CUSTOM_HANDLER_DB_INTERNAL(tlsCommand, InternalType)                  \
+    static DPL::ThreadLocalVariable<InternalType> *tlsCommand##Ptr = NULL;    \
+    {                                                                         \
+        std::lock_guard<std::mutex> lock(                                     \
+            CustomHandlerDB::Interface::g_dbQueriesMutex);                    \
+        if (!tlsCommand##Ptr) {                                               \
+            static DPL::ThreadLocalVariable<InternalType> tmp;                \
+            tlsCommand##Ptr = &tmp;                                           \
+        }                                                                     \
+    }                                                                         \
+    DPL::ThreadLocalVariable<InternalType> &tlsCommand = *tlsCommand##Ptr;    \
+    if (tlsCommand.IsNull())                                                  \
+    {                                                                         \
+        tlsCommand = InternalType(&CustomHandlerDB::Interface::g_dbInterface);\
     }
 
 #define CUSTOM_HANDLER_DB_SELECT(name, type) \