control: Remove JSON event precondition support

Event preconditions are essentially specialized actions that load events
after a certain condition is met. JSON configured fan control will just
utilize actions that are configured & created to enable or disable
events based on some state.

Change-Id: I8e8faf3c137062943ffaa9b3adc20d93da3a123c
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/control/json/event.cpp b/control/json/event.cpp
index 7bb26ec..6e2c080 100644
--- a/control/json/event.cpp
+++ b/control/json/event.cpp
@@ -42,25 +42,17 @@
     ConfigBase(jsonObj),
     _bus(util::SDBusPlus::getBus()), _manager(mgr), _zones(zones)
 {
-    // Event could have a precondition
-    if (!jsonObj.contains("precondition"))
+    // Event groups are optional
+    if (jsonObj.contains("groups"))
     {
-        // Event groups are optional
-        if (jsonObj.contains("groups"))
-        {
-            setGroups(jsonObj, _groups);
-        }
-        // Event actions are optional
-        if (jsonObj.contains("actions"))
-        {
-            setActions(jsonObj);
-        }
-        setTriggers(jsonObj);
+        setGroups(jsonObj, _groups);
     }
-    else
+    // Event actions are optional
+    if (jsonObj.contains("actions"))
     {
-        setPrecond(jsonObj);
+        setActions(jsonObj);
     }
+    setTriggers(jsonObj);
 }
 
 auto& Event::getAvailGroups()
@@ -104,21 +96,6 @@
     }
 }
 
-void Event::setPrecond(const json& jsonObj)
-{
-    const auto& precond = jsonObj["precondition"];
-    if (!precond.contains("name") || !precond.contains("groups") ||
-        !precond.contains("triggers") || !precond.contains("events"))
-    {
-        log<level::ERR>("Missing required event precondition attributes",
-                        entry("JSON=%s", precond.dump().c_str()));
-        throw std::runtime_error(
-            "Missing required event precondition attributes");
-    }
-    setGroups(precond, _groups);
-    setTriggers(precond);
-}
-
 void Event::setGroups(const json& jsonObj, std::vector<Group>& groups)
 {
     auto& availGroups = getAvailGroups();