add undo interface for plugin
authorJinWang An <jinwang.an@samsung.com>
Fri, 16 Aug 2019 00:24:02 +0000 (09:24 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Wed, 18 Mar 2020 08:53:50 +0000 (17:53 +0900)
include/Plugin.h
plugin/TestPlugin.cpp

index 7c9690c..c872aca 100644 (file)
@@ -55,6 +55,22 @@ namespace ModeSupervisorNamespace {
                {
                        return MODES_ERROR_NOT_SUPPORTED;
                }
+               virtual int undo(const std::string &key, int val)
+               {
+                       return MODES_ERROR_NOT_SUPPORTED;
+               }
+               virtual int undo(const std::string &key, double val)
+               {
+                       return MODES_ERROR_NOT_SUPPORTED;
+               }
+               virtual int undo(const std::string &key, bool val)
+               {
+                       return MODES_ERROR_NOT_SUPPORTED;
+               }
+               virtual int undo(const std::string &key, const std::string &val)
+               {
+                       return MODES_ERROR_NOT_SUPPORTED;
+               }
 
                virtual int getInt(const std::string &key)
                {
@@ -72,12 +88,10 @@ namespace ModeSupervisorNamespace {
                {
                        return std::string();
                }
-
        private:
                std::string name;     /* plugin key */
        };
 
        typedef Plugin *create_t();
        typedef void destroy_t(Plugin *);
-
 }
index ccd86a5..cdebac6 100644 (file)
@@ -32,6 +32,11 @@ public:
        int set(const std::string &key, bool val, bool *oldVal) override;
        int set(const std::string &key, const std::string &val, std::string *oldVal) override;
 
+       int undo(const std::string &key, int val) override;
+       int undo(const std::string &key, double val) override;
+       int undo(const std::string &key, bool val) override;
+       int undo(const std::string &key, const std::string &val) override;
+
        int getInt(const std::string &key) override;
        double getDouble(const std::string &key) override;
        bool getBool(const std::string &key) override;
@@ -82,6 +87,30 @@ int TestPlugin::set(const std::string &key, const std::string &val, std::string
        return MODES_ERROR_NONE;
 }
 
+int TestPlugin::undo(const std::string &key, int val)
+{
+       DBG("TestPlugin::undo int ( %s, %d )", key.c_str(), val);
+       return MODES_ERROR_NONE;
+}
+
+int TestPlugin::undo(const std::string &key, double val)
+{
+       DBG("TestPlugin::undo double ( %s, %lf )", key.c_str(), val);
+       return MODES_ERROR_NONE;
+}
+
+int TestPlugin::undo(const std::string &key, bool val)
+{
+       DBG("TestPlugin::undo bool ( %s, %s )", key.c_str(), val ? "true" : "false");
+       return MODES_ERROR_NONE;
+}
+
+int TestPlugin::undo(const std::string &key, const std::string &val)
+{
+       DBG("TestPlugin::undo string ( %s, %s )", key.c_str(), val.c_str());
+       return MODES_ERROR_NONE;
+}
+
 int TestPlugin::getInt(const std::string &key)
 {
        DBG("TestPlugin::getInt(%s)", key.c_str());
@@ -105,4 +134,3 @@ std::string TestPlugin::getString(const std::string &key)
        DBG("TestPlugin::getString(%s)", key.c_str());
        return std::string("test");
 }
-