Add OemVirtualMedia schema

OEM Schema for VirtualMedia added.
Also OpenBMC level has been added to OEM field in the code to
conform to schema standard.

Tested:
Manually using full stack of VirtualMedia.
* Inserting/ejecting media in both legacy and proxy mode
* Redfish Service Validator 1.3.2 ran

Change-Id: Iaa87dd767a4bf2062bd4e74dd790a2496aca96de
Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
diff --git a/redfish-core/lib/virtual_media.hpp b/redfish-core/lib/virtual_media.hpp
index 457b0b2..f95e91d 100644
--- a/redfish-core/lib/virtual_media.hpp
+++ b/redfish-core/lib/virtual_media.hpp
@@ -75,7 +75,8 @@
         if (!endpointIdValue->empty())
         {
             // Proxy mode
-            aResp->res.jsonValue["Oem"]["WebSocketEndpoint"] = *endpointIdValue;
+            aResp->res.jsonValue["Oem"]["OpenBMC"]["WebSocketEndpoint"] =
+                *endpointIdValue;
             aResp->res.jsonValue["TransferProtocolType"] = "OEM";
             aResp->res.jsonValue["Inserted"] = *activeValue;
             if (*activeValue == true)
@@ -115,7 +116,7 @@
     nlohmann::json item;
     item["@odata.id"] =
         "/redfish/v1/Managers/" + name + "/VirtualMedia/" + resName;
-    item["@odata.type"] = "#VirtualMedia.v1_1_0.VirtualMedia";
+    item["@odata.type"] = "#VirtualMedia.v1_3_0.VirtualMedia";
     item["@odata.context"] = "/redfish/v1/$metadata#VirtualMedia.VirtualMedia";
     item["Name"] = "Virtual Removable Media";
     item["Id"] = resName;
@@ -127,7 +128,9 @@
     item["MediaTypes"] = {"CD", "USBStick"};
     item["TransferMethod"] = "Stream";
     item["TransferProtocolType"] = nullptr;
-    item["Oem"]["WebSocketEndpoint"] = nullptr;
+    item["Oem"]["OpenBmc"]["WebSocketEndpoint"] = nullptr;
+    item["Oem"]["OpenBMC"]["@odata.type"] =
+        "#OemVirtualMedia.v1_0_0.VirtualMedia";
 
     return item;
 }
@@ -232,7 +235,7 @@
             }
 
             messages::resourceNotFound(
-                aResp->res, "#VirtualMedia.v1_1_0.VirtualMedia", resName);
+                aResp->res, "#VirtualMedia.v1_3_0.VirtualMedia", resName);
         },
         service, "/xyz/openbmc_project/VirtualMedia",
         "org.freedesktop.DBus.ObjectManager", "GetManagedObjects");