-/*\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
- for (std::list < std::pair <std::string, bool > >::const_iterator iter = list.begin(); iter != list.end(); ++iter){\r
- LOGD(" %s : %d", iter->first.c_str(), iter->second);\r
- }\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);
+}