tree 5124ad0d3fc35dd5e12cafcb85096fcc3fee7fec
parent 869876066e60e1992c12acc5e1989466821fd7a6
author Jagpal Singh Gill <paligill@gmail.com> 1717397036 -0700
committer Jagpal S Gill <paligill@gmail.com> 1719341812 +0000

remove unstructured HTTP patch for ApplyOptions

Remove the support for Unstructured HTTP patch as the main user of this
Redfish API is IBM and they only use this API to set the ApplyTime as
immediate. Hence ApplyTime will be passed as immediate (as default) for
Unstructured HTTP POST updates. Modify the get for ApplyTime to only
return immediate.

Tested:
Patch operation removal test:
```
> curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" -X PATCH -d '{"HttpPushUriOptions":{"HttpPushUriApplyTime":{"ApplyTime":"Immediate"}}}' https://${bmc}/redfish/v1/UpdateService
{
  "error": {
    "@Message.ExtendedInfo": [
      {
        "@odata.type": "#Message.v1_1_1.Message",
        "Message": "The HTTP method is not allowed on this resource.",
        "MessageArgs": [],
        "MessageId": "Base.1.16.0.OperationNotAllowed",
        "MessageSeverity": "Critical",
        "Resolution": "None."
      }
    ],
    "code": "Base.1.16.0.OperationNotAllowed",
    "message": "The HTTP method is not allowed on this resource."
  }
}
```

ApplyTime get test:
```
> curl -k -H "X-Auth-Token: $token" https://${bmc}/redfish/v1/UpdateService
{
  "@odata.id": "/redfish/v1/UpdateService",
  "@odata.type": "#UpdateService.v1_11_1.UpdateService",
  "Actions": {
    "#UpdateService.SimpleUpdate": {
      "TransferProtocol@Redfish.AllowableValues": [
        "HTTPS"
      ],
      "target": "/redfish/v1/UpdateService/Actions/UpdateService.SimpleUpdate"
    }
  },
  "Description": "Service for Software Update",
  "FirmwareInventory": {
    "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory"
  },
  "HttpPushUri": "/redfish/v1/UpdateService/update",
  "HttpPushUriOptions": {
    "HttpPushUriApplyTime": {
      "ApplyTime": "Immediate"
    }
  },
  "Id": "UpdateService",
  "MaxImageSizeBytes": 31457280,
  "MultipartHttpPushUri": "/redfish/v1/UpdateService/update",
  "Name": "Update Service",
  "ServiceEnabled": true
}
```

Change-Id: I25d21119d74a3411cd1fd581c9d56e1e9e1604f8
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
