Adjust plugins to new plugin API 41/32941/3
authorAdam Malinowski <a.malinowsk2@partner.samsung.com>
Mon, 29 Dec 2014 17:19:26 +0000 (18:19 +0100)
committerAdam Malinowski <a.malinowsk2@partner.samsung.com>
Mon, 5 Jan 2015 06:57:50 +0000 (07:57 +0100)
A change has been introduced in cynara plugin API.
getSupportedPolicyTypes was removed and getSupportedPolicyDescr
was added. This patch adapts ask user plugins to new API.

Change-Id: I4b2e7ee1b12f120f2e414b927620239ab0191c19

src/plugin/client/ClientPlugin.cpp
src/plugin/service/ServicePlugin.cpp

index 2616a09..5fe1e1e 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  Copyright (c) 2014 Samsung Electronics Co.
+ *  Copyright (c) 2014-2015 Samsung Electronics Co.
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
 
 #include <attributes/attributes.h>
 #include <log/log.h>
+#include <types/PolicyDescription.h>
 #include <types/SupportedTypes.h>
 
 using namespace Cynara;
 
 namespace AskUser {
-const std::vector<PolicyType> clientTypes = {
-        SupportedTypes::Client::ALLOW_ONCE,
-        SupportedTypes::Client::ALLOW_PER_SESSION,
+const std::vector<PolicyDescription> clientDescriptions = {
+        { SupportedTypes::Client::ALLOW_ONCE, "Allow once" },
+        { SupportedTypes::Client::ALLOW_PER_SESSION, "Allow per session" },
 
-        SupportedTypes::Client::DENY_ONCE,
-        SupportedTypes::Client::DENY_PER_SESSION
+        { SupportedTypes::Client::DENY_ONCE, "Deny once" },
+        { SupportedTypes::Client::DENY_PER_SESSION, "Deny per session" }
 };
 
 class ClientPlugin : public ClientPluginInterface {
 public:
-    const std::vector<PolicyType> &getSupportedPolicyTypes() {
-        return clientTypes;
+    const std::vector<PolicyDescription> &getSupportedPolicyDescr() {
+        return clientDescriptions;
     }
 
     bool isCacheable(const ClientSession &session UNUSED, const PolicyResult &result) {
index e8812a6..f557176 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  Copyright (c) 2014 Samsung Electronics Co.
+ *  Copyright (c) 2014-2015 Samsung Electronics Co.
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@
 #include <ostream>
 #include <cynara-plugin.h>
 
+#include <types/PolicyDescription.h>
 #include <types/SupportedTypes.h>
 #include <translator/Translator.h>
 
@@ -59,16 +60,19 @@ std::function<std::string(const Key&)> hasher = [](const Key &key) {
             std::to_string(privilege.size());
 };
 
-const std::vector<PolicyType> serviceTypes = {SupportedTypes::Service::ASK_USER};
+const std::vector<PolicyDescription> serviceDescriptions = {
+    { SupportedTypes::Service::ASK_USER, "Ask user" }
+};
 
 class AskUserPlugin : public ServicePluginInterface {
 public:
     AskUserPlugin()
         : m_cache(hasher)
     {}
-    const std::vector<PolicyType> &getSupportedPolicyTypes() {
-        return serviceTypes;
+    const std::vector<PolicyDescription> &getSupportedPolicyDescr() {
+        return serviceDescriptions;
     }
+
     PluginStatus check(const std::string &client,
                        const std::string &user,
                        const std::string &privilege,