X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fviews%2Fapi_ns.py;h=5f3cf2359455b5aaef4df43a30abfbc11425fd42;hb=07202acdb1b963ae656e3e0a5a7d9184f21ea01d;hp=b52c3e9e90ce4a9512bb5a23ffdb871c42e30fb5;hpb=6de6c10df1394a23f5817241597bcc36fe1ddea3;p=pti%2Fo2.git diff --git a/o2ims/views/api_ns.py b/o2ims/views/api_ns.py index b52c3e9..5f3cf23 100644 --- a/o2ims/views/api_ns.py +++ b/o2ims/views/api_ns.py @@ -13,7 +13,7 @@ # limitations under the License. from flask import request -from flask_restx import Resource +from flask_restx import Resource, fields from o2common.views.route import O2Namespace @@ -33,7 +33,36 @@ api_ims_monitoring = O2Namespace( @api_ims_inventory.route('/api_versions') class InventoryVersion(Resource): + api_version = api_ims_inventory.model( + 'InventoryApiVersionStructure', + { + 'version': fields.String( + required=True, + example='1.0.0', + description='Identifies a supported version.' + ) + }, + mask='{version,}' + ) + model = api_ims_inventory.model( + "InventoryAPIVersion", + { + 'uriPrefix': fields.String( + required=True, + example='https://128.224.115.36:30205/' + + 'o2ims-infrastructureInventory', + description='Specifies the URI prefix for the API'), + 'apiVersions': fields.List( + fields.Nested(api_version), + example=[{'version': '1.0.0'}], + description='Version(s) supported for the API ' + + 'signaled by the uriPrefix attribute.'), + }, + mask='{uriPrefix,apiVersions}' + ) + @api_ims_inventory.doc('Get Inventory Version') + @api_ims_inventory.marshal_with(model) def get(self): return { 'uriPrefix': request.base_url.rsplit('/', 1)[0], @@ -47,7 +76,36 @@ class InventoryVersion(Resource): @api_ims_monitoring.route('/api_versions') class MonitoringVersion(Resource): + api_version = api_ims_inventory.model( + 'MonitoringApiVersionStructure', + { + 'version': fields.String( + required=True, + example='1.0.0', + description='Identifies a supported version.' + ) + }, + mask='{version,}' + ) + model = api_ims_inventory.model( + "MonitoringAPIVersion", + { + 'uriPrefix': fields.String( + required=True, + example='https://128.224.115.36:30205/' + + 'o2ims-infrastructureMonitoring', + description='Specifies the URI prefix for the API'), + 'apiVersions': fields.List( + fields.Nested(api_version), + example=[{'version': '1.0.0'}], + description='Version(s) supported for the API ' + + 'signaled by the uriPrefix attribute.'), + }, + mask='{uriPrefix,apiVersions}' + ) + @api_ims_monitoring.doc('Get Monitoring Version') + @api_ims_monitoring.marshal_with(model) def get(self): return { 'uriPrefix': request.base_url.rsplit('/', 1)[0],