modify logs
[platform/core/security/privacy-manager.git] / client / src / PrivacyManagerClient.cpp
index 50d9bc6..b189ca5 100644 (file)
-/*\r
- * Copyright (c) 2012 Samsung Electronics Co., Ltd All Rights Reserved\r
- *\r
- *    Licensed under the Apache License, Version 2.0 (the "License");\r
- *    you may not use this file except in compliance with the License.\r
- *    You may obtain a copy of the License at\r
- *\r
- *        http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- *    Unless required by applicable law or agreed to in writing, software\r
- *    distributed under the License is distributed on an "AS IS" BASIS,\r
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- *    See the License for the specific language governing permissions and\r
- *    limitations under the License.\r
- */\r
-\r
-#include <PrivacyManagerClient.h>\r
-#include <PrivacyDb.h>\r
-#include <SocketClient.h>\r
-#include <PrivacyIdInfo.h>\r
-#include <algorithm> \r
-#include <memory>\r
-#include <Utils.h>\r
-\r
-#undef __READ_DB_IPC__\r
-\r
-\r
-std::mutex PrivacyManagerClient::m_singletonMutex;\r
-PrivacyManagerClient* PrivacyManagerClient::m_pInstance = NULL;\r
-const std::string PrivacyManagerClient::INTERFACE_NAME("PrivacyInfoService");\r
-\r
-PrivacyManagerClient::PrivacyManagerClient(void)\r
-{\r
-       std::unique_ptr<SocketClient> pSocketClient(new SocketClient(INTERFACE_NAME));\r
-       m_pSocketClient = std::move(pSocketClient);\r
-}\r
-\r
-PrivacyManagerClient*\r
-PrivacyManagerClient::getInstance(void)\r
-{\r
-       std::lock_guard<std::mutex> guard(m_singletonMutex);\r
-       if (m_pInstance == NULL)\r
-               m_pInstance = new PrivacyManagerClient();\r
-       return m_pInstance;\r
-}\r
-\r
-int\r
-PrivacyManagerClient::addAppPackagePrivacyInfo(const std::string pkgId, const std::list < std::string >& list, bool isServerOperation)\r
-{\r
-\r
-       std::list < std::string > privacyList;\r
-\r
-       int res = PrivacyIdInfo::getPrivacyIdListFromPrivilegeList(list, privacyList);\r
-       if (res != PRIV_MGR_ERROR_SUCCESS )\r
-               return res;\r
-\r
-       if (privacyList.size() == 0)\r
-               return PRIV_MGR_ERROR_SUCCESS;\r
-\r
-       if (isServerOperation == true)\r
-       {\r
-               int result = PRIV_MGR_ERROR_SUCCESS;\r
-               res = m_pSocketClient->connect();\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-               res = m_pSocketClient->call("addPrivacyInfo", pkgId, privacyList, &result);\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-               res = m_pSocketClient->disconnect();\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);\r
-\r
-               return result;\r
-       }\r
-       else\r
-       {\r
-               return PrivacyDb::getInstance()->addAppPackagePrivacyInfo(pkgId, privacyList);\r
-       }\r
-}\r
-\r
-int\r
-PrivacyManagerClient::removeAppPackagePrivacyInfo(const std::string pkgId, bool isServerOperation)\r
-{\r
-       if (isServerOperation == true)\r
-       {\r
-               int result = PRIV_MGR_ERROR_SUCCESS;\r
-               int res = m_pSocketClient->connect();\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-               result = m_pSocketClient->call("removePrivacyInfo", pkgId, &result);\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-               result = m_pSocketClient->disconnect();\r
-               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);\r
-\r
-               return result;\r
-       }\r
-       else\r
-               return PrivacyDb::getInstance()->removeAppPackagePrivacyInfo(pkgId);\r
-}\r
-\r
-int\r
-PrivacyManagerClient::setPrivacySetting(const std::string pkgId, const std::string privacyId, bool isEnabled)\r
-{\r
-       int result = PRIV_MGR_ERROR_SUCCESS;\r
-       int res = m_pSocketClient->connect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-       res = m_pSocketClient->call("setPrivacySetting", pkgId, privacyId, isEnabled, &result);\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-       res = m_pSocketClient->disconnect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-\r
-       return result;\r
-}\r
-       \r
-int\r
-PrivacyManagerClient::getPrivacyAppPackages(std::list < std::string >& list)\r
-{\r
-#ifdef __READ_DB_IPC__\r
-\r
-       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));\r
-\r
-       int result = PRIV_MGR_ERROR_SUCCESS\r
-       int size = 0;\r
-\r
-       int res = pSocketClient->connect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-       res = pSocketClient->call("getPrivacyAppPackages", &result, &size, &list);\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-       res = pSocketClient->disconnect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-\r
-       return result;\r
-#endif\r
-\r
-       return PrivacyDb::getInstance()->getPrivacyAppPackages(list);\r
-}\r
-\r
-int\r
-PrivacyManagerClient::getAppPackagePrivacyInfo(const std::string pkgId, std::list < std::pair <std::string, bool > > & list)\r
-{\r
-#ifdef __READ_DB_IPC__\r
-       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));\r
-\r
-       int result = PRIV_MGR_ERROR_SUCCESS;\r
-       int res = pSocketClient->connect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-       pSocketClient->call("getAppPackagePrivacyInfo", pkgId, &result, &list);\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-       pSocketClient->disconnect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);\r
-\r
-       return result;\r
-#endif \r
-\r
-       return PrivacyDb::getInstance()->getAppPackagePrivacyInfo(pkgId, list);\r
-}\r
-\r
-int\r
-PrivacyManagerClient::isUserPrompted(const std::string pkgId, bool& isPrompted)\r
-{\r
-#ifdef __READ_DB_IPC__\r
-       LOGI("enter");\r
-\r
-       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));\r
-\r
-       int result = PRIV_MGR_ERROR_SUCCESS;\r
-       int res = pSocketClient->connect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-       res = pSocketClient->call("isUserPrompted", pkgId, &result, &isPrompted);\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-       res = pSocketClient->disconnect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);\r
-\r
-       LOGI("leave");\r
-\r
-       return result;\r
-#endif\r
-       return PrivacyDb::getInstance()->isUserPrompted(pkgId, isPrompted);\r
-}\r
-\r
-int\r
-PrivacyManagerClient::setUserPrompted(const std::string pkgId, bool prompted)\r
-{\r
-       LOGI("enter");\r
-\r
-       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));\r
-\r
-       int result = PRIV_MGR_ERROR_SUCCESS;\r
-       int res = pSocketClient->connect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);\r
-       res = pSocketClient->call("setUserPrompted", pkgId, prompted, &result);\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);\r
-       res = pSocketClient->disconnect();\r
-       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);\r
-\r
-       LOGI("leave");\r
-\r
-       return result;\r
-}\r
-\r
-int \r
-PrivacyManagerClient::getAppPackagesbyPrivacyId(std::string privacyId, std::list < std::pair < std::string, bool > >& list)\r
-{\r
-       return PrivacyDb::getInstance()->getAppPackagesbyPrivacyId(privacyId, list);\r
-}
\ No newline at end of file
+/*
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+
+#include <PrivacyManagerClient.h>
+#include <PrivacyDb.h>
+#include <SocketClient.h>
+#include <PrivacyIdInfo.h>
+#include <algorithm>
+#include <memory>
+#include <Utils.h>
+
+#undef __READ_DB_IPC__
+
+
+std::mutex PrivacyManagerClient::m_singletonMutex;
+PrivacyManagerClient* PrivacyManagerClient::m_pInstance = NULL;
+const std::string PrivacyManagerClient::INTERFACE_NAME("PrivacyInfoService");
+
+PrivacyManagerClient::PrivacyManagerClient(void)
+{
+       std::unique_ptr<SocketClient> pSocketClient(new SocketClient(INTERFACE_NAME));
+       m_pSocketClient = std::move(pSocketClient);
+}
+
+PrivacyManagerClient*
+PrivacyManagerClient::getInstance(void)
+{
+       std::lock_guard<std::mutex> guard(m_singletonMutex);
+       if (m_pInstance == NULL)
+               m_pInstance = new PrivacyManagerClient();
+       return m_pInstance;
+}
+
+int
+PrivacyManagerClient::addAppPackagePrivacyInfo(const std::string pkgId, const std::list < std::string >& list, bool privacyPopupRequired, bool isServerOperation)
+{
+
+       std::list < std::string > privacyList;
+
+       int res = PrivacyIdInfo::getPrivacyIdListFromPrivilegeList(list, privacyList);
+       if (res != PRIV_MGR_ERROR_SUCCESS )
+               return res;
+
+       if (privacyList.size() == 0)
+               return PRIV_MGR_ERROR_SUCCESS;
+
+       if (isServerOperation == true)
+       {
+               int result = PRIV_MGR_ERROR_SUCCESS;
+               res = m_pSocketClient->connect();
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+               res = m_pSocketClient->call("addPrivacyInfo", pkgId, privacyList, privacyPopupRequired, &result);
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+               res = m_pSocketClient->disconnect();
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);
+
+               return result;
+       }
+       else
+       {
+               return PrivacyDb::getInstance()->addAppPackagePrivacyInfo(pkgId, privacyList, privacyPopupRequired);
+       }
+}
+
+int
+PrivacyManagerClient::removeAppPackagePrivacyInfo(const std::string pkgId, bool isServerOperation)
+{
+       if (isServerOperation == true)
+       {
+               int result = PRIV_MGR_ERROR_SUCCESS;
+               int res = m_pSocketClient->connect();
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+               result = m_pSocketClient->call("removePrivacyInfo", pkgId, &result);
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+               result = m_pSocketClient->disconnect();
+               TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);
+
+               return result;
+       }
+       else
+               return PrivacyDb::getInstance()->removeAppPackagePrivacyInfo(pkgId);
+}
+
+int
+PrivacyManagerClient::setPrivacySetting(const std::string pkgId, const std::string privacyId, bool isEnabled)
+{
+       int result = PRIV_MGR_ERROR_SUCCESS;
+       int res = m_pSocketClient->connect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+       res = m_pSocketClient->call("setPrivacySetting", pkgId, privacyId, isEnabled, &result);
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+       res = m_pSocketClient->disconnect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+
+       return result;
+}
+       
+int
+PrivacyManagerClient::getPrivacyAppPackages(std::list < std::string >& list) const
+{
+#ifdef __READ_DB_IPC__
+
+       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));
+
+       int result = PRIV_MGR_ERROR_SUCCESS
+       int size = 0;
+
+       int res = pSocketClient->connect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+       res = pSocketClient->call("getPrivacyAppPackages", &result, &size, &list);
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+       res = pSocketClient->disconnect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+
+       return result;
+#endif
+
+       return PrivacyDb::getInstance()->getPrivacyAppPackages(list);
+}
+
+int
+PrivacyManagerClient::getAppPackagePrivacyInfo(const std::string pkgId, std::list < std::pair <std::string, bool > > & list) const
+{
+#ifdef __READ_DB_IPC__
+       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));
+
+       int result = PRIV_MGR_ERROR_SUCCESS;
+       int res = pSocketClient->connect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+       pSocketClient->call("getAppPackagePrivacyInfo", pkgId, &result, &list);
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+       pSocketClient->disconnect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);
+
+       return result;
+#endif
+
+       return PrivacyDb::getInstance()->getAppPackagePrivacyInfo(pkgId, list);
+}
+
+int
+PrivacyManagerClient::isUserPrompted(const std::string pkgId, bool& isPrompted) const
+{
+#ifdef __READ_DB_IPC__
+       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));
+
+       int result = PRIV_MGR_ERROR_SUCCESS;
+       int res = pSocketClient->connect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+       res = pSocketClient->call("isUserPrompted", pkgId, &result, &isPrompted);
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+       res = pSocketClient->disconnect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);
+
+       return result;
+#endif
+       return PrivacyDb::getInstance()->isUserPrompted(pkgId, isPrompted);
+}
+
+int
+PrivacyManagerClient::setUserPrompted(const std::string pkgId, bool prompted)
+{
+       std::unique_ptr <SocketClient> pSocketClient (new SocketClient(INTERFACE_NAME));
+
+       int result = PRIV_MGR_ERROR_SUCCESS;
+       int res = pSocketClient->connect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "connect : %d", res);
+       res = pSocketClient->call("setUserPrompted", pkgId, prompted, &result);
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, m_pSocketClient->disconnect(), "call : %d", res);
+       res = pSocketClient->disconnect();
+       TryReturn(res == PRIV_MGR_ERROR_SUCCESS, res, , "disconnect : %d", res);
+
+       return result;
+}
+
+int
+PrivacyManagerClient::getAppPackagesbyPrivacyId(const std::string privacyId, std::list < std::pair < std::string, bool > >& list) const
+{
+       return PrivacyDb::getInstance()->getAppPackagesbyPrivacyId(privacyId, list);
+}
+
+int
+PrivacyManagerClient::getPrivaycDisplayName(const std::string privacyId, std::string& displayName) const
+{
+       return PrivacyIdInfo::getPrivaycDisplayName(privacyId, displayName);
+}
+
+int
+PrivacyManagerClient::getPrivaycDescription(const std::string privacyId, std::string& description) const
+{
+       return PrivacyIdInfo::getPrivaycDescription(privacyId, description);
+}