SEBA-902 mock testing of redfish importer;
Remove hardcoded addresses and replace with config file / cmdline;
Support hostnames in importer as alternative to ip addresses;
Treat response 204 as success

Change-Id: I17e8e585e388c501c02867ce952bbe1fa9b09668
diff --git a/mock-redfish-server/mockup/redfish/index.json b/mock-redfish-server/mockup/redfish/index.json
new file mode 100644
index 0000000..83f4c51
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/index.json
@@ -0,0 +1,3 @@
+{
+    "v1": "/redfish/v1"
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/admin/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/admin/index.json
new file mode 100644
index 0000000..9926e0b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/admin/index.json
@@ -0,0 +1,18 @@
+{
+    "Locked": false,
+    "Name": "",
+    "Links": {
+        "Role": {
+            "@odata.id": "/redfish/v1/AccountService/Roles/1"
+        }
+    },
+    "UserName": "admin",
+    "Id": "admin",
+    "Description": null,
+    "Password": "redfish",
+    "Enabled": true,
+    "@odata.type": "#ManagerAccount.v1_0_0.ManagerAccount",
+    "@odata.context": "/redfish/v1/$metadata#ManagerAccount.ManagerAccount",
+    "@odata.id": "/redfish/v1/AccountService/Accounts/admin",
+    "RoleId": "Administrator"
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/index.json
new file mode 100644
index 0000000..ba4dd37
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Accounts/index.json
@@ -0,0 +1,12 @@
+{
+    "@odata.type": "#ManagerAccountCollection.ManagerAccountCollection",
+    "Name": "Accounts Collection",
+    "@odata.context": "/redfish/v1/$metadata#AccountService.AccountService",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/AccountService/Accounts/admin"
+        }
+    ],
+    "@odata.id": "/redfish/v1/AccountService/Accounts",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/1/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/1/index.json
new file mode 100644
index 0000000..17c1605
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/1/index.json
@@ -0,0 +1,16 @@
+{
+    "IsPredefined": true,
+    "@odata.type": "#Role.v1_0_0.Role",
+    "Name": "",
+    "@odata.context": "/redfish/v1/$metadata#Role.Role",
+    "Id": "1",
+    "Description": null,
+    "@odata.id": "/redfish/v1/AccountService/Roles/1",
+    "AssignedPrivileges": [
+        "Login",
+        "ConfigureManager",
+        "ConfigureUsers",
+        "ConfigureSelf",
+        "ConfigureComponents"
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/2/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/2/index.json
new file mode 100644
index 0000000..1b507f8
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/2/index.json
@@ -0,0 +1,14 @@
+{
+    "IsPredefined": true,
+    "@odata.type": "#Role.v1_0_0.Role",
+    "Name": "",
+    "@odata.context": "/redfish/v1/$metadata#Role.Role",
+    "Id": "2",
+    "Description": null,
+    "@odata.id": "/redfish/v1/AccountService/Roles/2",
+    "AssignedPrivileges": [
+        "Login",
+        "ConfigureSelf",
+        "ConfigureComponents"
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/3/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/3/index.json
new file mode 100644
index 0000000..dacd2c5
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/3/index.json
@@ -0,0 +1,13 @@
+{
+    "IsPredefined": true,
+    "@odata.type": "#Role.v1_0_0.Role",
+    "Name": "",
+    "@odata.context": "/redfish/v1/$metadata#Role.Role",
+    "Id": "3",
+    "Description": null,
+    "@odata.id": "/redfish/v1/AccountService/Roles/3",
+    "AssignedPrivileges": [
+        "Login",
+        "ConfigureSelf"
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/index.json
new file mode 100644
index 0000000..61d5746
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/Roles/index.json
@@ -0,0 +1,18 @@
+{
+    "@odata.type": "#RoleCollection.RoleCollection",
+    "Name": "Roles Collection",
+    "@odata.context": "/redfish/v1/$metadata#RoleCollection.RoleCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/AccountService/Roles/1"
+        },
+        {
+            "@odata.id": "/redfish/v1/AccountService/Roles/2"
+        },
+        {
+            "@odata.id": "/redfish/v1/AccountService/Roles/3"
+        }
+    ],
+    "@odata.id": "/redfish/v1/AccountService/Roles",
+    "Members@odata.count": 3
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/AccountService/index.json b/mock-redfish-server/mockup/redfish/v1/AccountService/index.json
new file mode 100644
index 0000000..f03bdc3
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/AccountService/index.json
@@ -0,0 +1,27 @@
+{
+    "MaxPasswordLength": 24,
+    "ServiceEnabled": true,
+    "Name": "Account Service",
+    "Roles": {
+        "@odata.id": "/redfish/v1/AccountService/Roles"
+    },
+    "Id": "AccountService",
+    "Description": "Account Service ",
+    "AuthFailureLoggingThreshold": 3,
+    "AccountLockoutCounterResetAfter": 30,
+    "MinPasswordLength": 6,
+    "Accounts": {
+        "@odata.id": "/redfish/v1/AccountService/Accounts"
+    },
+    "@odata.type": "#AccountService.v1_0_0.AccountService",
+    "AccountLockoutDuration": 30,
+    "@odata.context": "/redfish/v1/$metadata#AccountService.AccountService",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "AccountLockoutThreshold": 5,
+    "@odata.id": "/redfish/v1/AccountService",
+    "Oem": {}
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Chassis/1/Drives/1/index.json b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Drives/1/index.json
new file mode 100644
index 0000000..f9a3d96
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Drives/1/index.json
@@ -0,0 +1,58 @@
+{
+    "SerialNumber": "TS32ZBTMM1600_D486350097",
+    "Name": "Drive",
+    "IndicatorLED": null,
+    "Manufacturer": null,
+    "Actions": {
+        "#Drive.SecureErase": {
+            "target": "/redfish/v1/Chassis/1/Drives/1/Actions/Drive.SecureErase"
+        }
+    },
+    "EncryptionStatus": null,
+    "BlockSizeBytes": null,
+    "RotationSpeedRPM": null,
+    "@odata.id": "/redfish/v1/Chassis/1/Drives/1",
+    "MediaType": "SSD",
+    "StatusIndicator": null,
+    "Oem": {
+        "Intel_RackScale": {
+            "DriveErased": null,
+            "@odata.type": "#Intel.Oem.Drive",
+            "EraseOnDetach": null,
+            "Storage": {
+                "@odata.id": "/redfish/v1/Systems/1/Storage/1"
+            },
+            "FirmwareVersion": null,
+            "PCIeFunction": null
+        }
+    },
+    "AssetTag": null,
+    "EncryptionAbility": null,
+    "CapacityBytes": 32017047552,
+    "Links": {
+        "@odata.type": "#Drive.v1_1_0.Links",
+        "Endpoints": [],
+        "Volumes": []
+    },
+    "Id": "1",
+    "FailurePredicted": null,
+    "Description": "Drive description",
+    "HotspareType": null,
+    "Model": "",
+    "PredictedMediaLifeLeftPercent": null,
+    "Identifiers": [],
+    "Revision": "O0918B",
+    "NegotiatedSpeedGbs": null,
+    "Protocol": "SATA",
+    "@odata.type": "#Drive.v1_1_1.Drive",
+    "SKU": null,
+    "@odata.context": "/redfish/v1/$metadata#Chassis.Chassis",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "CapableSpeedGbs": null,
+    "Location": [],
+    "PartNumber": null
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Chassis/1/Power/index.json b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Power/index.json
new file mode 100644
index 0000000..80f43fe
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Power/index.json
@@ -0,0 +1,163 @@
+{
+    "@odata.type": "#Power.v1_1_0.Power",
+    "Name": "Power Collection",
+    "@odata.context": "/redfish/v1/$metadata#Power.Power",
+    "PowerSupplies": [
+        {
+            "SerialNumber": "TA020V581717000002",
+            "Name": "Power Supplies Unit",
+            "MemberId": "1",
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "FirmwareVersion": null,
+            "Manufacturer": null,
+            "Model": "YM-2651Y",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "PowerCapacityWatts": null,
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "LineInputVoltage": null,
+            "SparePartNumber": null,
+            "LineInputVoltageType": null,
+            "LastPowerOutputWatts": 175,
+            "Oem": {},
+            "PartNumber": null,
+            "PowerSupplyType": "AC"
+        },
+        {
+            "SerialNumber": "NULL",
+            "Name": "Power Supplies Unit",
+            "MemberId": "2",
+            "Status": {
+                "State": "UnavailableOffline",
+                "Health": "OK"
+            },
+            "FirmwareVersion": null,
+            "Manufacturer": null,
+            "Model": "NULL",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "PowerCapacityWatts": null,
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "LineInputVoltage": null,
+            "SparePartNumber": null,
+            "LineInputVoltageType": null,
+            "LastPowerOutputWatts": 0,
+            "Oem": {},
+            "PartNumber": null,
+            "PowerSupplyType": "Unknown"
+        }
+    ],
+    "Id": "Power",
+    "PowerControl": [
+        {
+            "Name": "System Power Control",
+            "MemberId": "1",
+            "PowerCapacityWatts": 0,
+            "PowerAvailableWatts": null,
+            "PowerLimit": {
+                "LimitException": null,
+                "CorrectionInMs": null,
+                "LimitInWatts": null
+            },
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "PowerConsumedWatts": 175,
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "PowerRequestedWatts": null,
+            "PowerAllocatedWatts": null,
+            "Oem": {}
+        },
+        {
+            "Name": "System Power Control",
+            "MemberId": "2",
+            "PowerCapacityWatts": 0,
+            "PowerAvailableWatts": null,
+            "PowerLimit": {
+                "LimitException": null,
+                "CorrectionInMs": null,
+                "LimitInWatts": null
+            },
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "PowerConsumedWatts": 0,
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "Status": {
+                "State": "UnavailableOffline",
+                "Health": "OK"
+            },
+            "PowerRequestedWatts": null,
+            "PowerAllocatedWatts": null,
+            "Oem": {}
+        }
+    ],
+    "Description": "Collection of Power",
+    "@odata.id": "/redfish/v1/Chassis/1/Power",
+    "Oem": {},
+    "Voltages": [
+        {
+            "LowerThresholdFatal": null,
+            "Name": "Voltage",
+            "MemberId": "1",
+            "LowerThresholdCritical": null,
+            "PhysicalContext": "VoltageRegulator",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 1,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null,
+            "ReadingVolts": 11.89
+        },
+        {
+            "LowerThresholdFatal": null,
+            "Name": "Voltage",
+            "MemberId": "2",
+            "LowerThresholdCritical": null,
+            "PhysicalContext": "VoltageRegulator",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "@odata.id": "/redfish/v1/Chassis/1/Power",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 2,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null,
+            "ReadingVolts": 0
+        }
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Chassis/1/Thermal/index.json b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Thermal/index.json
new file mode 100644
index 0000000..91435c8
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Chassis/1/Thermal/index.json
@@ -0,0 +1,373 @@
+{
+    "Temperatures": [
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "CPU",
+            "MemberId": "1",
+            "ReadingCelsius": 52,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System CPU Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 1,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 82,
+            "UpperThresholdFatal": 104,
+            "UpperThresholdCritical": 92
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "SystemBoard",
+            "MemberId": "2",
+            "ReadingCelsius": 38.5,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "Chassis Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 2,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 45,
+            "UpperThresholdFatal": 60,
+            "UpperThresholdCritical": 55
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "SystemBoard",
+            "MemberId": "3",
+            "ReadingCelsius": 32.5,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "Chassis Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 3,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 45,
+            "UpperThresholdFatal": 60,
+            "UpperThresholdCritical": 55
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "SystemBoard",
+            "MemberId": "4",
+            "ReadingCelsius": 33,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "Chassis Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 4,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 45,
+            "UpperThresholdFatal": 60,
+            "UpperThresholdCritical": 55
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "SystemBoard",
+            "MemberId": "5",
+            "ReadingCelsius": 37,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "Chassis Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 5,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 45,
+            "UpperThresholdFatal": 60,
+            "UpperThresholdCritical": 55
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "PowerSupply",
+            "MemberId": "6",
+            "ReadingCelsius": 31,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "PSU Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 6,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "UpperThresholdNonCritical": 45,
+            "UpperThresholdFatal": 60,
+            "UpperThresholdCritical": 55
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "PowerSupply",
+            "MemberId": "7",
+            "ReadingCelsius": 0,
+            "LowerThresholdCritical": null,
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "PSU Thermal Sensor Temperature",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "SensorNumber": 7,
+            "Status": {
+                "State": "Absent",
+                "HealthRollup": null,
+                "Health": "Warning"
+            },
+            "UpperThresholdNonCritical": 0,
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        }
+    ],
+    "Redundancy": [],
+    "@odata.type": "#Thermal.v1_1_0.Thermal",
+    "Name": "Thermal",
+    "@odata.context": "/redfish/v1/$metadata#Thermal.Thermal",
+    "Id": "Thermal",
+    "Fans": [
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "1",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12700,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "2",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12400,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "3",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12700,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "4",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12700,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "5",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12600,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "Back",
+            "MemberId": "6",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "System Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 12700,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "PowerSupply",
+            "MemberId": "7",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "PSU Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "OK"
+            },
+            "Reading": 24480,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        },
+        {
+            "LowerThresholdFatal": null,
+            "PhysicalContext": "PowerSupply",
+            "MemberId": "8",
+            "LowerThresholdCritical": null,
+            "ReadingUnits": "RPM",
+            "RelatedItem": [
+                {
+                    "@odata.id": "/redfish/v1/Chassis/1"
+                }
+            ],
+            "Name": "PSU Fan",
+            "@odata.id": "/redfish/v1/Chassis/1/Thermal",
+            "LowerThresholdNonCritical": null,
+            "Status": {
+                "State": "Enabled",
+                "HealthRollup": null,
+                "Health": "Warning"
+            },
+            "Reading": 0,
+            "UpperThresholdNonCritical": null,
+            "UpperThresholdFatal": null,
+            "UpperThresholdCritical": null
+        }
+    ],
+    "Description": "Collection of Thermal sensors",
+    "@odata.id": "/redfish/v1/Chassis/1/Thermal"
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Chassis/1/index.json b/mock-redfish-server/mockup/redfish/v1/Chassis/1/index.json
new file mode 100644
index 0000000..2311f64
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Chassis/1/index.json
@@ -0,0 +1,85 @@
+{
+    "SerialNumber": "EC1721000216",
+    "Power": {
+        "@odata.id": "/redfish/v1/Chassis/1/Power"
+    },
+    "Name": "Chassis",
+    "Links": {
+        "@odata.type": "#Chassis.v1_2_0.Links",
+        "Storage": [
+            {
+                "@odata.id": "/redfish/v1/Systems/1/Storage/1"
+            }
+        ],
+        "ComputerSystems": [
+            {
+                "@odata.id": "/redfish/v1/Systems/1"
+            }
+        ],
+        "ManagedBy": [
+            {
+                "@odata.id": "/redfish/v1/Managers/1"
+            }
+        ],
+        "Oem": {
+            "Intel_RackScale": {
+                "Switches": [
+                    {
+                        "@odata.id": "/redfish/v1/EthernetSwitches/1"
+                    }
+                ],
+                "@odata.type": "#Intel.Oem.ChassisLinks"
+            }
+        },
+        "Contains": [],
+        "Drives": [
+            {
+                "@odata.id": "/redfish/v1/Chassis/1/Drives/1"
+            }
+        ]
+    },
+    "Id": "1",
+    "IndicatorLED": "Lit",
+    "@odata.type": "#Chassis.v1_3_0.Chassis",
+    "Model": "x86_64-accton_asfx816bbx_0716-ec",
+    "PowerState": "On",
+    "Actions": {
+        "#Chassis.Reset": {
+            "target": "/redfish/v1/Chassis/1/Actions/Chassis.Reset",
+            "ResetType@Redfish.AllowableValues": [
+                "ForceOff",
+                "GracefulShutdown",
+                "GracefulRestart",
+                "ForceRestart"
+            ]
+        }
+    },
+    "Thermal": {
+        "@odata.id": "/redfish/v1/Chassis/1/Thermal"
+    },
+    "Description": "",
+    "@odata.id": "/redfish/v1/Chassis/1",
+    "SKU": null,
+    "@odata.context": "/redfish/v1/$metadata#Chassis.Chassis",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Manufacturer": "Accton",
+    "ChassisType": "Drawer",
+    "Oem": {
+        "Intel_RackScale": {
+            "Location": {
+                "ParentId": null,
+                "Id": null
+            },
+            "@odata.type": "#Intel.Oem.Chassis",
+            "Accton_Oem": {
+                "ServiceTag": ""
+            }
+        }
+    },
+    "AssetTag": "N/A",
+    "PartNumber": ""
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Chassis/index.json b/mock-redfish-server/mockup/redfish/v1/Chassis/index.json
new file mode 100644
index 0000000..8b246b0
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Chassis/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#ChassisCollection.ChassisCollection",
+    "Name": "Chassis Collection",
+    "@odata.context": "/redfish/v1/$metadata#Chassis.Chassis",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Chassis/1"
+        }
+    ],
+    "Description": "Collection of Chassis",
+    "@odata.id": "/redfish/v1/Chassis",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/ACLs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/ACLs/index.json
new file mode 100644
index 0000000..a443f59
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/ACLs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchACLCollection.EthernetSwitchACLCollection",
+    "Name": "Ethernet Switch Access Control List Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchACLCollection.EthernetSwitchACLCollection",
+    "Members": [],
+    "Description": "Switch Access Control List. Each ACL entry can be bound to any switch port",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/ACLs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/StaticMACs/index.json
new file mode 100644
index 0000000..02e3787
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/VLANs/index.json
new file mode 100644
index 0000000..9d150e1
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/index.json
new file mode 100644
index 0000000..756c557
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/1/index.json
@@ -0,0 +1,124 @@
+{
+    "Name": "Port1",
+    "MACAddress": null,
+    "Statistics": {},
+    "TransceiverStatistics": {
+        "BiasCurrent": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0.5,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 41.154,
+            "ReadingUnits": "mA",
+            "UpperThresholdFatal": 70,
+            "UpperThresholdCritical": 65
+        },
+        "TxPower": {
+            "LowerThresholdFatal": 0.5,
+            "LowerThresholdCritical": 0.629,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 1.278,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 3.154,
+            "UpperThresholdCritical": 2.505
+        },
+        "Voltage": {
+            "LowerThresholdFatal": 2.97,
+            "LowerThresholdCritical": 3.129,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 3.33,
+            "ReadingUnits": "V",
+            "UpperThresholdFatal": 3.629,
+            "UpperThresholdCritical": 3.47
+        },
+        "Serial Number": "",
+        "SFP Vendor Name": "",
+        "RxPower": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0.001,
+            "Status": {
+                "State": "Enabled",
+                "Health": "Warning"
+            },
+            "Reading": 0,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 0.372,
+            "UpperThresholdCritical": 0.316
+        },
+        "Manufacture Date": "",
+        "Temperature": {
+            "LowerThresholdFatal": -15,
+            "LowerThresholdCritical": -8,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 30.476,
+            "ReadingUnits": "Celsius",
+            "UpperThresholdFatal": 85,
+            "UpperThresholdCritical": 78
+        },
+        "Part Number": ""
+    },
+    "OperationalState": "Up",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1/VLANs"
+    },
+    "LinkType": "Ethernet",
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "1",
+    "Description": "Ethernet Switch Port description",
+    "ONUs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1/ONUs"
+    },
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Autosense": null,
+    "AdministrativeState": "Down",
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/StaticMACs/index.json
new file mode 100644
index 0000000..2c2579b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/VLANs/index.json
new file mode 100644
index 0000000..1f8b3d4
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/index.json
new file mode 100644
index 0000000..7b5e879
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/10/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port10",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "10",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/StaticMACs/index.json
new file mode 100644
index 0000000..fdcf96f
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/VLANs/index.json
new file mode 100644
index 0000000..bf364ac
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/index.json
new file mode 100644
index 0000000..4ab3ef6
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/11/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port11",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "11",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/StaticMACs/index.json
new file mode 100644
index 0000000..dc3a3f9
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/VLANs/index.json
new file mode 100644
index 0000000..faa4212
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/index.json
new file mode 100644
index 0000000..a82a42d
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/12/index.json
@@ -0,0 +1,124 @@
+{
+    "Name": "Port12",
+    "MACAddress": null,
+    "Statistics": {},
+    "TransceiverStatistics": {
+        "BiasCurrent": {
+            "LowerThresholdFatal": 10,
+            "LowerThresholdCritical": 20,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 92.906,
+            "ReadingUnits": "mA",
+            "UpperThresholdFatal": 130,
+            "UpperThresholdCritical": 120
+        },
+        "TxPower": {
+            "LowerThresholdFatal": 1.584,
+            "LowerThresholdCritical": 1.995,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 3.505,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 6.456,
+            "UpperThresholdCritical": 6.309
+        },
+        "Voltage": {
+            "LowerThresholdFatal": 3,
+            "LowerThresholdCritical": 3.049,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 3.329,
+            "ReadingUnits": "V",
+            "UpperThresholdFatal": 3.599,
+            "UpperThresholdCritical": 3.549
+        },
+        "Serial Number": "HDG2019845",
+        "SFP Vendor Name": "SOURCEPHOTONICS",
+        "RxPower": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 0.009,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 0.316,
+            "UpperThresholdCritical": 0.225
+        },
+        "Manufacture Date": "171215",
+        "Temperature": {
+            "LowerThresholdFatal": -10,
+            "LowerThresholdCritical": -5,
+            "Status": {
+                "State": "Enabled",
+                "Health": "OK"
+            },
+            "Reading": 30.23,
+            "ReadingUnits": "Celsius",
+            "UpperThresholdFatal": 80,
+            "UpperThresholdCritical": 75
+        },
+        "Part Number": "XPPXG2N2CDFA"
+    },
+    "OperationalState": "Up",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12/VLANs"
+    },
+    "LinkType": "Ethernet",
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "12",
+    "Description": "Ethernet Switch Port description",
+    "ONUs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12/ONUs"
+    },
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Autosense": null,
+    "AdministrativeState": "Down",
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/StaticMACs/index.json
new file mode 100644
index 0000000..7ebb0bb
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/VLANs/index.json
new file mode 100644
index 0000000..e9cab48
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/index.json
new file mode 100644
index 0000000..f17b327
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/13/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port13",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "13",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/StaticMACs/index.json
new file mode 100644
index 0000000..3e71b30
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/VLANs/index.json
new file mode 100644
index 0000000..150757e
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/index.json
new file mode 100644
index 0000000..751f7c2
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/14/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port14",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "14",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/StaticMACs/index.json
new file mode 100644
index 0000000..343e03d
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/VLANs/index.json
new file mode 100644
index 0000000..ee9470c
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/index.json
new file mode 100644
index 0000000..9107f5a
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/15/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port15",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "15",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/StaticMACs/index.json
new file mode 100644
index 0000000..3fd229c
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/VLANs/index.json
new file mode 100644
index 0000000..87a29af
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/index.json
new file mode 100644
index 0000000..a75e05b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/16/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port16",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "16",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/StaticMACs/index.json
new file mode 100644
index 0000000..107f2a2
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/VLANs/index.json
new file mode 100644
index 0000000..9a3f96a
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/index.json
new file mode 100644
index 0000000..cb43b9b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/17/index.json
@@ -0,0 +1,134 @@
+{
+    "Name": "Port17",
+    "MACAddress": null,
+    "Statistics": {
+        "rx_bytes": 0,
+        "tx_packets": 0,
+        "tx_bcast_packets": 0,
+        "tx_mcast_packets": 0,
+        "tx_ucast_packets": 0,
+        "rx_bcast_packets": 0,
+        "tx_error_packets": 0,
+        "rx_packets": 0,
+        "rx_mcast_packets": 0,
+        "rx_ucast_packets": 0,
+        "tx_bytes": 0,
+        "rx_error_packets": 0
+    },
+    "TransceiverStatistics": {
+        "BiasCurrent": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": null,
+                "Health": null
+            },
+            "Reading": 0,
+            "ReadingUnits": "mA",
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        },
+        "TxPower": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": null,
+                "Health": null
+            },
+            "Reading": 0,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        },
+        "Voltage": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": null,
+                "Health": null
+            },
+            "Reading": 0,
+            "ReadingUnits": "V",
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        },
+        "Serial Number": "NA",
+        "SFP Vendor Name": "NA",
+        "RxPower": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": null,
+                "Health": null
+            },
+            "Reading": 0,
+            "ReadingUnits": "mW",
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        },
+        "Manufacture Date": "NA",
+        "Temperature": {
+            "LowerThresholdFatal": 0,
+            "LowerThresholdCritical": 0,
+            "Status": {
+                "State": null,
+                "Health": null
+            },
+            "Reading": 0,
+            "ReadingUnits": "Celsius",
+            "UpperThresholdFatal": 0,
+            "UpperThresholdCritical": 0
+        },
+        "Part Number": "NA"
+    },
+    "OperationalState": "Up",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17/VLANs"
+    },
+    "LinkType": "Ethernet",
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17/StaticMACs"
+    },
+    "PortId": "QSFP port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "17",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Autosense": null,
+    "AdministrativeState": "Down",
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/StaticMACs/index.json
new file mode 100644
index 0000000..9c898c8
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/VLANs/index.json
new file mode 100644
index 0000000..f2c6d67
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/index.json
new file mode 100644
index 0000000..682f736
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/18/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port18",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18/StaticMACs"
+    },
+    "PortId": "QSFP port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "18",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/StaticMACs/index.json
new file mode 100644
index 0000000..fce27b7
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/VLANs/index.json
new file mode 100644
index 0000000..5e38d1c
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/index.json
new file mode 100644
index 0000000..02c0416
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/19/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port19",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19/StaticMACs"
+    },
+    "PortId": "QSFP port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "19",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/StaticMACs/index.json
new file mode 100644
index 0000000..54c3b73
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/VLANs/index.json
new file mode 100644
index 0000000..9d3c408
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/index.json
new file mode 100644
index 0000000..3722e52
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/2/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port2",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "2",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/StaticMACs/index.json
new file mode 100644
index 0000000..5ef1a43
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/VLANs/index.json
new file mode 100644
index 0000000..116ecef
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/index.json
new file mode 100644
index 0000000..1b58f1b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/20/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port20",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20/StaticMACs"
+    },
+    "PortId": "QSFP port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "20",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/StaticMACs/index.json
new file mode 100644
index 0000000..c4218a1
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/VLANs/index.json
new file mode 100644
index 0000000..7cf1cd8
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/index.json
new file mode 100644
index 0000000..f6c1adf
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/3/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port3",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "3",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/StaticMACs/index.json
new file mode 100644
index 0000000..b6f0398
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/VLANs/index.json
new file mode 100644
index 0000000..4574f95
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/index.json
new file mode 100644
index 0000000..b3f6a1f
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/4/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port4",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "4",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/StaticMACs/index.json
new file mode 100644
index 0000000..aa0d86b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/VLANs/index.json
new file mode 100644
index 0000000..4facec5
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/index.json
new file mode 100644
index 0000000..ff24333
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/5/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port5",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "5",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/StaticMACs/index.json
new file mode 100644
index 0000000..2d74d82
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/VLANs/index.json
new file mode 100644
index 0000000..5e0541f
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/index.json
new file mode 100644
index 0000000..5233526
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/6/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port6",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "6",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/StaticMACs/index.json
new file mode 100644
index 0000000..748186b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/VLANs/index.json
new file mode 100644
index 0000000..0475324
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/index.json
new file mode 100644
index 0000000..74c5b78
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/7/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port7",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "7",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/StaticMACs/index.json
new file mode 100644
index 0000000..f1d81b4
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/VLANs/index.json
new file mode 100644
index 0000000..06d5957
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/index.json
new file mode 100644
index 0000000..0e5a606
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/8/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port8",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "8",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/StaticMACs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/StaticMACs/index.json
new file mode 100644
index 0000000..7c26584
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/StaticMACs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Name": "Static MAC Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchStaticMACCollection.EthernetSwitchStaticMACCollection",
+    "Members": [],
+    "Description": "Collection of Static MACs",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9/StaticMACs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/VLANs/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/VLANs/index.json
new file mode 100644
index 0000000..f95e2cf
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/VLANs/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Name": "VLAN Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#VLanNetworkInterfaceCollection.VLanNetworkInterfaceCollection",
+    "Members": [],
+    "Description": "Collection of VLAN Network Interfaces",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9/VLANs",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/index.json
new file mode 100644
index 0000000..3c6ef6b
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/9/index.json
@@ -0,0 +1,54 @@
+{
+    "Name": "Port9",
+    "MACAddress": null,
+    "OperationalState": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9",
+    "NeighborMAC": null,
+    "VLANs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9/VLANs"
+    },
+    "LinkType": null,
+    "Oem": {},
+    "FrameSize": null,
+    "PortClass": null,
+    "FullDuplex": null,
+    "StaticMACs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9/StaticMACs"
+    },
+    "PortId": "PON port",
+    "Links": {
+        "Switch": {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        },
+        "ActiveACLs": [],
+        "PortMembers": [],
+        "PrimaryVLAN": null,
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetSwitchPort"
+            }
+        },
+        "MemberOfPort": null
+    },
+    "Id": "9",
+    "Description": "Ethernet Switch Port description",
+    "IPv4Addresses": [],
+    "PortMode": null,
+    "LinkSpeedMbps": null,
+    "@odata.type": "#EthernetSwitchPort.v1_0_0.EthernetSwitchPort",
+    "IPv6Addresses": [],
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPort.EthernetSwitchPort",
+    "Status": {
+        "State": "Absent",
+        "HealthRollup": "OK",
+        "Health": "Warning"
+    },
+    "Autosense": null,
+    "AdministrativeState": null,
+    "PortType": null,
+    "NeighborInfo": {
+        "CableId": null,
+        "SwitchId": null,
+        "PortId": null
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/index.json
new file mode 100644
index 0000000..0353960
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/Ports/index.json
@@ -0,0 +1,70 @@
+{
+    "@odata.type": "#EthernetSwitchPortCollection.EthernetSwitchPortCollection",
+    "Name": "Ethernet Switch Port Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchPortCollection.EthernetSwitchPortCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/1"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/2"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/3"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/4"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/5"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/6"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/7"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/8"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/9"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/10"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/11"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/12"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/13"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/14"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/15"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/16"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/17"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/18"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/19"
+        },
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports/20"
+        }
+    ],
+    "Description": "Collection of Ethernet Switch Ports",
+    "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports",
+    "Members@odata.count": 20
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/index.json
new file mode 100644
index 0000000..5d44735
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/1/index.json
@@ -0,0 +1,39 @@
+{
+    "SerialNumber": null,
+    "FirmwareName": null,
+    "Model": null,
+    "Name": "Switch1",
+    "Links": {
+        "ManagedBy": [
+            {
+                "@odata.id": "/redfish/v1/Managers/1"
+            }
+        ],
+        "Chassis": {
+            "@odata.id": "/redfish/v1/Chassis/1"
+        }
+    },
+    "Role": "TOR",
+    "MaxACLNumber": 10,
+    "Id": "1",
+    "FirmwareVersion": null,
+    "Description": "Ethernet Switch description",
+    "SwitchId": null,
+    "ACLs": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/ACLs"
+    },
+    "ManufacturingDate": null,
+    "Ports": {
+        "@odata.id": "/redfish/v1/EthernetSwitches/1/Ports"
+    },
+    "@odata.type": "#EthernetSwitch.v1_0_0.EthernetSwitch",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitch.EthernetSwitch",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Manufacturer": null,
+    "@odata.id": "/redfish/v1/EthernetSwitches/1",
+    "PartNumber": null
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/index.json b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/index.json
new file mode 100644
index 0000000..db51199
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EthernetSwitches/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#EthernetSwitchCollection.EthernetSwitchCollection",
+    "Name": "Ethernet Switches Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetSwitchCollection.EthernetSwitchCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/EthernetSwitches/1"
+        }
+    ],
+    "Description": "Collection of Ethernet Switches",
+    "@odata.id": "/redfish/v1/EthernetSwitches",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EventService/Subscriptions/index.json b/mock-redfish-server/mockup/redfish/v1/EventService/Subscriptions/index.json
new file mode 100644
index 0000000..b16ab33
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EventService/Subscriptions/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#EventDestinationCollection.EventDestinationCollection",
+    "Name": "Event Subscriptions Collection",
+    "@odata.context": "/redfish/v1/$metadata#EventService.EventService",
+    "Members": [],
+    "Description": "Collection of Event Subscriptions",
+    "@odata.id": "/redfish/v1/EventService/Subscriptions",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/EventService/index.json b/mock-redfish-server/mockup/redfish/v1/EventService/index.json
new file mode 100644
index 0000000..c322976
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/EventService/index.json
@@ -0,0 +1,28 @@
+{
+    "ServiceEnabled": true,
+    "Name": "Event Service",
+    "Id": "EventService",
+    "Subscriptions": {
+        "@odata.id": "/redfish/v1/EventService/Subscriptions"
+    },
+    "Description": "Event Service description",
+    "Actions": {
+        "Oem": {}
+    },
+    "DeliveryRetryIntervalSeconds": 60,
+    "@odata.type": "#EventService.v1_0_0.EventService",
+    "@odata.context": "/redfish/v1/$metadata#EventService.EventService",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "DeliveryRetryAttempts": 3,
+    "@odata.id": "/redfish/v1/EventService",
+    "Oem": {},
+    "EventTypesForSubscription": [
+        "ResourceAdded",
+        "ResourceRemoved",
+        "Alert"
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/1/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/1/index.json
new file mode 100644
index 0000000..e355abc
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/1/index.json
@@ -0,0 +1,81 @@
+{
+    "FQDN": "localhost",
+    "IPv6StaticDefaultGateways": [],
+    "Name": "Manager NIC",
+    "MACAddress": "a8:2b:b5:36:78:6c",
+    "StatelessAddressAutoConfig": {
+        "IPv6AutoConfigEnabled": false
+    },
+    "MaxIPv6StaticAddresses": null,
+    "NameServers": [
+        "8.8.8.8"
+    ],
+    "IPv6DefaultGateway": "",
+    "HostName": "localhost",
+    "IPv4StaticAddresses": [
+        {
+            "Address": "10.90.0.114"
+        }
+    ],
+    "IPv6StaticAddresses": [],
+    "@odata.id": "/redfish/v1/Managers/1/EthernetInterfaces/1",
+    "SpeedMbps": 1000,
+    "Links": {
+        "Oem": {
+            "Intel_RackScale": {
+                "@odata.type": "#Intel.Oem.EthernetInterface"
+            }
+        },
+        "Endpoints": []
+    },
+    "Oem": {},
+    "InterfaceEnabled": true,
+    "IPv6Addresses": [
+        {
+            "PrefixLength": 64,
+            "AddressOrigin": "LinkLocal",
+            "Address": "fe80::aa2b:b5ff:fe36:786c",
+            "AddressState": null
+        }
+    ],
+    "MTUSize": 1500,
+    "StaticNameServers": [
+        "8.8.8.8"
+    ],
+    "LinkStatus": "LinkUp",
+    "Id": "1",
+    "PermanentMACAddress": "a8:2b:b5:36:78:6c",
+    "Description": "Manager NIC description",
+    "AutoNeg": true,
+    "IPv6AddressPolicyTable": [],
+    "IPv4Addresses": [
+        {
+            "AddressOrigin": "Static",
+            "Gateway": "10.90.0.1",
+            "Address": "10.90.0.114",
+            "SubnetMask": "255.255.0.0"
+        }
+    ],
+    "DHCPv6": {
+        "OperatingMode": "Disabled",
+        "UseDNSServers": false,
+        "UseRapidCommit": false,
+        "UseNTPServers": false
+    },
+    "@odata.type": "#EthernetInterface.v1_4_0.EthernetInterface",
+    "@odata.context": "/redfish/v1/$metadata#EthernetInterface.EthernetInterface",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "FullDuplex": true,
+    "DHCPv4": {
+        "UseDNSServers": true,
+        "DHCPEnabled": false,
+        "UseNTPServers": false,
+        "UseDomainName": false,
+        "UseGateway": true,
+        "UseStaticRoutes": false
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/index.json
new file mode 100644
index 0000000..47106fd
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/EthernetInterfaces/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#EthernetInterfaceCollection.EthernetInterfaceCollection",
+    "Name": "Ethernet Network Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#EthernetInterfaceCollection.EthernetInterfaceCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Managers/1/EthernetInterfaces/1"
+        }
+    ],
+    "Description": "a Collection of Manager Ethernet Interfaces",
+    "@odata.id": "/redfish/v1/Managers/1/EthernetInterfaces",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/Entries/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/Entries/index.json
new file mode 100644
index 0000000..9f99983
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/Entries/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#LogEntryCollection.LogEntryCollection",
+    "Name": "Log Service Collection",
+    "@odata.context": "/redfish/v1/$metadata#LogEntryCollection.LogEntryCollection",
+    "Members": [],
+    "Description": "Collection of Logs for this System",
+    "@odata.id": "/redfish/v1/Managers/1/LogServices/1/Entries",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/index.json
new file mode 100644
index 0000000..17be88a
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/1/index.json
@@ -0,0 +1,25 @@
+{
+    "DateTime": "2020-04-07T00:42:53+00:00",
+    "ServiceEnabled": false,
+    "Name": "System Log Service",
+    "DateTimeLocalOffset": "+00:00",
+    "Id": "1",
+    "Description": "ONL Peripheral Log",
+    "Actions": {
+        "#LogService.ClearLog": {
+            "target": "/redfish/v1/Managers/1/LogServices/1/Actions/LogService.Reset"
+        }
+    },
+    "MaxNumberOfRecords": 1000,
+    "Entries": {
+        "@odata.id": "/redfish/v1/Managers/1/LogServices/1/Entries"
+    },
+    "@odata.type": "#LogService.v1_0_0.LogService",
+    "@odata.context": "/redfish/v1/$metadata#LogService.LogService",
+    "Status": {
+        "State": "Enabled",
+        "Health": "OK"
+    },
+    "OverWritePolicy": "WrapsWhenFull",
+    "@odata.id": "/redfish/v1/Managers/1/LogServices/1"
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/index.json
new file mode 100644
index 0000000..6d4cc47
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/LogServices/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#LogServiceCollection.LogServiceCollection",
+    "Name": "Log Service Collection",
+    "@odata.context": "/redfish/v1/$metadata##LogServiceCollection.LogServiceCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Managers/1/LogServices/1"
+        }
+    ],
+    "Description": "Collection of Log Services for this Manager",
+    "@odata.id": "/redfish/v1/Managers/1/LogServices",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/NetworkProtocol/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/NetworkProtocol/index.json
new file mode 100644
index 0000000..817e576
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/NetworkProtocol/index.json
@@ -0,0 +1,55 @@
+{
+    "VirtualMedia": {
+        "ProtocolEnabled": null,
+        "Port": null
+    },
+    "FQDN": "localhost",
+    "SSDP": {
+        "NotifyTTL": 2,
+        "NotifyIPv6Scope": null,
+        "NotifyMulticastIntervalSeconds": 0,
+        "ProtocolEnabled": true,
+        "Port": 1900
+    },
+    "Name": "Manager Network Protocol",
+    "SNMP": {
+        "ProtocolEnabled": true,
+        "Port": 161
+    },
+    "IPMI": {
+        "ProtocolEnabled": null,
+        "Port": null
+    },
+    "Id": "NetworkProtocol",
+    "Description": "Manager Network Protocol description",
+    "KVMIP": {
+        "ProtocolEnabled": null,
+        "Port": null
+    },
+    "HTTP": {
+        "ProtocolEnabled": null,
+        "Port": null
+    },
+    "SSH": {
+        "ProtocolEnabled": true,
+        "Port": 22
+    },
+    "HostName": "localhost",
+    "HTTPS": {
+        "ProtocolEnabled": true,
+        "Port": 8888
+    },
+    "@odata.type": "#ManagerNetworkProtocol.v1_0_2.ManagerNetworkProtocol",
+    "Telnet": {
+        "ProtocolEnabled": null,
+        "Port": null
+    },
+    "@odata.context": "/redfish/v1/$metadata#ManagerNetworkProtocol.ManagerNetworkProtocol",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "@odata.id": "/redfish/v1/Managers/1/NetworkProtocol",
+    "Oem": {}
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/1/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/1/index.json
new file mode 100644
index 0000000..83a1e9a
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/1/index.json
@@ -0,0 +1,17 @@
+{
+    "FlowControl": "None",
+    "Name": "Manager Serial Interface",
+    "Parity": "None",
+    "Id": "1",
+    "DataBits": "8",
+    "Description": "Management for Serial Interface",
+    "PinOut": "Cyclades",
+    "BitRate": "115200",
+    "@odata.type": "#SerialInterface.v1_0_2.SerialInterface",
+    "@odata.context": "/redfish/v1/$metadata#SerialInterface.SerialInterface",
+    "StopBits": "1",
+    "@odata.id": "/redfish/v1/Managers/1/SerialInterfaces/1",
+    "SignalType": "Rs232",
+    "ConnectorType": "RJ45",
+    "InterfaceEnabled": true
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/index.json
new file mode 100644
index 0000000..de489c4
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/SerialInterfaces/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#SerialInterfaceCollection.SerialInterfaceCollection",
+    "Name": "Serial Interface Collection",
+    "@odata.context": "/redfish/v1/$metadata#SerialInterfaceCollection.SerialInterfaceCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Managers/1/SerialInterfaces/1"
+        }
+    ],
+    "Description": "a Collection of Serial Interfaces",
+    "@odata.id": "/redfish/v1/Managers/1/SerialInterfaces",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/1/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/1/index.json
new file mode 100644
index 0000000..8f18664
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/1/index.json
@@ -0,0 +1,62 @@
+{
+    "DateTime": "2020-04-07T00:42:37+00:00",
+    "Name": "Manager",
+    "Links": {
+        "Oem": {
+            "Intel_RackScale": {
+                "ManagerForServices": [],
+                "@odata.type": "#Intel.Oem.ManagerLinks",
+                "ManagerForSwitches": [
+                    {
+                        "@odata.id": "/redfish/v1/EthernetSwitches/1"
+                    }
+                ]
+            }
+        },
+        "ManagerForServers": [
+            {
+                "@odata.id": "/redfish/v1/Systems/1"
+            }
+        ],
+        "ManagerForChassis": [
+            {
+                "@odata.id": "/redfish/v1/Chassis/1"
+            }
+        ],
+        "@odata.type": "#Manager.v1_0_0.Links"
+    },
+    "DateTimeLocalOffset": "+00:00",
+    "Id": "1",
+    "FirmwareVersion": "2.1.3.59.25",
+    "Description": "Manager description",
+    "Model": null,
+    "NetworkProtocol": {
+        "@odata.id": "/redfish/v1/Managers/1/NetworkProtocol"
+    },
+    "SerialConsole": {
+        "ConnectTypesSupported": [],
+        "ServiceEnabled": true,
+        "MaxConcurrentSessions": 0
+    },
+    "UUID": "d6fee3aa-785f-11ea-8e4b-af25952f929b",
+    "@odata.type": "#Manager.v1_0_0.Manager",
+    "@odata.context": "/redfish/v1/$metadata#Manager.Manager",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "EthernetInterfaces": {
+        "@odata.id": "/redfish/v1/Managers/1/EthernetInterfaces"
+    },
+    "ServiceEntryPointUUID": "d6fee3aa-785f-11ea-8e4b-af25952f929b",
+    "@odata.id": "/redfish/v1/Managers/1",
+    "Oem": {},
+    "SerialInterfaces": {
+        "@odata.id": "/redfish/v1/Managers/1/SerialInterfaces"
+    },
+    "LogServices": {
+        "@odata.id": "/redfish/v1/Managers/1/LogServices"
+    },
+    "ManagerType": "EnclosureManager"
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Managers/index.json b/mock-redfish-server/mockup/redfish/v1/Managers/index.json
new file mode 100644
index 0000000..890098a
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Managers/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#ManagerCollection.ManagerCollection",
+    "Name": "Manager Collection",
+    "@odata.context": "/redfish/v1/$metadata#ManagerCollection.ManagerCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Managers/1"
+        }
+    ],
+    "Description": "Collection of Managers",
+    "@odata.id": "/redfish/v1/Managers",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Registries/1/index.json b/mock-redfish-server/mockup/redfish/v1/Registries/1/index.json
new file mode 100644
index 0000000..0138832
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Registries/1/index.json
@@ -0,0 +1,19 @@
+{
+    "Languages": [
+        "en"
+    ],
+    "Registry": "Base.1.0",
+    "@odata.type": "#MessageRegistryFile.v1_0_0.MessageRegistryFile",
+    "Name": "Base Message Registry File",
+    "@odata.context": "/redfish/v1/$metadata#MessageRegistryFile.MessageRegistryFile",
+    "Id": "1",
+    "Location": [
+        {
+            "Language": "en",
+            "PublicationUri": "https://www.dmtf.org/sites/default/files/standards/documents/DSP8011_1.0.0a.json"
+        }
+    ],
+    "Description": "Base Message Registry File locations",
+    "@odata.id": "/redfish/v1/Registries/1",
+    "Oem": {}
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Registries/index.json b/mock-redfish-server/mockup/redfish/v1/Registries/index.json
new file mode 100644
index 0000000..e60abe3
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Registries/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#MessageRegistryFileCollection.MessageRegistryFileCollection",
+    "Name": "MessageRegistryFile collection",
+    "@odata.context": "/redfish/v1/$metadata#MessageRegistryFileCollection.MessageRegistryFileCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Registries/1"
+        }
+    ],
+    "Description": "Collection of Message Registry Files",
+    "@odata.id": "/redfish/v1/Registries",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/SessionService/Sessions/index.json b/mock-redfish-server/mockup/redfish/v1/SessionService/Sessions/index.json
new file mode 100644
index 0000000..2fd3d6c
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/SessionService/Sessions/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#SessionCollection.SessionCollection",
+    "Name": "Session Collection",
+    "@odata.context": "/redfish/v1/$metadata#SessionCollection.SessionCollection",
+    "Members": [],
+    "Description": "Session Collection",
+    "@odata.id": "/redfish/v1/SessionService/Sessions",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/SessionService/index.json b/mock-redfish-server/mockup/redfish/v1/SessionService/index.json
new file mode 100644
index 0000000..780ea96
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/SessionService/index.json
@@ -0,0 +1,19 @@
+{
+    "ServiceEnabled": false,
+    "SessionTimeout": 300,
+    "@odata.type": "#SessionService.v1_0_0.SessionService",
+    "Name": "Session Service",
+    "@odata.context": "/redfish/v1/$metadata#SessionService.SessionService",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Id": "SessionService",
+    "Description": "Session Service ",
+    "@odata.id": "/redfish/v1/SessionService",
+    "Oem": {},
+    "Sessions": {
+        "@odata.id": "/redfish/v1/SessionService/Sessions"
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/1/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/1/index.json
new file mode 100644
index 0000000..5cd34b2
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/1/index.json
@@ -0,0 +1,52 @@
+{
+    "SerialNumber": null,
+    "Name": "Memory",
+    "FirmwareApiVersion": null,
+    "MemoryMedia": [],
+    "Manufacturer": null,
+    "DeviceLocator": "DIMM_A1",
+    "BaseModuleType": null,
+    "CapacityMiB": 7812,
+    "FunctionClasses": [],
+    "Regions": [
+        {
+            "MemoryClassification": null,
+            "SizeMiB": 7812,
+            "OffsetMiB": 0,
+            "RegionId": "1"
+        }
+    ],
+    "@odata.id": "/redfish/v1/Systems/1/Memory/1",
+    "OperatingSpeedMhz": 2133,
+    "ErrorCorrection": null,
+    "OperatingMemoryModes": [],
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "BusWidthBits": null,
+    "RankCount": null,
+    "Oem": {
+        "Intel_RackScale": {
+            "VoltageVolt": null,
+            "@odata.type": "#Intel.Oem.Memory"
+        }
+    },
+    "Id": "1",
+    "Description": "Memory description",
+    "MemoryDeviceType": "DDR3_SDRAM",
+    "@odata.type": "#Memory.v1_1_0.Memory",
+    "DataWidthBits": 64,
+    "@odata.context": "/redfish/v1/$metadata#Memory.Memory",
+    "MemoryType": null,
+    "FirmwareRevision": null,
+    "AllowedSpeedsMHz": [],
+    "MemoryLocation": {
+        "Socket": null,
+        "MemoryController": null,
+        "Slot": null,
+        "Channel": null
+    },
+    "PartNumber": null
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/2/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/2/index.json
new file mode 100644
index 0000000..61ad245
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/2/index.json
@@ -0,0 +1,52 @@
+{
+    "SerialNumber": null,
+    "Name": "Memory",
+    "FirmwareApiVersion": null,
+    "MemoryMedia": [],
+    "Manufacturer": null,
+    "DeviceLocator": "DIMM_B1",
+    "BaseModuleType": null,
+    "CapacityMiB": 7812,
+    "FunctionClasses": [],
+    "Regions": [
+        {
+            "MemoryClassification": null,
+            "SizeMiB": 7812,
+            "OffsetMiB": 0,
+            "RegionId": "2"
+        }
+    ],
+    "@odata.id": "/redfish/v1/Systems/1/Memory/2",
+    "OperatingSpeedMhz": 2133,
+    "ErrorCorrection": null,
+    "OperatingMemoryModes": [],
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "BusWidthBits": null,
+    "RankCount": null,
+    "Oem": {
+        "Intel_RackScale": {
+            "VoltageVolt": null,
+            "@odata.type": "#Intel.Oem.Memory"
+        }
+    },
+    "Id": "2",
+    "Description": "Memory description",
+    "MemoryDeviceType": "DDR3_SDRAM",
+    "@odata.type": "#Memory.v1_1_0.Memory",
+    "DataWidthBits": 64,
+    "@odata.context": "/redfish/v1/$metadata#Memory.Memory",
+    "MemoryType": null,
+    "FirmwareRevision": null,
+    "AllowedSpeedsMHz": [],
+    "MemoryLocation": {
+        "Socket": null,
+        "MemoryController": null,
+        "Slot": null,
+        "Channel": null
+    },
+    "PartNumber": null
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/index.json
new file mode 100644
index 0000000..e2631a0
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Memory/index.json
@@ -0,0 +1,16 @@
+{
+    "@odata.type": "#MemoryCollection.MemoryCollection",
+    "Name": "Memory Collection",
+    "@odata.context": "/redfish/v1/$metadata#MemoryCollection.MemoryCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Systems/1/Memory/1"
+        },
+        {
+            "@odata.id": "/redfish/v1/Systems/1/Memory/2"
+        }
+    ],
+    "Description": "Memory Collection",
+    "@odata.id": "/redfish/v1/Systems/1/Memory",
+    "Members@odata.count": 2
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/1/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/1/index.json
new file mode 100644
index 0000000..947d557
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/1/index.json
@@ -0,0 +1,50 @@
+{
+    "ProcessorId": {
+        "IdentificationRegisters": null,
+        "VendorId": "GenuineIntel",
+        "EffectiveModel": null,
+        "EffectiveFamily": null,
+        "MicrocodeInfo": null,
+        "Step": null
+    },
+    "Model": "Intel(R) Xeon(R) CPU D-1518 @ 2.20GHz",
+    "Name": "Processor",
+    "TotalThreads": 2,
+    "TotalCores": 4,
+    "ProcessorArchitecture": "x86",
+    "Description": "Processor Description",
+    "Id": "1",
+    "MaxSpeedMHz": 800,
+    "Socket": "CPU0",
+    "ProcessorType": "CPU",
+    "@odata.type": "#Processor.v1_0_0.Processor",
+    "@odata.context": "/redfish/v1/$metadata#Processor.Processor",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Manufacturer": "Intel Corporation",
+    "@odata.id": "/redfish/v1/Systems/1/Processors/1",
+    "Oem": {
+        "Intel_RackScale": {
+            "Capabilities": [],
+            "@odata.type": "#Intel.Oem.Processor",
+            "Brand": "Unknown"
+        }
+    },
+    "InstructionSet": "x86-64",
+    "CpuStatus": {
+        "io wait": 0,
+        "guest": 0,
+        "LoadingPercentage": 0.6329113841056824,
+        "guest nice": 0,
+        "system": 0.6320000290870667,
+        "user nice": 0,
+        "soft irq": 0,
+        "user": 0,
+        "steal": 0,
+        "idle": 99.36699676513672,
+        "hard irq": 0
+    }
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/index.json
new file mode 100644
index 0000000..99a68ea
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Processors/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#ProcessorCollection.ProcessorCollection",
+    "Name": "Processor Collection",
+    "@odata.context": "/redfish/v1/$metadata#ProcessorCollection.ProcessorCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Systems/1/Processors/1"
+        }
+    ],
+    "Description": "Collection of Processors",
+    "@odata.id": "/redfish/v1/Systems/1/Processors",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/Volumes/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/Volumes/index.json
new file mode 100644
index 0000000..541c298
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/Volumes/index.json
@@ -0,0 +1,9 @@
+{
+    "@odata.type": "#VolumeCollection.VolumeCollection",
+    "Name": "Computer Volume Collection",
+    "@odata.context": "/redfish/v1/$metadata#VolumeCollection.VolumeCollection",
+    "Members": [],
+    "Description": "Computer Volume Collection",
+    "@odata.id": "/redfish/v1/Systems/1/Storage/1/Volumes",
+    "Members@odata.count": 0
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/index.json
new file mode 100644
index 0000000..b0d96f6
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/1/index.json
@@ -0,0 +1,24 @@
+{
+    "Name": "Storage Subsystem",
+    "Links": {},
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Volumes": {
+        "@odata.id": "/redfish/v1/Systems/1/Storage/1/Volumes"
+    },
+    "Id": "1",
+    "Description": "Storage Subsystem description",
+    "Actions": {},
+    "@odata.type": "#Storage.v1_1_0.Storage",
+    "@odata.context": "/redfish/v1/$metadata#Storage.Storage",
+    "StorageControllers": [],
+    "@odata.id": "/redfish/v1/Systems/1/Storage/1",
+    "Drives": [
+        {
+            "@odata.id": "/redfish/v1/Chassis/1/Drives/1"
+        }
+    ]
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/index.json
new file mode 100644
index 0000000..9a6f9bf
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/Storage/index.json
@@ -0,0 +1,12 @@
+{
+    "@odata.type": "#StorageCollection.StorageCollection",
+    "Name": "Storage Collection",
+    "@odata.context": "/redfish/v1/$metadata#StorageCollection.StorageCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Systems/1/Storage/1"
+        }
+    ],
+    "@odata.id": "/redfish/v1/Systems/1/Storage",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/1/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/1/index.json
new file mode 100644
index 0000000..903a409
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/1/index.json
@@ -0,0 +1,100 @@
+{
+    "SerialNumber": "EC1721000216",
+    "BiosVersion": "5.11",
+    "Name": "Computer System",
+    "IndicatorLED": "Lit",
+    "Manufacturer": "Accton",
+    "Memory": {
+        "@odata.id": "/redfish/v1/Systems/1/Memory"
+    },
+    "HostName": "localhost",
+    "Storage": {
+        "@odata.id": "/redfish/v1/Systems/1/Storage"
+    },
+    "PCIeFunctions": [],
+    "UUID": "d6fee3aa-785f-11ea-8e4b-af25952f929b",
+    "@odata.id": "/redfish/v1/Systems/1",
+    "AssetTag": "N/A",
+    "SystemType": "Physical",
+    "Oem": {
+        "Intel_RackScale": {
+            "ProcessorSockets": 1,
+            "DiscoveryState": "Basic",
+            "@odata.type": "#Intel.Oem.ComputerSystem",
+            "PCIeConnectionId": [],
+            "MemorySockets": 2,
+            "PciDevices": []
+        }
+    },
+    "Boot": {
+        "BootSourceOverrideMode": "Legacy",
+        "BootSourceOverrideTarget": "None",
+        "BootSourceOverrideEnabled": "Disabled"
+    },
+    "MemoryState": {
+        "FreeSwapMemoryByte": 0,
+        "TotalSwapMemoryByte": 0,
+        "FreeMemoryByte": 16169037824,
+        "TotalMemoryByte": 16687493120
+    },
+    "ProcessorSummary": {
+        "Model": "Intel(R) Xeon(R) CPU D-1518 @ 2.20GHz",
+        "Count": 1,
+        "Status": {
+            "State": "Enabled",
+            "HealthRollup": "OK",
+            "Health": "OK"
+        }
+    },
+    "PCIeDevices": [],
+    "Links": {
+        "Oem": {},
+        "ManagedBy": [
+            {
+                "@odata.id": "/redfish/v1/Managers/1"
+            }
+        ],
+        "@odata.type": "#ComputerSystem.v1_2_0.Links",
+        "Endpoints": [],
+        "Chassis": [
+            {
+                "@odata.id": "/redfish/v1/Chassis/1"
+            }
+        ]
+    },
+    "Id": "1",
+    "Description": "Computer System description",
+    "Model": "",
+    "PowerState": "On",
+    "Actions": {
+        "#ComputerSystem.Reset": {
+            "target": "/redfish/v1/Systems/1/Actions/ComputerSystem.Reset",
+            "ResetType@Redfish.AllowableValues": [
+                "ForceOff",
+                "GracefulShutdown",
+                "GracefulRestart",
+                "ForceRestart"
+            ]
+        }
+    },
+    "@odata.type": "#ComputerSystem.v1_3_0.ComputerSystem",
+    "SKU": null,
+    "@odata.context": "/redfish/v1/$metadata#ComputerSystem.ComputerSystem",
+    "Status": {
+        "State": "Enabled",
+        "HealthRollup": "OK",
+        "Health": "OK"
+    },
+    "Processors": {
+        "@odata.id": "/redfish/v1/Systems/1/Processors"
+    },
+    "MemorySummary": {
+        "TotalSystemMemoryGiB": 15.26,
+        "Status": {
+            "State": "Enabled",
+            "HealthRollup": "OK",
+            "Health": "OK"
+        }
+    },
+    "PartNumber": ""
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/Systems/index.json b/mock-redfish-server/mockup/redfish/v1/Systems/index.json
new file mode 100644
index 0000000..112e0ed
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/Systems/index.json
@@ -0,0 +1,13 @@
+{
+    "@odata.type": "#ComputerSystemCollection.ComputerSystemCollection",
+    "Name": "Computer System Collection",
+    "@odata.context": "/redfish/v1/$metadata#ComputerSystemCollection.ComputerSystemCollection",
+    "Members": [
+        {
+            "@odata.id": "/redfish/v1/Systems/1"
+        }
+    ],
+    "Description": "Collection of Computer Systems",
+    "@odata.id": "/redfish/v1/Systems",
+    "Members@odata.count": 1
+}
\ No newline at end of file
diff --git a/mock-redfish-server/mockup/redfish/v1/index.json b/mock-redfish-server/mockup/redfish/v1/index.json
new file mode 100644
index 0000000..ec747fa
--- /dev/null
+++ b/mock-redfish-server/mockup/redfish/v1/index.json
@@ -0,0 +1 @@
+null
\ No newline at end of file