Simplify task service code

This code repeats itself a lot.  Reduce complexity.

Tested:
```
curl -vvvv -k --http1.1 --user "root:0penBmc" -X POST "https://192.168.7.2/redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData" -H "Content-Type: application/json" -d '{"DiagnosticDataType": "Manager"}'
```

Starts a dump, and operates as expected.

Change-Id: I36000aababfc842845ba0d2103d3f6cd79a12385
Signed-off-by: Ed Tanous <ed@tanous.net>
diff --git a/redfish-core/include/event_service_manager.hpp b/redfish-core/include/event_service_manager.hpp
index 045ad8c..5abab9d 100644
--- a/redfish-core/include/event_service_manager.hpp
+++ b/redfish-core/include/event_service_manager.hpp
@@ -944,8 +944,8 @@
         return true;
     }
 
-    void sendEvent(nlohmann::json eventMessage, const std::string& origin,
-                   const std::string& resType)
+    void sendEvent(nlohmann::json eventMessage, std::string_view origin,
+                   std::string_view resType)
     {
         if (!serviceEnabled || (noOfEventLogSubscribers == 0U))
         {
diff --git a/redfish-core/lib/task.hpp b/redfish-core/lib/task.hpp
index a2959b8..09c92d1 100644
--- a/redfish-core/lib/task.hpp
+++ b/redfish-core/lib/task.hpp
@@ -199,9 +199,6 @@
 
     static void sendTaskEvent(std::string_view state, size_t index)
     {
-        std::string origin = "/redfish/v1/TaskService/Tasks/" +
-                             std::to_string(index);
-        std::string resType = "Task";
         // TaskState enums which should send out an event are:
         // "Starting" = taskResumed
         // "Running" = taskStarted
@@ -213,59 +210,50 @@
         // "Killed" = taskRemoved
         // "Exception" = taskCompletedWarning
         // "Cancelled" = taskCancelled
+        nlohmann::json event;
+        std::string indexStr = std::to_string(index);
         if (state == "Starting")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskResumed(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskResumed(indexStr);
         }
         else if (state == "Running")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskStarted(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskStarted(indexStr);
         }
         else if ((state == "Suspended") || (state == "Interrupted") ||
                  (state == "Pending"))
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskPaused(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskPaused(indexStr);
         }
         else if (state == "Stopping")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskAborted(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskAborted(indexStr);
         }
         else if (state == "Completed")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskCompletedOK(std::to_string(index)),
-                origin, resType);
+            event = redfish::messages::taskCompletedOK(indexStr);
         }
         else if (state == "Killed")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskRemoved(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskRemoved(indexStr);
         }
         else if (state == "Exception")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskCompletedWarning(std::to_string(index)),
-                origin, resType);
+            event = redfish::messages::taskCompletedWarning(indexStr);
         }
         else if (state == "Cancelled")
         {
-            redfish::EventServiceManager::getInstance().sendEvent(
-                redfish::messages::taskCancelled(std::to_string(index)), origin,
-                resType);
+            event = redfish::messages::taskCancelled(indexStr);
         }
         else
         {
             BMCWEB_LOG_INFO("sendTaskEvent: No events to send");
+            return;
         }
+        boost::urls::url origin =
+            boost::urls::format("/redfish/v1/TaskService/Tasks/{}", index);
+        EventServiceManager::getInstance().sendEvent(event, origin.buffer(),
+                                                     "Task");
     }
 
     void startTimer(const std::chrono::seconds& timeout)