Add methodCallForce to policy-client 32/167832/1 accepted/tizen/4.0/unified/20180130.042112 submit/tizen_4.0/20180122.110227
authorseolheui kim <s414.kim@samsung.com>
Mon, 22 Jan 2018 09:06:03 +0000 (18:06 +0900)
committerseolheui kim <s414.kim@samsung.com>
Mon, 22 Jan 2018 09:06:03 +0000 (18:06 +0900)
Change-Id: I2ec0532b6029df955f89953d8903e80691458eec
Signed-off-by: seolheui kim <s414.kim@samsung.com>
libs/administration.cpp
libs/policy-client.h

index 5e8b500..bb38b90 100644 (file)
@@ -33,7 +33,7 @@ EXPORT_API int dpm_admin_register_client(device_policy_manager_h handle, const c
 
        try {
                Status<int> status { -1 };
-               status = client.methodCall<int>("DevicePolicyManager::enroll", name, uid);
+               status = client.methodCallForce<int>("DevicePolicyManager::enroll", name, uid);
                return status.get();
        } catch (...) {
                return -1;
@@ -50,7 +50,7 @@ EXPORT_API int dpm_admin_deregister_client(device_policy_manager_h handle, const
 
        try {
                Status<int> status { -1 };
-               status = client.methodCall<int>("DevicePolicyManager::disenroll", name, uid);
+               status = client.methodCallForce<int>("DevicePolicyManager::disenroll", name, uid);
                return status.get();
        } catch (...) {
                return -1;
index f07eb8e..bc7d0fc 100644 (file)
@@ -52,6 +52,13 @@ public:
                return ret;
        }
 
+       template<typename Type, typename... Args>
+       Type methodCallForce(const std::string& method, Args&&... args)
+       {
+               rmi::Connection conn(clientAddress);
+               Type ret = rmi::RemoteMethod<>::invoke<Type, Args...>(conn, method, std::forward<Args>(args)...);
+               return ret;
+       }
 private:
        static void maintenanceModeDispatcher(keynode_t *node, void *data);