Loading src/nbi/service/restapi_resources/__init__.py 0 → 100644 +14 −0 Original line number Diff line number Diff line # Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. src/nbi/service/restapi_resources/well_known_meta/Resources.py 0 → 100644 +20 −0 Original line number Diff line number Diff line # RESTCONF .well-known endpoint (RFC 8040) class WellKnownHostMeta(Resource): def get(self): response = { "restconf": { "capabilities": [ "urn:ietf:params:restconf:capability:defaults:1.0", "urn:ietf:params:restconf:capability:depth:1.0", "urn:ietf:params:restconf:capability:with-defaults:1.0" ], "media-types": [ "application/yang-data+json", "application/yang-data+xml" ] } } return jsonify(response) # Register the RESTCONF .well-known endpoint api.add_resource(WellKnownHostMeta, "/.well-known/host-meta") No newline at end of file src/nbi/service/restapi_resources/well_known_meta/__init__.py 0 → 100644 +21 −0 Original line number Diff line number Diff line # Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from nbi.service.NbiApplication import NbiApplication from .WellKnownResource import RESOURCE_DESCRIPTOR def register_well_known(nbi_app : NbiApplication): endpoint_name, resource_class, resource_url = RESOURCE_DESCRIPTOR nbi_app.add_rest_api_resource(resource_class, resource_url, endpoint=endpoint_name) Loading
src/nbi/service/restapi_resources/__init__.py 0 → 100644 +14 −0 Original line number Diff line number Diff line # Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License.
src/nbi/service/restapi_resources/well_known_meta/Resources.py 0 → 100644 +20 −0 Original line number Diff line number Diff line # RESTCONF .well-known endpoint (RFC 8040) class WellKnownHostMeta(Resource): def get(self): response = { "restconf": { "capabilities": [ "urn:ietf:params:restconf:capability:defaults:1.0", "urn:ietf:params:restconf:capability:depth:1.0", "urn:ietf:params:restconf:capability:with-defaults:1.0" ], "media-types": [ "application/yang-data+json", "application/yang-data+xml" ] } } return jsonify(response) # Register the RESTCONF .well-known endpoint api.add_resource(WellKnownHostMeta, "/.well-known/host-meta") No newline at end of file
src/nbi/service/restapi_resources/well_known_meta/__init__.py 0 → 100644 +21 −0 Original line number Diff line number Diff line # Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from nbi.service.NbiApplication import NbiApplication from .WellKnownResource import RESOURCE_DESCRIPTOR def register_well_known(nbi_app : NbiApplication): endpoint_name, resource_class, resource_url = RESOURCE_DESCRIPTOR nbi_app.add_rest_api_resource(resource_class, resource_url, endpoint=endpoint_name)