Add call to request to offload dump

Add call through pldm to request offloading the
dump from host memory.

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: I14fd7fdbab78222043cab8a98edd996fd01669c9
diff --git a/Makefile.am b/Makefile.am
index 751f3a7..bdd02d4 100755
--- a/Makefile.am
+++ b/Makefile.am
@@ -29,7 +29,8 @@
 	elog_watch.cpp \
 	dump_serialize.cpp \
 	pldm_interface.cpp \
-	dump_utils.cpp
+	dump_utils.cpp \
+        system_dump_entry.cpp
 
 phosphor_dump_monitor_SOURCES = \
 	watch.cpp \
diff --git a/dump_entry.hpp b/dump_entry.hpp
index a8273d0..b36f880 100644
--- a/dump_entry.hpp
+++ b/dump_entry.hpp
@@ -65,9 +65,11 @@
     void delete_() override;
 
     /** @brief Method to initiate the offload of dump
+     *  @param[in] uri - URI to offload dump
      */
-    void initiateOffload() override
+    void initiateOffload(std::string uri) override
     {
+        offloadUri(uri);
     }
 
   protected:
diff --git a/system_dump_entry.cpp b/system_dump_entry.cpp
new file mode 100644
index 0000000..970be7d
--- /dev/null
+++ b/system_dump_entry.cpp
@@ -0,0 +1,21 @@
+#include "system_dump_entry.hpp"
+
+#include "pldm_interface.hpp"
+
+namespace phosphor
+{
+namespace dump
+{
+namespace system
+{
+using namespace phosphor::dump::pldm;
+
+void Entry::initiateOffload(std::string uri)
+{
+    phosphor::dump::Entry::initiateOffload(uri);
+    requestOffload(sourceDumpId());
+}
+
+} // namespace system
+} // namespace dump
+} // namespace phosphor
diff --git a/system_dump_entry.hpp b/system_dump_entry.hpp
index f2e4545..895ca37 100644
--- a/system_dump_entry.hpp
+++ b/system_dump_entry.hpp
@@ -56,6 +56,11 @@
     {
         sourceDumpId(sourceId);
     };
+
+    /** @brief Method to initiate the offload of dump
+     *  @param[in] uri - URI to offload dump.
+     */
+    void initiateOffload(std::string uri);
 };
 
 } // namespace system