From 0f3bf66e946c28f3e2291bd1a25edd2a8cf39fc3 Mon Sep 17 00:00:00 2001 From: hammadzf Date: Wed, 18 Feb 2026 16:36:44 +0100 Subject: [PATCH] add resource structure and HTTP methods --- GS_NFV-SOL_026.md | 74 +++++++++++++++++++++++++++++++++++++++++++++- media/image42.png | Bin 0 -> 8508 bytes 2 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 media/image42.png diff --git a/GS_NFV-SOL_026.md b/GS_NFV-SOL_026.md index 7872aec..377a20a 100644 --- a/GS_NFV-SOL_026.md +++ b/GS_NFV-SOL_026.md @@ -754,7 +754,79 @@ The request and response data structures of the physical resource provisioning a ## 7.3 Resource structure and HTTP methods -Editor's Note: This sub-clause will add Resource structure and HTTP methods for the service interface. +The inventory of physical resources within an NFVI-PoP managed by the PIM are represented by different collections of Redfish® objects. These Redfish® collections, along with their resource URIs, that provide the corresponding information about physical resources in an NFVI-PoP are specified in clause 5.3.4 of the present document. + +For the sake of simplicity and to avoid repitition, the present clause denotes each Redfish® collection as \"InventoryObjectCollection\" and each individual object of a collection as \"IndividualInventoryObject\". + +Figures 7.3-1, 7.3-2 and 7.3-3 show resource structures of the Redfish® API [\[2\]](#_ref_2) resources that are applicable for the physical resource inventory management service interface. + +![Figure 7.3-1: API resource structure of "InventoryObjectCollection" resource for the physical resource inventory management service interface](media/image42.png) + +**Figure 7.3-1: API resource structure of "InventoryObjectCollection" resource for the physical resource inventory management service interface** + +![Figure 7.3-2: API resource structure of Subscription resource for physical resource inventory management service interface](media/image3.png) + +**Figure 7.3-2: API resource structure of Subscription resource for physical resource inventory management service interface** + +![Figure 7.3-3: API resource structure of the Individual Task Monitor resource for physical resource inventory management service interface](media/image4.png) + +**Figure 7.3-3: API resource structure of the Individual Task Monitor resource for physical resource inventory management service interface** + +Table 7.3-1 lists the API resources, and the applicable HTTP methods for each resource endpoint. + +The HTTP methods marked as \"M\" (mandatory) in the \"Cat\" column of table 7.3-1 shall be supported by the PIM. The HTTP methods marked as \"CM\" (conditional mandatory) shall be supported by the PIM depending on the corresponding condition. The HTTP methods marked as \"O\" (optional) in the \"Cat\" column may be optionally supported by the PIM. + +**Table 7.3-1: API Resources and HTTP methods of physical resource inventory management service interface** + ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|Resource name |Resource URI |HTTP\ |Cat |Meaning | +| | |Method | | | ++:========================+:================================+:================+:=========+:=========================================================+ +|InventoryObjectCollection| /redfish/v1 \ |GET |M |Get a collection of inventory objects of same kind. | +| | /{InventoryObjectCollection} \ | | | | +| | (see note 1) | | | | ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|IndividualInventoryObject| /redfish/v1 \ |GET |M |Get an individual object from a collection of \ | +| | /{InventoryObjectCollection} \ | | |inventory objects of same kind. | +| | /{IndividualInventoryObject} \ +-----------------+----------+----------------------------------------------------------+ +| | (see note 2) |PATCH |M |Modify an individual object from an inventory collection. | +| | +-----------------+----------+----------------------------------------------------------+ +| | |PUT |O |Replace an individual object from an inventory collection.| ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|Subscriptions |/redfish/v1/EventService\ |POST |M |Create a new \"Individual Subscription\" resource. | +| |/Subscriptions +-----------------+----------+----------------------------------------------------------+ +| | |GET |M |Get the collection of all available subscriptions. | ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|Individual Subscription |/redfish/v1/EventService\ |GET |M |Get information about the | +| |/Subscriptions/{SubscriptionId} | | |\"Individual Subscription\" resource. | +| | +-----------------+----------+----------------------------------------------------------+ +| | |PATCH |M |Modify an \"Individual Subscription\" resource. | +| | +-----------------+----------+----------------------------------------------------------+ +| | |PUT |O |Replace an \"Individual Subscription\" resource. | +| | +-----------------+----------+----------------------------------------------------------+ +| | |DELETE |M |Delete an \"Individual Subscription\" resource. | ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|Notification endpoint |{NotificationTargetURI} |POST |M |Send a notification related to | +| | | | |a subscribed event (see note 3). \ | +| | | | |This resource is used to send information about faults \ | +| | | | |to the consumer in the form of an alert type event. | ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|Individual Task Monitor |/redfish/v1/TaskService\ |GET |CM |Enable API consumer to monitor the | +| |/TaskMonitors/{TaskMonitorId} | | |progress of an asynchronous operation | +| |(see note 4) | | |as well as receive the result of the requested | +| | | | |operation once the corresponding task has been completed. | +| | | | |This resource endpoint shall be supported | +| | | | |if the API producer supports asynchronous operations. | ++-------------------------+---------------------------------+-----------------+----------+----------------------------------------------------------+ +|NOTE 1: See clause 5.3.4 for the resource URIs of each inventory object collection. | +|NOTE 2: The resource URI of an indivdual object can be acquired from the corresponding object collection in its \"Members\" property. | +|NOTE 3: Notification endpoint resource and the corresponding NotficiationTargetURI | +|is used by the API producer to send notifications to the API consumer. | +|This resource is not produced by the API producer. \ | +|NOTE 4: The URI of the task monitor is provided in the Location header | +|of the HTTP response to the API consumer when the API producer returns a \"202 Accepted\" response. | ++---------------------------------------------------------------------------------------------------------------------------------------------------+ + ## 7.4 Sequence diagrams (informative) diff --git a/media/image42.png b/media/image42.png new file mode 100644 index 0000000000000000000000000000000000000000..46f7de0de62ca91648e2113b3c46d3f6903fed40 GIT binary patch literal 8508 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 IIVCg!05~R~