From 54f59a84fe74fe0b773bcd12d6031eaa314a1e29 Mon Sep 17 00:00:00 2001 From: Pelayo Torres Date: Fri, 19 Jul 2024 12:19:08 +0200 Subject: [PATCH] REL18 events service --- .../.openapi-generator/FILES | 46 +- .../.openapi-generator/VERSION | 2 +- services/TS29222_CAPIF_Events_API/README.md | 2 +- .../controllers/default_controller.py | 52 +- ..._controller_.py => security_controller.py} | 0 .../capif_events/encoder.py | 5 +- .../capif_events/models/__init__.py | 43 +- .../models/access_control_policy_list.py | 9 +- .../models/access_control_policy_list_ext.py | 17 +- .../access_control_policy_list_ext_all_of.py | 64 - .../capif_events/models/aef_location.py | 119 + .../capif_events/models/aef_profile.py | 123 +- .../capif_events/models/api_invoker_policy.py | 25 +- .../capif_events/models/api_status.py | 65 + .../models/{base_model_.py => base_model.py} | 9 +- ...of.py => buffered_notifications_action.py} | 20 +- .../capif_events/models/capif_event.py | 7 +- .../capif_events/models/capif_event_any_of.py | 53 - .../capif_events/models/capif_event_detail.py | 29 +- .../capif_events/models/capif_event_filter.py | 17 +- .../capif_events/models/civic_address.py | 919 ++++ .../capif_events/models/communication_type.py | 7 +- .../models/communication_type_any_of.py | 42 - .../capif_events/models/custom_operation.py | 29 +- .../capif_events/models/data_format.py | 7 +- .../capif_events/models/ellipsoid_arc.py | 265 + .../capif_events/models/event_notification.py | 21 +- .../capif_events/models/event_subscription.py | 41 +- .../models/event_subscription_patch.py | 155 + .../capif_events/models/gad_shape.py | 65 + .../capif_events/models/geographic_area.py | 471 ++ .../models/geographical_coordinates.py | 99 + .../models/interface_description.py | 99 +- .../capif_events/models/invalid_param.py | 13 +- .../capif_events/models/invocation_log.py | 29 +- .../capif_events/models/ip_addr_range.py | 99 + .../capif_events/models/ipv4_address_range.py | 25 +- .../models/ipv4_address_range1.py | 97 + .../{data_format_any_of.py => ipv6_addr1.py} | 19 +- .../capif_events/models/ipv6_address_range.py | 21 +- .../models/ipv6_address_range1.py | 93 + .../local2d_point_uncertainty_ellipse.py | 191 + .../local3d_point_uncertainty_ellipsoid.py | 191 + .../capif_events/models/local_origin.py | 89 + .../capif_events/models/log.py | 85 +- .../models/muting_exception_instructions.py | 91 + .../models/muting_notifications_settings.py | 89 + .../capif_events/models/notification_flag.py | 7 +- .../models/notification_flag_any_of.py | 43 - .../models/notification_method.py | 7 +- .../models/notification_method_any_of.py | 43 - .../capif_events/models/operation.py | 7 +- .../models/partitioning_criteria.py | 7 +- .../models/partitioning_criteria_any_of.py | 45 - .../capif_events/models/point.py | 97 + .../capif_events/models/point_altitude.py | 131 + .../models/point_altitude_uncertainty.py | 259 + .../models/point_uncertainty_circle.py | 129 + .../models/point_uncertainty_ellipse.py | 161 + .../capif_events/models/polygon.py | 103 + .../capif_events/models/problem_details.py | 53 +- .../capif_events/models/protocol.py | 7 +- .../capif_events/models/published_api_path.py | 9 +- .../models/relative_cartesian_location.py | 123 + .../models/reporting_information.py | 111 +- .../capif_events/models/resource.py | 75 +- .../capif_events/models/routing_rule.py | 31 +- .../capif_events/models/security_method.py | 7 +- .../models/service_api_description.py | 129 +- .../capif_events/models/service_kpis.py | 277 + .../models/shareable_information.py | 21 +- ...ethod_any_of.py => subscription_action.py} | 21 +- ...tion_any_of.py => supported_gad_shapes.py} | 23 +- .../capif_events/models/time_range_list.py | 13 +- .../capif_events/models/topology_hiding.py | 13 +- .../models/uncertainty_ellipse.py | 133 + .../models/uncertainty_ellipsoid.py | 165 + .../capif_events/models/version.py | 21 +- .../models/websock_notif_config.py | 13 +- .../capif_events/openapi/openapi.yaml | 4659 +++++++++++++++-- .../capif_events/test/__init__.py | 16 + .../test/test_default_controller.py | 88 + .../capif_events/typing_utils.py | 2 - .../capif_events/util.py | 14 +- services/TS29222_CAPIF_Events_API/git_push.sh | 6 +- .../TS29222_CAPIF_Events_API/requirements.txt | 2 +- services/TS29222_CAPIF_Events_API/setup.py | 4 +- services/TS29222_CAPIF_Events_API/tox.ini | 2 +- .../capif_security/__main__.py | 19 + .../controllers/security_controller.py | 2 + .../capif_security/models/base_model.py | 68 + .../models/no_profile_match_info.py | 95 + .../models/no_profile_match_reason.py | 34 + .../models/o_auth_grant_type.py | 34 + .../models/query_param_combination.py | 67 + .../capif_security/models/query_parameter.py | 91 + .../capif_security/models/res_owner_id.py | 67 + .../capif_security/test/__init__.py | 16 + .../test/test_default_controller.py | 135 + 99 files changed, 10352 insertions(+), 1412 deletions(-) rename services/TS29222_CAPIF_Events_API/capif_events/controllers/{security_controller_.py => security_controller.py} (100%) delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext_all_of.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/aef_location.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/api_status.py rename services/TS29222_CAPIF_Events_API/capif_events/models/{base_model_.py => base_model.py} (92%) rename services/TS29222_CAPIF_Events_API/capif_events/models/{protocol_any_of.py => buffered_notifications_action.py} (57%) delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_any_of.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/civic_address.py delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/communication_type_any_of.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/ellipsoid_arc.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription_patch.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/gad_shape.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/geographic_area.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/geographical_coordinates.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/ip_addr_range.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range1.py rename services/TS29222_CAPIF_Events_API/capif_events/models/{data_format_any_of.py => ipv6_addr1.py} (58%) create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range1.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/local2d_point_uncertainty_ellipse.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/local3d_point_uncertainty_ellipsoid.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/local_origin.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/muting_exception_instructions.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/muting_notifications_settings.py delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag_any_of.py delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/notification_method_any_of.py delete mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria_any_of.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/point.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude_uncertainty.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_circle.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_ellipse.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/polygon.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/relative_cartesian_location.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/service_kpis.py rename services/TS29222_CAPIF_Events_API/capif_events/models/{security_method_any_of.py => subscription_action.py} (55%) rename services/TS29222_CAPIF_Events_API/capif_events/models/{operation_any_of.py => supported_gad_shapes.py} (54%) create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipse.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipsoid.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/test/__init__.py create mode 100644 services/TS29222_CAPIF_Events_API/capif_events/test/test_default_controller.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/__main__.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/controllers/security_controller.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/base_model.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_info.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_reason.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/o_auth_grant_type.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/query_param_combination.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/query_parameter.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/models/res_owner_id.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/test/__init__.py create mode 100644 services/TS29222_CAPIF_Security_API/capif_security/test/test_default_controller.py diff --git a/services/TS29222_CAPIF_Events_API/.openapi-generator/FILES b/services/TS29222_CAPIF_Events_API/.openapi-generator/FILES index edfb886..54c709f 100644 --- a/services/TS29222_CAPIF_Events_API/.openapi-generator/FILES +++ b/services/TS29222_CAPIF_Events_API/.openapi-generator/FILES @@ -3,64 +3,84 @@ .travis.yml Dockerfile README.md +git_push.sh capif_events/__init__.py capif_events/__main__.py capif_events/controllers/__init__.py capif_events/controllers/default_controller.py -capif_events/controllers/security_controller_.py +capif_events/controllers/security_controller.py capif_events/encoder.py capif_events/models/__init__.py capif_events/models/access_control_policy_list.py capif_events/models/access_control_policy_list_ext.py -capif_events/models/access_control_policy_list_ext_all_of.py +capif_events/models/aef_location.py capif_events/models/aef_profile.py capif_events/models/api_invoker_policy.py -capif_events/models/base_model_.py +capif_events/models/api_status.py +capif_events/models/base_model.py +capif_events/models/buffered_notifications_action.py capif_events/models/capif_event.py -capif_events/models/capif_event_any_of.py capif_events/models/capif_event_detail.py capif_events/models/capif_event_filter.py +capif_events/models/civic_address.py capif_events/models/communication_type.py -capif_events/models/communication_type_any_of.py capif_events/models/custom_operation.py capif_events/models/data_format.py -capif_events/models/data_format_any_of.py +capif_events/models/ellipsoid_arc.py capif_events/models/event_notification.py capif_events/models/event_subscription.py +capif_events/models/event_subscription_patch.py +capif_events/models/gad_shape.py +capif_events/models/geographic_area.py +capif_events/models/geographical_coordinates.py capif_events/models/interface_description.py capif_events/models/invalid_param.py capif_events/models/invocation_log.py +capif_events/models/ip_addr_range.py capif_events/models/ipv4_address_range.py +capif_events/models/ipv4_address_range1.py +capif_events/models/ipv6_addr1.py capif_events/models/ipv6_address_range.py +capif_events/models/ipv6_address_range1.py +capif_events/models/local2d_point_uncertainty_ellipse.py +capif_events/models/local3d_point_uncertainty_ellipsoid.py +capif_events/models/local_origin.py capif_events/models/log.py +capif_events/models/muting_exception_instructions.py +capif_events/models/muting_notifications_settings.py capif_events/models/notification_flag.py -capif_events/models/notification_flag_any_of.py capif_events/models/notification_method.py -capif_events/models/notification_method_any_of.py capif_events/models/operation.py -capif_events/models/operation_any_of.py capif_events/models/partitioning_criteria.py -capif_events/models/partitioning_criteria_any_of.py +capif_events/models/point.py +capif_events/models/point_altitude.py +capif_events/models/point_altitude_uncertainty.py +capif_events/models/point_uncertainty_circle.py +capif_events/models/point_uncertainty_ellipse.py +capif_events/models/polygon.py capif_events/models/problem_details.py capif_events/models/protocol.py -capif_events/models/protocol_any_of.py capif_events/models/published_api_path.py +capif_events/models/relative_cartesian_location.py capif_events/models/reporting_information.py capif_events/models/resource.py capif_events/models/routing_rule.py capif_events/models/security_method.py -capif_events/models/security_method_any_of.py capif_events/models/service_api_description.py +capif_events/models/service_kpis.py capif_events/models/shareable_information.py +capif_events/models/subscription_action.py +capif_events/models/supported_gad_shapes.py capif_events/models/time_range_list.py capif_events/models/topology_hiding.py +capif_events/models/uncertainty_ellipse.py +capif_events/models/uncertainty_ellipsoid.py capif_events/models/version.py capif_events/models/websock_notif_config.py capif_events/openapi/openapi.yaml capif_events/test/__init__.py capif_events/typing_utils.py capif_events/util.py -git_push.sh requirements.txt setup.py test-requirements.txt diff --git a/services/TS29222_CAPIF_Events_API/.openapi-generator/VERSION b/services/TS29222_CAPIF_Events_API/.openapi-generator/VERSION index 4b448de..18bb418 100644 --- a/services/TS29222_CAPIF_Events_API/.openapi-generator/VERSION +++ b/services/TS29222_CAPIF_Events_API/.openapi-generator/VERSION @@ -1 +1 @@ -5.3.0-SNAPSHOT \ No newline at end of file +7.5.0 diff --git a/services/TS29222_CAPIF_Events_API/README.md b/services/TS29222_CAPIF_Events_API/README.md index 9f89fec..e6189d5 100644 --- a/services/TS29222_CAPIF_Events_API/README.md +++ b/services/TS29222_CAPIF_Events_API/README.md @@ -15,7 +15,7 @@ To run the server, please execute the following from the root directory: ``` pip3 install -r requirements.txt -python3 -m capif_events +python3 -m openapi_server ``` and open your browser to here: diff --git a/services/TS29222_CAPIF_Events_API/capif_events/controllers/default_controller.py b/services/TS29222_CAPIF_Events_API/capif_events/controllers/default_controller.py index 839f0b0..7cc1688 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/controllers/default_controller.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/controllers/default_controller.py @@ -1,5 +1,13 @@ import connexion +from typing import Dict +from typing import Tuple +from typing import Union + from capif_events.models.event_subscription import EventSubscription # noqa: E501 +from capif_events.models.event_subscription_patch import EventSubscriptionPatch # noqa: E501 +from capif_events.models.problem_details import ProblemDetails # noqa: E501 +from capif_events import util + from ..core.events_apis import EventSubscriptionsOperations import json from flask import Response, request, current_app @@ -50,9 +58,8 @@ def subscriber_id_subscriptions_post(subscriber_id, body): # noqa: E501 :param event_subscription: :type event_subscription: dict | bytes - :rtype: EventSubscription + :rtype: Union[EventSubscription, Tuple[EventSubscription, int], Tuple[EventSubscription, int, Dict[str, str]] """ - current_app.logger.info("Creating event subscription") if connexion.request.is_json: body = EventSubscription.from_dict(connexion.request.get_json()) # noqa: E501 @@ -72,11 +79,48 @@ def subscriber_id_subscriptions_subscription_id_delete(subscriber_id, subscripti :param subscription_id: Identifier of an individual Events Subscription :type subscription_id: str - :rtype: None + :rtype: Union[None, Tuple[None, int], Tuple[None, int, Dict[str, str]] """ - current_app.logger.info("Removing event subscription") res = events_ops.delete_event(subscriber_id, subscription_id) return res + + +def subscriber_id_subscriptions_subscription_id_patch(subscriber_id, subscription_id, event_subscription_patch): # noqa: E501 + """subscriber_id_subscriptions_subscription_id_patch + + Modification of an existing individual CAPIF Event Subscription. # noqa: E501 + + :param subscriber_id: Identifier of the Subscriber + :type subscriber_id: str + :param subscription_id: Identifier of the individual Subscriber + :type subscription_id: str + :param event_subscription_patch: + :type event_subscription_patch: dict | bytes + + :rtype: Union[EventSubscription, Tuple[EventSubscription, int], Tuple[EventSubscription, int, Dict[str, str]] + """ + if connexion.request.is_json: + event_subscription_patch = EventSubscriptionPatch.from_dict(connexion.request.get_json()) # noqa: E501 + return 'do some magic!' + + +def subscriber_id_subscriptions_subscription_id_put(subscriber_id, subscription_id, event_subscription): # noqa: E501 + """subscriber_id_subscriptions_subscription_id_put + + Update of an existing individual CAPIF Event Subscription. # noqa: E501 + + :param subscriber_id: Identifier of the Subscriber + :type subscriber_id: str + :param subscription_id: Identifier of the individual Subscriber + :type subscription_id: str + :param event_subscription: + :type event_subscription: dict | bytes + + :rtype: Union[EventSubscription, Tuple[EventSubscription, int], Tuple[EventSubscription, int, Dict[str, str]] + """ + if connexion.request.is_json: + event_subscription = EventSubscription.from_dict(connexion.request.get_json()) # noqa: E501 + return 'do some magic!' diff --git a/services/TS29222_CAPIF_Events_API/capif_events/controllers/security_controller_.py b/services/TS29222_CAPIF_Events_API/capif_events/controllers/security_controller.py similarity index 100% rename from services/TS29222_CAPIF_Events_API/capif_events/controllers/security_controller_.py rename to services/TS29222_CAPIF_Events_API/capif_events/controllers/security_controller.py diff --git a/services/TS29222_CAPIF_Events_API/capif_events/encoder.py b/services/TS29222_CAPIF_Events_API/capif_events/encoder.py index 80bad8f..9435b17 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/encoder.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/encoder.py @@ -1,7 +1,6 @@ from connexion.apps.flask_app import FlaskJSONEncoder -import six -from models.base_model_ import Model +from capif_events.models.base_model import Model class JSONEncoder(FlaskJSONEncoder): @@ -10,7 +9,7 @@ class JSONEncoder(FlaskJSONEncoder): def default(self, o): if isinstance(o, Model): dikt = {} - for attr, _ in six.iteritems(o.openapi_types): + for attr in o.openapi_types: value = getattr(o, attr) if value is None and not self.include_nulls: continue diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/__init__.py b/services/TS29222_CAPIF_Events_API/capif_events/models/__init__.py index 5628bb7..5085357 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/__init__.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/__init__.py @@ -1,50 +1,67 @@ -# coding: utf-8 - # flake8: noqa -from __future__ import absolute_import # import models into model package from capif_events.models.access_control_policy_list import AccessControlPolicyList from capif_events.models.access_control_policy_list_ext import AccessControlPolicyListExt -from capif_events.models.access_control_policy_list_ext_all_of import AccessControlPolicyListExtAllOf +from capif_events.models.aef_location import AefLocation from capif_events.models.aef_profile import AefProfile from capif_events.models.api_invoker_policy import ApiInvokerPolicy +from capif_events.models.api_status import ApiStatus +from capif_events.models.buffered_notifications_action import BufferedNotificationsAction from capif_events.models.capif_event import CAPIFEvent -from capif_events.models.capif_event_any_of import CAPIFEventAnyOf from capif_events.models.capif_event_detail import CAPIFEventDetail from capif_events.models.capif_event_filter import CAPIFEventFilter +from capif_events.models.civic_address import CivicAddress from capif_events.models.communication_type import CommunicationType -from capif_events.models.communication_type_any_of import CommunicationTypeAnyOf from capif_events.models.custom_operation import CustomOperation from capif_events.models.data_format import DataFormat -from capif_events.models.data_format_any_of import DataFormatAnyOf +from capif_events.models.ellipsoid_arc import EllipsoidArc from capif_events.models.event_notification import EventNotification from capif_events.models.event_subscription import EventSubscription +from capif_events.models.event_subscription_patch import EventSubscriptionPatch +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographic_area import GeographicArea +from capif_events.models.geographical_coordinates import GeographicalCoordinates from capif_events.models.interface_description import InterfaceDescription from capif_events.models.invalid_param import InvalidParam from capif_events.models.invocation_log import InvocationLog +from capif_events.models.ip_addr_range import IpAddrRange from capif_events.models.ipv4_address_range import Ipv4AddressRange +from capif_events.models.ipv4_address_range1 import Ipv4AddressRange1 +from capif_events.models.ipv6_addr1 import Ipv6Addr1 from capif_events.models.ipv6_address_range import Ipv6AddressRange +from capif_events.models.ipv6_address_range1 import Ipv6AddressRange1 +from capif_events.models.local2d_point_uncertainty_ellipse import Local2dPointUncertaintyEllipse +from capif_events.models.local3d_point_uncertainty_ellipsoid import Local3dPointUncertaintyEllipsoid +from capif_events.models.local_origin import LocalOrigin from capif_events.models.log import Log +from capif_events.models.muting_exception_instructions import MutingExceptionInstructions +from capif_events.models.muting_notifications_settings import MutingNotificationsSettings from capif_events.models.notification_flag import NotificationFlag -from capif_events.models.notification_flag_any_of import NotificationFlagAnyOf from capif_events.models.notification_method import NotificationMethod -from capif_events.models.notification_method_any_of import NotificationMethodAnyOf from capif_events.models.operation import Operation -from capif_events.models.operation_any_of import OperationAnyOf from capif_events.models.partitioning_criteria import PartitioningCriteria -from capif_events.models.partitioning_criteria_any_of import PartitioningCriteriaAnyOf +from capif_events.models.point import Point +from capif_events.models.point_altitude import PointAltitude +from capif_events.models.point_altitude_uncertainty import PointAltitudeUncertainty +from capif_events.models.point_uncertainty_circle import PointUncertaintyCircle +from capif_events.models.point_uncertainty_ellipse import PointUncertaintyEllipse +from capif_events.models.polygon import Polygon from capif_events.models.problem_details import ProblemDetails from capif_events.models.protocol import Protocol -from capif_events.models.protocol_any_of import ProtocolAnyOf from capif_events.models.published_api_path import PublishedApiPath +from capif_events.models.relative_cartesian_location import RelativeCartesianLocation from capif_events.models.reporting_information import ReportingInformation from capif_events.models.resource import Resource from capif_events.models.routing_rule import RoutingRule from capif_events.models.security_method import SecurityMethod -from capif_events.models.security_method_any_of import SecurityMethodAnyOf from capif_events.models.service_api_description import ServiceAPIDescription +from capif_events.models.service_kpis import ServiceKpis from capif_events.models.shareable_information import ShareableInformation +from capif_events.models.subscription_action import SubscriptionAction +from capif_events.models.supported_gad_shapes import SupportedGADShapes from capif_events.models.time_range_list import TimeRangeList from capif_events.models.topology_hiding import TopologyHiding +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse +from capif_events.models.uncertainty_ellipsoid import UncertaintyEllipsoid from capif_events.models.version import Version from capif_events.models.websock_notif_config import WebsockNotifConfig diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list.py b/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list.py index 4cca41d..a64c384 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.api_invoker_policy import ApiInvokerPolicy from capif_events import util @@ -45,7 +42,7 @@ class AccessControlPolicyList(Model): return util.deserialize_model(dikt, cls) @property - def api_invoker_policies(self): + def api_invoker_policies(self) -> List[ApiInvokerPolicy]: """Gets the api_invoker_policies of this AccessControlPolicyList. Policy of each API invoker. # noqa: E501 @@ -56,7 +53,7 @@ class AccessControlPolicyList(Model): return self._api_invoker_policies @api_invoker_policies.setter - def api_invoker_policies(self, api_invoker_policies): + def api_invoker_policies(self, api_invoker_policies: List[ApiInvokerPolicy]): """Sets the api_invoker_policies of this AccessControlPolicyList. Policy of each API invoker. # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext.py b/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext.py index 6f5709c..e99c495 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext.py @@ -1,18 +1,11 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.access_control_policy_list import AccessControlPolicyList -from capif_events.models.access_control_policy_list_ext_all_of import AccessControlPolicyListExtAllOf +from capif_events.models.base_model import Model from capif_events.models.api_invoker_policy import ApiInvokerPolicy from capif_events import util -from capif_events.models.access_control_policy_list import AccessControlPolicyList # noqa: E501 -from capif_events.models.access_control_policy_list_ext_all_of import AccessControlPolicyListExtAllOf # noqa: E501 from capif_events.models.api_invoker_policy import ApiInvokerPolicy # noqa: E501 class AccessControlPolicyListExt(Model): @@ -54,7 +47,7 @@ class AccessControlPolicyListExt(Model): return util.deserialize_model(dikt, cls) @property - def api_invoker_policies(self): + def api_invoker_policies(self) -> List[ApiInvokerPolicy]: """Gets the api_invoker_policies of this AccessControlPolicyListExt. Policy of each API invoker. # noqa: E501 @@ -65,7 +58,7 @@ class AccessControlPolicyListExt(Model): return self._api_invoker_policies @api_invoker_policies.setter - def api_invoker_policies(self, api_invoker_policies): + def api_invoker_policies(self, api_invoker_policies: List[ApiInvokerPolicy]): """Sets the api_invoker_policies of this AccessControlPolicyListExt. Policy of each API invoker. # noqa: E501 @@ -79,7 +72,7 @@ class AccessControlPolicyListExt(Model): self._api_invoker_policies = api_invoker_policies @property - def api_id(self): + def api_id(self) -> str: """Gets the api_id of this AccessControlPolicyListExt. @@ -89,7 +82,7 @@ class AccessControlPolicyListExt(Model): return self._api_id @api_id.setter - def api_id(self, api_id): + def api_id(self, api_id: str): """Sets the api_id of this AccessControlPolicyListExt. diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext_all_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext_all_of.py deleted file mode 100644 index cd1dda0..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/access_control_policy_list_ext_all_of.py +++ /dev/null @@ -1,64 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class AccessControlPolicyListExtAllOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - def __init__(self, api_id=None): # noqa: E501 - """AccessControlPolicyListExtAllOf - a model defined in OpenAPI - - :param api_id: The api_id of this AccessControlPolicyListExtAllOf. # noqa: E501 - :type api_id: str - """ - self.openapi_types = { - 'api_id': str - } - - self.attribute_map = { - 'api_id': 'apiId' - } - - self._api_id = api_id - - @classmethod - def from_dict(cls, dikt) -> 'AccessControlPolicyListExtAllOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The AccessControlPolicyListExt_allOf of this AccessControlPolicyListExtAllOf. # noqa: E501 - :rtype: AccessControlPolicyListExtAllOf - """ - return util.deserialize_model(dikt, cls) - - @property - def api_id(self): - """Gets the api_id of this AccessControlPolicyListExtAllOf. - - - :return: The api_id of this AccessControlPolicyListExtAllOf. - :rtype: str - """ - return self._api_id - - @api_id.setter - def api_id(self, api_id): - """Sets the api_id of this AccessControlPolicyListExtAllOf. - - - :param api_id: The api_id of this AccessControlPolicyListExtAllOf. - :type api_id: str - """ - - self._api_id = api_id diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/aef_location.py b/services/TS29222_CAPIF_Events_API/capif_events/models/aef_location.py new file mode 100644 index 0000000..1f85dba --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/aef_location.py @@ -0,0 +1,119 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.civic_address import CivicAddress +from capif_events.models.geographic_area import GeographicArea +from capif_events import util + +from capif_events.models.civic_address import CivicAddress # noqa: E501 +from capif_events.models.geographic_area import GeographicArea # noqa: E501 + +class AefLocation(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, civic_addr=None, geo_area=None, dc_id=None): # noqa: E501 + """AefLocation - a model defined in OpenAPI + + :param civic_addr: The civic_addr of this AefLocation. # noqa: E501 + :type civic_addr: CivicAddress + :param geo_area: The geo_area of this AefLocation. # noqa: E501 + :type geo_area: GeographicArea + :param dc_id: The dc_id of this AefLocation. # noqa: E501 + :type dc_id: str + """ + self.openapi_types = { + 'civic_addr': CivicAddress, + 'geo_area': GeographicArea, + 'dc_id': str + } + + self.attribute_map = { + 'civic_addr': 'civicAddr', + 'geo_area': 'geoArea', + 'dc_id': 'dcId' + } + + self._civic_addr = civic_addr + self._geo_area = geo_area + self._dc_id = dc_id + + @classmethod + def from_dict(cls, dikt) -> 'AefLocation': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The AefLocation of this AefLocation. # noqa: E501 + :rtype: AefLocation + """ + return util.deserialize_model(dikt, cls) + + @property + def civic_addr(self) -> CivicAddress: + """Gets the civic_addr of this AefLocation. + + + :return: The civic_addr of this AefLocation. + :rtype: CivicAddress + """ + return self._civic_addr + + @civic_addr.setter + def civic_addr(self, civic_addr: CivicAddress): + """Sets the civic_addr of this AefLocation. + + + :param civic_addr: The civic_addr of this AefLocation. + :type civic_addr: CivicAddress + """ + + self._civic_addr = civic_addr + + @property + def geo_area(self) -> GeographicArea: + """Gets the geo_area of this AefLocation. + + + :return: The geo_area of this AefLocation. + :rtype: GeographicArea + """ + return self._geo_area + + @geo_area.setter + def geo_area(self, geo_area: GeographicArea): + """Sets the geo_area of this AefLocation. + + + :param geo_area: The geo_area of this AefLocation. + :type geo_area: GeographicArea + """ + + self._geo_area = geo_area + + @property + def dc_id(self) -> str: + """Gets the dc_id of this AefLocation. + + Identifies the data center where the AEF providing the service API is located. # noqa: E501 + + :return: The dc_id of this AefLocation. + :rtype: str + """ + return self._dc_id + + @dc_id.setter + def dc_id(self, dc_id: str): + """Sets the dc_id of this AefLocation. + + Identifies the data center where the AEF providing the service API is located. # noqa: E501 + + :param dc_id: The dc_id of this AefLocation. + :type dc_id: str + """ + + self._dc_id = dc_id diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/aef_profile.py b/services/TS29222_CAPIF_Events_API/capif_events/models/aef_profile.py index ea2ce8b..331a711 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/aef_profile.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/aef_profile.py @@ -1,22 +1,25 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model +from capif_events.models.aef_location import AefLocation from capif_events.models.data_format import DataFormat from capif_events.models.interface_description import InterfaceDescription +from capif_events.models.ip_addr_range import IpAddrRange from capif_events.models.protocol import Protocol from capif_events.models.security_method import SecurityMethod +from capif_events.models.service_kpis import ServiceKpis from capif_events.models.version import Version from capif_events import util +from capif_events.models.aef_location import AefLocation # noqa: E501 from capif_events.models.data_format import DataFormat # noqa: E501 from capif_events.models.interface_description import InterfaceDescription # noqa: E501 +from capif_events.models.ip_addr_range import IpAddrRange # noqa: E501 from capif_events.models.protocol import Protocol # noqa: E501 from capif_events.models.security_method import SecurityMethod # noqa: E501 +from capif_events.models.service_kpis import ServiceKpis # noqa: E501 from capif_events.models.version import Version # noqa: E501 class AefProfile(Model): @@ -25,7 +28,7 @@ class AefProfile(Model): Do not edit the class manually. """ - def __init__(self, aef_id=None, versions=None, protocol=None, data_format=None, security_methods=None, domain_name=None, interface_descriptions=None): # noqa: E501 + def __init__(self, aef_id=None, versions=None, protocol=None, data_format=None, security_methods=None, domain_name=None, interface_descriptions=None, aef_location=None, service_kpis=None, ue_ip_range=None): # noqa: E501 """AefProfile - a model defined in OpenAPI :param aef_id: The aef_id of this AefProfile. # noqa: E501 @@ -42,6 +45,12 @@ class AefProfile(Model): :type domain_name: str :param interface_descriptions: The interface_descriptions of this AefProfile. # noqa: E501 :type interface_descriptions: List[InterfaceDescription] + :param aef_location: The aef_location of this AefProfile. # noqa: E501 + :type aef_location: AefLocation + :param service_kpis: The service_kpis of this AefProfile. # noqa: E501 + :type service_kpis: ServiceKpis + :param ue_ip_range: The ue_ip_range of this AefProfile. # noqa: E501 + :type ue_ip_range: IpAddrRange """ self.openapi_types = { 'aef_id': str, @@ -50,7 +59,10 @@ class AefProfile(Model): 'data_format': DataFormat, 'security_methods': List[SecurityMethod], 'domain_name': str, - 'interface_descriptions': List[InterfaceDescription] + 'interface_descriptions': List[InterfaceDescription], + 'aef_location': AefLocation, + 'service_kpis': ServiceKpis, + 'ue_ip_range': IpAddrRange } self.attribute_map = { @@ -60,7 +72,10 @@ class AefProfile(Model): 'data_format': 'dataFormat', 'security_methods': 'securityMethods', 'domain_name': 'domainName', - 'interface_descriptions': 'interfaceDescriptions' + 'interface_descriptions': 'interfaceDescriptions', + 'aef_location': 'aefLocation', + 'service_kpis': 'serviceKpis', + 'ue_ip_range': 'ueIpRange' } self._aef_id = aef_id @@ -70,6 +85,9 @@ class AefProfile(Model): self._security_methods = security_methods self._domain_name = domain_name self._interface_descriptions = interface_descriptions + self._aef_location = aef_location + self._service_kpis = service_kpis + self._ue_ip_range = ue_ip_range @classmethod def from_dict(cls, dikt) -> 'AefProfile': @@ -83,7 +101,7 @@ class AefProfile(Model): return util.deserialize_model(dikt, cls) @property - def aef_id(self): + def aef_id(self) -> str: """Gets the aef_id of this AefProfile. Identifier of the API exposing function # noqa: E501 @@ -94,7 +112,7 @@ class AefProfile(Model): return self._aef_id @aef_id.setter - def aef_id(self, aef_id): + def aef_id(self, aef_id: str): """Sets the aef_id of this AefProfile. Identifier of the API exposing function # noqa: E501 @@ -108,7 +126,7 @@ class AefProfile(Model): self._aef_id = aef_id @property - def versions(self): + def versions(self) -> List[Version]: """Gets the versions of this AefProfile. API version # noqa: E501 @@ -119,7 +137,7 @@ class AefProfile(Model): return self._versions @versions.setter - def versions(self, versions): + def versions(self, versions: List[Version]): """Sets the versions of this AefProfile. API version # noqa: E501 @@ -135,7 +153,7 @@ class AefProfile(Model): self._versions = versions @property - def protocol(self): + def protocol(self) -> Protocol: """Gets the protocol of this AefProfile. @@ -145,7 +163,7 @@ class AefProfile(Model): return self._protocol @protocol.setter - def protocol(self, protocol): + def protocol(self, protocol: Protocol): """Sets the protocol of this AefProfile. @@ -156,7 +174,7 @@ class AefProfile(Model): self._protocol = protocol @property - def data_format(self): + def data_format(self) -> DataFormat: """Gets the data_format of this AefProfile. @@ -166,7 +184,7 @@ class AefProfile(Model): return self._data_format @data_format.setter - def data_format(self, data_format): + def data_format(self, data_format: DataFormat): """Sets the data_format of this AefProfile. @@ -177,7 +195,7 @@ class AefProfile(Model): self._data_format = data_format @property - def security_methods(self): + def security_methods(self) -> List[SecurityMethod]: """Gets the security_methods of this AefProfile. Security methods supported by the AEF # noqa: E501 @@ -188,7 +206,7 @@ class AefProfile(Model): return self._security_methods @security_methods.setter - def security_methods(self, security_methods): + def security_methods(self, security_methods: List[SecurityMethod]): """Sets the security_methods of this AefProfile. Security methods supported by the AEF # noqa: E501 @@ -202,7 +220,7 @@ class AefProfile(Model): self._security_methods = security_methods @property - def domain_name(self): + def domain_name(self) -> str: """Gets the domain_name of this AefProfile. Domain to which API belongs to # noqa: E501 @@ -213,7 +231,7 @@ class AefProfile(Model): return self._domain_name @domain_name.setter - def domain_name(self, domain_name): + def domain_name(self, domain_name: str): """Sets the domain_name of this AefProfile. Domain to which API belongs to # noqa: E501 @@ -225,7 +243,7 @@ class AefProfile(Model): self._domain_name = domain_name @property - def interface_descriptions(self): + def interface_descriptions(self) -> List[InterfaceDescription]: """Gets the interface_descriptions of this AefProfile. Interface details # noqa: E501 @@ -236,7 +254,7 @@ class AefProfile(Model): return self._interface_descriptions @interface_descriptions.setter - def interface_descriptions(self, interface_descriptions): + def interface_descriptions(self, interface_descriptions: List[InterfaceDescription]): """Sets the interface_descriptions of this AefProfile. Interface details # noqa: E501 @@ -248,3 +266,66 @@ class AefProfile(Model): raise ValueError("Invalid value for `interface_descriptions`, number of items must be greater than or equal to `1`") # noqa: E501 self._interface_descriptions = interface_descriptions + + @property + def aef_location(self) -> AefLocation: + """Gets the aef_location of this AefProfile. + + + :return: The aef_location of this AefProfile. + :rtype: AefLocation + """ + return self._aef_location + + @aef_location.setter + def aef_location(self, aef_location: AefLocation): + """Sets the aef_location of this AefProfile. + + + :param aef_location: The aef_location of this AefProfile. + :type aef_location: AefLocation + """ + + self._aef_location = aef_location + + @property + def service_kpis(self) -> ServiceKpis: + """Gets the service_kpis of this AefProfile. + + + :return: The service_kpis of this AefProfile. + :rtype: ServiceKpis + """ + return self._service_kpis + + @service_kpis.setter + def service_kpis(self, service_kpis: ServiceKpis): + """Sets the service_kpis of this AefProfile. + + + :param service_kpis: The service_kpis of this AefProfile. + :type service_kpis: ServiceKpis + """ + + self._service_kpis = service_kpis + + @property + def ue_ip_range(self) -> IpAddrRange: + """Gets the ue_ip_range of this AefProfile. + + + :return: The ue_ip_range of this AefProfile. + :rtype: IpAddrRange + """ + return self._ue_ip_range + + @ue_ip_range.setter + def ue_ip_range(self, ue_ip_range: IpAddrRange): + """Sets the ue_ip_range of this AefProfile. + + + :param ue_ip_range: The ue_ip_range of this AefProfile. + :type ue_ip_range: IpAddrRange + """ + + self._ue_ip_range = ue_ip_range diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/api_invoker_policy.py b/services/TS29222_CAPIF_Events_API/capif_events/models/api_invoker_policy.py index dbc1d98..4d2075b 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/api_invoker_policy.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/api_invoker_policy.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.time_range_list import TimeRangeList from capif_events import util @@ -60,7 +57,7 @@ class ApiInvokerPolicy(Model): return util.deserialize_model(dikt, cls) @property - def api_invoker_id(self): + def api_invoker_id(self) -> str: """Gets the api_invoker_id of this ApiInvokerPolicy. API invoker ID assigned by the CAPIF core function # noqa: E501 @@ -71,7 +68,7 @@ class ApiInvokerPolicy(Model): return self._api_invoker_id @api_invoker_id.setter - def api_invoker_id(self, api_invoker_id): + def api_invoker_id(self, api_invoker_id: str): """Sets the api_invoker_id of this ApiInvokerPolicy. API invoker ID assigned by the CAPIF core function # noqa: E501 @@ -85,7 +82,7 @@ class ApiInvokerPolicy(Model): self._api_invoker_id = api_invoker_id @property - def allowed_total_invocations(self): + def allowed_total_invocations(self) -> int: """Gets the allowed_total_invocations of this ApiInvokerPolicy. Total number of invocations allowed on the service API by the API invoker. # noqa: E501 @@ -96,7 +93,7 @@ class ApiInvokerPolicy(Model): return self._allowed_total_invocations @allowed_total_invocations.setter - def allowed_total_invocations(self, allowed_total_invocations): + def allowed_total_invocations(self, allowed_total_invocations: int): """Sets the allowed_total_invocations of this ApiInvokerPolicy. Total number of invocations allowed on the service API by the API invoker. # noqa: E501 @@ -108,7 +105,7 @@ class ApiInvokerPolicy(Model): self._allowed_total_invocations = allowed_total_invocations @property - def allowed_invocations_per_second(self): + def allowed_invocations_per_second(self) -> int: """Gets the allowed_invocations_per_second of this ApiInvokerPolicy. Invocations per second allowed on the service API by the API invoker. # noqa: E501 @@ -119,7 +116,7 @@ class ApiInvokerPolicy(Model): return self._allowed_invocations_per_second @allowed_invocations_per_second.setter - def allowed_invocations_per_second(self, allowed_invocations_per_second): + def allowed_invocations_per_second(self, allowed_invocations_per_second: int): """Sets the allowed_invocations_per_second of this ApiInvokerPolicy. Invocations per second allowed on the service API by the API invoker. # noqa: E501 @@ -131,10 +128,10 @@ class ApiInvokerPolicy(Model): self._allowed_invocations_per_second = allowed_invocations_per_second @property - def allowed_invocation_time_range_list(self): + def allowed_invocation_time_range_list(self) -> List[TimeRangeList]: """Gets the allowed_invocation_time_range_list of this ApiInvokerPolicy. - The time ranges during which the invocations are allowed on the service API by the API invoker. # noqa: E501 + The time ranges during which the invocations are allowed on the service API by the API invoker. # noqa: E501 :return: The allowed_invocation_time_range_list of this ApiInvokerPolicy. :rtype: List[TimeRangeList] @@ -142,10 +139,10 @@ class ApiInvokerPolicy(Model): return self._allowed_invocation_time_range_list @allowed_invocation_time_range_list.setter - def allowed_invocation_time_range_list(self, allowed_invocation_time_range_list): + def allowed_invocation_time_range_list(self, allowed_invocation_time_range_list: List[TimeRangeList]): """Sets the allowed_invocation_time_range_list of this ApiInvokerPolicy. - The time ranges during which the invocations are allowed on the service API by the API invoker. # noqa: E501 + The time ranges during which the invocations are allowed on the service API by the API invoker. # noqa: E501 :param allowed_invocation_time_range_list: The allowed_invocation_time_range_list of this ApiInvokerPolicy. :type allowed_invocation_time_range_list: List[TimeRangeList] diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/api_status.py b/services/TS29222_CAPIF_Events_API/capif_events/models/api_status.py new file mode 100644 index 0000000..3ea72ce --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/api_status.py @@ -0,0 +1,65 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class ApiStatus(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, aef_ids=None): # noqa: E501 + """ApiStatus - a model defined in OpenAPI + + :param aef_ids: The aef_ids of this ApiStatus. # noqa: E501 + :type aef_ids: List[str] + """ + self.openapi_types = { + 'aef_ids': List[str] + } + + self.attribute_map = { + 'aef_ids': 'aefIds' + } + + self._aef_ids = aef_ids + + @classmethod + def from_dict(cls, dikt) -> 'ApiStatus': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The ApiStatus of this ApiStatus. # noqa: E501 + :rtype: ApiStatus + """ + return util.deserialize_model(dikt, cls) + + @property + def aef_ids(self) -> List[str]: + """Gets the aef_ids of this ApiStatus. + + Indicates the list of AEF ID(s) where the API is active. If this attribute is omitted, the API is inactive at all AEF(s) defined in the \"aefProfiles\" attribute within the ServiceAPIDescription data structure. # noqa: E501 + + :return: The aef_ids of this ApiStatus. + :rtype: List[str] + """ + return self._aef_ids + + @aef_ids.setter + def aef_ids(self, aef_ids: List[str]): + """Sets the aef_ids of this ApiStatus. + + Indicates the list of AEF ID(s) where the API is active. If this attribute is omitted, the API is inactive at all AEF(s) defined in the \"aefProfiles\" attribute within the ServiceAPIDescription data structure. # noqa: E501 + + :param aef_ids: The aef_ids of this ApiStatus. + :type aef_ids: List[str] + """ + if aef_ids is None: + raise ValueError("Invalid value for `aef_ids`, must not be `None`") # noqa: E501 + + self._aef_ids = aef_ids diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/base_model_.py b/services/TS29222_CAPIF_Events_API/capif_events/models/base_model.py similarity index 92% rename from services/TS29222_CAPIF_Events_API/capif_events/models/base_model_.py rename to services/TS29222_CAPIF_Events_API/capif_events/models/base_model.py index c71e9d0..4179726 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/base_model_.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/base_model.py @@ -1,6 +1,5 @@ import pprint -import six import typing from capif_events import util @@ -8,14 +7,14 @@ from capif_events import util T = typing.TypeVar('T') -class Model(object): +class Model: # openapiTypes: The key is attribute name and the # value is attribute type. - openapi_types = {} + openapi_types: typing.Dict[str, type] = {} # attributeMap: The key is attribute name and the # value is json key in definition. - attribute_map = {} + attribute_map: typing.Dict[str, str] = {} @classmethod def from_dict(cls: typing.Type[T], dikt) -> T: @@ -29,7 +28,7 @@ class Model(object): """ result = {} - for attr, _ in six.iteritems(self.openapi_types): + for attr in self.openapi_types: value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map( diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/protocol_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/buffered_notifications_action.py similarity index 57% rename from services/TS29222_CAPIF_Events_API/capif_events/models/protocol_any_of.py rename to services/TS29222_CAPIF_Events_API/capif_events/models/buffered_notifications_action.py index fe2fe7c..eca6547 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/protocol_any_of.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/buffered_notifications_action.py @@ -1,27 +1,19 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util -class ProtocolAnyOf(Model): +class BufferedNotificationsAction(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ - """ - allowed enum values - """ - _1_1 = "HTTP_1_1" - _2 = "HTTP_2" def __init__(self): # noqa: E501 - """ProtocolAnyOf - a model defined in OpenAPI + """BufferedNotificationsAction - a model defined in OpenAPI """ self.openapi_types = { @@ -31,12 +23,12 @@ class ProtocolAnyOf(Model): } @classmethod - def from_dict(cls, dikt) -> 'ProtocolAnyOf': + def from_dict(cls, dikt) -> 'BufferedNotificationsAction': """Returns the dict as a model :param dikt: A dict. :type: dict - :return: The Protocol_anyOf of this ProtocolAnyOf. # noqa: E501 - :rtype: ProtocolAnyOf + :return: The BufferedNotificationsAction of this BufferedNotificationsAction. # noqa: E501 + :rtype: BufferedNotificationsAction """ return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event.py b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event.py index 86648b4..fa3a982 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.capif_event_any_of import CAPIFEventAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.capif_event_any_of import CAPIFEventAnyOf # noqa: E501 class CAPIFEvent(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_any_of.py deleted file mode 100644 index 3b2f4d7..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_any_of.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class CAPIFEventAnyOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - """ - allowed enum values - """ - SERVICE_API_AVAILABLE = "SERVICE_API_AVAILABLE" - SERVICE_API_UNAVAILABLE = "SERVICE_API_UNAVAILABLE" - SERVICE_API_UPDATE = "SERVICE_API_UPDATE" - API_INVOKER_ONBOARDED = "API_INVOKER_ONBOARDED" - API_INVOKER_OFFBOARDED = "API_INVOKER_OFFBOARDED" - SERVICE_API_INVOCATION_SUCCESS = "SERVICE_API_INVOCATION_SUCCESS" - SERVICE_API_INVOCATION_FAILURE = "SERVICE_API_INVOCATION_FAILURE" - ACCESS_CONTROL_POLICY_UPDATE = "ACCESS_CONTROL_POLICY_UPDATE" - ACCESS_CONTROL_POLICY_UNAVAILABLE = "ACCESS_CONTROL_POLICY_UNAVAILABLE" - API_INVOKER_AUTHORIZATION_REVOKED = "API_INVOKER_AUTHORIZATION_REVOKED" - API_INVOKER_UPDATED = "API_INVOKER_UPDATED" - API_TOPOLOGY_HIDING_CREATED = "API_TOPOLOGY_HIDING_CREATED" - API_TOPOLOGY_HIDING_REVOKED = "API_TOPOLOGY_HIDING_REVOKED" - def __init__(self): # noqa: E501 - """CAPIFEventAnyOf - a model defined in OpenAPI - - """ - self.openapi_types = { - } - - self.attribute_map = { - } - - @classmethod - def from_dict(cls, dikt) -> 'CAPIFEventAnyOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The CAPIFEvent_anyOf of this CAPIFEventAnyOf. # noqa: E501 - :rtype: CAPIFEventAnyOf - """ - return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_detail.py b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_detail.py index f9c21eb..c15ad4c 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_detail.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_detail.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.access_control_policy_list_ext import AccessControlPolicyListExt from capif_events.models.invocation_log import InvocationLog from capif_events.models.service_api_description import ServiceAPIDescription @@ -76,7 +73,7 @@ class CAPIFEventDetail(Model): return util.deserialize_model(dikt, cls) @property - def service_api_descriptions(self): + def service_api_descriptions(self) -> List[ServiceAPIDescription]: """Gets the service_api_descriptions of this CAPIFEventDetail. Description of the service API as published by the APF. # noqa: E501 @@ -87,7 +84,7 @@ class CAPIFEventDetail(Model): return self._service_api_descriptions @service_api_descriptions.setter - def service_api_descriptions(self, service_api_descriptions): + def service_api_descriptions(self, service_api_descriptions: List[ServiceAPIDescription]): """Sets the service_api_descriptions of this CAPIFEventDetail. Description of the service API as published by the APF. # noqa: E501 @@ -101,7 +98,7 @@ class CAPIFEventDetail(Model): self._service_api_descriptions = service_api_descriptions @property - def api_ids(self): + def api_ids(self) -> List[str]: """Gets the api_ids of this CAPIFEventDetail. Identifier of the service API # noqa: E501 @@ -112,7 +109,7 @@ class CAPIFEventDetail(Model): return self._api_ids @api_ids.setter - def api_ids(self, api_ids): + def api_ids(self, api_ids: List[str]): """Sets the api_ids of this CAPIFEventDetail. Identifier of the service API # noqa: E501 @@ -126,7 +123,7 @@ class CAPIFEventDetail(Model): self._api_ids = api_ids @property - def api_invoker_ids(self): + def api_invoker_ids(self) -> List[str]: """Gets the api_invoker_ids of this CAPIFEventDetail. Identity of the API invoker # noqa: E501 @@ -137,7 +134,7 @@ class CAPIFEventDetail(Model): return self._api_invoker_ids @api_invoker_ids.setter - def api_invoker_ids(self, api_invoker_ids): + def api_invoker_ids(self, api_invoker_ids: List[str]): """Sets the api_invoker_ids of this CAPIFEventDetail. Identity of the API invoker # noqa: E501 @@ -151,7 +148,7 @@ class CAPIFEventDetail(Model): self._api_invoker_ids = api_invoker_ids @property - def acc_ctrl_pol_list(self): + def acc_ctrl_pol_list(self) -> AccessControlPolicyListExt: """Gets the acc_ctrl_pol_list of this CAPIFEventDetail. @@ -161,7 +158,7 @@ class CAPIFEventDetail(Model): return self._acc_ctrl_pol_list @acc_ctrl_pol_list.setter - def acc_ctrl_pol_list(self, acc_ctrl_pol_list): + def acc_ctrl_pol_list(self, acc_ctrl_pol_list: AccessControlPolicyListExt): """Sets the acc_ctrl_pol_list of this CAPIFEventDetail. @@ -172,7 +169,7 @@ class CAPIFEventDetail(Model): self._acc_ctrl_pol_list = acc_ctrl_pol_list @property - def invocation_logs(self): + def invocation_logs(self) -> List[InvocationLog]: """Gets the invocation_logs of this CAPIFEventDetail. Invocation logs. # noqa: E501 @@ -183,7 +180,7 @@ class CAPIFEventDetail(Model): return self._invocation_logs @invocation_logs.setter - def invocation_logs(self, invocation_logs): + def invocation_logs(self, invocation_logs: List[InvocationLog]): """Sets the invocation_logs of this CAPIFEventDetail. Invocation logs. # noqa: E501 @@ -197,7 +194,7 @@ class CAPIFEventDetail(Model): self._invocation_logs = invocation_logs @property - def api_topo_hide(self): + def api_topo_hide(self) -> TopologyHiding: """Gets the api_topo_hide of this CAPIFEventDetail. @@ -207,7 +204,7 @@ class CAPIFEventDetail(Model): return self._api_topo_hide @api_topo_hide.setter - def api_topo_hide(self, api_topo_hide): + def api_topo_hide(self, api_topo_hide: TopologyHiding): """Sets the api_topo_hide of this CAPIFEventDetail. diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_filter.py b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_filter.py index 19aa9e5..e9c1638 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_filter.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/capif_event_filter.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -53,7 +50,7 @@ class CAPIFEventFilter(Model): return util.deserialize_model(dikt, cls) @property - def api_ids(self): + def api_ids(self) -> List[str]: """Gets the api_ids of this CAPIFEventFilter. Identifier of the service API # noqa: E501 @@ -64,7 +61,7 @@ class CAPIFEventFilter(Model): return self._api_ids @api_ids.setter - def api_ids(self, api_ids): + def api_ids(self, api_ids: List[str]): """Sets the api_ids of this CAPIFEventFilter. Identifier of the service API # noqa: E501 @@ -78,7 +75,7 @@ class CAPIFEventFilter(Model): self._api_ids = api_ids @property - def api_invoker_ids(self): + def api_invoker_ids(self) -> List[str]: """Gets the api_invoker_ids of this CAPIFEventFilter. Identity of the API invoker # noqa: E501 @@ -89,7 +86,7 @@ class CAPIFEventFilter(Model): return self._api_invoker_ids @api_invoker_ids.setter - def api_invoker_ids(self, api_invoker_ids): + def api_invoker_ids(self, api_invoker_ids: List[str]): """Sets the api_invoker_ids of this CAPIFEventFilter. Identity of the API invoker # noqa: E501 @@ -103,7 +100,7 @@ class CAPIFEventFilter(Model): self._api_invoker_ids = api_invoker_ids @property - def aef_ids(self): + def aef_ids(self) -> List[str]: """Gets the aef_ids of this CAPIFEventFilter. Identifier of the API exposing function # noqa: E501 @@ -114,7 +111,7 @@ class CAPIFEventFilter(Model): return self._aef_ids @aef_ids.setter - def aef_ids(self, aef_ids): + def aef_ids(self, aef_ids: List[str]): """Sets the aef_ids of this CAPIFEventFilter. Identifier of the API exposing function # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/civic_address.py b/services/TS29222_CAPIF_Events_API/capif_events/models/civic_address.py new file mode 100644 index 0000000..5819d5f --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/civic_address.py @@ -0,0 +1,919 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class CivicAddress(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, country=None, a1=None, a2=None, a3=None, a4=None, a5=None, a6=None, prd=None, pod=None, sts=None, hno=None, hns=None, lmk=None, loc=None, nam=None, pc=None, bld=None, unit=None, flr=None, room=None, plc=None, pcn=None, pobox=None, addcode=None, seat=None, rd=None, rdsec=None, rdbr=None, rdsubbr=None, prm=None, pom=None, usage_rules=None, method=None, provided_by=None): # noqa: E501 + """CivicAddress - a model defined in OpenAPI + + :param country: The country of this CivicAddress. # noqa: E501 + :type country: str + :param a1: The a1 of this CivicAddress. # noqa: E501 + :type a1: str + :param a2: The a2 of this CivicAddress. # noqa: E501 + :type a2: str + :param a3: The a3 of this CivicAddress. # noqa: E501 + :type a3: str + :param a4: The a4 of this CivicAddress. # noqa: E501 + :type a4: str + :param a5: The a5 of this CivicAddress. # noqa: E501 + :type a5: str + :param a6: The a6 of this CivicAddress. # noqa: E501 + :type a6: str + :param prd: The prd of this CivicAddress. # noqa: E501 + :type prd: str + :param pod: The pod of this CivicAddress. # noqa: E501 + :type pod: str + :param sts: The sts of this CivicAddress. # noqa: E501 + :type sts: str + :param hno: The hno of this CivicAddress. # noqa: E501 + :type hno: str + :param hns: The hns of this CivicAddress. # noqa: E501 + :type hns: str + :param lmk: The lmk of this CivicAddress. # noqa: E501 + :type lmk: str + :param loc: The loc of this CivicAddress. # noqa: E501 + :type loc: str + :param nam: The nam of this CivicAddress. # noqa: E501 + :type nam: str + :param pc: The pc of this CivicAddress. # noqa: E501 + :type pc: str + :param bld: The bld of this CivicAddress. # noqa: E501 + :type bld: str + :param unit: The unit of this CivicAddress. # noqa: E501 + :type unit: str + :param flr: The flr of this CivicAddress. # noqa: E501 + :type flr: str + :param room: The room of this CivicAddress. # noqa: E501 + :type room: str + :param plc: The plc of this CivicAddress. # noqa: E501 + :type plc: str + :param pcn: The pcn of this CivicAddress. # noqa: E501 + :type pcn: str + :param pobox: The pobox of this CivicAddress. # noqa: E501 + :type pobox: str + :param addcode: The addcode of this CivicAddress. # noqa: E501 + :type addcode: str + :param seat: The seat of this CivicAddress. # noqa: E501 + :type seat: str + :param rd: The rd of this CivicAddress. # noqa: E501 + :type rd: str + :param rdsec: The rdsec of this CivicAddress. # noqa: E501 + :type rdsec: str + :param rdbr: The rdbr of this CivicAddress. # noqa: E501 + :type rdbr: str + :param rdsubbr: The rdsubbr of this CivicAddress. # noqa: E501 + :type rdsubbr: str + :param prm: The prm of this CivicAddress. # noqa: E501 + :type prm: str + :param pom: The pom of this CivicAddress. # noqa: E501 + :type pom: str + :param usage_rules: The usage_rules of this CivicAddress. # noqa: E501 + :type usage_rules: str + :param method: The method of this CivicAddress. # noqa: E501 + :type method: str + :param provided_by: The provided_by of this CivicAddress. # noqa: E501 + :type provided_by: str + """ + self.openapi_types = { + 'country': str, + 'a1': str, + 'a2': str, + 'a3': str, + 'a4': str, + 'a5': str, + 'a6': str, + 'prd': str, + 'pod': str, + 'sts': str, + 'hno': str, + 'hns': str, + 'lmk': str, + 'loc': str, + 'nam': str, + 'pc': str, + 'bld': str, + 'unit': str, + 'flr': str, + 'room': str, + 'plc': str, + 'pcn': str, + 'pobox': str, + 'addcode': str, + 'seat': str, + 'rd': str, + 'rdsec': str, + 'rdbr': str, + 'rdsubbr': str, + 'prm': str, + 'pom': str, + 'usage_rules': str, + 'method': str, + 'provided_by': str + } + + self.attribute_map = { + 'country': 'country', + 'a1': 'A1', + 'a2': 'A2', + 'a3': 'A3', + 'a4': 'A4', + 'a5': 'A5', + 'a6': 'A6', + 'prd': 'PRD', + 'pod': 'POD', + 'sts': 'STS', + 'hno': 'HNO', + 'hns': 'HNS', + 'lmk': 'LMK', + 'loc': 'LOC', + 'nam': 'NAM', + 'pc': 'PC', + 'bld': 'BLD', + 'unit': 'UNIT', + 'flr': 'FLR', + 'room': 'ROOM', + 'plc': 'PLC', + 'pcn': 'PCN', + 'pobox': 'POBOX', + 'addcode': 'ADDCODE', + 'seat': 'SEAT', + 'rd': 'RD', + 'rdsec': 'RDSEC', + 'rdbr': 'RDBR', + 'rdsubbr': 'RDSUBBR', + 'prm': 'PRM', + 'pom': 'POM', + 'usage_rules': 'usageRules', + 'method': 'method', + 'provided_by': 'providedBy' + } + + self._country = country + self._a1 = a1 + self._a2 = a2 + self._a3 = a3 + self._a4 = a4 + self._a5 = a5 + self._a6 = a6 + self._prd = prd + self._pod = pod + self._sts = sts + self._hno = hno + self._hns = hns + self._lmk = lmk + self._loc = loc + self._nam = nam + self._pc = pc + self._bld = bld + self._unit = unit + self._flr = flr + self._room = room + self._plc = plc + self._pcn = pcn + self._pobox = pobox + self._addcode = addcode + self._seat = seat + self._rd = rd + self._rdsec = rdsec + self._rdbr = rdbr + self._rdsubbr = rdsubbr + self._prm = prm + self._pom = pom + self._usage_rules = usage_rules + self._method = method + self._provided_by = provided_by + + @classmethod + def from_dict(cls, dikt) -> 'CivicAddress': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The CivicAddress of this CivicAddress. # noqa: E501 + :rtype: CivicAddress + """ + return util.deserialize_model(dikt, cls) + + @property + def country(self) -> str: + """Gets the country of this CivicAddress. + + + :return: The country of this CivicAddress. + :rtype: str + """ + return self._country + + @country.setter + def country(self, country: str): + """Sets the country of this CivicAddress. + + + :param country: The country of this CivicAddress. + :type country: str + """ + + self._country = country + + @property + def a1(self) -> str: + """Gets the a1 of this CivicAddress. + + + :return: The a1 of this CivicAddress. + :rtype: str + """ + return self._a1 + + @a1.setter + def a1(self, a1: str): + """Sets the a1 of this CivicAddress. + + + :param a1: The a1 of this CivicAddress. + :type a1: str + """ + + self._a1 = a1 + + @property + def a2(self) -> str: + """Gets the a2 of this CivicAddress. + + + :return: The a2 of this CivicAddress. + :rtype: str + """ + return self._a2 + + @a2.setter + def a2(self, a2: str): + """Sets the a2 of this CivicAddress. + + + :param a2: The a2 of this CivicAddress. + :type a2: str + """ + + self._a2 = a2 + + @property + def a3(self) -> str: + """Gets the a3 of this CivicAddress. + + + :return: The a3 of this CivicAddress. + :rtype: str + """ + return self._a3 + + @a3.setter + def a3(self, a3: str): + """Sets the a3 of this CivicAddress. + + + :param a3: The a3 of this CivicAddress. + :type a3: str + """ + + self._a3 = a3 + + @property + def a4(self) -> str: + """Gets the a4 of this CivicAddress. + + + :return: The a4 of this CivicAddress. + :rtype: str + """ + return self._a4 + + @a4.setter + def a4(self, a4: str): + """Sets the a4 of this CivicAddress. + + + :param a4: The a4 of this CivicAddress. + :type a4: str + """ + + self._a4 = a4 + + @property + def a5(self) -> str: + """Gets the a5 of this CivicAddress. + + + :return: The a5 of this CivicAddress. + :rtype: str + """ + return self._a5 + + @a5.setter + def a5(self, a5: str): + """Sets the a5 of this CivicAddress. + + + :param a5: The a5 of this CivicAddress. + :type a5: str + """ + + self._a5 = a5 + + @property + def a6(self) -> str: + """Gets the a6 of this CivicAddress. + + + :return: The a6 of this CivicAddress. + :rtype: str + """ + return self._a6 + + @a6.setter + def a6(self, a6: str): + """Sets the a6 of this CivicAddress. + + + :param a6: The a6 of this CivicAddress. + :type a6: str + """ + + self._a6 = a6 + + @property + def prd(self) -> str: + """Gets the prd of this CivicAddress. + + + :return: The prd of this CivicAddress. + :rtype: str + """ + return self._prd + + @prd.setter + def prd(self, prd: str): + """Sets the prd of this CivicAddress. + + + :param prd: The prd of this CivicAddress. + :type prd: str + """ + + self._prd = prd + + @property + def pod(self) -> str: + """Gets the pod of this CivicAddress. + + + :return: The pod of this CivicAddress. + :rtype: str + """ + return self._pod + + @pod.setter + def pod(self, pod: str): + """Sets the pod of this CivicAddress. + + + :param pod: The pod of this CivicAddress. + :type pod: str + """ + + self._pod = pod + + @property + def sts(self) -> str: + """Gets the sts of this CivicAddress. + + + :return: The sts of this CivicAddress. + :rtype: str + """ + return self._sts + + @sts.setter + def sts(self, sts: str): + """Sets the sts of this CivicAddress. + + + :param sts: The sts of this CivicAddress. + :type sts: str + """ + + self._sts = sts + + @property + def hno(self) -> str: + """Gets the hno of this CivicAddress. + + + :return: The hno of this CivicAddress. + :rtype: str + """ + return self._hno + + @hno.setter + def hno(self, hno: str): + """Sets the hno of this CivicAddress. + + + :param hno: The hno of this CivicAddress. + :type hno: str + """ + + self._hno = hno + + @property + def hns(self) -> str: + """Gets the hns of this CivicAddress. + + + :return: The hns of this CivicAddress. + :rtype: str + """ + return self._hns + + @hns.setter + def hns(self, hns: str): + """Sets the hns of this CivicAddress. + + + :param hns: The hns of this CivicAddress. + :type hns: str + """ + + self._hns = hns + + @property + def lmk(self) -> str: + """Gets the lmk of this CivicAddress. + + + :return: The lmk of this CivicAddress. + :rtype: str + """ + return self._lmk + + @lmk.setter + def lmk(self, lmk: str): + """Sets the lmk of this CivicAddress. + + + :param lmk: The lmk of this CivicAddress. + :type lmk: str + """ + + self._lmk = lmk + + @property + def loc(self) -> str: + """Gets the loc of this CivicAddress. + + + :return: The loc of this CivicAddress. + :rtype: str + """ + return self._loc + + @loc.setter + def loc(self, loc: str): + """Sets the loc of this CivicAddress. + + + :param loc: The loc of this CivicAddress. + :type loc: str + """ + + self._loc = loc + + @property + def nam(self) -> str: + """Gets the nam of this CivicAddress. + + + :return: The nam of this CivicAddress. + :rtype: str + """ + return self._nam + + @nam.setter + def nam(self, nam: str): + """Sets the nam of this CivicAddress. + + + :param nam: The nam of this CivicAddress. + :type nam: str + """ + + self._nam = nam + + @property + def pc(self) -> str: + """Gets the pc of this CivicAddress. + + + :return: The pc of this CivicAddress. + :rtype: str + """ + return self._pc + + @pc.setter + def pc(self, pc: str): + """Sets the pc of this CivicAddress. + + + :param pc: The pc of this CivicAddress. + :type pc: str + """ + + self._pc = pc + + @property + def bld(self) -> str: + """Gets the bld of this CivicAddress. + + + :return: The bld of this CivicAddress. + :rtype: str + """ + return self._bld + + @bld.setter + def bld(self, bld: str): + """Sets the bld of this CivicAddress. + + + :param bld: The bld of this CivicAddress. + :type bld: str + """ + + self._bld = bld + + @property + def unit(self) -> str: + """Gets the unit of this CivicAddress. + + + :return: The unit of this CivicAddress. + :rtype: str + """ + return self._unit + + @unit.setter + def unit(self, unit: str): + """Sets the unit of this CivicAddress. + + + :param unit: The unit of this CivicAddress. + :type unit: str + """ + + self._unit = unit + + @property + def flr(self) -> str: + """Gets the flr of this CivicAddress. + + + :return: The flr of this CivicAddress. + :rtype: str + """ + return self._flr + + @flr.setter + def flr(self, flr: str): + """Sets the flr of this CivicAddress. + + + :param flr: The flr of this CivicAddress. + :type flr: str + """ + + self._flr = flr + + @property + def room(self) -> str: + """Gets the room of this CivicAddress. + + + :return: The room of this CivicAddress. + :rtype: str + """ + return self._room + + @room.setter + def room(self, room: str): + """Sets the room of this CivicAddress. + + + :param room: The room of this CivicAddress. + :type room: str + """ + + self._room = room + + @property + def plc(self) -> str: + """Gets the plc of this CivicAddress. + + + :return: The plc of this CivicAddress. + :rtype: str + """ + return self._plc + + @plc.setter + def plc(self, plc: str): + """Sets the plc of this CivicAddress. + + + :param plc: The plc of this CivicAddress. + :type plc: str + """ + + self._plc = plc + + @property + def pcn(self) -> str: + """Gets the pcn of this CivicAddress. + + + :return: The pcn of this CivicAddress. + :rtype: str + """ + return self._pcn + + @pcn.setter + def pcn(self, pcn: str): + """Sets the pcn of this CivicAddress. + + + :param pcn: The pcn of this CivicAddress. + :type pcn: str + """ + + self._pcn = pcn + + @property + def pobox(self) -> str: + """Gets the pobox of this CivicAddress. + + + :return: The pobox of this CivicAddress. + :rtype: str + """ + return self._pobox + + @pobox.setter + def pobox(self, pobox: str): + """Sets the pobox of this CivicAddress. + + + :param pobox: The pobox of this CivicAddress. + :type pobox: str + """ + + self._pobox = pobox + + @property + def addcode(self) -> str: + """Gets the addcode of this CivicAddress. + + + :return: The addcode of this CivicAddress. + :rtype: str + """ + return self._addcode + + @addcode.setter + def addcode(self, addcode: str): + """Sets the addcode of this CivicAddress. + + + :param addcode: The addcode of this CivicAddress. + :type addcode: str + """ + + self._addcode = addcode + + @property + def seat(self) -> str: + """Gets the seat of this CivicAddress. + + + :return: The seat of this CivicAddress. + :rtype: str + """ + return self._seat + + @seat.setter + def seat(self, seat: str): + """Sets the seat of this CivicAddress. + + + :param seat: The seat of this CivicAddress. + :type seat: str + """ + + self._seat = seat + + @property + def rd(self) -> str: + """Gets the rd of this CivicAddress. + + + :return: The rd of this CivicAddress. + :rtype: str + """ + return self._rd + + @rd.setter + def rd(self, rd: str): + """Sets the rd of this CivicAddress. + + + :param rd: The rd of this CivicAddress. + :type rd: str + """ + + self._rd = rd + + @property + def rdsec(self) -> str: + """Gets the rdsec of this CivicAddress. + + + :return: The rdsec of this CivicAddress. + :rtype: str + """ + return self._rdsec + + @rdsec.setter + def rdsec(self, rdsec: str): + """Sets the rdsec of this CivicAddress. + + + :param rdsec: The rdsec of this CivicAddress. + :type rdsec: str + """ + + self._rdsec = rdsec + + @property + def rdbr(self) -> str: + """Gets the rdbr of this CivicAddress. + + + :return: The rdbr of this CivicAddress. + :rtype: str + """ + return self._rdbr + + @rdbr.setter + def rdbr(self, rdbr: str): + """Sets the rdbr of this CivicAddress. + + + :param rdbr: The rdbr of this CivicAddress. + :type rdbr: str + """ + + self._rdbr = rdbr + + @property + def rdsubbr(self) -> str: + """Gets the rdsubbr of this CivicAddress. + + + :return: The rdsubbr of this CivicAddress. + :rtype: str + """ + return self._rdsubbr + + @rdsubbr.setter + def rdsubbr(self, rdsubbr: str): + """Sets the rdsubbr of this CivicAddress. + + + :param rdsubbr: The rdsubbr of this CivicAddress. + :type rdsubbr: str + """ + + self._rdsubbr = rdsubbr + + @property + def prm(self) -> str: + """Gets the prm of this CivicAddress. + + + :return: The prm of this CivicAddress. + :rtype: str + """ + return self._prm + + @prm.setter + def prm(self, prm: str): + """Sets the prm of this CivicAddress. + + + :param prm: The prm of this CivicAddress. + :type prm: str + """ + + self._prm = prm + + @property + def pom(self) -> str: + """Gets the pom of this CivicAddress. + + + :return: The pom of this CivicAddress. + :rtype: str + """ + return self._pom + + @pom.setter + def pom(self, pom: str): + """Sets the pom of this CivicAddress. + + + :param pom: The pom of this CivicAddress. + :type pom: str + """ + + self._pom = pom + + @property + def usage_rules(self) -> str: + """Gets the usage_rules of this CivicAddress. + + + :return: The usage_rules of this CivicAddress. + :rtype: str + """ + return self._usage_rules + + @usage_rules.setter + def usage_rules(self, usage_rules: str): + """Sets the usage_rules of this CivicAddress. + + + :param usage_rules: The usage_rules of this CivicAddress. + :type usage_rules: str + """ + + self._usage_rules = usage_rules + + @property + def method(self) -> str: + """Gets the method of this CivicAddress. + + + :return: The method of this CivicAddress. + :rtype: str + """ + return self._method + + @method.setter + def method(self, method: str): + """Sets the method of this CivicAddress. + + + :param method: The method of this CivicAddress. + :type method: str + """ + + self._method = method + + @property + def provided_by(self) -> str: + """Gets the provided_by of this CivicAddress. + + + :return: The provided_by of this CivicAddress. + :rtype: str + """ + return self._provided_by + + @provided_by.setter + def provided_by(self, provided_by: str): + """Sets the provided_by of this CivicAddress. + + + :param provided_by: The provided_by of this CivicAddress. + :type provided_by: str + """ + + self._provided_by = provided_by diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type.py b/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type.py index 76054ff..e5203eb 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.communication_type_any_of import CommunicationTypeAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.communication_type_any_of import CommunicationTypeAnyOf # noqa: E501 class CommunicationType(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type_any_of.py deleted file mode 100644 index de71aea..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/communication_type_any_of.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class CommunicationTypeAnyOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - """ - allowed enum values - """ - REQUEST_RESPONSE = "REQUEST_RESPONSE" - SUBSCRIBE_NOTIFY = "SUBSCRIBE_NOTIFY" - def __init__(self): # noqa: E501 - """CommunicationTypeAnyOf - a model defined in OpenAPI - - """ - self.openapi_types = { - } - - self.attribute_map = { - } - - @classmethod - def from_dict(cls, dikt) -> 'CommunicationTypeAnyOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The CommunicationType_anyOf of this CommunicationTypeAnyOf. # noqa: E501 - :rtype: CommunicationTypeAnyOf - """ - return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/custom_operation.py b/services/TS29222_CAPIF_Events_API/capif_events/models/custom_operation.py index 190dae7..5676f21 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/custom_operation.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/custom_operation.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.communication_type import CommunicationType from capif_events.models.operation import Operation from capif_events import util @@ -62,7 +59,7 @@ class CustomOperation(Model): return util.deserialize_model(dikt, cls) @property - def comm_type(self): + def comm_type(self) -> CommunicationType: """Gets the comm_type of this CustomOperation. @@ -72,7 +69,7 @@ class CustomOperation(Model): return self._comm_type @comm_type.setter - def comm_type(self, comm_type): + def comm_type(self, comm_type: CommunicationType): """Sets the comm_type of this CustomOperation. @@ -85,10 +82,10 @@ class CustomOperation(Model): self._comm_type = comm_type @property - def cust_op_name(self): + def cust_op_name(self) -> str: """Gets the cust_op_name of this CustomOperation. - it is set as {custOpName} part of the URI structure for a custom operation without resource association as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + it is set as {custOpName} part of the URI structure for a custom operation without resource association as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :return: The cust_op_name of this CustomOperation. :rtype: str @@ -96,10 +93,10 @@ class CustomOperation(Model): return self._cust_op_name @cust_op_name.setter - def cust_op_name(self, cust_op_name): + def cust_op_name(self, cust_op_name: str): """Sets the cust_op_name of this CustomOperation. - it is set as {custOpName} part of the URI structure for a custom operation without resource association as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + it is set as {custOpName} part of the URI structure for a custom operation without resource association as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :param cust_op_name: The cust_op_name of this CustomOperation. :type cust_op_name: str @@ -110,10 +107,10 @@ class CustomOperation(Model): self._cust_op_name = cust_op_name @property - def operations(self): + def operations(self) -> List[Operation]: """Gets the operations of this CustomOperation. - Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 :return: The operations of this CustomOperation. :rtype: List[Operation] @@ -121,10 +118,10 @@ class CustomOperation(Model): return self._operations @operations.setter - def operations(self, operations): + def operations(self, operations: List[Operation]): """Sets the operations of this CustomOperation. - Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 :param operations: The operations of this CustomOperation. :type operations: List[Operation] @@ -135,7 +132,7 @@ class CustomOperation(Model): self._operations = operations @property - def description(self): + def description(self) -> str: """Gets the description of this CustomOperation. Text description of the custom operation # noqa: E501 @@ -146,7 +143,7 @@ class CustomOperation(Model): return self._description @description.setter - def description(self, description): + def description(self, description: str): """Sets the description of this CustomOperation. Text description of the custom operation # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/data_format.py b/services/TS29222_CAPIF_Events_API/capif_events/models/data_format.py index 61f13fe..adec690 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/data_format.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/data_format.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.data_format_any_of import DataFormatAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.data_format_any_of import DataFormatAnyOf # noqa: E501 class DataFormat(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ellipsoid_arc.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ellipsoid_arc.py new file mode 100644 index 0000000..b5be85b --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ellipsoid_arc.py @@ -0,0 +1,265 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class EllipsoidArc(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, inner_radius=None, uncertainty_radius=None, offset_angle=None, included_angle=None, confidence=None): # noqa: E501 + """EllipsoidArc - a model defined in OpenAPI + + :param shape: The shape of this EllipsoidArc. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this EllipsoidArc. # noqa: E501 + :type point: GeographicalCoordinates + :param inner_radius: The inner_radius of this EllipsoidArc. # noqa: E501 + :type inner_radius: int + :param uncertainty_radius: The uncertainty_radius of this EllipsoidArc. # noqa: E501 + :type uncertainty_radius: float + :param offset_angle: The offset_angle of this EllipsoidArc. # noqa: E501 + :type offset_angle: int + :param included_angle: The included_angle of this EllipsoidArc. # noqa: E501 + :type included_angle: int + :param confidence: The confidence of this EllipsoidArc. # noqa: E501 + :type confidence: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'inner_radius': int, + 'uncertainty_radius': float, + 'offset_angle': int, + 'included_angle': int, + 'confidence': int + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'inner_radius': 'innerRadius', + 'uncertainty_radius': 'uncertaintyRadius', + 'offset_angle': 'offsetAngle', + 'included_angle': 'includedAngle', + 'confidence': 'confidence' + } + + self._shape = shape + self._point = point + self._inner_radius = inner_radius + self._uncertainty_radius = uncertainty_radius + self._offset_angle = offset_angle + self._included_angle = included_angle + self._confidence = confidence + + @classmethod + def from_dict(cls, dikt) -> 'EllipsoidArc': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The EllipsoidArc of this EllipsoidArc. # noqa: E501 + :rtype: EllipsoidArc + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this EllipsoidArc. + + + :return: The shape of this EllipsoidArc. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this EllipsoidArc. + + + :param shape: The shape of this EllipsoidArc. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this EllipsoidArc. + + + :return: The point of this EllipsoidArc. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this EllipsoidArc. + + + :param point: The point of this EllipsoidArc. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def inner_radius(self) -> int: + """Gets the inner_radius of this EllipsoidArc. + + Indicates value of the inner radius. # noqa: E501 + + :return: The inner_radius of this EllipsoidArc. + :rtype: int + """ + return self._inner_radius + + @inner_radius.setter + def inner_radius(self, inner_radius: int): + """Sets the inner_radius of this EllipsoidArc. + + Indicates value of the inner radius. # noqa: E501 + + :param inner_radius: The inner_radius of this EllipsoidArc. + :type inner_radius: int + """ + if inner_radius is None: + raise ValueError("Invalid value for `inner_radius`, must not be `None`") # noqa: E501 + if inner_radius is not None and inner_radius > 327675: # noqa: E501 + raise ValueError("Invalid value for `inner_radius`, must be a value less than or equal to `327675`") # noqa: E501 + if inner_radius is not None and inner_radius < 0: # noqa: E501 + raise ValueError("Invalid value for `inner_radius`, must be a value greater than or equal to `0`") # noqa: E501 + + self._inner_radius = inner_radius + + @property + def uncertainty_radius(self) -> float: + """Gets the uncertainty_radius of this EllipsoidArc. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty_radius of this EllipsoidArc. + :rtype: float + """ + return self._uncertainty_radius + + @uncertainty_radius.setter + def uncertainty_radius(self, uncertainty_radius: float): + """Sets the uncertainty_radius of this EllipsoidArc. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty_radius: The uncertainty_radius of this EllipsoidArc. + :type uncertainty_radius: float + """ + if uncertainty_radius is None: + raise ValueError("Invalid value for `uncertainty_radius`, must not be `None`") # noqa: E501 + if uncertainty_radius is not None and uncertainty_radius < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty_radius`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty_radius = uncertainty_radius + + @property + def offset_angle(self) -> int: + """Gets the offset_angle of this EllipsoidArc. + + Indicates value of angle. # noqa: E501 + + :return: The offset_angle of this EllipsoidArc. + :rtype: int + """ + return self._offset_angle + + @offset_angle.setter + def offset_angle(self, offset_angle: int): + """Sets the offset_angle of this EllipsoidArc. + + Indicates value of angle. # noqa: E501 + + :param offset_angle: The offset_angle of this EllipsoidArc. + :type offset_angle: int + """ + if offset_angle is None: + raise ValueError("Invalid value for `offset_angle`, must not be `None`") # noqa: E501 + if offset_angle is not None and offset_angle > 360: # noqa: E501 + raise ValueError("Invalid value for `offset_angle`, must be a value less than or equal to `360`") # noqa: E501 + if offset_angle is not None and offset_angle < 0: # noqa: E501 + raise ValueError("Invalid value for `offset_angle`, must be a value greater than or equal to `0`") # noqa: E501 + + self._offset_angle = offset_angle + + @property + def included_angle(self) -> int: + """Gets the included_angle of this EllipsoidArc. + + Indicates value of angle. # noqa: E501 + + :return: The included_angle of this EllipsoidArc. + :rtype: int + """ + return self._included_angle + + @included_angle.setter + def included_angle(self, included_angle: int): + """Sets the included_angle of this EllipsoidArc. + + Indicates value of angle. # noqa: E501 + + :param included_angle: The included_angle of this EllipsoidArc. + :type included_angle: int + """ + if included_angle is None: + raise ValueError("Invalid value for `included_angle`, must not be `None`") # noqa: E501 + if included_angle is not None and included_angle > 360: # noqa: E501 + raise ValueError("Invalid value for `included_angle`, must be a value less than or equal to `360`") # noqa: E501 + if included_angle is not None and included_angle < 0: # noqa: E501 + raise ValueError("Invalid value for `included_angle`, must be a value greater than or equal to `0`") # noqa: E501 + + self._included_angle = included_angle + + @property + def confidence(self) -> int: + """Gets the confidence of this EllipsoidArc. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this EllipsoidArc. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this EllipsoidArc. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this EllipsoidArc. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/event_notification.py b/services/TS29222_CAPIF_Events_API/capif_events/models/event_notification.py index 633ddcf..9200e1b 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/event_notification.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/event_notification.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.capif_event import CAPIFEvent from capif_events.models.capif_event_detail import CAPIFEventDetail from capif_events import util @@ -57,10 +54,10 @@ class EventNotification(Model): return util.deserialize_model(dikt, cls) @property - def subscription_id(self): + def subscription_id(self) -> str: """Gets the subscription_id of this EventNotification. - Identifier of the subscription resource to which the notification is related – CAPIF resource identifier # noqa: E501 + Identifier of the subscription resource to which the notification is related – CAPIF resource identifier # noqa: E501 :return: The subscription_id of this EventNotification. :rtype: str @@ -68,10 +65,10 @@ class EventNotification(Model): return self._subscription_id @subscription_id.setter - def subscription_id(self, subscription_id): + def subscription_id(self, subscription_id: str): """Sets the subscription_id of this EventNotification. - Identifier of the subscription resource to which the notification is related – CAPIF resource identifier # noqa: E501 + Identifier of the subscription resource to which the notification is related – CAPIF resource identifier # noqa: E501 :param subscription_id: The subscription_id of this EventNotification. :type subscription_id: str @@ -82,7 +79,7 @@ class EventNotification(Model): self._subscription_id = subscription_id @property - def events(self): + def events(self) -> CAPIFEvent: """Gets the events of this EventNotification. @@ -92,7 +89,7 @@ class EventNotification(Model): return self._events @events.setter - def events(self, events): + def events(self, events: CAPIFEvent): """Sets the events of this EventNotification. @@ -105,7 +102,7 @@ class EventNotification(Model): self._events = events @property - def event_detail(self): + def event_detail(self) -> CAPIFEventDetail: """Gets the event_detail of this EventNotification. @@ -115,7 +112,7 @@ class EventNotification(Model): return self._event_detail @event_detail.setter - def event_detail(self, event_detail): + def event_detail(self, event_detail: CAPIFEventDetail): """Sets the event_detail of this EventNotification. diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription.py b/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription.py index c7ae736..6660c33 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.capif_event import CAPIFEvent from capif_events.models.capif_event_filter import CAPIFEventFilter from capif_events.models.reporting_information import ReportingInformation @@ -83,7 +80,7 @@ class EventSubscription(Model): return util.deserialize_model(dikt, cls) @property - def events(self): + def events(self) -> List[CAPIFEvent]: """Gets the events of this EventSubscription. Subscribed events # noqa: E501 @@ -94,7 +91,7 @@ class EventSubscription(Model): return self._events @events.setter - def events(self, events): + def events(self, events: List[CAPIFEvent]): """Sets the events of this EventSubscription. Subscribed events # noqa: E501 @@ -110,7 +107,7 @@ class EventSubscription(Model): self._events = events @property - def event_filters(self): + def event_filters(self) -> List[CAPIFEventFilter]: """Gets the event_filters of this EventSubscription. Subscribed event filters # noqa: E501 @@ -121,7 +118,7 @@ class EventSubscription(Model): return self._event_filters @event_filters.setter - def event_filters(self, event_filters): + def event_filters(self, event_filters: List[CAPIFEventFilter]): """Sets the event_filters of this EventSubscription. Subscribed event filters # noqa: E501 @@ -135,7 +132,7 @@ class EventSubscription(Model): self._event_filters = event_filters @property - def event_req(self): + def event_req(self) -> ReportingInformation: """Gets the event_req of this EventSubscription. @@ -145,7 +142,7 @@ class EventSubscription(Model): return self._event_req @event_req.setter - def event_req(self, event_req): + def event_req(self, event_req: ReportingInformation): """Sets the event_req of this EventSubscription. @@ -156,7 +153,7 @@ class EventSubscription(Model): self._event_req = event_req @property - def notification_destination(self): + def notification_destination(self) -> str: """Gets the notification_destination of this EventSubscription. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -167,7 +164,7 @@ class EventSubscription(Model): return self._notification_destination @notification_destination.setter - def notification_destination(self, notification_destination): + def notification_destination(self, notification_destination: str): """Sets the notification_destination of this EventSubscription. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -181,10 +178,10 @@ class EventSubscription(Model): self._notification_destination = notification_destination @property - def request_test_notification(self): + def request_test_notification(self) -> bool: """Gets the request_test_notification of this EventSubscription. - Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in subclause 7.6. Set to false or omitted otherwise. # noqa: E501 + Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in clause 7.6. Set to false or omitted otherwise. # noqa: E501 :return: The request_test_notification of this EventSubscription. :rtype: bool @@ -192,10 +189,10 @@ class EventSubscription(Model): return self._request_test_notification @request_test_notification.setter - def request_test_notification(self, request_test_notification): + def request_test_notification(self, request_test_notification: bool): """Sets the request_test_notification of this EventSubscription. - Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in subclause 7.6. Set to false or omitted otherwise. # noqa: E501 + Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in clause 7.6. Set to false or omitted otherwise. # noqa: E501 :param request_test_notification: The request_test_notification of this EventSubscription. :type request_test_notification: bool @@ -204,7 +201,7 @@ class EventSubscription(Model): self._request_test_notification = request_test_notification @property - def websock_notif_config(self): + def websock_notif_config(self) -> WebsockNotifConfig: """Gets the websock_notif_config of this EventSubscription. @@ -214,7 +211,7 @@ class EventSubscription(Model): return self._websock_notif_config @websock_notif_config.setter - def websock_notif_config(self, websock_notif_config): + def websock_notif_config(self, websock_notif_config: WebsockNotifConfig): """Sets the websock_notif_config of this EventSubscription. @@ -225,10 +222,10 @@ class EventSubscription(Model): self._websock_notif_config = websock_notif_config @property - def supported_features(self): + def supported_features(self) -> str: """Gets the supported_features of this EventSubscription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :return: The supported_features of this EventSubscription. :rtype: str @@ -236,10 +233,10 @@ class EventSubscription(Model): return self._supported_features @supported_features.setter - def supported_features(self, supported_features): + def supported_features(self, supported_features: str): """Sets the supported_features of this EventSubscription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :param supported_features: The supported_features of this EventSubscription. :type supported_features: str diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription_patch.py b/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription_patch.py new file mode 100644 index 0000000..51be7cd --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/event_subscription_patch.py @@ -0,0 +1,155 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.capif_event import CAPIFEvent +from capif_events.models.capif_event_filter import CAPIFEventFilter +from capif_events.models.reporting_information import ReportingInformation +from capif_events import util + +from capif_events.models.capif_event import CAPIFEvent # noqa: E501 +from capif_events.models.capif_event_filter import CAPIFEventFilter # noqa: E501 +from capif_events.models.reporting_information import ReportingInformation # noqa: E501 + +class EventSubscriptionPatch(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, events=None, event_filters=None, event_req=None, notification_destination=None): # noqa: E501 + """EventSubscriptionPatch - a model defined in OpenAPI + + :param events: The events of this EventSubscriptionPatch. # noqa: E501 + :type events: List[CAPIFEvent] + :param event_filters: The event_filters of this EventSubscriptionPatch. # noqa: E501 + :type event_filters: List[CAPIFEventFilter] + :param event_req: The event_req of this EventSubscriptionPatch. # noqa: E501 + :type event_req: ReportingInformation + :param notification_destination: The notification_destination of this EventSubscriptionPatch. # noqa: E501 + :type notification_destination: str + """ + self.openapi_types = { + 'events': List[CAPIFEvent], + 'event_filters': List[CAPIFEventFilter], + 'event_req': ReportingInformation, + 'notification_destination': str + } + + self.attribute_map = { + 'events': 'events', + 'event_filters': 'eventFilters', + 'event_req': 'eventReq', + 'notification_destination': 'notificationDestination' + } + + self._events = events + self._event_filters = event_filters + self._event_req = event_req + self._notification_destination = notification_destination + + @classmethod + def from_dict(cls, dikt) -> 'EventSubscriptionPatch': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The EventSubscriptionPatch of this EventSubscriptionPatch. # noqa: E501 + :rtype: EventSubscriptionPatch + """ + return util.deserialize_model(dikt, cls) + + @property + def events(self) -> List[CAPIFEvent]: + """Gets the events of this EventSubscriptionPatch. + + Subscribed events # noqa: E501 + + :return: The events of this EventSubscriptionPatch. + :rtype: List[CAPIFEvent] + """ + return self._events + + @events.setter + def events(self, events: List[CAPIFEvent]): + """Sets the events of this EventSubscriptionPatch. + + Subscribed events # noqa: E501 + + :param events: The events of this EventSubscriptionPatch. + :type events: List[CAPIFEvent] + """ + if events is not None and len(events) < 1: + raise ValueError("Invalid value for `events`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._events = events + + @property + def event_filters(self) -> List[CAPIFEventFilter]: + """Gets the event_filters of this EventSubscriptionPatch. + + Subscribed event filters # noqa: E501 + + :return: The event_filters of this EventSubscriptionPatch. + :rtype: List[CAPIFEventFilter] + """ + return self._event_filters + + @event_filters.setter + def event_filters(self, event_filters: List[CAPIFEventFilter]): + """Sets the event_filters of this EventSubscriptionPatch. + + Subscribed event filters # noqa: E501 + + :param event_filters: The event_filters of this EventSubscriptionPatch. + :type event_filters: List[CAPIFEventFilter] + """ + if event_filters is not None and len(event_filters) < 1: + raise ValueError("Invalid value for `event_filters`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._event_filters = event_filters + + @property + def event_req(self) -> ReportingInformation: + """Gets the event_req of this EventSubscriptionPatch. + + + :return: The event_req of this EventSubscriptionPatch. + :rtype: ReportingInformation + """ + return self._event_req + + @event_req.setter + def event_req(self, event_req: ReportingInformation): + """Sets the event_req of this EventSubscriptionPatch. + + + :param event_req: The event_req of this EventSubscriptionPatch. + :type event_req: ReportingInformation + """ + + self._event_req = event_req + + @property + def notification_destination(self) -> str: + """Gets the notification_destination of this EventSubscriptionPatch. + + string providing an URI formatted according to IETF RFC 3986. # noqa: E501 + + :return: The notification_destination of this EventSubscriptionPatch. + :rtype: str + """ + return self._notification_destination + + @notification_destination.setter + def notification_destination(self, notification_destination: str): + """Sets the notification_destination of this EventSubscriptionPatch. + + string providing an URI formatted according to IETF RFC 3986. # noqa: E501 + + :param notification_destination: The notification_destination of this EventSubscriptionPatch. + :type notification_destination: str + """ + + self._notification_destination = notification_destination diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/gad_shape.py b/services/TS29222_CAPIF_Events_API/capif_events/models/gad_shape.py new file mode 100644 index 0000000..f669a85 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/gad_shape.py @@ -0,0 +1,65 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class GADShape(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None): # noqa: E501 + """GADShape - a model defined in OpenAPI + + :param shape: The shape of this GADShape. # noqa: E501 + :type shape: SupportedGADShapes + """ + self.openapi_types = { + 'shape': SupportedGADShapes + } + + self.attribute_map = { + 'shape': 'shape' + } + + self._shape = shape + + @classmethod + def from_dict(cls, dikt) -> 'GADShape': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The GADShape of this GADShape. # noqa: E501 + :rtype: GADShape + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this GADShape. + + + :return: The shape of this GADShape. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this GADShape. + + + :param shape: The shape of this GADShape. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/geographic_area.py b/services/TS29222_CAPIF_Events_API/capif_events/models/geographic_area.py new file mode 100644 index 0000000..45c7018 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/geographic_area.py @@ -0,0 +1,471 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.ellipsoid_arc import EllipsoidArc +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.point import Point +from capif_events.models.point_altitude import PointAltitude +from capif_events.models.point_altitude_uncertainty import PointAltitudeUncertainty +from capif_events.models.point_uncertainty_circle import PointUncertaintyCircle +from capif_events.models.point_uncertainty_ellipse import PointUncertaintyEllipse +from capif_events.models.polygon import Polygon +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse +from capif_events import util + +from capif_events.models.ellipsoid_arc import EllipsoidArc # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.point import Point # noqa: E501 +from capif_events.models.point_altitude import PointAltitude # noqa: E501 +from capif_events.models.point_altitude_uncertainty import PointAltitudeUncertainty # noqa: E501 +from capif_events.models.point_uncertainty_circle import PointUncertaintyCircle # noqa: E501 +from capif_events.models.point_uncertainty_ellipse import PointUncertaintyEllipse # noqa: E501 +from capif_events.models.polygon import Polygon # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse # noqa: E501 + +class GeographicArea(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, uncertainty=None, uncertainty_ellipse=None, confidence=None, point_list=None, altitude=None, uncertainty_altitude=None, v_confidence=None, inner_radius=None, uncertainty_radius=None, offset_angle=None, included_angle=None): # noqa: E501 + """GeographicArea - a model defined in OpenAPI + + :param shape: The shape of this GeographicArea. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this GeographicArea. # noqa: E501 + :type point: GeographicalCoordinates + :param uncertainty: The uncertainty of this GeographicArea. # noqa: E501 + :type uncertainty: float + :param uncertainty_ellipse: The uncertainty_ellipse of this GeographicArea. # noqa: E501 + :type uncertainty_ellipse: UncertaintyEllipse + :param confidence: The confidence of this GeographicArea. # noqa: E501 + :type confidence: int + :param point_list: The point_list of this GeographicArea. # noqa: E501 + :type point_list: List[GeographicalCoordinates] + :param altitude: The altitude of this GeographicArea. # noqa: E501 + :type altitude: float + :param uncertainty_altitude: The uncertainty_altitude of this GeographicArea. # noqa: E501 + :type uncertainty_altitude: float + :param v_confidence: The v_confidence of this GeographicArea. # noqa: E501 + :type v_confidence: int + :param inner_radius: The inner_radius of this GeographicArea. # noqa: E501 + :type inner_radius: int + :param uncertainty_radius: The uncertainty_radius of this GeographicArea. # noqa: E501 + :type uncertainty_radius: float + :param offset_angle: The offset_angle of this GeographicArea. # noqa: E501 + :type offset_angle: int + :param included_angle: The included_angle of this GeographicArea. # noqa: E501 + :type included_angle: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'uncertainty': float, + 'uncertainty_ellipse': UncertaintyEllipse, + 'confidence': int, + 'point_list': List[GeographicalCoordinates], + 'altitude': float, + 'uncertainty_altitude': float, + 'v_confidence': int, + 'inner_radius': int, + 'uncertainty_radius': float, + 'offset_angle': int, + 'included_angle': int + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'uncertainty': 'uncertainty', + 'uncertainty_ellipse': 'uncertaintyEllipse', + 'confidence': 'confidence', + 'point_list': 'pointList', + 'altitude': 'altitude', + 'uncertainty_altitude': 'uncertaintyAltitude', + 'v_confidence': 'vConfidence', + 'inner_radius': 'innerRadius', + 'uncertainty_radius': 'uncertaintyRadius', + 'offset_angle': 'offsetAngle', + 'included_angle': 'includedAngle' + } + + self._shape = shape + self._point = point + self._uncertainty = uncertainty + self._uncertainty_ellipse = uncertainty_ellipse + self._confidence = confidence + self._point_list = point_list + self._altitude = altitude + self._uncertainty_altitude = uncertainty_altitude + self._v_confidence = v_confidence + self._inner_radius = inner_radius + self._uncertainty_radius = uncertainty_radius + self._offset_angle = offset_angle + self._included_angle = included_angle + + @classmethod + def from_dict(cls, dikt) -> 'GeographicArea': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The GeographicArea of this GeographicArea. # noqa: E501 + :rtype: GeographicArea + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this GeographicArea. + + + :return: The shape of this GeographicArea. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this GeographicArea. + + + :param shape: The shape of this GeographicArea. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this GeographicArea. + + + :return: The point of this GeographicArea. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this GeographicArea. + + + :param point: The point of this GeographicArea. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def uncertainty(self) -> float: + """Gets the uncertainty of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty of this GeographicArea. + :rtype: float + """ + return self._uncertainty + + @uncertainty.setter + def uncertainty(self, uncertainty: float): + """Sets the uncertainty of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty: The uncertainty of this GeographicArea. + :type uncertainty: float + """ + if uncertainty is None: + raise ValueError("Invalid value for `uncertainty`, must not be `None`") # noqa: E501 + if uncertainty is not None and uncertainty < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty = uncertainty + + @property + def uncertainty_ellipse(self) -> UncertaintyEllipse: + """Gets the uncertainty_ellipse of this GeographicArea. + + + :return: The uncertainty_ellipse of this GeographicArea. + :rtype: UncertaintyEllipse + """ + return self._uncertainty_ellipse + + @uncertainty_ellipse.setter + def uncertainty_ellipse(self, uncertainty_ellipse: UncertaintyEllipse): + """Sets the uncertainty_ellipse of this GeographicArea. + + + :param uncertainty_ellipse: The uncertainty_ellipse of this GeographicArea. + :type uncertainty_ellipse: UncertaintyEllipse + """ + if uncertainty_ellipse is None: + raise ValueError("Invalid value for `uncertainty_ellipse`, must not be `None`") # noqa: E501 + + self._uncertainty_ellipse = uncertainty_ellipse + + @property + def confidence(self) -> int: + """Gets the confidence of this GeographicArea. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this GeographicArea. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this GeographicArea. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this GeographicArea. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence + + @property + def point_list(self) -> List[GeographicalCoordinates]: + """Gets the point_list of this GeographicArea. + + List of points. # noqa: E501 + + :return: The point_list of this GeographicArea. + :rtype: List[GeographicalCoordinates] + """ + return self._point_list + + @point_list.setter + def point_list(self, point_list: List[GeographicalCoordinates]): + """Sets the point_list of this GeographicArea. + + List of points. # noqa: E501 + + :param point_list: The point_list of this GeographicArea. + :type point_list: List[GeographicalCoordinates] + """ + if point_list is None: + raise ValueError("Invalid value for `point_list`, must not be `None`") # noqa: E501 + if point_list is not None and len(point_list) > 15: + raise ValueError("Invalid value for `point_list`, number of items must be less than or equal to `15`") # noqa: E501 + if point_list is not None and len(point_list) < 3: + raise ValueError("Invalid value for `point_list`, number of items must be greater than or equal to `3`") # noqa: E501 + + self._point_list = point_list + + @property + def altitude(self) -> float: + """Gets the altitude of this GeographicArea. + + Indicates value of altitude. # noqa: E501 + + :return: The altitude of this GeographicArea. + :rtype: float + """ + return self._altitude + + @altitude.setter + def altitude(self, altitude: float): + """Sets the altitude of this GeographicArea. + + Indicates value of altitude. # noqa: E501 + + :param altitude: The altitude of this GeographicArea. + :type altitude: float + """ + if altitude is None: + raise ValueError("Invalid value for `altitude`, must not be `None`") # noqa: E501 + if altitude is not None and altitude > 32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value less than or equal to `32767`") # noqa: E501 + if altitude is not None and altitude < -32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value greater than or equal to `-32767`") # noqa: E501 + + self._altitude = altitude + + @property + def uncertainty_altitude(self) -> float: + """Gets the uncertainty_altitude of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty_altitude of this GeographicArea. + :rtype: float + """ + return self._uncertainty_altitude + + @uncertainty_altitude.setter + def uncertainty_altitude(self, uncertainty_altitude: float): + """Sets the uncertainty_altitude of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty_altitude: The uncertainty_altitude of this GeographicArea. + :type uncertainty_altitude: float + """ + if uncertainty_altitude is None: + raise ValueError("Invalid value for `uncertainty_altitude`, must not be `None`") # noqa: E501 + if uncertainty_altitude is not None and uncertainty_altitude < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty_altitude`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty_altitude = uncertainty_altitude + + @property + def v_confidence(self) -> int: + """Gets the v_confidence of this GeographicArea. + + Indicates value of confidence. # noqa: E501 + + :return: The v_confidence of this GeographicArea. + :rtype: int + """ + return self._v_confidence + + @v_confidence.setter + def v_confidence(self, v_confidence: int): + """Sets the v_confidence of this GeographicArea. + + Indicates value of confidence. # noqa: E501 + + :param v_confidence: The v_confidence of this GeographicArea. + :type v_confidence: int + """ + if v_confidence is not None and v_confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `v_confidence`, must be a value less than or equal to `100`") # noqa: E501 + if v_confidence is not None and v_confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `v_confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._v_confidence = v_confidence + + @property + def inner_radius(self) -> int: + """Gets the inner_radius of this GeographicArea. + + Indicates value of the inner radius. # noqa: E501 + + :return: The inner_radius of this GeographicArea. + :rtype: int + """ + return self._inner_radius + + @inner_radius.setter + def inner_radius(self, inner_radius: int): + """Sets the inner_radius of this GeographicArea. + + Indicates value of the inner radius. # noqa: E501 + + :param inner_radius: The inner_radius of this GeographicArea. + :type inner_radius: int + """ + if inner_radius is None: + raise ValueError("Invalid value for `inner_radius`, must not be `None`") # noqa: E501 + if inner_radius is not None and inner_radius > 327675: # noqa: E501 + raise ValueError("Invalid value for `inner_radius`, must be a value less than or equal to `327675`") # noqa: E501 + if inner_radius is not None and inner_radius < 0: # noqa: E501 + raise ValueError("Invalid value for `inner_radius`, must be a value greater than or equal to `0`") # noqa: E501 + + self._inner_radius = inner_radius + + @property + def uncertainty_radius(self) -> float: + """Gets the uncertainty_radius of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty_radius of this GeographicArea. + :rtype: float + """ + return self._uncertainty_radius + + @uncertainty_radius.setter + def uncertainty_radius(self, uncertainty_radius: float): + """Sets the uncertainty_radius of this GeographicArea. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty_radius: The uncertainty_radius of this GeographicArea. + :type uncertainty_radius: float + """ + if uncertainty_radius is None: + raise ValueError("Invalid value for `uncertainty_radius`, must not be `None`") # noqa: E501 + if uncertainty_radius is not None and uncertainty_radius < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty_radius`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty_radius = uncertainty_radius + + @property + def offset_angle(self) -> int: + """Gets the offset_angle of this GeographicArea. + + Indicates value of angle. # noqa: E501 + + :return: The offset_angle of this GeographicArea. + :rtype: int + """ + return self._offset_angle + + @offset_angle.setter + def offset_angle(self, offset_angle: int): + """Sets the offset_angle of this GeographicArea. + + Indicates value of angle. # noqa: E501 + + :param offset_angle: The offset_angle of this GeographicArea. + :type offset_angle: int + """ + if offset_angle is None: + raise ValueError("Invalid value for `offset_angle`, must not be `None`") # noqa: E501 + if offset_angle is not None and offset_angle > 360: # noqa: E501 + raise ValueError("Invalid value for `offset_angle`, must be a value less than or equal to `360`") # noqa: E501 + if offset_angle is not None and offset_angle < 0: # noqa: E501 + raise ValueError("Invalid value for `offset_angle`, must be a value greater than or equal to `0`") # noqa: E501 + + self._offset_angle = offset_angle + + @property + def included_angle(self) -> int: + """Gets the included_angle of this GeographicArea. + + Indicates value of angle. # noqa: E501 + + :return: The included_angle of this GeographicArea. + :rtype: int + """ + return self._included_angle + + @included_angle.setter + def included_angle(self, included_angle: int): + """Sets the included_angle of this GeographicArea. + + Indicates value of angle. # noqa: E501 + + :param included_angle: The included_angle of this GeographicArea. + :type included_angle: int + """ + if included_angle is None: + raise ValueError("Invalid value for `included_angle`, must not be `None`") # noqa: E501 + if included_angle is not None and included_angle > 360: # noqa: E501 + raise ValueError("Invalid value for `included_angle`, must be a value less than or equal to `360`") # noqa: E501 + if included_angle is not None and included_angle < 0: # noqa: E501 + raise ValueError("Invalid value for `included_angle`, must be a value greater than or equal to `0`") # noqa: E501 + + self._included_angle = included_angle diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/geographical_coordinates.py b/services/TS29222_CAPIF_Events_API/capif_events/models/geographical_coordinates.py new file mode 100644 index 0000000..3821050 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/geographical_coordinates.py @@ -0,0 +1,99 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class GeographicalCoordinates(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, lon=None, lat=None): # noqa: E501 + """GeographicalCoordinates - a model defined in OpenAPI + + :param lon: The lon of this GeographicalCoordinates. # noqa: E501 + :type lon: float + :param lat: The lat of this GeographicalCoordinates. # noqa: E501 + :type lat: float + """ + self.openapi_types = { + 'lon': float, + 'lat': float + } + + self.attribute_map = { + 'lon': 'lon', + 'lat': 'lat' + } + + self._lon = lon + self._lat = lat + + @classmethod + def from_dict(cls, dikt) -> 'GeographicalCoordinates': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The GeographicalCoordinates of this GeographicalCoordinates. # noqa: E501 + :rtype: GeographicalCoordinates + """ + return util.deserialize_model(dikt, cls) + + @property + def lon(self) -> float: + """Gets the lon of this GeographicalCoordinates. + + + :return: The lon of this GeographicalCoordinates. + :rtype: float + """ + return self._lon + + @lon.setter + def lon(self, lon: float): + """Sets the lon of this GeographicalCoordinates. + + + :param lon: The lon of this GeographicalCoordinates. + :type lon: float + """ + if lon is None: + raise ValueError("Invalid value for `lon`, must not be `None`") # noqa: E501 + if lon is not None and lon > 180: # noqa: E501 + raise ValueError("Invalid value for `lon`, must be a value less than or equal to `180`") # noqa: E501 + if lon is not None and lon < -180: # noqa: E501 + raise ValueError("Invalid value for `lon`, must be a value greater than or equal to `-180`") # noqa: E501 + + self._lon = lon + + @property + def lat(self) -> float: + """Gets the lat of this GeographicalCoordinates. + + + :return: The lat of this GeographicalCoordinates. + :rtype: float + """ + return self._lat + + @lat.setter + def lat(self, lat: float): + """Sets the lat of this GeographicalCoordinates. + + + :param lat: The lat of this GeographicalCoordinates. + :type lat: float + """ + if lat is None: + raise ValueError("Invalid value for `lat`, must not be `None`") # noqa: E501 + if lat is not None and lat > 90: # noqa: E501 + raise ValueError("Invalid value for `lat`, must be a value less than or equal to `90`") # noqa: E501 + if lat is not None and lat < -90: # noqa: E501 + raise ValueError("Invalid value for `lat`, must be a value greater than or equal to `-90`") # noqa: E501 + + self._lat = lat diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/interface_description.py b/services/TS29222_CAPIF_Events_API/capif_events/models/interface_description.py index 14b2b5d..d8cf6b7 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/interface_description.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/interface_description.py @@ -1,15 +1,14 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.security_method import SecurityMethod +import re from capif_events import util from capif_events.models.security_method import SecurityMethod # noqa: E501 +import re # noqa: E501 class InterfaceDescription(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -17,35 +16,45 @@ class InterfaceDescription(Model): Do not edit the class manually. """ - def __init__(self, ipv4_addr=None, ipv6_addr=None, port=None, security_methods=None): # noqa: E501 + def __init__(self, ipv4_addr=None, ipv6_addr=None, fqdn=None, port=None, api_prefix=None, security_methods=None): # noqa: E501 """InterfaceDescription - a model defined in OpenAPI :param ipv4_addr: The ipv4_addr of this InterfaceDescription. # noqa: E501 :type ipv4_addr: str :param ipv6_addr: The ipv6_addr of this InterfaceDescription. # noqa: E501 :type ipv6_addr: str + :param fqdn: The fqdn of this InterfaceDescription. # noqa: E501 + :type fqdn: str :param port: The port of this InterfaceDescription. # noqa: E501 :type port: int + :param api_prefix: The api_prefix of this InterfaceDescription. # noqa: E501 + :type api_prefix: str :param security_methods: The security_methods of this InterfaceDescription. # noqa: E501 :type security_methods: List[SecurityMethod] """ self.openapi_types = { 'ipv4_addr': str, 'ipv6_addr': str, + 'fqdn': str, 'port': int, + 'api_prefix': str, 'security_methods': List[SecurityMethod] } self.attribute_map = { 'ipv4_addr': 'ipv4Addr', 'ipv6_addr': 'ipv6Addr', + 'fqdn': 'fqdn', 'port': 'port', + 'api_prefix': 'apiPrefix', 'security_methods': 'securityMethods' } self._ipv4_addr = ipv4_addr self._ipv6_addr = ipv6_addr + self._fqdn = fqdn self._port = port + self._api_prefix = api_prefix self._security_methods = security_methods @classmethod @@ -60,10 +69,10 @@ class InterfaceDescription(Model): return util.deserialize_model(dikt, cls) @property - def ipv4_addr(self): + def ipv4_addr(self) -> str: """Gets the ipv4_addr of this InterfaceDescription. - string identifying a Ipv4 address formatted in the \"dotted decimal\" notation as defined in IETF RFC 1166. # noqa: E501 + string identifying a Ipv4 address formatted in the \"dotted decimal\" notation as defined in IETF RFC 1166. # noqa: E501 :return: The ipv4_addr of this InterfaceDescription. :rtype: str @@ -71,10 +80,10 @@ class InterfaceDescription(Model): return self._ipv4_addr @ipv4_addr.setter - def ipv4_addr(self, ipv4_addr): + def ipv4_addr(self, ipv4_addr: str): """Sets the ipv4_addr of this InterfaceDescription. - string identifying a Ipv4 address formatted in the \"dotted decimal\" notation as defined in IETF RFC 1166. # noqa: E501 + string identifying a Ipv4 address formatted in the \"dotted decimal\" notation as defined in IETF RFC 1166. # noqa: E501 :param ipv4_addr: The ipv4_addr of this InterfaceDescription. :type ipv4_addr: str @@ -83,10 +92,10 @@ class InterfaceDescription(Model): self._ipv4_addr = ipv4_addr @property - def ipv6_addr(self): + def ipv6_addr(self) -> str: """Gets the ipv6_addr of this InterfaceDescription. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :return: The ipv6_addr of this InterfaceDescription. :rtype: str @@ -94,10 +103,10 @@ class InterfaceDescription(Model): return self._ipv6_addr @ipv6_addr.setter - def ipv6_addr(self, ipv6_addr): + def ipv6_addr(self, ipv6_addr: str): """Sets the ipv6_addr of this InterfaceDescription. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :param ipv6_addr: The ipv6_addr of this InterfaceDescription. :type ipv6_addr: str @@ -106,7 +115,36 @@ class InterfaceDescription(Model): self._ipv6_addr = ipv6_addr @property - def port(self): + def fqdn(self) -> str: + """Gets the fqdn of this InterfaceDescription. + + Fully Qualified Domain Name # noqa: E501 + + :return: The fqdn of this InterfaceDescription. + :rtype: str + """ + return self._fqdn + + @fqdn.setter + def fqdn(self, fqdn: str): + """Sets the fqdn of this InterfaceDescription. + + Fully Qualified Domain Name # noqa: E501 + + :param fqdn: The fqdn of this InterfaceDescription. + :type fqdn: str + """ + if fqdn is not None and len(fqdn) > 253: + raise ValueError("Invalid value for `fqdn`, length must be less than or equal to `253`") # noqa: E501 + if fqdn is not None and len(fqdn) < 4: + raise ValueError("Invalid value for `fqdn`, length must be greater than or equal to `4`") # noqa: E501 + if fqdn is not None and not re.search(r'^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\.)+[A-Za-z]{2,63}\.?$', fqdn): # noqa: E501 + raise ValueError("Invalid value for `fqdn`, must be a follow pattern or equal to `/^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\.)+[A-Za-z]{2,63}\.?$/`") # noqa: E501 + + self._fqdn = fqdn + + @property + def port(self) -> int: """Gets the port of this InterfaceDescription. Unsigned integer with valid values between 0 and 65535. # noqa: E501 @@ -117,7 +155,7 @@ class InterfaceDescription(Model): return self._port @port.setter - def port(self, port): + def port(self, port: int): """Sets the port of this InterfaceDescription. Unsigned integer with valid values between 0 and 65535. # noqa: E501 @@ -133,10 +171,33 @@ class InterfaceDescription(Model): self._port = port @property - def security_methods(self): + def api_prefix(self) -> str: + """Gets the api_prefix of this InterfaceDescription. + + A string representing a sequence of path segments that starts with the slash character. # noqa: E501 + + :return: The api_prefix of this InterfaceDescription. + :rtype: str + """ + return self._api_prefix + + @api_prefix.setter + def api_prefix(self, api_prefix: str): + """Sets the api_prefix of this InterfaceDescription. + + A string representing a sequence of path segments that starts with the slash character. # noqa: E501 + + :param api_prefix: The api_prefix of this InterfaceDescription. + :type api_prefix: str + """ + + self._api_prefix = api_prefix + + @property + def security_methods(self) -> List[SecurityMethod]: """Gets the security_methods of this InterfaceDescription. - Security methods supported by the interface, it take precedence over the security methods provided in AefProfile, for this specific interface. # noqa: E501 + Security methods supported by the interface, it take precedence over the security methods provided in AefProfile, for this specific interface. # noqa: E501 :return: The security_methods of this InterfaceDescription. :rtype: List[SecurityMethod] @@ -144,10 +205,10 @@ class InterfaceDescription(Model): return self._security_methods @security_methods.setter - def security_methods(self, security_methods): + def security_methods(self, security_methods: List[SecurityMethod]): """Sets the security_methods of this InterfaceDescription. - Security methods supported by the interface, it take precedence over the security methods provided in AefProfile, for this specific interface. # noqa: E501 + Security methods supported by the interface, it take precedence over the security methods provided in AefProfile, for this specific interface. # noqa: E501 :param security_methods: The security_methods of this InterfaceDescription. :type security_methods: List[SecurityMethod] diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/invalid_param.py b/services/TS29222_CAPIF_Events_API/capif_events/models/invalid_param.py index e9bc8ca..9f3557f 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/invalid_param.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/invalid_param.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -48,7 +45,7 @@ class InvalidParam(Model): return util.deserialize_model(dikt, cls) @property - def param(self): + def param(self) -> str: """Gets the param of this InvalidParam. Attribute's name encoded as a JSON Pointer, or header's name. # noqa: E501 @@ -59,7 +56,7 @@ class InvalidParam(Model): return self._param @param.setter - def param(self, param): + def param(self, param: str): """Sets the param of this InvalidParam. Attribute's name encoded as a JSON Pointer, or header's name. # noqa: E501 @@ -73,7 +70,7 @@ class InvalidParam(Model): self._param = param @property - def reason(self): + def reason(self) -> str: """Gets the reason of this InvalidParam. A human-readable reason, e.g. \"must be a positive integer\". # noqa: E501 @@ -84,7 +81,7 @@ class InvalidParam(Model): return self._reason @reason.setter - def reason(self, reason): + def reason(self, reason: str): """Sets the reason of this InvalidParam. A human-readable reason, e.g. \"must be a positive integer\". # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/invocation_log.py b/services/TS29222_CAPIF_Events_API/capif_events/models/invocation_log.py index bbe4886..c34c73b 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/invocation_log.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/invocation_log.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.log import Log import re from capif_events import util @@ -62,10 +59,10 @@ class InvocationLog(Model): return util.deserialize_model(dikt, cls) @property - def aef_id(self): + def aef_id(self) -> str: """Gets the aef_id of this InvocationLog. - Identity information of the API exposing function requesting logging of service API invocations # noqa: E501 + Identity information of the API exposing function requesting logging of service API invocations # noqa: E501 :return: The aef_id of this InvocationLog. :rtype: str @@ -73,10 +70,10 @@ class InvocationLog(Model): return self._aef_id @aef_id.setter - def aef_id(self, aef_id): + def aef_id(self, aef_id: str): """Sets the aef_id of this InvocationLog. - Identity information of the API exposing function requesting logging of service API invocations # noqa: E501 + Identity information of the API exposing function requesting logging of service API invocations # noqa: E501 :param aef_id: The aef_id of this InvocationLog. :type aef_id: str @@ -87,7 +84,7 @@ class InvocationLog(Model): self._aef_id = aef_id @property - def api_invoker_id(self): + def api_invoker_id(self) -> str: """Gets the api_invoker_id of this InvocationLog. Identity of the API invoker which invoked the service API # noqa: E501 @@ -98,7 +95,7 @@ class InvocationLog(Model): return self._api_invoker_id @api_invoker_id.setter - def api_invoker_id(self, api_invoker_id): + def api_invoker_id(self, api_invoker_id: str): """Sets the api_invoker_id of this InvocationLog. Identity of the API invoker which invoked the service API # noqa: E501 @@ -112,7 +109,7 @@ class InvocationLog(Model): self._api_invoker_id = api_invoker_id @property - def logs(self): + def logs(self) -> List[Log]: """Gets the logs of this InvocationLog. Service API invocation log # noqa: E501 @@ -123,7 +120,7 @@ class InvocationLog(Model): return self._logs @logs.setter - def logs(self, logs): + def logs(self, logs: List[Log]): """Sets the logs of this InvocationLog. Service API invocation log # noqa: E501 @@ -139,10 +136,10 @@ class InvocationLog(Model): self._logs = logs @property - def supported_features(self): + def supported_features(self) -> str: """Gets the supported_features of this InvocationLog. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :return: The supported_features of this InvocationLog. :rtype: str @@ -150,10 +147,10 @@ class InvocationLog(Model): return self._supported_features @supported_features.setter - def supported_features(self, supported_features): + def supported_features(self, supported_features: str): """Sets the supported_features of this InvocationLog. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :param supported_features: The supported_features of this InvocationLog. :type supported_features: str diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ip_addr_range.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ip_addr_range.py new file mode 100644 index 0000000..f633723 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ip_addr_range.py @@ -0,0 +1,99 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.ipv4_address_range import Ipv4AddressRange +from capif_events.models.ipv6_address_range1 import Ipv6AddressRange1 +from capif_events import util + +from capif_events.models.ipv4_address_range import Ipv4AddressRange # noqa: E501 +from capif_events.models.ipv6_address_range1 import Ipv6AddressRange1 # noqa: E501 + +class IpAddrRange(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, ue_ipv4_addr_ranges=None, ue_ipv6_addr_ranges=None): # noqa: E501 + """IpAddrRange - a model defined in OpenAPI + + :param ue_ipv4_addr_ranges: The ue_ipv4_addr_ranges of this IpAddrRange. # noqa: E501 + :type ue_ipv4_addr_ranges: List[Ipv4AddressRange] + :param ue_ipv6_addr_ranges: The ue_ipv6_addr_ranges of this IpAddrRange. # noqa: E501 + :type ue_ipv6_addr_ranges: List[Ipv6AddressRange1] + """ + self.openapi_types = { + 'ue_ipv4_addr_ranges': List[Ipv4AddressRange], + 'ue_ipv6_addr_ranges': List[Ipv6AddressRange1] + } + + self.attribute_map = { + 'ue_ipv4_addr_ranges': 'ueIpv4AddrRanges', + 'ue_ipv6_addr_ranges': 'ueIpv6AddrRanges' + } + + self._ue_ipv4_addr_ranges = ue_ipv4_addr_ranges + self._ue_ipv6_addr_ranges = ue_ipv6_addr_ranges + + @classmethod + def from_dict(cls, dikt) -> 'IpAddrRange': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The IpAddrRange of this IpAddrRange. # noqa: E501 + :rtype: IpAddrRange + """ + return util.deserialize_model(dikt, cls) + + @property + def ue_ipv4_addr_ranges(self) -> List[Ipv4AddressRange]: + """Gets the ue_ipv4_addr_ranges of this IpAddrRange. + + Represents the IPv4 Address ranges of the UE(s). # noqa: E501 + + :return: The ue_ipv4_addr_ranges of this IpAddrRange. + :rtype: List[Ipv4AddressRange] + """ + return self._ue_ipv4_addr_ranges + + @ue_ipv4_addr_ranges.setter + def ue_ipv4_addr_ranges(self, ue_ipv4_addr_ranges: List[Ipv4AddressRange]): + """Sets the ue_ipv4_addr_ranges of this IpAddrRange. + + Represents the IPv4 Address ranges of the UE(s). # noqa: E501 + + :param ue_ipv4_addr_ranges: The ue_ipv4_addr_ranges of this IpAddrRange. + :type ue_ipv4_addr_ranges: List[Ipv4AddressRange] + """ + if ue_ipv4_addr_ranges is not None and len(ue_ipv4_addr_ranges) < 1: + raise ValueError("Invalid value for `ue_ipv4_addr_ranges`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._ue_ipv4_addr_ranges = ue_ipv4_addr_ranges + + @property + def ue_ipv6_addr_ranges(self) -> List[Ipv6AddressRange1]: + """Gets the ue_ipv6_addr_ranges of this IpAddrRange. + + Represents the Ipv6 Address ranges of the UE(s). # noqa: E501 + + :return: The ue_ipv6_addr_ranges of this IpAddrRange. + :rtype: List[Ipv6AddressRange1] + """ + return self._ue_ipv6_addr_ranges + + @ue_ipv6_addr_ranges.setter + def ue_ipv6_addr_ranges(self, ue_ipv6_addr_ranges: List[Ipv6AddressRange1]): + """Sets the ue_ipv6_addr_ranges of this IpAddrRange. + + Represents the Ipv6 Address ranges of the UE(s). # noqa: E501 + + :param ue_ipv6_addr_ranges: The ue_ipv6_addr_ranges of this IpAddrRange. + :type ue_ipv6_addr_ranges: List[Ipv6AddressRange1] + """ + if ue_ipv6_addr_ranges is not None and len(ue_ipv6_addr_ranges) < 1: + raise ValueError("Invalid value for `ue_ipv6_addr_ranges`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._ue_ipv6_addr_ranges = ue_ipv6_addr_ranges diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range.py index 2741ca3..1e5f5c3 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model import re from capif_events import util @@ -50,10 +47,10 @@ class Ipv4AddressRange(Model): return util.deserialize_model(dikt, cls) @property - def start(self): + def start(self) -> str: """Gets the start of this Ipv4AddressRange. - String identifying a IPv4 address formatted in the \"dotted decimal\" notation as defined in RFC 1166. # noqa: E501 + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 :return: The start of this Ipv4AddressRange. :rtype: str @@ -61,24 +58,26 @@ class Ipv4AddressRange(Model): return self._start @start.setter - def start(self, start): + def start(self, start: str): """Sets the start of this Ipv4AddressRange. - String identifying a IPv4 address formatted in the \"dotted decimal\" notation as defined in RFC 1166. # noqa: E501 + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 :param start: The start of this Ipv4AddressRange. :type start: str """ + if start is None: + raise ValueError("Invalid value for `start`, must not be `None`") # noqa: E501 if start is not None and not re.search(r'^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$', start): # noqa: E501 raise ValueError("Invalid value for `start`, must be a follow pattern or equal to `/^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/`") # noqa: E501 self._start = start @property - def end(self): + def end(self) -> str: """Gets the end of this Ipv4AddressRange. - String identifying a IPv4 address formatted in the \"dotted decimal\" notation as defined in RFC 1166. # noqa: E501 + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 :return: The end of this Ipv4AddressRange. :rtype: str @@ -86,14 +85,16 @@ class Ipv4AddressRange(Model): return self._end @end.setter - def end(self, end): + def end(self, end: str): """Sets the end of this Ipv4AddressRange. - String identifying a IPv4 address formatted in the \"dotted decimal\" notation as defined in RFC 1166. # noqa: E501 + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 :param end: The end of this Ipv4AddressRange. :type end: str """ + if end is None: + raise ValueError("Invalid value for `end`, must not be `None`") # noqa: E501 if end is not None and not re.search(r'^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$', end): # noqa: E501 raise ValueError("Invalid value for `end`, must be a follow pattern or equal to `/^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/`") # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range1.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range1.py new file mode 100644 index 0000000..2f8b4a5 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv4_address_range1.py @@ -0,0 +1,97 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +import re +from capif_events import util + +import re # noqa: E501 + +class Ipv4AddressRange1(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, start=None, end=None): # noqa: E501 + """Ipv4AddressRange1 - a model defined in OpenAPI + + :param start: The start of this Ipv4AddressRange1. # noqa: E501 + :type start: str + :param end: The end of this Ipv4AddressRange1. # noqa: E501 + :type end: str + """ + self.openapi_types = { + 'start': str, + 'end': str + } + + self.attribute_map = { + 'start': 'start', + 'end': 'end' + } + + self._start = start + self._end = end + + @classmethod + def from_dict(cls, dikt) -> 'Ipv4AddressRange1': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Ipv4AddressRange_1 of this Ipv4AddressRange1. # noqa: E501 + :rtype: Ipv4AddressRange1 + """ + return util.deserialize_model(dikt, cls) + + @property + def start(self) -> str: + """Gets the start of this Ipv4AddressRange1. + + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 + + :return: The start of this Ipv4AddressRange1. + :rtype: str + """ + return self._start + + @start.setter + def start(self, start: str): + """Sets the start of this Ipv4AddressRange1. + + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 + + :param start: The start of this Ipv4AddressRange1. + :type start: str + """ + if start is not None and not re.search(r'^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$', start): # noqa: E501 + raise ValueError("Invalid value for `start`, must be a follow pattern or equal to `/^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/`") # noqa: E501 + + self._start = start + + @property + def end(self) -> str: + """Gets the end of this Ipv4AddressRange1. + + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 + + :return: The end of this Ipv4AddressRange1. + :rtype: str + """ + return self._end + + @end.setter + def end(self, end: str): + """Sets the end of this Ipv4AddressRange1. + + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. # noqa: E501 + + :param end: The end of this Ipv4AddressRange1. + :type end: str + """ + if end is not None and not re.search(r'^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$', end): # noqa: E501 + raise ValueError("Invalid value for `end`, must be a follow pattern or equal to `/^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/`") # noqa: E501 + + self._end = end diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/data_format_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_addr1.py similarity index 58% rename from services/TS29222_CAPIF_Events_API/capif_events/models/data_format_any_of.py rename to services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_addr1.py index 6ccaf76..d07d487 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/data_format_any_of.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_addr1.py @@ -1,26 +1,19 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util -class DataFormatAnyOf(Model): +class Ipv6Addr1(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ - """ - allowed enum values - """ - JSON = "JSON" def __init__(self): # noqa: E501 - """DataFormatAnyOf - a model defined in OpenAPI + """Ipv6Addr1 - a model defined in OpenAPI """ self.openapi_types = { @@ -30,12 +23,12 @@ class DataFormatAnyOf(Model): } @classmethod - def from_dict(cls, dikt) -> 'DataFormatAnyOf': + def from_dict(cls, dikt) -> 'Ipv6Addr1': """Returns the dict as a model :param dikt: A dict. :type: dict - :return: The DataFormat_anyOf of this DataFormatAnyOf. # noqa: E501 - :rtype: DataFormatAnyOf + :return: The Ipv6Addr_1 of this Ipv6Addr1. # noqa: E501 + :rtype: Ipv6Addr1 """ return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range.py index a979db9..17f20cd 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -48,10 +45,10 @@ class Ipv6AddressRange(Model): return util.deserialize_model(dikt, cls) @property - def start(self): + def start(self) -> str: """Gets the start of this Ipv6AddressRange. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :return: The start of this Ipv6AddressRange. :rtype: str @@ -59,10 +56,10 @@ class Ipv6AddressRange(Model): return self._start @start.setter - def start(self, start): + def start(self, start: str): """Sets the start of this Ipv6AddressRange. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :param start: The start of this Ipv6AddressRange. :type start: str @@ -73,10 +70,10 @@ class Ipv6AddressRange(Model): self._start = start @property - def end(self): + def end(self) -> str: """Gets the end of this Ipv6AddressRange. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :return: The end of this Ipv6AddressRange. :rtype: str @@ -84,10 +81,10 @@ class Ipv6AddressRange(Model): return self._end @end.setter - def end(self, end): + def end(self, end: str): """Sets the end of this Ipv6AddressRange. - string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. # noqa: E501 :param end: The end of this Ipv6AddressRange. :type end: str diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range1.py b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range1.py new file mode 100644 index 0000000..4d67805 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/ipv6_address_range1.py @@ -0,0 +1,93 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.ipv6_addr1 import Ipv6Addr1 +from capif_events import util + +from capif_events.models.ipv6_addr1 import Ipv6Addr1 # noqa: E501 + +class Ipv6AddressRange1(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, start=None, end=None): # noqa: E501 + """Ipv6AddressRange1 - a model defined in OpenAPI + + :param start: The start of this Ipv6AddressRange1. # noqa: E501 + :type start: Ipv6Addr1 + :param end: The end of this Ipv6AddressRange1. # noqa: E501 + :type end: Ipv6Addr1 + """ + self.openapi_types = { + 'start': Ipv6Addr1, + 'end': Ipv6Addr1 + } + + self.attribute_map = { + 'start': 'start', + 'end': 'end' + } + + self._start = start + self._end = end + + @classmethod + def from_dict(cls, dikt) -> 'Ipv6AddressRange1': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Ipv6AddressRange_1 of this Ipv6AddressRange1. # noqa: E501 + :rtype: Ipv6AddressRange1 + """ + return util.deserialize_model(dikt, cls) + + @property + def start(self) -> Ipv6Addr1: + """Gets the start of this Ipv6AddressRange1. + + + :return: The start of this Ipv6AddressRange1. + :rtype: Ipv6Addr1 + """ + return self._start + + @start.setter + def start(self, start: Ipv6Addr1): + """Sets the start of this Ipv6AddressRange1. + + + :param start: The start of this Ipv6AddressRange1. + :type start: Ipv6Addr1 + """ + if start is None: + raise ValueError("Invalid value for `start`, must not be `None`") # noqa: E501 + + self._start = start + + @property + def end(self) -> Ipv6Addr1: + """Gets the end of this Ipv6AddressRange1. + + + :return: The end of this Ipv6AddressRange1. + :rtype: Ipv6Addr1 + """ + return self._end + + @end.setter + def end(self, end: Ipv6Addr1): + """Sets the end of this Ipv6AddressRange1. + + + :param end: The end of this Ipv6AddressRange1. + :type end: Ipv6Addr1 + """ + if end is None: + raise ValueError("Invalid value for `end`, must not be `None`") # noqa: E501 + + self._end = end diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/local2d_point_uncertainty_ellipse.py b/services/TS29222_CAPIF_Events_API/capif_events/models/local2d_point_uncertainty_ellipse.py new file mode 100644 index 0000000..694b07d --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/local2d_point_uncertainty_ellipse.py @@ -0,0 +1,191 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.local_origin import LocalOrigin +from capif_events.models.relative_cartesian_location import RelativeCartesianLocation +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.local_origin import LocalOrigin # noqa: E501 +from capif_events.models.relative_cartesian_location import RelativeCartesianLocation # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse # noqa: E501 + +class Local2dPointUncertaintyEllipse(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, local_origin=None, point=None, uncertainty_ellipse=None, confidence=None): # noqa: E501 + """Local2dPointUncertaintyEllipse - a model defined in OpenAPI + + :param shape: The shape of this Local2dPointUncertaintyEllipse. # noqa: E501 + :type shape: SupportedGADShapes + :param local_origin: The local_origin of this Local2dPointUncertaintyEllipse. # noqa: E501 + :type local_origin: LocalOrigin + :param point: The point of this Local2dPointUncertaintyEllipse. # noqa: E501 + :type point: RelativeCartesianLocation + :param uncertainty_ellipse: The uncertainty_ellipse of this Local2dPointUncertaintyEllipse. # noqa: E501 + :type uncertainty_ellipse: UncertaintyEllipse + :param confidence: The confidence of this Local2dPointUncertaintyEllipse. # noqa: E501 + :type confidence: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'local_origin': LocalOrigin, + 'point': RelativeCartesianLocation, + 'uncertainty_ellipse': UncertaintyEllipse, + 'confidence': int + } + + self.attribute_map = { + 'shape': 'shape', + 'local_origin': 'localOrigin', + 'point': 'point', + 'uncertainty_ellipse': 'uncertaintyEllipse', + 'confidence': 'confidence' + } + + self._shape = shape + self._local_origin = local_origin + self._point = point + self._uncertainty_ellipse = uncertainty_ellipse + self._confidence = confidence + + @classmethod + def from_dict(cls, dikt) -> 'Local2dPointUncertaintyEllipse': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Local2dPointUncertaintyEllipse of this Local2dPointUncertaintyEllipse. # noqa: E501 + :rtype: Local2dPointUncertaintyEllipse + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this Local2dPointUncertaintyEllipse. + + + :return: The shape of this Local2dPointUncertaintyEllipse. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this Local2dPointUncertaintyEllipse. + + + :param shape: The shape of this Local2dPointUncertaintyEllipse. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def local_origin(self) -> LocalOrigin: + """Gets the local_origin of this Local2dPointUncertaintyEllipse. + + + :return: The local_origin of this Local2dPointUncertaintyEllipse. + :rtype: LocalOrigin + """ + return self._local_origin + + @local_origin.setter + def local_origin(self, local_origin: LocalOrigin): + """Sets the local_origin of this Local2dPointUncertaintyEllipse. + + + :param local_origin: The local_origin of this Local2dPointUncertaintyEllipse. + :type local_origin: LocalOrigin + """ + if local_origin is None: + raise ValueError("Invalid value for `local_origin`, must not be `None`") # noqa: E501 + + self._local_origin = local_origin + + @property + def point(self) -> RelativeCartesianLocation: + """Gets the point of this Local2dPointUncertaintyEllipse. + + + :return: The point of this Local2dPointUncertaintyEllipse. + :rtype: RelativeCartesianLocation + """ + return self._point + + @point.setter + def point(self, point: RelativeCartesianLocation): + """Sets the point of this Local2dPointUncertaintyEllipse. + + + :param point: The point of this Local2dPointUncertaintyEllipse. + :type point: RelativeCartesianLocation + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def uncertainty_ellipse(self) -> UncertaintyEllipse: + """Gets the uncertainty_ellipse of this Local2dPointUncertaintyEllipse. + + + :return: The uncertainty_ellipse of this Local2dPointUncertaintyEllipse. + :rtype: UncertaintyEllipse + """ + return self._uncertainty_ellipse + + @uncertainty_ellipse.setter + def uncertainty_ellipse(self, uncertainty_ellipse: UncertaintyEllipse): + """Sets the uncertainty_ellipse of this Local2dPointUncertaintyEllipse. + + + :param uncertainty_ellipse: The uncertainty_ellipse of this Local2dPointUncertaintyEllipse. + :type uncertainty_ellipse: UncertaintyEllipse + """ + if uncertainty_ellipse is None: + raise ValueError("Invalid value for `uncertainty_ellipse`, must not be `None`") # noqa: E501 + + self._uncertainty_ellipse = uncertainty_ellipse + + @property + def confidence(self) -> int: + """Gets the confidence of this Local2dPointUncertaintyEllipse. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this Local2dPointUncertaintyEllipse. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this Local2dPointUncertaintyEllipse. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this Local2dPointUncertaintyEllipse. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/local3d_point_uncertainty_ellipsoid.py b/services/TS29222_CAPIF_Events_API/capif_events/models/local3d_point_uncertainty_ellipsoid.py new file mode 100644 index 0000000..5ba9504 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/local3d_point_uncertainty_ellipsoid.py @@ -0,0 +1,191 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.local_origin import LocalOrigin +from capif_events.models.relative_cartesian_location import RelativeCartesianLocation +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events.models.uncertainty_ellipsoid import UncertaintyEllipsoid +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.local_origin import LocalOrigin # noqa: E501 +from capif_events.models.relative_cartesian_location import RelativeCartesianLocation # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 +from capif_events.models.uncertainty_ellipsoid import UncertaintyEllipsoid # noqa: E501 + +class Local3dPointUncertaintyEllipsoid(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, local_origin=None, point=None, uncertainty_ellipsoid=None, confidence=None): # noqa: E501 + """Local3dPointUncertaintyEllipsoid - a model defined in OpenAPI + + :param shape: The shape of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :type shape: SupportedGADShapes + :param local_origin: The local_origin of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :type local_origin: LocalOrigin + :param point: The point of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :type point: RelativeCartesianLocation + :param uncertainty_ellipsoid: The uncertainty_ellipsoid of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :type uncertainty_ellipsoid: UncertaintyEllipsoid + :param confidence: The confidence of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :type confidence: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'local_origin': LocalOrigin, + 'point': RelativeCartesianLocation, + 'uncertainty_ellipsoid': UncertaintyEllipsoid, + 'confidence': int + } + + self.attribute_map = { + 'shape': 'shape', + 'local_origin': 'localOrigin', + 'point': 'point', + 'uncertainty_ellipsoid': 'uncertaintyEllipsoid', + 'confidence': 'confidence' + } + + self._shape = shape + self._local_origin = local_origin + self._point = point + self._uncertainty_ellipsoid = uncertainty_ellipsoid + self._confidence = confidence + + @classmethod + def from_dict(cls, dikt) -> 'Local3dPointUncertaintyEllipsoid': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Local3dPointUncertaintyEllipsoid of this Local3dPointUncertaintyEllipsoid. # noqa: E501 + :rtype: Local3dPointUncertaintyEllipsoid + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this Local3dPointUncertaintyEllipsoid. + + + :return: The shape of this Local3dPointUncertaintyEllipsoid. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this Local3dPointUncertaintyEllipsoid. + + + :param shape: The shape of this Local3dPointUncertaintyEllipsoid. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def local_origin(self) -> LocalOrigin: + """Gets the local_origin of this Local3dPointUncertaintyEllipsoid. + + + :return: The local_origin of this Local3dPointUncertaintyEllipsoid. + :rtype: LocalOrigin + """ + return self._local_origin + + @local_origin.setter + def local_origin(self, local_origin: LocalOrigin): + """Sets the local_origin of this Local3dPointUncertaintyEllipsoid. + + + :param local_origin: The local_origin of this Local3dPointUncertaintyEllipsoid. + :type local_origin: LocalOrigin + """ + if local_origin is None: + raise ValueError("Invalid value for `local_origin`, must not be `None`") # noqa: E501 + + self._local_origin = local_origin + + @property + def point(self) -> RelativeCartesianLocation: + """Gets the point of this Local3dPointUncertaintyEllipsoid. + + + :return: The point of this Local3dPointUncertaintyEllipsoid. + :rtype: RelativeCartesianLocation + """ + return self._point + + @point.setter + def point(self, point: RelativeCartesianLocation): + """Sets the point of this Local3dPointUncertaintyEllipsoid. + + + :param point: The point of this Local3dPointUncertaintyEllipsoid. + :type point: RelativeCartesianLocation + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def uncertainty_ellipsoid(self) -> UncertaintyEllipsoid: + """Gets the uncertainty_ellipsoid of this Local3dPointUncertaintyEllipsoid. + + + :return: The uncertainty_ellipsoid of this Local3dPointUncertaintyEllipsoid. + :rtype: UncertaintyEllipsoid + """ + return self._uncertainty_ellipsoid + + @uncertainty_ellipsoid.setter + def uncertainty_ellipsoid(self, uncertainty_ellipsoid: UncertaintyEllipsoid): + """Sets the uncertainty_ellipsoid of this Local3dPointUncertaintyEllipsoid. + + + :param uncertainty_ellipsoid: The uncertainty_ellipsoid of this Local3dPointUncertaintyEllipsoid. + :type uncertainty_ellipsoid: UncertaintyEllipsoid + """ + if uncertainty_ellipsoid is None: + raise ValueError("Invalid value for `uncertainty_ellipsoid`, must not be `None`") # noqa: E501 + + self._uncertainty_ellipsoid = uncertainty_ellipsoid + + @property + def confidence(self) -> int: + """Gets the confidence of this Local3dPointUncertaintyEllipsoid. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this Local3dPointUncertaintyEllipsoid. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this Local3dPointUncertaintyEllipsoid. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this Local3dPointUncertaintyEllipsoid. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/local_origin.py b/services/TS29222_CAPIF_Events_API/capif_events/models/local_origin.py new file mode 100644 index 0000000..07ec559 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/local_origin.py @@ -0,0 +1,89 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events import util + +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 + +class LocalOrigin(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, coordinate_id=None, point=None): # noqa: E501 + """LocalOrigin - a model defined in OpenAPI + + :param coordinate_id: The coordinate_id of this LocalOrigin. # noqa: E501 + :type coordinate_id: str + :param point: The point of this LocalOrigin. # noqa: E501 + :type point: GeographicalCoordinates + """ + self.openapi_types = { + 'coordinate_id': str, + 'point': GeographicalCoordinates + } + + self.attribute_map = { + 'coordinate_id': 'coordinateId', + 'point': 'point' + } + + self._coordinate_id = coordinate_id + self._point = point + + @classmethod + def from_dict(cls, dikt) -> 'LocalOrigin': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The LocalOrigin of this LocalOrigin. # noqa: E501 + :rtype: LocalOrigin + """ + return util.deserialize_model(dikt, cls) + + @property + def coordinate_id(self) -> str: + """Gets the coordinate_id of this LocalOrigin. + + + :return: The coordinate_id of this LocalOrigin. + :rtype: str + """ + return self._coordinate_id + + @coordinate_id.setter + def coordinate_id(self, coordinate_id: str): + """Sets the coordinate_id of this LocalOrigin. + + + :param coordinate_id: The coordinate_id of this LocalOrigin. + :type coordinate_id: str + """ + + self._coordinate_id = coordinate_id + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this LocalOrigin. + + + :return: The point of this LocalOrigin. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this LocalOrigin. + + + :param point: The point of this LocalOrigin. + :type point: GeographicalCoordinates + """ + + self._point = point diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/log.py b/services/TS29222_CAPIF_Events_API/capif_events/models/log.py index 1ac69f9..bfb21f7 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/log.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/log.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.interface_description import InterfaceDescription from capif_events.models.operation import Operation from capif_events.models.protocol import Protocol @@ -119,7 +116,7 @@ class Log(Model): return util.deserialize_model(dikt, cls) @property - def api_id(self): + def api_id(self) -> str: """Gets the api_id of this Log. String identifying the API invoked. # noqa: E501 @@ -130,7 +127,7 @@ class Log(Model): return self._api_id @api_id.setter - def api_id(self, api_id): + def api_id(self, api_id: str): """Sets the api_id of this Log. String identifying the API invoked. # noqa: E501 @@ -144,10 +141,10 @@ class Log(Model): self._api_id = api_id @property - def api_name(self): + def api_name(self) -> str: """Gets the api_name of this Log. - Name of the API which was invoked, it is set as {apiName} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + Name of the API which was invoked, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :return: The api_name of this Log. :rtype: str @@ -155,10 +152,10 @@ class Log(Model): return self._api_name @api_name.setter - def api_name(self, api_name): + def api_name(self, api_name: str): """Sets the api_name of this Log. - Name of the API which was invoked, it is set as {apiName} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + Name of the API which was invoked, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :param api_name: The api_name of this Log. :type api_name: str @@ -169,7 +166,7 @@ class Log(Model): self._api_name = api_name @property - def api_version(self): + def api_version(self) -> str: """Gets the api_version of this Log. Version of the API which was invoked # noqa: E501 @@ -180,7 +177,7 @@ class Log(Model): return self._api_version @api_version.setter - def api_version(self, api_version): + def api_version(self, api_version: str): """Sets the api_version of this Log. Version of the API which was invoked # noqa: E501 @@ -194,7 +191,7 @@ class Log(Model): self._api_version = api_version @property - def resource_name(self): + def resource_name(self) -> str: """Gets the resource_name of this Log. Name of the specific resource invoked # noqa: E501 @@ -205,7 +202,7 @@ class Log(Model): return self._resource_name @resource_name.setter - def resource_name(self, resource_name): + def resource_name(self, resource_name: str): """Sets the resource_name of this Log. Name of the specific resource invoked # noqa: E501 @@ -219,7 +216,7 @@ class Log(Model): self._resource_name = resource_name @property - def uri(self): + def uri(self) -> str: """Gets the uri of this Log. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -230,7 +227,7 @@ class Log(Model): return self._uri @uri.setter - def uri(self, uri): + def uri(self, uri: str): """Sets the uri of this Log. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -242,7 +239,7 @@ class Log(Model): self._uri = uri @property - def protocol(self): + def protocol(self) -> Protocol: """Gets the protocol of this Log. @@ -252,7 +249,7 @@ class Log(Model): return self._protocol @protocol.setter - def protocol(self, protocol): + def protocol(self, protocol: Protocol): """Sets the protocol of this Log. @@ -265,7 +262,7 @@ class Log(Model): self._protocol = protocol @property - def operation(self): + def operation(self) -> Operation: """Gets the operation of this Log. @@ -275,7 +272,7 @@ class Log(Model): return self._operation @operation.setter - def operation(self, operation): + def operation(self, operation: Operation): """Sets the operation of this Log. @@ -286,7 +283,7 @@ class Log(Model): self._operation = operation @property - def result(self): + def result(self) -> str: """Gets the result of this Log. For HTTP protocol, it contains HTTP status code of the invocation # noqa: E501 @@ -297,7 +294,7 @@ class Log(Model): return self._result @result.setter - def result(self, result): + def result(self, result: str): """Sets the result of this Log. For HTTP protocol, it contains HTTP status code of the invocation # noqa: E501 @@ -311,7 +308,7 @@ class Log(Model): self._result = result @property - def invocation_time(self): + def invocation_time(self) -> datetime: """Gets the invocation_time of this Log. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -322,7 +319,7 @@ class Log(Model): return self._invocation_time @invocation_time.setter - def invocation_time(self, invocation_time): + def invocation_time(self, invocation_time: datetime): """Sets the invocation_time of this Log. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -334,10 +331,10 @@ class Log(Model): self._invocation_time = invocation_time @property - def invocation_latency(self): + def invocation_latency(self) -> int: """Gets the invocation_latency of this Log. - Unsigned integer identifying a period of time in units of milliseconds. # noqa: E501 + Represents a period of time in units of milliseconds. # noqa: E501 :return: The invocation_latency of this Log. :rtype: int @@ -345,10 +342,10 @@ class Log(Model): return self._invocation_latency @invocation_latency.setter - def invocation_latency(self, invocation_latency): + def invocation_latency(self, invocation_latency: int): """Sets the invocation_latency of this Log. - Unsigned integer identifying a period of time in units of milliseconds. # noqa: E501 + Represents a period of time in units of milliseconds. # noqa: E501 :param invocation_latency: The invocation_latency of this Log. :type invocation_latency: int @@ -359,10 +356,10 @@ class Log(Model): self._invocation_latency = invocation_latency @property - def input_parameters(self): + def input_parameters(self) -> object: """Gets the input_parameters of this Log. - List of input parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 + List of input parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 :return: The input_parameters of this Log. :rtype: object @@ -370,10 +367,10 @@ class Log(Model): return self._input_parameters @input_parameters.setter - def input_parameters(self, input_parameters): + def input_parameters(self, input_parameters: object): """Sets the input_parameters of this Log. - List of input parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 + List of input parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 :param input_parameters: The input_parameters of this Log. :type input_parameters: object @@ -382,10 +379,10 @@ class Log(Model): self._input_parameters = input_parameters @property - def output_parameters(self): + def output_parameters(self) -> object: """Gets the output_parameters of this Log. - List of output parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 + List of output parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 :return: The output_parameters of this Log. :rtype: object @@ -393,10 +390,10 @@ class Log(Model): return self._output_parameters @output_parameters.setter - def output_parameters(self, output_parameters): + def output_parameters(self, output_parameters: object): """Sets the output_parameters of this Log. - List of output parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 + List of output parameters. Can be any value - string, number, boolean, array or object. # noqa: E501 :param output_parameters: The output_parameters of this Log. :type output_parameters: object @@ -405,7 +402,7 @@ class Log(Model): self._output_parameters = output_parameters @property - def src_interface(self): + def src_interface(self) -> InterfaceDescription: """Gets the src_interface of this Log. @@ -415,7 +412,7 @@ class Log(Model): return self._src_interface @src_interface.setter - def src_interface(self, src_interface): + def src_interface(self, src_interface: InterfaceDescription): """Sets the src_interface of this Log. @@ -426,7 +423,7 @@ class Log(Model): self._src_interface = src_interface @property - def dest_interface(self): + def dest_interface(self) -> InterfaceDescription: """Gets the dest_interface of this Log. @@ -436,7 +433,7 @@ class Log(Model): return self._dest_interface @dest_interface.setter - def dest_interface(self, dest_interface): + def dest_interface(self, dest_interface: InterfaceDescription): """Sets the dest_interface of this Log. @@ -447,10 +444,10 @@ class Log(Model): self._dest_interface = dest_interface @property - def fwd_interface(self): + def fwd_interface(self) -> str: """Gets the fwd_interface of this Log. - It includes the node identifier (as defined in IETF RFC 7239 of all forwarding entities between the API invoker and the AEF, concatenated with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 # noqa: E501 + It includes the node identifier (as defined in IETF RFC 7239 of all forwarding entities between the API invoker and the AEF, concatenated with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 # noqa: E501 :return: The fwd_interface of this Log. :rtype: str @@ -458,10 +455,10 @@ class Log(Model): return self._fwd_interface @fwd_interface.setter - def fwd_interface(self, fwd_interface): + def fwd_interface(self, fwd_interface: str): """Sets the fwd_interface of this Log. - It includes the node identifier (as defined in IETF RFC 7239 of all forwarding entities between the API invoker and the AEF, concatenated with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 # noqa: E501 + It includes the node identifier (as defined in IETF RFC 7239 of all forwarding entities between the API invoker and the AEF, concatenated with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 # noqa: E501 :param fwd_interface: The fwd_interface of this Log. :type fwd_interface: str diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/muting_exception_instructions.py b/services/TS29222_CAPIF_Events_API/capif_events/models/muting_exception_instructions.py new file mode 100644 index 0000000..0083924 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/muting_exception_instructions.py @@ -0,0 +1,91 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.buffered_notifications_action import BufferedNotificationsAction +from capif_events.models.subscription_action import SubscriptionAction +from capif_events import util + +from capif_events.models.buffered_notifications_action import BufferedNotificationsAction # noqa: E501 +from capif_events.models.subscription_action import SubscriptionAction # noqa: E501 + +class MutingExceptionInstructions(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, buffered_notifs=None, subscription=None): # noqa: E501 + """MutingExceptionInstructions - a model defined in OpenAPI + + :param buffered_notifs: The buffered_notifs of this MutingExceptionInstructions. # noqa: E501 + :type buffered_notifs: BufferedNotificationsAction + :param subscription: The subscription of this MutingExceptionInstructions. # noqa: E501 + :type subscription: SubscriptionAction + """ + self.openapi_types = { + 'buffered_notifs': BufferedNotificationsAction, + 'subscription': SubscriptionAction + } + + self.attribute_map = { + 'buffered_notifs': 'bufferedNotifs', + 'subscription': 'subscription' + } + + self._buffered_notifs = buffered_notifs + self._subscription = subscription + + @classmethod + def from_dict(cls, dikt) -> 'MutingExceptionInstructions': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The MutingExceptionInstructions of this MutingExceptionInstructions. # noqa: E501 + :rtype: MutingExceptionInstructions + """ + return util.deserialize_model(dikt, cls) + + @property + def buffered_notifs(self) -> BufferedNotificationsAction: + """Gets the buffered_notifs of this MutingExceptionInstructions. + + + :return: The buffered_notifs of this MutingExceptionInstructions. + :rtype: BufferedNotificationsAction + """ + return self._buffered_notifs + + @buffered_notifs.setter + def buffered_notifs(self, buffered_notifs: BufferedNotificationsAction): + """Sets the buffered_notifs of this MutingExceptionInstructions. + + + :param buffered_notifs: The buffered_notifs of this MutingExceptionInstructions. + :type buffered_notifs: BufferedNotificationsAction + """ + + self._buffered_notifs = buffered_notifs + + @property + def subscription(self) -> SubscriptionAction: + """Gets the subscription of this MutingExceptionInstructions. + + + :return: The subscription of this MutingExceptionInstructions. + :rtype: SubscriptionAction + """ + return self._subscription + + @subscription.setter + def subscription(self, subscription: SubscriptionAction): + """Sets the subscription of this MutingExceptionInstructions. + + + :param subscription: The subscription of this MutingExceptionInstructions. + :type subscription: SubscriptionAction + """ + + self._subscription = subscription diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/muting_notifications_settings.py b/services/TS29222_CAPIF_Events_API/capif_events/models/muting_notifications_settings.py new file mode 100644 index 0000000..ac4ea3d --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/muting_notifications_settings.py @@ -0,0 +1,89 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class MutingNotificationsSettings(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, max_no_of_notif=None, duration_buffered_notif=None): # noqa: E501 + """MutingNotificationsSettings - a model defined in OpenAPI + + :param max_no_of_notif: The max_no_of_notif of this MutingNotificationsSettings. # noqa: E501 + :type max_no_of_notif: int + :param duration_buffered_notif: The duration_buffered_notif of this MutingNotificationsSettings. # noqa: E501 + :type duration_buffered_notif: int + """ + self.openapi_types = { + 'max_no_of_notif': int, + 'duration_buffered_notif': int + } + + self.attribute_map = { + 'max_no_of_notif': 'maxNoOfNotif', + 'duration_buffered_notif': 'durationBufferedNotif' + } + + self._max_no_of_notif = max_no_of_notif + self._duration_buffered_notif = duration_buffered_notif + + @classmethod + def from_dict(cls, dikt) -> 'MutingNotificationsSettings': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The MutingNotificationsSettings of this MutingNotificationsSettings. # noqa: E501 + :rtype: MutingNotificationsSettings + """ + return util.deserialize_model(dikt, cls) + + @property + def max_no_of_notif(self) -> int: + """Gets the max_no_of_notif of this MutingNotificationsSettings. + + + :return: The max_no_of_notif of this MutingNotificationsSettings. + :rtype: int + """ + return self._max_no_of_notif + + @max_no_of_notif.setter + def max_no_of_notif(self, max_no_of_notif: int): + """Sets the max_no_of_notif of this MutingNotificationsSettings. + + + :param max_no_of_notif: The max_no_of_notif of this MutingNotificationsSettings. + :type max_no_of_notif: int + """ + + self._max_no_of_notif = max_no_of_notif + + @property + def duration_buffered_notif(self) -> int: + """Gets the duration_buffered_notif of this MutingNotificationsSettings. + + indicating a time in seconds. # noqa: E501 + + :return: The duration_buffered_notif of this MutingNotificationsSettings. + :rtype: int + """ + return self._duration_buffered_notif + + @duration_buffered_notif.setter + def duration_buffered_notif(self, duration_buffered_notif: int): + """Sets the duration_buffered_notif of this MutingNotificationsSettings. + + indicating a time in seconds. # noqa: E501 + + :param duration_buffered_notif: The duration_buffered_notif of this MutingNotificationsSettings. + :type duration_buffered_notif: int + """ + + self._duration_buffered_notif = duration_buffered_notif diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag.py b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag.py index 6bc032c..fa4d525 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.notification_flag_any_of import NotificationFlagAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.notification_flag_any_of import NotificationFlagAnyOf # noqa: E501 class NotificationFlag(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag_any_of.py deleted file mode 100644 index f1133b1..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_flag_any_of.py +++ /dev/null @@ -1,43 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class NotificationFlagAnyOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - """ - allowed enum values - """ - ACTIVATE = "ACTIVATE" - DEACTIVATE = "DEACTIVATE" - RETRIEVAL = "RETRIEVAL" - def __init__(self): # noqa: E501 - """NotificationFlagAnyOf - a model defined in OpenAPI - - """ - self.openapi_types = { - } - - self.attribute_map = { - } - - @classmethod - def from_dict(cls, dikt) -> 'NotificationFlagAnyOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The NotificationFlag_anyOf of this NotificationFlagAnyOf. # noqa: E501 - :rtype: NotificationFlagAnyOf - """ - return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method.py b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method.py index b8600df..b87ce0b 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.notification_method_any_of import NotificationMethodAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.notification_method_any_of import NotificationMethodAnyOf # noqa: E501 class NotificationMethod(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method_any_of.py deleted file mode 100644 index 3bf0f83..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/notification_method_any_of.py +++ /dev/null @@ -1,43 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class NotificationMethodAnyOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - """ - allowed enum values - """ - PERIODIC = "PERIODIC" - ONE_TIME = "ONE_TIME" - ON_EVENT_DETECTION = "ON_EVENT_DETECTION" - def __init__(self): # noqa: E501 - """NotificationMethodAnyOf - a model defined in OpenAPI - - """ - self.openapi_types = { - } - - self.attribute_map = { - } - - @classmethod - def from_dict(cls, dikt) -> 'NotificationMethodAnyOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The NotificationMethod_anyOf of this NotificationMethodAnyOf. # noqa: E501 - :rtype: NotificationMethodAnyOf - """ - return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/operation.py b/services/TS29222_CAPIF_Events_API/capif_events/models/operation.py index 3c85bfb..01c0842 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/operation.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/operation.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.operation_any_of import OperationAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.operation_any_of import OperationAnyOf # noqa: E501 class Operation(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria.py b/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria.py index 063782b..1fed743 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.partitioning_criteria_any_of import PartitioningCriteriaAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.partitioning_criteria_any_of import PartitioningCriteriaAnyOf # noqa: E501 class PartitioningCriteria(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria_any_of.py deleted file mode 100644 index 4c0faed..0000000 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/partitioning_criteria_any_of.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding: utf-8 - -from __future__ import absolute_import -from datetime import date, datetime # noqa: F401 - -from typing import List, Dict # noqa: F401 - -from capif_events.models.base_model_ import Model -from capif_events import util - - -class PartitioningCriteriaAnyOf(Model): - """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - - Do not edit the class manually. - """ - - """ - allowed enum values - """ - TAC = "TAC" - SUBPLMN = "SUBPLMN" - GEOAREA = "GEOAREA" - SNSSAI = "SNSSAI" - DNN = "DNN" - def __init__(self): # noqa: E501 - """PartitioningCriteriaAnyOf - a model defined in OpenAPI - - """ - self.openapi_types = { - } - - self.attribute_map = { - } - - @classmethod - def from_dict(cls, dikt) -> 'PartitioningCriteriaAnyOf': - """Returns the dict as a model - - :param dikt: A dict. - :type: dict - :return: The PartitioningCriteria_anyOf of this PartitioningCriteriaAnyOf. # noqa: E501 - :rtype: PartitioningCriteriaAnyOf - """ - return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/point.py b/services/TS29222_CAPIF_Events_API/capif_events/models/point.py new file mode 100644 index 0000000..25e5dce --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/point.py @@ -0,0 +1,97 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class Point(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None): # noqa: E501 + """Point - a model defined in OpenAPI + + :param shape: The shape of this Point. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this Point. # noqa: E501 + :type point: GeographicalCoordinates + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point' + } + + self._shape = shape + self._point = point + + @classmethod + def from_dict(cls, dikt) -> 'Point': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Point of this Point. # noqa: E501 + :rtype: Point + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this Point. + + + :return: The shape of this Point. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this Point. + + + :param shape: The shape of this Point. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this Point. + + + :return: The point of this Point. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this Point. + + + :param point: The point of this Point. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude.py b/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude.py new file mode 100644 index 0000000..e1fbee8 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude.py @@ -0,0 +1,131 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class PointAltitude(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, altitude=None): # noqa: E501 + """PointAltitude - a model defined in OpenAPI + + :param shape: The shape of this PointAltitude. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this PointAltitude. # noqa: E501 + :type point: GeographicalCoordinates + :param altitude: The altitude of this PointAltitude. # noqa: E501 + :type altitude: float + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'altitude': float + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'altitude': 'altitude' + } + + self._shape = shape + self._point = point + self._altitude = altitude + + @classmethod + def from_dict(cls, dikt) -> 'PointAltitude': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The PointAltitude of this PointAltitude. # noqa: E501 + :rtype: PointAltitude + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this PointAltitude. + + + :return: The shape of this PointAltitude. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this PointAltitude. + + + :param shape: The shape of this PointAltitude. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this PointAltitude. + + + :return: The point of this PointAltitude. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this PointAltitude. + + + :param point: The point of this PointAltitude. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def altitude(self) -> float: + """Gets the altitude of this PointAltitude. + + Indicates value of altitude. # noqa: E501 + + :return: The altitude of this PointAltitude. + :rtype: float + """ + return self._altitude + + @altitude.setter + def altitude(self, altitude: float): + """Sets the altitude of this PointAltitude. + + Indicates value of altitude. # noqa: E501 + + :param altitude: The altitude of this PointAltitude. + :type altitude: float + """ + if altitude is None: + raise ValueError("Invalid value for `altitude`, must not be `None`") # noqa: E501 + if altitude is not None and altitude > 32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value less than or equal to `32767`") # noqa: E501 + if altitude is not None and altitude < -32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value greater than or equal to `-32767`") # noqa: E501 + + self._altitude = altitude diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude_uncertainty.py b/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude_uncertainty.py new file mode 100644 index 0000000..965fd43 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/point_altitude_uncertainty.py @@ -0,0 +1,259 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse # noqa: E501 + +class PointAltitudeUncertainty(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, altitude=None, uncertainty_ellipse=None, uncertainty_altitude=None, confidence=None, v_confidence=None): # noqa: E501 + """PointAltitudeUncertainty - a model defined in OpenAPI + + :param shape: The shape of this PointAltitudeUncertainty. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this PointAltitudeUncertainty. # noqa: E501 + :type point: GeographicalCoordinates + :param altitude: The altitude of this PointAltitudeUncertainty. # noqa: E501 + :type altitude: float + :param uncertainty_ellipse: The uncertainty_ellipse of this PointAltitudeUncertainty. # noqa: E501 + :type uncertainty_ellipse: UncertaintyEllipse + :param uncertainty_altitude: The uncertainty_altitude of this PointAltitudeUncertainty. # noqa: E501 + :type uncertainty_altitude: float + :param confidence: The confidence of this PointAltitudeUncertainty. # noqa: E501 + :type confidence: int + :param v_confidence: The v_confidence of this PointAltitudeUncertainty. # noqa: E501 + :type v_confidence: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'altitude': float, + 'uncertainty_ellipse': UncertaintyEllipse, + 'uncertainty_altitude': float, + 'confidence': int, + 'v_confidence': int + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'altitude': 'altitude', + 'uncertainty_ellipse': 'uncertaintyEllipse', + 'uncertainty_altitude': 'uncertaintyAltitude', + 'confidence': 'confidence', + 'v_confidence': 'vConfidence' + } + + self._shape = shape + self._point = point + self._altitude = altitude + self._uncertainty_ellipse = uncertainty_ellipse + self._uncertainty_altitude = uncertainty_altitude + self._confidence = confidence + self._v_confidence = v_confidence + + @classmethod + def from_dict(cls, dikt) -> 'PointAltitudeUncertainty': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The PointAltitudeUncertainty of this PointAltitudeUncertainty. # noqa: E501 + :rtype: PointAltitudeUncertainty + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this PointAltitudeUncertainty. + + + :return: The shape of this PointAltitudeUncertainty. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this PointAltitudeUncertainty. + + + :param shape: The shape of this PointAltitudeUncertainty. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this PointAltitudeUncertainty. + + + :return: The point of this PointAltitudeUncertainty. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this PointAltitudeUncertainty. + + + :param point: The point of this PointAltitudeUncertainty. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def altitude(self) -> float: + """Gets the altitude of this PointAltitudeUncertainty. + + Indicates value of altitude. # noqa: E501 + + :return: The altitude of this PointAltitudeUncertainty. + :rtype: float + """ + return self._altitude + + @altitude.setter + def altitude(self, altitude: float): + """Sets the altitude of this PointAltitudeUncertainty. + + Indicates value of altitude. # noqa: E501 + + :param altitude: The altitude of this PointAltitudeUncertainty. + :type altitude: float + """ + if altitude is None: + raise ValueError("Invalid value for `altitude`, must not be `None`") # noqa: E501 + if altitude is not None and altitude > 32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value less than or equal to `32767`") # noqa: E501 + if altitude is not None and altitude < -32767: # noqa: E501 + raise ValueError("Invalid value for `altitude`, must be a value greater than or equal to `-32767`") # noqa: E501 + + self._altitude = altitude + + @property + def uncertainty_ellipse(self) -> UncertaintyEllipse: + """Gets the uncertainty_ellipse of this PointAltitudeUncertainty. + + + :return: The uncertainty_ellipse of this PointAltitudeUncertainty. + :rtype: UncertaintyEllipse + """ + return self._uncertainty_ellipse + + @uncertainty_ellipse.setter + def uncertainty_ellipse(self, uncertainty_ellipse: UncertaintyEllipse): + """Sets the uncertainty_ellipse of this PointAltitudeUncertainty. + + + :param uncertainty_ellipse: The uncertainty_ellipse of this PointAltitudeUncertainty. + :type uncertainty_ellipse: UncertaintyEllipse + """ + if uncertainty_ellipse is None: + raise ValueError("Invalid value for `uncertainty_ellipse`, must not be `None`") # noqa: E501 + + self._uncertainty_ellipse = uncertainty_ellipse + + @property + def uncertainty_altitude(self) -> float: + """Gets the uncertainty_altitude of this PointAltitudeUncertainty. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty_altitude of this PointAltitudeUncertainty. + :rtype: float + """ + return self._uncertainty_altitude + + @uncertainty_altitude.setter + def uncertainty_altitude(self, uncertainty_altitude: float): + """Sets the uncertainty_altitude of this PointAltitudeUncertainty. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty_altitude: The uncertainty_altitude of this PointAltitudeUncertainty. + :type uncertainty_altitude: float + """ + if uncertainty_altitude is None: + raise ValueError("Invalid value for `uncertainty_altitude`, must not be `None`") # noqa: E501 + if uncertainty_altitude is not None and uncertainty_altitude < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty_altitude`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty_altitude = uncertainty_altitude + + @property + def confidence(self) -> int: + """Gets the confidence of this PointAltitudeUncertainty. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this PointAltitudeUncertainty. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this PointAltitudeUncertainty. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this PointAltitudeUncertainty. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence + + @property + def v_confidence(self) -> int: + """Gets the v_confidence of this PointAltitudeUncertainty. + + Indicates value of confidence. # noqa: E501 + + :return: The v_confidence of this PointAltitudeUncertainty. + :rtype: int + """ + return self._v_confidence + + @v_confidence.setter + def v_confidence(self, v_confidence: int): + """Sets the v_confidence of this PointAltitudeUncertainty. + + Indicates value of confidence. # noqa: E501 + + :param v_confidence: The v_confidence of this PointAltitudeUncertainty. + :type v_confidence: int + """ + if v_confidence is not None and v_confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `v_confidence`, must be a value less than or equal to `100`") # noqa: E501 + if v_confidence is not None and v_confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `v_confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._v_confidence = v_confidence diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_circle.py b/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_circle.py new file mode 100644 index 0000000..8ea7284 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_circle.py @@ -0,0 +1,129 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class PointUncertaintyCircle(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, uncertainty=None): # noqa: E501 + """PointUncertaintyCircle - a model defined in OpenAPI + + :param shape: The shape of this PointUncertaintyCircle. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this PointUncertaintyCircle. # noqa: E501 + :type point: GeographicalCoordinates + :param uncertainty: The uncertainty of this PointUncertaintyCircle. # noqa: E501 + :type uncertainty: float + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'uncertainty': float + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'uncertainty': 'uncertainty' + } + + self._shape = shape + self._point = point + self._uncertainty = uncertainty + + @classmethod + def from_dict(cls, dikt) -> 'PointUncertaintyCircle': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The PointUncertaintyCircle of this PointUncertaintyCircle. # noqa: E501 + :rtype: PointUncertaintyCircle + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this PointUncertaintyCircle. + + + :return: The shape of this PointUncertaintyCircle. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this PointUncertaintyCircle. + + + :param shape: The shape of this PointUncertaintyCircle. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this PointUncertaintyCircle. + + + :return: The point of this PointUncertaintyCircle. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this PointUncertaintyCircle. + + + :param point: The point of this PointUncertaintyCircle. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def uncertainty(self) -> float: + """Gets the uncertainty of this PointUncertaintyCircle. + + Indicates value of uncertainty. # noqa: E501 + + :return: The uncertainty of this PointUncertaintyCircle. + :rtype: float + """ + return self._uncertainty + + @uncertainty.setter + def uncertainty(self, uncertainty: float): + """Sets the uncertainty of this PointUncertaintyCircle. + + Indicates value of uncertainty. # noqa: E501 + + :param uncertainty: The uncertainty of this PointUncertaintyCircle. + :type uncertainty: float + """ + if uncertainty is None: + raise ValueError("Invalid value for `uncertainty`, must not be `None`") # noqa: E501 + if uncertainty is not None and uncertainty < 0: # noqa: E501 + raise ValueError("Invalid value for `uncertainty`, must be a value greater than or equal to `0`") # noqa: E501 + + self._uncertainty = uncertainty diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_ellipse.py b/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_ellipse.py new file mode 100644 index 0000000..07f7727 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/point_uncertainty_ellipse.py @@ -0,0 +1,161 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 +from capif_events.models.uncertainty_ellipse import UncertaintyEllipse # noqa: E501 + +class PointUncertaintyEllipse(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point=None, uncertainty_ellipse=None, confidence=None): # noqa: E501 + """PointUncertaintyEllipse - a model defined in OpenAPI + + :param shape: The shape of this PointUncertaintyEllipse. # noqa: E501 + :type shape: SupportedGADShapes + :param point: The point of this PointUncertaintyEllipse. # noqa: E501 + :type point: GeographicalCoordinates + :param uncertainty_ellipse: The uncertainty_ellipse of this PointUncertaintyEllipse. # noqa: E501 + :type uncertainty_ellipse: UncertaintyEllipse + :param confidence: The confidence of this PointUncertaintyEllipse. # noqa: E501 + :type confidence: int + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point': GeographicalCoordinates, + 'uncertainty_ellipse': UncertaintyEllipse, + 'confidence': int + } + + self.attribute_map = { + 'shape': 'shape', + 'point': 'point', + 'uncertainty_ellipse': 'uncertaintyEllipse', + 'confidence': 'confidence' + } + + self._shape = shape + self._point = point + self._uncertainty_ellipse = uncertainty_ellipse + self._confidence = confidence + + @classmethod + def from_dict(cls, dikt) -> 'PointUncertaintyEllipse': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The PointUncertaintyEllipse of this PointUncertaintyEllipse. # noqa: E501 + :rtype: PointUncertaintyEllipse + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this PointUncertaintyEllipse. + + + :return: The shape of this PointUncertaintyEllipse. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this PointUncertaintyEllipse. + + + :param shape: The shape of this PointUncertaintyEllipse. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point(self) -> GeographicalCoordinates: + """Gets the point of this PointUncertaintyEllipse. + + + :return: The point of this PointUncertaintyEllipse. + :rtype: GeographicalCoordinates + """ + return self._point + + @point.setter + def point(self, point: GeographicalCoordinates): + """Sets the point of this PointUncertaintyEllipse. + + + :param point: The point of this PointUncertaintyEllipse. + :type point: GeographicalCoordinates + """ + if point is None: + raise ValueError("Invalid value for `point`, must not be `None`") # noqa: E501 + + self._point = point + + @property + def uncertainty_ellipse(self) -> UncertaintyEllipse: + """Gets the uncertainty_ellipse of this PointUncertaintyEllipse. + + + :return: The uncertainty_ellipse of this PointUncertaintyEllipse. + :rtype: UncertaintyEllipse + """ + return self._uncertainty_ellipse + + @uncertainty_ellipse.setter + def uncertainty_ellipse(self, uncertainty_ellipse: UncertaintyEllipse): + """Sets the uncertainty_ellipse of this PointUncertaintyEllipse. + + + :param uncertainty_ellipse: The uncertainty_ellipse of this PointUncertaintyEllipse. + :type uncertainty_ellipse: UncertaintyEllipse + """ + if uncertainty_ellipse is None: + raise ValueError("Invalid value for `uncertainty_ellipse`, must not be `None`") # noqa: E501 + + self._uncertainty_ellipse = uncertainty_ellipse + + @property + def confidence(self) -> int: + """Gets the confidence of this PointUncertaintyEllipse. + + Indicates value of confidence. # noqa: E501 + + :return: The confidence of this PointUncertaintyEllipse. + :rtype: int + """ + return self._confidence + + @confidence.setter + def confidence(self, confidence: int): + """Sets the confidence of this PointUncertaintyEllipse. + + Indicates value of confidence. # noqa: E501 + + :param confidence: The confidence of this PointUncertaintyEllipse. + :type confidence: int + """ + if confidence is None: + raise ValueError("Invalid value for `confidence`, must not be `None`") # noqa: E501 + if confidence is not None and confidence > 100: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value less than or equal to `100`") # noqa: E501 + if confidence is not None and confidence < 0: # noqa: E501 + raise ValueError("Invalid value for `confidence`, must be a value greater than or equal to `0`") # noqa: E501 + + self._confidence = confidence diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/polygon.py b/services/TS29222_CAPIF_Events_API/capif_events/models/polygon.py new file mode 100644 index 0000000..8804de2 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/polygon.py @@ -0,0 +1,103 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events.models.gad_shape import GADShape +from capif_events.models.geographical_coordinates import GeographicalCoordinates +from capif_events.models.supported_gad_shapes import SupportedGADShapes +from capif_events import util + +from capif_events.models.gad_shape import GADShape # noqa: E501 +from capif_events.models.geographical_coordinates import GeographicalCoordinates # noqa: E501 +from capif_events.models.supported_gad_shapes import SupportedGADShapes # noqa: E501 + +class Polygon(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, shape=None, point_list=None): # noqa: E501 + """Polygon - a model defined in OpenAPI + + :param shape: The shape of this Polygon. # noqa: E501 + :type shape: SupportedGADShapes + :param point_list: The point_list of this Polygon. # noqa: E501 + :type point_list: List[GeographicalCoordinates] + """ + self.openapi_types = { + 'shape': SupportedGADShapes, + 'point_list': List[GeographicalCoordinates] + } + + self.attribute_map = { + 'shape': 'shape', + 'point_list': 'pointList' + } + + self._shape = shape + self._point_list = point_list + + @classmethod + def from_dict(cls, dikt) -> 'Polygon': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The Polygon of this Polygon. # noqa: E501 + :rtype: Polygon + """ + return util.deserialize_model(dikt, cls) + + @property + def shape(self) -> SupportedGADShapes: + """Gets the shape of this Polygon. + + + :return: The shape of this Polygon. + :rtype: SupportedGADShapes + """ + return self._shape + + @shape.setter + def shape(self, shape: SupportedGADShapes): + """Sets the shape of this Polygon. + + + :param shape: The shape of this Polygon. + :type shape: SupportedGADShapes + """ + if shape is None: + raise ValueError("Invalid value for `shape`, must not be `None`") # noqa: E501 + + self._shape = shape + + @property + def point_list(self) -> List[GeographicalCoordinates]: + """Gets the point_list of this Polygon. + + List of points. # noqa: E501 + + :return: The point_list of this Polygon. + :rtype: List[GeographicalCoordinates] + """ + return self._point_list + + @point_list.setter + def point_list(self, point_list: List[GeographicalCoordinates]): + """Sets the point_list of this Polygon. + + List of points. # noqa: E501 + + :param point_list: The point_list of this Polygon. + :type point_list: List[GeographicalCoordinates] + """ + if point_list is None: + raise ValueError("Invalid value for `point_list`, must not be `None`") # noqa: E501 + if point_list is not None and len(point_list) > 15: + raise ValueError("Invalid value for `point_list`, number of items must be less than or equal to `15`") # noqa: E501 + if point_list is not None and len(point_list) < 3: + raise ValueError("Invalid value for `point_list`, number of items must be greater than or equal to `3`") # noqa: E501 + + self._point_list = point_list diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/problem_details.py b/services/TS29222_CAPIF_Events_API/capif_events/models/problem_details.py index 04f1577..10e9114 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/problem_details.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/problem_details.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.invalid_param import InvalidParam import re from capif_events import util @@ -82,7 +79,7 @@ class ProblemDetails(Model): return util.deserialize_model(dikt, cls) @property - def type(self): + def type(self) -> str: """Gets the type of this ProblemDetails. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -93,7 +90,7 @@ class ProblemDetails(Model): return self._type @type.setter - def type(self, type): + def type(self, type: str): """Sets the type of this ProblemDetails. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -105,10 +102,10 @@ class ProblemDetails(Model): self._type = type @property - def title(self): + def title(self) -> str: """Gets the title of this ProblemDetails. - A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem. # noqa: E501 + A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem. # noqa: E501 :return: The title of this ProblemDetails. :rtype: str @@ -116,10 +113,10 @@ class ProblemDetails(Model): return self._title @title.setter - def title(self, title): + def title(self, title: str): """Sets the title of this ProblemDetails. - A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem. # noqa: E501 + A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem. # noqa: E501 :param title: The title of this ProblemDetails. :type title: str @@ -128,7 +125,7 @@ class ProblemDetails(Model): self._title = title @property - def status(self): + def status(self) -> int: """Gets the status of this ProblemDetails. The HTTP status code for this occurrence of the problem. # noqa: E501 @@ -139,7 +136,7 @@ class ProblemDetails(Model): return self._status @status.setter - def status(self, status): + def status(self, status: int): """Sets the status of this ProblemDetails. The HTTP status code for this occurrence of the problem. # noqa: E501 @@ -151,7 +148,7 @@ class ProblemDetails(Model): self._status = status @property - def detail(self): + def detail(self) -> str: """Gets the detail of this ProblemDetails. A human-readable explanation specific to this occurrence of the problem. # noqa: E501 @@ -162,7 +159,7 @@ class ProblemDetails(Model): return self._detail @detail.setter - def detail(self, detail): + def detail(self, detail: str): """Sets the detail of this ProblemDetails. A human-readable explanation specific to this occurrence of the problem. # noqa: E501 @@ -174,7 +171,7 @@ class ProblemDetails(Model): self._detail = detail @property - def instance(self): + def instance(self) -> str: """Gets the instance of this ProblemDetails. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -185,7 +182,7 @@ class ProblemDetails(Model): return self._instance @instance.setter - def instance(self, instance): + def instance(self, instance: str): """Sets the instance of this ProblemDetails. string providing an URI formatted according to IETF RFC 3986. # noqa: E501 @@ -197,10 +194,10 @@ class ProblemDetails(Model): self._instance = instance @property - def cause(self): + def cause(self) -> str: """Gets the cause of this ProblemDetails. - A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. # noqa: E501 + A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. # noqa: E501 :return: The cause of this ProblemDetails. :rtype: str @@ -208,10 +205,10 @@ class ProblemDetails(Model): return self._cause @cause.setter - def cause(self, cause): + def cause(self, cause: str): """Sets the cause of this ProblemDetails. - A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. # noqa: E501 + A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. # noqa: E501 :param cause: The cause of this ProblemDetails. :type cause: str @@ -220,10 +217,10 @@ class ProblemDetails(Model): self._cause = cause @property - def invalid_params(self): + def invalid_params(self) -> List[InvalidParam]: """Gets the invalid_params of this ProblemDetails. - Description of invalid parameters, for a request rejected due to invalid parameters. # noqa: E501 + Description of invalid parameters, for a request rejected due to invalid parameters. # noqa: E501 :return: The invalid_params of this ProblemDetails. :rtype: List[InvalidParam] @@ -231,10 +228,10 @@ class ProblemDetails(Model): return self._invalid_params @invalid_params.setter - def invalid_params(self, invalid_params): + def invalid_params(self, invalid_params: List[InvalidParam]): """Sets the invalid_params of this ProblemDetails. - Description of invalid parameters, for a request rejected due to invalid parameters. # noqa: E501 + Description of invalid parameters, for a request rejected due to invalid parameters. # noqa: E501 :param invalid_params: The invalid_params of this ProblemDetails. :type invalid_params: List[InvalidParam] @@ -245,10 +242,10 @@ class ProblemDetails(Model): self._invalid_params = invalid_params @property - def supported_features(self): + def supported_features(self) -> str: """Gets the supported_features of this ProblemDetails. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :return: The supported_features of this ProblemDetails. :rtype: str @@ -256,10 +253,10 @@ class ProblemDetails(Model): return self._supported_features @supported_features.setter - def supported_features(self, supported_features): + def supported_features(self, supported_features: str): """Sets the supported_features of this ProblemDetails. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :param supported_features: The supported_features of this ProblemDetails. :type supported_features: str diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/protocol.py b/services/TS29222_CAPIF_Events_API/capif_events/models/protocol.py index e62d3cd..437f5b2 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/protocol.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/protocol.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.protocol_any_of import ProtocolAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.protocol_any_of import ProtocolAnyOf # noqa: E501 class Protocol(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/published_api_path.py b/services/TS29222_CAPIF_Events_API/capif_events/models/published_api_path.py index 6554d77..f341f1c 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/published_api_path.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/published_api_path.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -43,7 +40,7 @@ class PublishedApiPath(Model): return util.deserialize_model(dikt, cls) @property - def ccf_ids(self): + def ccf_ids(self) -> List[str]: """Gets the ccf_ids of this PublishedApiPath. A list of CCF identifiers where the service API is already published. # noqa: E501 @@ -54,7 +51,7 @@ class PublishedApiPath(Model): return self._ccf_ids @ccf_ids.setter - def ccf_ids(self, ccf_ids): + def ccf_ids(self, ccf_ids: List[str]): """Sets the ccf_ids of this PublishedApiPath. A list of CCF identifiers where the service API is already published. # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/relative_cartesian_location.py b/services/TS29222_CAPIF_Events_API/capif_events/models/relative_cartesian_location.py new file mode 100644 index 0000000..5a99492 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/relative_cartesian_location.py @@ -0,0 +1,123 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class RelativeCartesianLocation(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, x=None, y=None, z=None): # noqa: E501 + """RelativeCartesianLocation - a model defined in OpenAPI + + :param x: The x of this RelativeCartesianLocation. # noqa: E501 + :type x: float + :param y: The y of this RelativeCartesianLocation. # noqa: E501 + :type y: float + :param z: The z of this RelativeCartesianLocation. # noqa: E501 + :type z: float + """ + self.openapi_types = { + 'x': float, + 'y': float, + 'z': float + } + + self.attribute_map = { + 'x': 'x', + 'y': 'y', + 'z': 'z' + } + + self._x = x + self._y = y + self._z = z + + @classmethod + def from_dict(cls, dikt) -> 'RelativeCartesianLocation': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The RelativeCartesianLocation of this RelativeCartesianLocation. # noqa: E501 + :rtype: RelativeCartesianLocation + """ + return util.deserialize_model(dikt, cls) + + @property + def x(self) -> float: + """Gets the x of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :return: The x of this RelativeCartesianLocation. + :rtype: float + """ + return self._x + + @x.setter + def x(self, x: float): + """Sets the x of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :param x: The x of this RelativeCartesianLocation. + :type x: float + """ + if x is None: + raise ValueError("Invalid value for `x`, must not be `None`") # noqa: E501 + + self._x = x + + @property + def y(self) -> float: + """Gets the y of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :return: The y of this RelativeCartesianLocation. + :rtype: float + """ + return self._y + + @y.setter + def y(self, y: float): + """Sets the y of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :param y: The y of this RelativeCartesianLocation. + :type y: float + """ + if y is None: + raise ValueError("Invalid value for `y`, must not be `None`") # noqa: E501 + + self._y = y + + @property + def z(self) -> float: + """Gets the z of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :return: The z of this RelativeCartesianLocation. + :rtype: float + """ + return self._z + + @z.setter + def z(self, z: float): + """Sets the z of this RelativeCartesianLocation. + + string with format 'float' as defined in OpenAPI. # noqa: E501 + + :param z: The z of this RelativeCartesianLocation. + :type z: float + """ + + self._z = z diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/reporting_information.py b/services/TS29222_CAPIF_Events_API/capif_events/models/reporting_information.py index 8a1a517..08e387b 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/reporting_information.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/reporting_information.py @@ -1,16 +1,17 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model +from capif_events.models.muting_exception_instructions import MutingExceptionInstructions +from capif_events.models.muting_notifications_settings import MutingNotificationsSettings from capif_events.models.notification_flag import NotificationFlag from capif_events.models.notification_method import NotificationMethod from capif_events.models.partitioning_criteria import PartitioningCriteria from capif_events import util +from capif_events.models.muting_exception_instructions import MutingExceptionInstructions # noqa: E501 +from capif_events.models.muting_notifications_settings import MutingNotificationsSettings # noqa: E501 from capif_events.models.notification_flag import NotificationFlag # noqa: E501 from capif_events.models.notification_method import NotificationMethod # noqa: E501 from capif_events.models.partitioning_criteria import PartitioningCriteria # noqa: E501 @@ -21,7 +22,7 @@ class ReportingInformation(Model): Do not edit the class manually. """ - def __init__(self, imm_rep=None, notif_method=None, max_report_nbr=None, mon_dur=None, rep_period=None, samp_ratio=None, partition_criteria=None, grp_rep_time=None, notif_flag=None): # noqa: E501 + def __init__(self, imm_rep=None, notif_method=None, max_report_nbr=None, mon_dur=None, rep_period=None, samp_ratio=None, partition_criteria=None, grp_rep_time=None, notif_flag=None, notif_flag_instruct=None, muting_setting=None): # noqa: E501 """ReportingInformation - a model defined in OpenAPI :param imm_rep: The imm_rep of this ReportingInformation. # noqa: E501 @@ -42,6 +43,10 @@ class ReportingInformation(Model): :type grp_rep_time: int :param notif_flag: The notif_flag of this ReportingInformation. # noqa: E501 :type notif_flag: NotificationFlag + :param notif_flag_instruct: The notif_flag_instruct of this ReportingInformation. # noqa: E501 + :type notif_flag_instruct: MutingExceptionInstructions + :param muting_setting: The muting_setting of this ReportingInformation. # noqa: E501 + :type muting_setting: MutingNotificationsSettings """ self.openapi_types = { 'imm_rep': bool, @@ -52,7 +57,9 @@ class ReportingInformation(Model): 'samp_ratio': int, 'partition_criteria': List[PartitioningCriteria], 'grp_rep_time': int, - 'notif_flag': NotificationFlag + 'notif_flag': NotificationFlag, + 'notif_flag_instruct': MutingExceptionInstructions, + 'muting_setting': MutingNotificationsSettings } self.attribute_map = { @@ -64,7 +71,9 @@ class ReportingInformation(Model): 'samp_ratio': 'sampRatio', 'partition_criteria': 'partitionCriteria', 'grp_rep_time': 'grpRepTime', - 'notif_flag': 'notifFlag' + 'notif_flag': 'notifFlag', + 'notif_flag_instruct': 'notifFlagInstruct', + 'muting_setting': 'mutingSetting' } self._imm_rep = imm_rep @@ -76,6 +85,8 @@ class ReportingInformation(Model): self._partition_criteria = partition_criteria self._grp_rep_time = grp_rep_time self._notif_flag = notif_flag + self._notif_flag_instruct = notif_flag_instruct + self._muting_setting = muting_setting @classmethod def from_dict(cls, dikt) -> 'ReportingInformation': @@ -89,7 +100,7 @@ class ReportingInformation(Model): return util.deserialize_model(dikt, cls) @property - def imm_rep(self): + def imm_rep(self) -> bool: """Gets the imm_rep of this ReportingInformation. @@ -99,7 +110,7 @@ class ReportingInformation(Model): return self._imm_rep @imm_rep.setter - def imm_rep(self, imm_rep): + def imm_rep(self, imm_rep: bool): """Sets the imm_rep of this ReportingInformation. @@ -110,7 +121,7 @@ class ReportingInformation(Model): self._imm_rep = imm_rep @property - def notif_method(self): + def notif_method(self) -> NotificationMethod: """Gets the notif_method of this ReportingInformation. @@ -120,7 +131,7 @@ class ReportingInformation(Model): return self._notif_method @notif_method.setter - def notif_method(self, notif_method): + def notif_method(self, notif_method: NotificationMethod): """Sets the notif_method of this ReportingInformation. @@ -131,7 +142,7 @@ class ReportingInformation(Model): self._notif_method = notif_method @property - def max_report_nbr(self): + def max_report_nbr(self) -> int: """Gets the max_report_nbr of this ReportingInformation. Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 @@ -142,7 +153,7 @@ class ReportingInformation(Model): return self._max_report_nbr @max_report_nbr.setter - def max_report_nbr(self, max_report_nbr): + def max_report_nbr(self, max_report_nbr: int): """Sets the max_report_nbr of this ReportingInformation. Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 @@ -156,10 +167,10 @@ class ReportingInformation(Model): self._max_report_nbr = max_report_nbr @property - def mon_dur(self): + def mon_dur(self) -> datetime: """Gets the mon_dur of this ReportingInformation. - string with format \"date-time\" as defined in OpenAPI. # noqa: E501 + string with format 'date-time' as defined in OpenAPI. # noqa: E501 :return: The mon_dur of this ReportingInformation. :rtype: datetime @@ -167,10 +178,10 @@ class ReportingInformation(Model): return self._mon_dur @mon_dur.setter - def mon_dur(self, mon_dur): + def mon_dur(self, mon_dur: datetime): """Sets the mon_dur of this ReportingInformation. - string with format \"date-time\" as defined in OpenAPI. # noqa: E501 + string with format 'date-time' as defined in OpenAPI. # noqa: E501 :param mon_dur: The mon_dur of this ReportingInformation. :type mon_dur: datetime @@ -179,7 +190,7 @@ class ReportingInformation(Model): self._mon_dur = mon_dur @property - def rep_period(self): + def rep_period(self) -> int: """Gets the rep_period of this ReportingInformation. indicating a time in seconds. # noqa: E501 @@ -190,7 +201,7 @@ class ReportingInformation(Model): return self._rep_period @rep_period.setter - def rep_period(self, rep_period): + def rep_period(self, rep_period: int): """Sets the rep_period of this ReportingInformation. indicating a time in seconds. # noqa: E501 @@ -202,10 +213,10 @@ class ReportingInformation(Model): self._rep_period = rep_period @property - def samp_ratio(self): + def samp_ratio(self) -> int: """Gets the samp_ratio of this ReportingInformation. - Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 of 3GPP TS 23.502), expressed in percent. # noqa: E501 + Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 of 3GPP TS 23.502), expressed in percent. # noqa: E501 :return: The samp_ratio of this ReportingInformation. :rtype: int @@ -213,10 +224,10 @@ class ReportingInformation(Model): return self._samp_ratio @samp_ratio.setter - def samp_ratio(self, samp_ratio): + def samp_ratio(self, samp_ratio: int): """Sets the samp_ratio of this ReportingInformation. - Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 of 3GPP TS 23.502), expressed in percent. # noqa: E501 + Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 of 3GPP TS 23.502), expressed in percent. # noqa: E501 :param samp_ratio: The samp_ratio of this ReportingInformation. :type samp_ratio: int @@ -229,7 +240,7 @@ class ReportingInformation(Model): self._samp_ratio = samp_ratio @property - def partition_criteria(self): + def partition_criteria(self) -> List[PartitioningCriteria]: """Gets the partition_criteria of this ReportingInformation. Criteria for partitioning the UEs before applying the sampling ratio. # noqa: E501 @@ -240,7 +251,7 @@ class ReportingInformation(Model): return self._partition_criteria @partition_criteria.setter - def partition_criteria(self, partition_criteria): + def partition_criteria(self, partition_criteria: List[PartitioningCriteria]): """Sets the partition_criteria of this ReportingInformation. Criteria for partitioning the UEs before applying the sampling ratio. # noqa: E501 @@ -254,7 +265,7 @@ class ReportingInformation(Model): self._partition_criteria = partition_criteria @property - def grp_rep_time(self): + def grp_rep_time(self) -> int: """Gets the grp_rep_time of this ReportingInformation. indicating a time in seconds. # noqa: E501 @@ -265,7 +276,7 @@ class ReportingInformation(Model): return self._grp_rep_time @grp_rep_time.setter - def grp_rep_time(self, grp_rep_time): + def grp_rep_time(self, grp_rep_time: int): """Sets the grp_rep_time of this ReportingInformation. indicating a time in seconds. # noqa: E501 @@ -277,7 +288,7 @@ class ReportingInformation(Model): self._grp_rep_time = grp_rep_time @property - def notif_flag(self): + def notif_flag(self) -> NotificationFlag: """Gets the notif_flag of this ReportingInformation. @@ -287,7 +298,7 @@ class ReportingInformation(Model): return self._notif_flag @notif_flag.setter - def notif_flag(self, notif_flag): + def notif_flag(self, notif_flag: NotificationFlag): """Sets the notif_flag of this ReportingInformation. @@ -296,3 +307,45 @@ class ReportingInformation(Model): """ self._notif_flag = notif_flag + + @property + def notif_flag_instruct(self) -> MutingExceptionInstructions: + """Gets the notif_flag_instruct of this ReportingInformation. + + + :return: The notif_flag_instruct of this ReportingInformation. + :rtype: MutingExceptionInstructions + """ + return self._notif_flag_instruct + + @notif_flag_instruct.setter + def notif_flag_instruct(self, notif_flag_instruct: MutingExceptionInstructions): + """Sets the notif_flag_instruct of this ReportingInformation. + + + :param notif_flag_instruct: The notif_flag_instruct of this ReportingInformation. + :type notif_flag_instruct: MutingExceptionInstructions + """ + + self._notif_flag_instruct = notif_flag_instruct + + @property + def muting_setting(self) -> MutingNotificationsSettings: + """Gets the muting_setting of this ReportingInformation. + + + :return: The muting_setting of this ReportingInformation. + :rtype: MutingNotificationsSettings + """ + return self._muting_setting + + @muting_setting.setter + def muting_setting(self, muting_setting: MutingNotificationsSettings): + """Sets the muting_setting of this ReportingInformation. + + + :param muting_setting: The muting_setting of this ReportingInformation. + :type muting_setting: MutingNotificationsSettings + """ + + self._muting_setting = muting_setting diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/resource.py b/services/TS29222_CAPIF_Events_API/capif_events/models/resource.py index 36e1623..8493f59 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/resource.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/resource.py @@ -1,16 +1,15 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.communication_type import CommunicationType +from capif_events.models.custom_operation import CustomOperation from capif_events.models.operation import Operation from capif_events import util from capif_events.models.communication_type import CommunicationType # noqa: E501 +from capif_events.models.custom_operation import CustomOperation # noqa: E501 from capif_events.models.operation import Operation # noqa: E501 class Resource(Model): @@ -19,7 +18,7 @@ class Resource(Model): Do not edit the class manually. """ - def __init__(self, resource_name=None, comm_type=None, uri=None, cust_op_name=None, operations=None, description=None): # noqa: E501 + def __init__(self, resource_name=None, comm_type=None, uri=None, cust_op_name=None, cust_operations=None, operations=None, description=None): # noqa: E501 """Resource - a model defined in OpenAPI :param resource_name: The resource_name of this Resource. # noqa: E501 @@ -30,6 +29,8 @@ class Resource(Model): :type uri: str :param cust_op_name: The cust_op_name of this Resource. # noqa: E501 :type cust_op_name: str + :param cust_operations: The cust_operations of this Resource. # noqa: E501 + :type cust_operations: List[CustomOperation] :param operations: The operations of this Resource. # noqa: E501 :type operations: List[Operation] :param description: The description of this Resource. # noqa: E501 @@ -40,6 +41,7 @@ class Resource(Model): 'comm_type': CommunicationType, 'uri': str, 'cust_op_name': str, + 'cust_operations': List[CustomOperation], 'operations': List[Operation], 'description': str } @@ -49,6 +51,7 @@ class Resource(Model): 'comm_type': 'commType', 'uri': 'uri', 'cust_op_name': 'custOpName', + 'cust_operations': 'custOperations', 'operations': 'operations', 'description': 'description' } @@ -57,6 +60,7 @@ class Resource(Model): self._comm_type = comm_type self._uri = uri self._cust_op_name = cust_op_name + self._cust_operations = cust_operations self._operations = operations self._description = description @@ -72,7 +76,7 @@ class Resource(Model): return util.deserialize_model(dikt, cls) @property - def resource_name(self): + def resource_name(self) -> str: """Gets the resource_name of this Resource. Resource name # noqa: E501 @@ -83,7 +87,7 @@ class Resource(Model): return self._resource_name @resource_name.setter - def resource_name(self, resource_name): + def resource_name(self, resource_name: str): """Sets the resource_name of this Resource. Resource name # noqa: E501 @@ -97,7 +101,7 @@ class Resource(Model): self._resource_name = resource_name @property - def comm_type(self): + def comm_type(self) -> CommunicationType: """Gets the comm_type of this Resource. @@ -107,7 +111,7 @@ class Resource(Model): return self._comm_type @comm_type.setter - def comm_type(self, comm_type): + def comm_type(self, comm_type: CommunicationType): """Sets the comm_type of this Resource. @@ -120,10 +124,10 @@ class Resource(Model): self._comm_type = comm_type @property - def uri(self): + def uri(self) -> str: """Gets the uri of this Resource. - Relative URI of the API resource, it is set as {apiSpecificResourceUriPart} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + Relative URI of the API resource, it is set as {apiSpecificSuffixes} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :return: The uri of this Resource. :rtype: str @@ -131,10 +135,10 @@ class Resource(Model): return self._uri @uri.setter - def uri(self, uri): + def uri(self, uri: str): """Sets the uri of this Resource. - Relative URI of the API resource, it is set as {apiSpecificResourceUriPart} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + Relative URI of the API resource, it is set as {apiSpecificSuffixes} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :param uri: The uri of this Resource. :type uri: str @@ -145,10 +149,10 @@ class Resource(Model): self._uri = uri @property - def cust_op_name(self): + def cust_op_name(self) -> str: """Gets the cust_op_name of this Resource. - it is set as {custOpName} part of the URI structure for a custom operation associated with a resource as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + it is set as {custOpName} part of the URI structure for a custom operation associated with a resource as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :return: The cust_op_name of this Resource. :rtype: str @@ -156,10 +160,10 @@ class Resource(Model): return self._cust_op_name @cust_op_name.setter - def cust_op_name(self, cust_op_name): + def cust_op_name(self, cust_op_name: str): """Sets the cust_op_name of this Resource. - it is set as {custOpName} part of the URI structure for a custom operation associated with a resource as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + it is set as {custOpName} part of the URI structure for a custom operation associated with a resource as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :param cust_op_name: The cust_op_name of this Resource. :type cust_op_name: str @@ -168,10 +172,35 @@ class Resource(Model): self._cust_op_name = cust_op_name @property - def operations(self): + def cust_operations(self) -> List[CustomOperation]: + """Gets the cust_operations of this Resource. + + Custom operations associated with this resource. # noqa: E501 + + :return: The cust_operations of this Resource. + :rtype: List[CustomOperation] + """ + return self._cust_operations + + @cust_operations.setter + def cust_operations(self, cust_operations: List[CustomOperation]): + """Sets the cust_operations of this Resource. + + Custom operations associated with this resource. # noqa: E501 + + :param cust_operations: The cust_operations of this Resource. + :type cust_operations: List[CustomOperation] + """ + if cust_operations is not None and len(cust_operations) < 1: + raise ValueError("Invalid value for `cust_operations`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._cust_operations = cust_operations + + @property + def operations(self) -> List[Operation]: """Gets the operations of this Resource. - Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 :return: The operations of this Resource. :rtype: List[Operation] @@ -179,10 +208,10 @@ class Resource(Model): return self._operations @operations.setter - def operations(self, operations): + def operations(self, operations: List[Operation]): """Sets the operations of this Resource. - Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. # noqa: E501 :param operations: The operations of this Resource. :type operations: List[Operation] @@ -193,7 +222,7 @@ class Resource(Model): self._operations = operations @property - def description(self): + def description(self) -> str: """Gets the description of this Resource. Text description of the API resource # noqa: E501 @@ -204,7 +233,7 @@ class Resource(Model): return self._description @description.setter - def description(self, description): + def description(self, description: str): """Sets the description of this Resource. Text description of the API resource # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/routing_rule.py b/services/TS29222_CAPIF_Events_API/capif_events/models/routing_rule.py index a4e4d07..b59d1dd 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/routing_rule.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/routing_rule.py @@ -1,16 +1,17 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.aef_profile import AefProfile -from capif_events.models.ipv4_address_range import Ipv4AddressRange +from capif_events.models.ipv4_address_range1 import Ipv4AddressRange1 from capif_events.models.ipv6_address_range import Ipv6AddressRange from capif_events import util +from capif_events.models.aef_profile import AefProfile # noqa: E501 +from capif_events.models.ipv4_address_range1 import Ipv4AddressRange1 # noqa: E501 +from capif_events.models.ipv6_address_range import Ipv6AddressRange # noqa: E501 + class RoutingRule(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -21,14 +22,14 @@ class RoutingRule(Model): """RoutingRule - a model defined in OpenAPI :param ipv4_addr_ranges: The ipv4_addr_ranges of this RoutingRule. # noqa: E501 - :type ipv4_addr_ranges: List[Ipv4AddressRange] + :type ipv4_addr_ranges: List[Ipv4AddressRange1] :param ipv6_addr_ranges: The ipv6_addr_ranges of this RoutingRule. # noqa: E501 :type ipv6_addr_ranges: List[Ipv6AddressRange] :param aef_profile: The aef_profile of this RoutingRule. # noqa: E501 :type aef_profile: AefProfile """ self.openapi_types = { - 'ipv4_addr_ranges': List[Ipv4AddressRange], + 'ipv4_addr_ranges': List[Ipv4AddressRange1], 'ipv6_addr_ranges': List[Ipv6AddressRange], 'aef_profile': AefProfile } @@ -55,22 +56,22 @@ class RoutingRule(Model): return util.deserialize_model(dikt, cls) @property - def ipv4_addr_ranges(self): + def ipv4_addr_ranges(self) -> List[Ipv4AddressRange1]: """Gets the ipv4_addr_ranges of this RoutingRule. :return: The ipv4_addr_ranges of this RoutingRule. - :rtype: List[Ipv4AddressRange] + :rtype: List[Ipv4AddressRange1] """ return self._ipv4_addr_ranges @ipv4_addr_ranges.setter - def ipv4_addr_ranges(self, ipv4_addr_ranges): + def ipv4_addr_ranges(self, ipv4_addr_ranges: List[Ipv4AddressRange1]): """Sets the ipv4_addr_ranges of this RoutingRule. :param ipv4_addr_ranges: The ipv4_addr_ranges of this RoutingRule. - :type ipv4_addr_ranges: List[Ipv4AddressRange] + :type ipv4_addr_ranges: List[Ipv4AddressRange1] """ if ipv4_addr_ranges is not None and len(ipv4_addr_ranges) < 1: raise ValueError("Invalid value for `ipv4_addr_ranges`, number of items must be greater than or equal to `1`") # noqa: E501 @@ -78,7 +79,7 @@ class RoutingRule(Model): self._ipv4_addr_ranges = ipv4_addr_ranges @property - def ipv6_addr_ranges(self): + def ipv6_addr_ranges(self) -> List[Ipv6AddressRange]: """Gets the ipv6_addr_ranges of this RoutingRule. @@ -88,7 +89,7 @@ class RoutingRule(Model): return self._ipv6_addr_ranges @ipv6_addr_ranges.setter - def ipv6_addr_ranges(self, ipv6_addr_ranges): + def ipv6_addr_ranges(self, ipv6_addr_ranges: List[Ipv6AddressRange]): """Sets the ipv6_addr_ranges of this RoutingRule. @@ -101,7 +102,7 @@ class RoutingRule(Model): self._ipv6_addr_ranges = ipv6_addr_ranges @property - def aef_profile(self): + def aef_profile(self) -> AefProfile: """Gets the aef_profile of this RoutingRule. @@ -111,7 +112,7 @@ class RoutingRule(Model): return self._aef_profile @aef_profile.setter - def aef_profile(self, aef_profile): + def aef_profile(self, aef_profile: AefProfile): """Sets the aef_profile of this RoutingRule. diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/security_method.py b/services/TS29222_CAPIF_Events_API/capif_events/models/security_method.py index 4aec360..ff87e78 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/security_method.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/security_method.py @@ -1,15 +1,10 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model -from capif_events.models.security_method_any_of import SecurityMethodAnyOf +from capif_events.models.base_model import Model from capif_events import util -from capif_events.models.security_method_any_of import SecurityMethodAnyOf # noqa: E501 class SecurityMethod(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/service_api_description.py b/services/TS29222_CAPIF_Events_API/capif_events/models/service_api_description.py index 5c902fe..3c56260 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/service_api_description.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/service_api_description.py @@ -1,18 +1,17 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.aef_profile import AefProfile +from capif_events.models.api_status import ApiStatus from capif_events.models.published_api_path import PublishedApiPath from capif_events.models.shareable_information import ShareableInformation import re from capif_events import util from capif_events.models.aef_profile import AefProfile # noqa: E501 +from capif_events.models.api_status import ApiStatus # noqa: E501 from capif_events.models.published_api_path import PublishedApiPath # noqa: E501 from capif_events.models.shareable_information import ShareableInformation # noqa: E501 import re # noqa: E501 @@ -23,13 +22,15 @@ class ServiceAPIDescription(Model): Do not edit the class manually. """ - def __init__(self, api_name=None, api_id=None, aef_profiles=None, description=None, supported_features=None, shareable_info=None, service_api_category=None, api_supp_feats=None, pub_api_path=None, ccf_id=None): # noqa: E501 + def __init__(self, api_name=None, api_id=None, api_status=None, aef_profiles=None, description=None, supported_features=None, shareable_info=None, service_api_category=None, api_supp_feats=None, pub_api_path=None, ccf_id=None, api_prov_name=None): # noqa: E501 """ServiceAPIDescription - a model defined in OpenAPI :param api_name: The api_name of this ServiceAPIDescription. # noqa: E501 :type api_name: str :param api_id: The api_id of this ServiceAPIDescription. # noqa: E501 :type api_id: str + :param api_status: The api_status of this ServiceAPIDescription. # noqa: E501 + :type api_status: ApiStatus :param aef_profiles: The aef_profiles of this ServiceAPIDescription. # noqa: E501 :type aef_profiles: List[AefProfile] :param description: The description of this ServiceAPIDescription. # noqa: E501 @@ -46,10 +47,13 @@ class ServiceAPIDescription(Model): :type pub_api_path: PublishedApiPath :param ccf_id: The ccf_id of this ServiceAPIDescription. # noqa: E501 :type ccf_id: str + :param api_prov_name: The api_prov_name of this ServiceAPIDescription. # noqa: E501 + :type api_prov_name: str """ self.openapi_types = { 'api_name': str, 'api_id': str, + 'api_status': ApiStatus, 'aef_profiles': List[AefProfile], 'description': str, 'supported_features': str, @@ -57,12 +61,14 @@ class ServiceAPIDescription(Model): 'service_api_category': str, 'api_supp_feats': str, 'pub_api_path': PublishedApiPath, - 'ccf_id': str + 'ccf_id': str, + 'api_prov_name': str } self.attribute_map = { 'api_name': 'apiName', 'api_id': 'apiId', + 'api_status': 'apiStatus', 'aef_profiles': 'aefProfiles', 'description': 'description', 'supported_features': 'supportedFeatures', @@ -70,11 +76,13 @@ class ServiceAPIDescription(Model): 'service_api_category': 'serviceAPICategory', 'api_supp_feats': 'apiSuppFeats', 'pub_api_path': 'pubApiPath', - 'ccf_id': 'ccfId' + 'ccf_id': 'ccfId', + 'api_prov_name': 'apiProvName' } self._api_name = api_name self._api_id = api_id + self._api_status = api_status self._aef_profiles = aef_profiles self._description = description self._supported_features = supported_features @@ -83,6 +91,7 @@ class ServiceAPIDescription(Model): self._api_supp_feats = api_supp_feats self._pub_api_path = pub_api_path self._ccf_id = ccf_id + self._api_prov_name = api_prov_name @classmethod def from_dict(cls, dikt) -> 'ServiceAPIDescription': @@ -96,10 +105,10 @@ class ServiceAPIDescription(Model): return util.deserialize_model(dikt, cls) @property - def api_name(self): + def api_name(self) -> str: """Gets the api_name of this ServiceAPIDescription. - API name, it is set as {apiName} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + API name, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :return: The api_name of this ServiceAPIDescription. :rtype: str @@ -107,10 +116,10 @@ class ServiceAPIDescription(Model): return self._api_name @api_name.setter - def api_name(self, api_name): + def api_name(self, api_name: str): """Sets the api_name of this ServiceAPIDescription. - API name, it is set as {apiName} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. # noqa: E501 + API name, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. # noqa: E501 :param api_name: The api_name of this ServiceAPIDescription. :type api_name: str @@ -121,10 +130,10 @@ class ServiceAPIDescription(Model): self._api_name = api_name @property - def api_id(self): + def api_id(self) -> str: """Gets the api_id of this ServiceAPIDescription. - API identifier assigned by the CAPIF core function to the published service API. Shall not be present in the HTTP POST request from the API publishing function to the CAPIF core function. Shall be present in the HTTP POST response from the CAPIF core function to the API publishing function and in the HTTP GET response from the CAPIF core function to the API invoker (discovery API). # noqa: E501 + API identifier assigned by the CAPIF core function to the published service API. Shall not be present in the HTTP POST request from the API publishing function to the CAPIF core function. Shall be present in the HTTP POST response from the CAPIF core function to the API publishing function and in the HTTP GET response from the CAPIF core function to the API invoker (discovery API). # noqa: E501 :return: The api_id of this ServiceAPIDescription. :rtype: str @@ -132,10 +141,10 @@ class ServiceAPIDescription(Model): return self._api_id @api_id.setter - def api_id(self, api_id): + def api_id(self, api_id: str): """Sets the api_id of this ServiceAPIDescription. - API identifier assigned by the CAPIF core function to the published service API. Shall not be present in the HTTP POST request from the API publishing function to the CAPIF core function. Shall be present in the HTTP POST response from the CAPIF core function to the API publishing function and in the HTTP GET response from the CAPIF core function to the API invoker (discovery API). # noqa: E501 + API identifier assigned by the CAPIF core function to the published service API. Shall not be present in the HTTP POST request from the API publishing function to the CAPIF core function. Shall be present in the HTTP POST response from the CAPIF core function to the API publishing function and in the HTTP GET response from the CAPIF core function to the API invoker (discovery API). # noqa: E501 :param api_id: The api_id of this ServiceAPIDescription. :type api_id: str @@ -144,10 +153,31 @@ class ServiceAPIDescription(Model): self._api_id = api_id @property - def aef_profiles(self): + def api_status(self) -> ApiStatus: + """Gets the api_status of this ServiceAPIDescription. + + + :return: The api_status of this ServiceAPIDescription. + :rtype: ApiStatus + """ + return self._api_status + + @api_status.setter + def api_status(self, api_status: ApiStatus): + """Sets the api_status of this ServiceAPIDescription. + + + :param api_status: The api_status of this ServiceAPIDescription. + :type api_status: ApiStatus + """ + + self._api_status = api_status + + @property + def aef_profiles(self) -> List[AefProfile]: """Gets the aef_profiles of this ServiceAPIDescription. - AEF profile information, which includes the exposed API details (e.g. protocol). # noqa: E501 + AEF profile information, which includes the exposed API details (e.g. protocol). # noqa: E501 :return: The aef_profiles of this ServiceAPIDescription. :rtype: List[AefProfile] @@ -155,10 +185,10 @@ class ServiceAPIDescription(Model): return self._aef_profiles @aef_profiles.setter - def aef_profiles(self, aef_profiles): + def aef_profiles(self, aef_profiles: List[AefProfile]): """Sets the aef_profiles of this ServiceAPIDescription. - AEF profile information, which includes the exposed API details (e.g. protocol). # noqa: E501 + AEF profile information, which includes the exposed API details (e.g. protocol). # noqa: E501 :param aef_profiles: The aef_profiles of this ServiceAPIDescription. :type aef_profiles: List[AefProfile] @@ -169,7 +199,7 @@ class ServiceAPIDescription(Model): self._aef_profiles = aef_profiles @property - def description(self): + def description(self) -> str: """Gets the description of this ServiceAPIDescription. Text description of the API # noqa: E501 @@ -180,7 +210,7 @@ class ServiceAPIDescription(Model): return self._description @description.setter - def description(self, description): + def description(self, description: str): """Sets the description of this ServiceAPIDescription. Text description of the API # noqa: E501 @@ -192,10 +222,10 @@ class ServiceAPIDescription(Model): self._description = description @property - def supported_features(self): + def supported_features(self) -> str: """Gets the supported_features of this ServiceAPIDescription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :return: The supported_features of this ServiceAPIDescription. :rtype: str @@ -203,10 +233,10 @@ class ServiceAPIDescription(Model): return self._supported_features @supported_features.setter - def supported_features(self, supported_features): + def supported_features(self, supported_features: str): """Sets the supported_features of this ServiceAPIDescription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :param supported_features: The supported_features of this ServiceAPIDescription. :type supported_features: str @@ -217,7 +247,7 @@ class ServiceAPIDescription(Model): self._supported_features = supported_features @property - def shareable_info(self): + def shareable_info(self) -> ShareableInformation: """Gets the shareable_info of this ServiceAPIDescription. @@ -227,7 +257,7 @@ class ServiceAPIDescription(Model): return self._shareable_info @shareable_info.setter - def shareable_info(self, shareable_info): + def shareable_info(self, shareable_info: ShareableInformation): """Sets the shareable_info of this ServiceAPIDescription. @@ -238,9 +268,10 @@ class ServiceAPIDescription(Model): self._shareable_info = shareable_info @property - def service_api_category(self): + def service_api_category(self) -> str: """Gets the service_api_category of this ServiceAPIDescription. + The service API category to which the service API belongs to. # noqa: E501 :return: The service_api_category of this ServiceAPIDescription. :rtype: str @@ -248,9 +279,10 @@ class ServiceAPIDescription(Model): return self._service_api_category @service_api_category.setter - def service_api_category(self, service_api_category): + def service_api_category(self, service_api_category: str): """Sets the service_api_category of this ServiceAPIDescription. + The service API category to which the service API belongs to. # noqa: E501 :param service_api_category: The service_api_category of this ServiceAPIDescription. :type service_api_category: str @@ -259,10 +291,10 @@ class ServiceAPIDescription(Model): self._service_api_category = service_api_category @property - def api_supp_feats(self): + def api_supp_feats(self) -> str: """Gets the api_supp_feats of this ServiceAPIDescription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :return: The api_supp_feats of this ServiceAPIDescription. :rtype: str @@ -270,10 +302,10 @@ class ServiceAPIDescription(Model): return self._api_supp_feats @api_supp_feats.setter - def api_supp_feats(self, api_supp_feats): + def api_supp_feats(self, api_supp_feats: str): """Sets the api_supp_feats of this ServiceAPIDescription. - A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported # noqa: E501 + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of \"0\" to \"9\", \"a\" to \"f\" or \"A\" to \"F\" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. # noqa: E501 :param api_supp_feats: The api_supp_feats of this ServiceAPIDescription. :type api_supp_feats: str @@ -284,7 +316,7 @@ class ServiceAPIDescription(Model): self._api_supp_feats = api_supp_feats @property - def pub_api_path(self): + def pub_api_path(self) -> PublishedApiPath: """Gets the pub_api_path of this ServiceAPIDescription. @@ -294,7 +326,7 @@ class ServiceAPIDescription(Model): return self._pub_api_path @pub_api_path.setter - def pub_api_path(self, pub_api_path): + def pub_api_path(self, pub_api_path: PublishedApiPath): """Sets the pub_api_path of this ServiceAPIDescription. @@ -305,7 +337,7 @@ class ServiceAPIDescription(Model): self._pub_api_path = pub_api_path @property - def ccf_id(self): + def ccf_id(self) -> str: """Gets the ccf_id of this ServiceAPIDescription. CAPIF core function identifier. # noqa: E501 @@ -316,7 +348,7 @@ class ServiceAPIDescription(Model): return self._ccf_id @ccf_id.setter - def ccf_id(self, ccf_id): + def ccf_id(self, ccf_id: str): """Sets the ccf_id of this ServiceAPIDescription. CAPIF core function identifier. # noqa: E501 @@ -326,3 +358,26 @@ class ServiceAPIDescription(Model): """ self._ccf_id = ccf_id + + @property + def api_prov_name(self) -> str: + """Gets the api_prov_name of this ServiceAPIDescription. + + Represents the API provider name. # noqa: E501 + + :return: The api_prov_name of this ServiceAPIDescription. + :rtype: str + """ + return self._api_prov_name + + @api_prov_name.setter + def api_prov_name(self, api_prov_name: str): + """Sets the api_prov_name of this ServiceAPIDescription. + + Represents the API provider name. # noqa: E501 + + :param api_prov_name: The api_prov_name of this ServiceAPIDescription. + :type api_prov_name: str + """ + + self._api_prov_name = api_prov_name diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/service_kpis.py b/services/TS29222_CAPIF_Events_API/capif_events/models/service_kpis.py new file mode 100644 index 0000000..6c84f1a --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/service_kpis.py @@ -0,0 +1,277 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +import re +from capif_events import util + +import re # noqa: E501 + +class ServiceKpis(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, max_req_rate=None, max_restime=None, availability=None, aval_comp=None, aval_gra_comp=None, aval_mem=None, aval_stor=None, con_band=None): # noqa: E501 + """ServiceKpis - a model defined in OpenAPI + + :param max_req_rate: The max_req_rate of this ServiceKpis. # noqa: E501 + :type max_req_rate: int + :param max_restime: The max_restime of this ServiceKpis. # noqa: E501 + :type max_restime: int + :param availability: The availability of this ServiceKpis. # noqa: E501 + :type availability: int + :param aval_comp: The aval_comp of this ServiceKpis. # noqa: E501 + :type aval_comp: str + :param aval_gra_comp: The aval_gra_comp of this ServiceKpis. # noqa: E501 + :type aval_gra_comp: str + :param aval_mem: The aval_mem of this ServiceKpis. # noqa: E501 + :type aval_mem: str + :param aval_stor: The aval_stor of this ServiceKpis. # noqa: E501 + :type aval_stor: str + :param con_band: The con_band of this ServiceKpis. # noqa: E501 + :type con_band: int + """ + self.openapi_types = { + 'max_req_rate': int, + 'max_restime': int, + 'availability': int, + 'aval_comp': str, + 'aval_gra_comp': str, + 'aval_mem': str, + 'aval_stor': str, + 'con_band': int + } + + self.attribute_map = { + 'max_req_rate': 'maxReqRate', + 'max_restime': 'maxRestime', + 'availability': 'availability', + 'aval_comp': 'avalComp', + 'aval_gra_comp': 'avalGraComp', + 'aval_mem': 'avalMem', + 'aval_stor': 'avalStor', + 'con_band': 'conBand' + } + + self._max_req_rate = max_req_rate + self._max_restime = max_restime + self._availability = availability + self._aval_comp = aval_comp + self._aval_gra_comp = aval_gra_comp + self._aval_mem = aval_mem + self._aval_stor = aval_stor + self._con_band = con_band + + @classmethod + def from_dict(cls, dikt) -> 'ServiceKpis': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The ServiceKpis of this ServiceKpis. # noqa: E501 + :rtype: ServiceKpis + """ + return util.deserialize_model(dikt, cls) + + @property + def max_req_rate(self) -> int: + """Gets the max_req_rate of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :return: The max_req_rate of this ServiceKpis. + :rtype: int + """ + return self._max_req_rate + + @max_req_rate.setter + def max_req_rate(self, max_req_rate: int): + """Sets the max_req_rate of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :param max_req_rate: The max_req_rate of this ServiceKpis. + :type max_req_rate: int + """ + if max_req_rate is not None and max_req_rate < 0: # noqa: E501 + raise ValueError("Invalid value for `max_req_rate`, must be a value greater than or equal to `0`") # noqa: E501 + + self._max_req_rate = max_req_rate + + @property + def max_restime(self) -> int: + """Gets the max_restime of this ServiceKpis. + + Unsigned integer identifying a period of time in units of seconds. # noqa: E501 + + :return: The max_restime of this ServiceKpis. + :rtype: int + """ + return self._max_restime + + @max_restime.setter + def max_restime(self, max_restime: int): + """Sets the max_restime of this ServiceKpis. + + Unsigned integer identifying a period of time in units of seconds. # noqa: E501 + + :param max_restime: The max_restime of this ServiceKpis. + :type max_restime: int + """ + if max_restime is not None and max_restime < 0: # noqa: E501 + raise ValueError("Invalid value for `max_restime`, must be a value greater than or equal to `0`") # noqa: E501 + + self._max_restime = max_restime + + @property + def availability(self) -> int: + """Gets the availability of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :return: The availability of this ServiceKpis. + :rtype: int + """ + return self._availability + + @availability.setter + def availability(self, availability: int): + """Sets the availability of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :param availability: The availability of this ServiceKpis. + :type availability: int + """ + if availability is not None and availability < 0: # noqa: E501 + raise ValueError("Invalid value for `availability`, must be a value greater than or equal to `0`") # noqa: E501 + + self._availability = availability + + @property + def aval_comp(self) -> str: + """Gets the aval_comp of this ServiceKpis. + + The maximum compute resource available in FLOPS for the API Invoker. # noqa: E501 + + :return: The aval_comp of this ServiceKpis. + :rtype: str + """ + return self._aval_comp + + @aval_comp.setter + def aval_comp(self, aval_comp: str): + """Sets the aval_comp of this ServiceKpis. + + The maximum compute resource available in FLOPS for the API Invoker. # noqa: E501 + + :param aval_comp: The aval_comp of this ServiceKpis. + :type aval_comp: str + """ + if aval_comp is not None and not re.search(r'^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$', aval_comp): # noqa: E501 + raise ValueError("Invalid value for `aval_comp`, must be a follow pattern or equal to `/^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$/`") # noqa: E501 + + self._aval_comp = aval_comp + + @property + def aval_gra_comp(self) -> str: + """Gets the aval_gra_comp of this ServiceKpis. + + The maximum graphical compute resource in FLOPS available for the API Invoker. # noqa: E501 + + :return: The aval_gra_comp of this ServiceKpis. + :rtype: str + """ + return self._aval_gra_comp + + @aval_gra_comp.setter + def aval_gra_comp(self, aval_gra_comp: str): + """Sets the aval_gra_comp of this ServiceKpis. + + The maximum graphical compute resource in FLOPS available for the API Invoker. # noqa: E501 + + :param aval_gra_comp: The aval_gra_comp of this ServiceKpis. + :type aval_gra_comp: str + """ + if aval_gra_comp is not None and not re.search(r'^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$', aval_gra_comp): # noqa: E501 + raise ValueError("Invalid value for `aval_gra_comp`, must be a follow pattern or equal to `/^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$/`") # noqa: E501 + + self._aval_gra_comp = aval_gra_comp + + @property + def aval_mem(self) -> str: + """Gets the aval_mem of this ServiceKpis. + + The maximum memory resource available for the API Invoker. # noqa: E501 + + :return: The aval_mem of this ServiceKpis. + :rtype: str + """ + return self._aval_mem + + @aval_mem.setter + def aval_mem(self, aval_mem: str): + """Sets the aval_mem of this ServiceKpis. + + The maximum memory resource available for the API Invoker. # noqa: E501 + + :param aval_mem: The aval_mem of this ServiceKpis. + :type aval_mem: str + """ + if aval_mem is not None and not re.search(r'^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$', aval_mem): # noqa: E501 + raise ValueError("Invalid value for `aval_mem`, must be a follow pattern or equal to `/^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$/`") # noqa: E501 + + self._aval_mem = aval_mem + + @property + def aval_stor(self) -> str: + """Gets the aval_stor of this ServiceKpis. + + The maximum storage resource available for the API Invoker. # noqa: E501 + + :return: The aval_stor of this ServiceKpis. + :rtype: str + """ + return self._aval_stor + + @aval_stor.setter + def aval_stor(self, aval_stor: str): + """Sets the aval_stor of this ServiceKpis. + + The maximum storage resource available for the API Invoker. # noqa: E501 + + :param aval_stor: The aval_stor of this ServiceKpis. + :type aval_stor: str + """ + if aval_stor is not None and not re.search(r'^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$', aval_stor): # noqa: E501 + raise ValueError("Invalid value for `aval_stor`, must be a follow pattern or equal to `/^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$/`") # noqa: E501 + + self._aval_stor = aval_stor + + @property + def con_band(self) -> int: + """Gets the con_band of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :return: The con_band of this ServiceKpis. + :rtype: int + """ + return self._con_band + + @con_band.setter + def con_band(self, con_band: int): + """Sets the con_band of this ServiceKpis. + + Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. # noqa: E501 + + :param con_band: The con_band of this ServiceKpis. + :type con_band: int + """ + if con_band is not None and con_band < 0: # noqa: E501 + raise ValueError("Invalid value for `con_band`, must be a value greater than or equal to `0`") # noqa: E501 + + self._con_band = con_band diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/shareable_information.py b/services/TS29222_CAPIF_Events_API/capif_events/models/shareable_information.py index 134674a..7b16c08 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/shareable_information.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/shareable_information.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -48,10 +45,10 @@ class ShareableInformation(Model): return util.deserialize_model(dikt, cls) @property - def is_shareable(self): + def is_shareable(self) -> bool: """Gets the is_shareable of this ShareableInformation. - Set to \"true\" indicates that the service API and/or the service API category can be shared to the list of CAPIF provider domain information. Otherwise set to \"false\". # noqa: E501 + Set to \"true\" indicates that the service API and/or the service API category can be shared to the list of CAPIF provider domain information. Otherwise set to \"false\". # noqa: E501 :return: The is_shareable of this ShareableInformation. :rtype: bool @@ -59,10 +56,10 @@ class ShareableInformation(Model): return self._is_shareable @is_shareable.setter - def is_shareable(self, is_shareable): + def is_shareable(self, is_shareable: bool): """Sets the is_shareable of this ShareableInformation. - Set to \"true\" indicates that the service API and/or the service API category can be shared to the list of CAPIF provider domain information. Otherwise set to \"false\". # noqa: E501 + Set to \"true\" indicates that the service API and/or the service API category can be shared to the list of CAPIF provider domain information. Otherwise set to \"false\". # noqa: E501 :param is_shareable: The is_shareable of this ShareableInformation. :type is_shareable: bool @@ -73,10 +70,10 @@ class ShareableInformation(Model): self._is_shareable = is_shareable @property - def capif_prov_doms(self): + def capif_prov_doms(self) -> List[str]: """Gets the capif_prov_doms of this ShareableInformation. - List of CAPIF provider domains to which the service API information to be shared. # noqa: E501 + List of CAPIF provider domains to which the service API information to be shared. # noqa: E501 :return: The capif_prov_doms of this ShareableInformation. :rtype: List[str] @@ -84,10 +81,10 @@ class ShareableInformation(Model): return self._capif_prov_doms @capif_prov_doms.setter - def capif_prov_doms(self, capif_prov_doms): + def capif_prov_doms(self, capif_prov_doms: List[str]): """Sets the capif_prov_doms of this ShareableInformation. - List of CAPIF provider domains to which the service API information to be shared. # noqa: E501 + List of CAPIF provider domains to which the service API information to be shared. # noqa: E501 :param capif_prov_doms: The capif_prov_doms of this ShareableInformation. :type capif_prov_doms: List[str] diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/security_method_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/subscription_action.py similarity index 55% rename from services/TS29222_CAPIF_Events_API/capif_events/models/security_method_any_of.py rename to services/TS29222_CAPIF_Events_API/capif_events/models/subscription_action.py index 2ceeb4d..99ae834 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/security_method_any_of.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/subscription_action.py @@ -1,28 +1,19 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util -class SecurityMethodAnyOf(Model): +class SubscriptionAction(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ - """ - allowed enum values - """ - PSK = "PSK" - PKI = "PKI" - OAUTH = "OAUTH" def __init__(self): # noqa: E501 - """SecurityMethodAnyOf - a model defined in OpenAPI + """SubscriptionAction - a model defined in OpenAPI """ self.openapi_types = { @@ -32,12 +23,12 @@ class SecurityMethodAnyOf(Model): } @classmethod - def from_dict(cls, dikt) -> 'SecurityMethodAnyOf': + def from_dict(cls, dikt) -> 'SubscriptionAction': """Returns the dict as a model :param dikt: A dict. :type: dict - :return: The SecurityMethod_anyOf of this SecurityMethodAnyOf. # noqa: E501 - :rtype: SecurityMethodAnyOf + :return: The SubscriptionAction of this SubscriptionAction. # noqa: E501 + :rtype: SubscriptionAction """ return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/operation_any_of.py b/services/TS29222_CAPIF_Events_API/capif_events/models/supported_gad_shapes.py similarity index 54% rename from services/TS29222_CAPIF_Events_API/capif_events/models/operation_any_of.py rename to services/TS29222_CAPIF_Events_API/capif_events/models/supported_gad_shapes.py index 4c6b909..38ff4d5 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/operation_any_of.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/supported_gad_shapes.py @@ -1,30 +1,19 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util -class OperationAnyOf(Model): +class SupportedGADShapes(Model): """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ - """ - allowed enum values - """ - GET = "GET" - POST = "POST" - PUT = "PUT" - PATCH = "PATCH" - DELETE = "DELETE" def __init__(self): # noqa: E501 - """OperationAnyOf - a model defined in OpenAPI + """SupportedGADShapes - a model defined in OpenAPI """ self.openapi_types = { @@ -34,12 +23,12 @@ class OperationAnyOf(Model): } @classmethod - def from_dict(cls, dikt) -> 'OperationAnyOf': + def from_dict(cls, dikt) -> 'SupportedGADShapes': """Returns the dict as a model :param dikt: A dict. :type: dict - :return: The Operation_anyOf of this OperationAnyOf. # noqa: E501 - :rtype: OperationAnyOf + :return: The SupportedGADShapes of this SupportedGADShapes. # noqa: E501 + :rtype: SupportedGADShapes """ return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/time_range_list.py b/services/TS29222_CAPIF_Events_API/capif_events/models/time_range_list.py index 71c9987..9a6b626 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/time_range_list.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/time_range_list.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -48,7 +45,7 @@ class TimeRangeList(Model): return util.deserialize_model(dikt, cls) @property - def start_time(self): + def start_time(self) -> datetime: """Gets the start_time of this TimeRangeList. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -59,7 +56,7 @@ class TimeRangeList(Model): return self._start_time @start_time.setter - def start_time(self, start_time): + def start_time(self, start_time: datetime): """Sets the start_time of this TimeRangeList. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -71,7 +68,7 @@ class TimeRangeList(Model): self._start_time = start_time @property - def stop_time(self): + def stop_time(self) -> datetime: """Gets the stop_time of this TimeRangeList. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -82,7 +79,7 @@ class TimeRangeList(Model): return self._stop_time @stop_time.setter - def stop_time(self, stop_time): + def stop_time(self, stop_time: datetime): """Sets the stop_time of this TimeRangeList. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/topology_hiding.py b/services/TS29222_CAPIF_Events_API/capif_events/models/topology_hiding.py index 5d22b9c..0a02878 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/topology_hiding.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/topology_hiding.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.routing_rule import RoutingRule from capif_events import util @@ -50,7 +47,7 @@ class TopologyHiding(Model): return util.deserialize_model(dikt, cls) @property - def api_id(self): + def api_id(self) -> str: """Gets the api_id of this TopologyHiding. @@ -60,7 +57,7 @@ class TopologyHiding(Model): return self._api_id @api_id.setter - def api_id(self, api_id): + def api_id(self, api_id: str): """Sets the api_id of this TopologyHiding. @@ -73,7 +70,7 @@ class TopologyHiding(Model): self._api_id = api_id @property - def routing_rules(self): + def routing_rules(self) -> List[RoutingRule]: """Gets the routing_rules of this TopologyHiding. @@ -83,7 +80,7 @@ class TopologyHiding(Model): return self._routing_rules @routing_rules.setter - def routing_rules(self, routing_rules): + def routing_rules(self, routing_rules: List[RoutingRule]): """Sets the routing_rules of this TopologyHiding. diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipse.py b/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipse.py new file mode 100644 index 0000000..627eb52 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipse.py @@ -0,0 +1,133 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class UncertaintyEllipse(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, semi_major=None, semi_minor=None, orientation_major=None): # noqa: E501 + """UncertaintyEllipse - a model defined in OpenAPI + + :param semi_major: The semi_major of this UncertaintyEllipse. # noqa: E501 + :type semi_major: float + :param semi_minor: The semi_minor of this UncertaintyEllipse. # noqa: E501 + :type semi_minor: float + :param orientation_major: The orientation_major of this UncertaintyEllipse. # noqa: E501 + :type orientation_major: int + """ + self.openapi_types = { + 'semi_major': float, + 'semi_minor': float, + 'orientation_major': int + } + + self.attribute_map = { + 'semi_major': 'semiMajor', + 'semi_minor': 'semiMinor', + 'orientation_major': 'orientationMajor' + } + + self._semi_major = semi_major + self._semi_minor = semi_minor + self._orientation_major = orientation_major + + @classmethod + def from_dict(cls, dikt) -> 'UncertaintyEllipse': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The UncertaintyEllipse of this UncertaintyEllipse. # noqa: E501 + :rtype: UncertaintyEllipse + """ + return util.deserialize_model(dikt, cls) + + @property + def semi_major(self) -> float: + """Gets the semi_major of this UncertaintyEllipse. + + Indicates value of uncertainty. # noqa: E501 + + :return: The semi_major of this UncertaintyEllipse. + :rtype: float + """ + return self._semi_major + + @semi_major.setter + def semi_major(self, semi_major: float): + """Sets the semi_major of this UncertaintyEllipse. + + Indicates value of uncertainty. # noqa: E501 + + :param semi_major: The semi_major of this UncertaintyEllipse. + :type semi_major: float + """ + if semi_major is None: + raise ValueError("Invalid value for `semi_major`, must not be `None`") # noqa: E501 + if semi_major is not None and semi_major < 0: # noqa: E501 + raise ValueError("Invalid value for `semi_major`, must be a value greater than or equal to `0`") # noqa: E501 + + self._semi_major = semi_major + + @property + def semi_minor(self) -> float: + """Gets the semi_minor of this UncertaintyEllipse. + + Indicates value of uncertainty. # noqa: E501 + + :return: The semi_minor of this UncertaintyEllipse. + :rtype: float + """ + return self._semi_minor + + @semi_minor.setter + def semi_minor(self, semi_minor: float): + """Sets the semi_minor of this UncertaintyEllipse. + + Indicates value of uncertainty. # noqa: E501 + + :param semi_minor: The semi_minor of this UncertaintyEllipse. + :type semi_minor: float + """ + if semi_minor is None: + raise ValueError("Invalid value for `semi_minor`, must not be `None`") # noqa: E501 + if semi_minor is not None and semi_minor < 0: # noqa: E501 + raise ValueError("Invalid value for `semi_minor`, must be a value greater than or equal to `0`") # noqa: E501 + + self._semi_minor = semi_minor + + @property + def orientation_major(self) -> int: + """Gets the orientation_major of this UncertaintyEllipse. + + Indicates value of orientation angle. # noqa: E501 + + :return: The orientation_major of this UncertaintyEllipse. + :rtype: int + """ + return self._orientation_major + + @orientation_major.setter + def orientation_major(self, orientation_major: int): + """Sets the orientation_major of this UncertaintyEllipse. + + Indicates value of orientation angle. # noqa: E501 + + :param orientation_major: The orientation_major of this UncertaintyEllipse. + :type orientation_major: int + """ + if orientation_major is None: + raise ValueError("Invalid value for `orientation_major`, must not be `None`") # noqa: E501 + if orientation_major is not None and orientation_major > 180: # noqa: E501 + raise ValueError("Invalid value for `orientation_major`, must be a value less than or equal to `180`") # noqa: E501 + if orientation_major is not None and orientation_major < 0: # noqa: E501 + raise ValueError("Invalid value for `orientation_major`, must be a value greater than or equal to `0`") # noqa: E501 + + self._orientation_major = orientation_major diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipsoid.py b/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipsoid.py new file mode 100644 index 0000000..f10fac8 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/uncertainty_ellipsoid.py @@ -0,0 +1,165 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_events.models.base_model import Model +from capif_events import util + + +class UncertaintyEllipsoid(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, semi_major=None, semi_minor=None, vertical=None, orientation_major=None): # noqa: E501 + """UncertaintyEllipsoid - a model defined in OpenAPI + + :param semi_major: The semi_major of this UncertaintyEllipsoid. # noqa: E501 + :type semi_major: float + :param semi_minor: The semi_minor of this UncertaintyEllipsoid. # noqa: E501 + :type semi_minor: float + :param vertical: The vertical of this UncertaintyEllipsoid. # noqa: E501 + :type vertical: float + :param orientation_major: The orientation_major of this UncertaintyEllipsoid. # noqa: E501 + :type orientation_major: int + """ + self.openapi_types = { + 'semi_major': float, + 'semi_minor': float, + 'vertical': float, + 'orientation_major': int + } + + self.attribute_map = { + 'semi_major': 'semiMajor', + 'semi_minor': 'semiMinor', + 'vertical': 'vertical', + 'orientation_major': 'orientationMajor' + } + + self._semi_major = semi_major + self._semi_minor = semi_minor + self._vertical = vertical + self._orientation_major = orientation_major + + @classmethod + def from_dict(cls, dikt) -> 'UncertaintyEllipsoid': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The UncertaintyEllipsoid of this UncertaintyEllipsoid. # noqa: E501 + :rtype: UncertaintyEllipsoid + """ + return util.deserialize_model(dikt, cls) + + @property + def semi_major(self) -> float: + """Gets the semi_major of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :return: The semi_major of this UncertaintyEllipsoid. + :rtype: float + """ + return self._semi_major + + @semi_major.setter + def semi_major(self, semi_major: float): + """Sets the semi_major of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :param semi_major: The semi_major of this UncertaintyEllipsoid. + :type semi_major: float + """ + if semi_major is None: + raise ValueError("Invalid value for `semi_major`, must not be `None`") # noqa: E501 + if semi_major is not None and semi_major < 0: # noqa: E501 + raise ValueError("Invalid value for `semi_major`, must be a value greater than or equal to `0`") # noqa: E501 + + self._semi_major = semi_major + + @property + def semi_minor(self) -> float: + """Gets the semi_minor of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :return: The semi_minor of this UncertaintyEllipsoid. + :rtype: float + """ + return self._semi_minor + + @semi_minor.setter + def semi_minor(self, semi_minor: float): + """Sets the semi_minor of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :param semi_minor: The semi_minor of this UncertaintyEllipsoid. + :type semi_minor: float + """ + if semi_minor is None: + raise ValueError("Invalid value for `semi_minor`, must not be `None`") # noqa: E501 + if semi_minor is not None and semi_minor < 0: # noqa: E501 + raise ValueError("Invalid value for `semi_minor`, must be a value greater than or equal to `0`") # noqa: E501 + + self._semi_minor = semi_minor + + @property + def vertical(self) -> float: + """Gets the vertical of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :return: The vertical of this UncertaintyEllipsoid. + :rtype: float + """ + return self._vertical + + @vertical.setter + def vertical(self, vertical: float): + """Sets the vertical of this UncertaintyEllipsoid. + + Indicates value of uncertainty. # noqa: E501 + + :param vertical: The vertical of this UncertaintyEllipsoid. + :type vertical: float + """ + if vertical is None: + raise ValueError("Invalid value for `vertical`, must not be `None`") # noqa: E501 + if vertical is not None and vertical < 0: # noqa: E501 + raise ValueError("Invalid value for `vertical`, must be a value greater than or equal to `0`") # noqa: E501 + + self._vertical = vertical + + @property + def orientation_major(self) -> int: + """Gets the orientation_major of this UncertaintyEllipsoid. + + Indicates value of orientation angle. # noqa: E501 + + :return: The orientation_major of this UncertaintyEllipsoid. + :rtype: int + """ + return self._orientation_major + + @orientation_major.setter + def orientation_major(self, orientation_major: int): + """Sets the orientation_major of this UncertaintyEllipsoid. + + Indicates value of orientation angle. # noqa: E501 + + :param orientation_major: The orientation_major of this UncertaintyEllipsoid. + :type orientation_major: int + """ + if orientation_major is None: + raise ValueError("Invalid value for `orientation_major`, must not be `None`") # noqa: E501 + if orientation_major is not None and orientation_major > 180: # noqa: E501 + raise ValueError("Invalid value for `orientation_major`, must be a value less than or equal to `180`") # noqa: E501 + if orientation_major is not None and orientation_major < 0: # noqa: E501 + raise ValueError("Invalid value for `orientation_major`, must be a value greater than or equal to `0`") # noqa: E501 + + self._orientation_major = orientation_major diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/version.py b/services/TS29222_CAPIF_Events_API/capif_events/models/version.py index 3b78d8f..709e34c 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/version.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/version.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events.models.custom_operation import CustomOperation from capif_events.models.resource import Resource from capif_events import util @@ -62,7 +59,7 @@ class Version(Model): return util.deserialize_model(dikt, cls) @property - def api_version(self): + def api_version(self) -> str: """Gets the api_version of this Version. API major version in URI (e.g. v1) # noqa: E501 @@ -73,7 +70,7 @@ class Version(Model): return self._api_version @api_version.setter - def api_version(self, api_version): + def api_version(self, api_version: str): """Sets the api_version of this Version. API major version in URI (e.g. v1) # noqa: E501 @@ -87,7 +84,7 @@ class Version(Model): self._api_version = api_version @property - def expiry(self): + def expiry(self) -> datetime: """Gets the expiry of this Version. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -98,7 +95,7 @@ class Version(Model): return self._expiry @expiry.setter - def expiry(self, expiry): + def expiry(self, expiry: datetime): """Sets the expiry of this Version. string with format \"date-time\" as defined in OpenAPI. # noqa: E501 @@ -110,7 +107,7 @@ class Version(Model): self._expiry = expiry @property - def resources(self): + def resources(self) -> List[Resource]: """Gets the resources of this Version. Resources supported by the API. # noqa: E501 @@ -121,7 +118,7 @@ class Version(Model): return self._resources @resources.setter - def resources(self, resources): + def resources(self, resources: List[Resource]): """Sets the resources of this Version. Resources supported by the API. # noqa: E501 @@ -135,7 +132,7 @@ class Version(Model): self._resources = resources @property - def cust_operations(self): + def cust_operations(self) -> List[CustomOperation]: """Gets the cust_operations of this Version. Custom operations without resource association. # noqa: E501 @@ -146,7 +143,7 @@ class Version(Model): return self._cust_operations @cust_operations.setter - def cust_operations(self, cust_operations): + def cust_operations(self, cust_operations: List[CustomOperation]): """Sets the cust_operations of this Version. Custom operations without resource association. # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/models/websock_notif_config.py b/services/TS29222_CAPIF_Events_API/capif_events/models/websock_notif_config.py index 9a7c40b..0077354 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/models/websock_notif_config.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/models/websock_notif_config.py @@ -1,11 +1,8 @@ -# coding: utf-8 - -from __future__ import absolute_import from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from capif_events.models.base_model_ import Model +from capif_events.models.base_model import Model from capif_events import util @@ -48,7 +45,7 @@ class WebsockNotifConfig(Model): return util.deserialize_model(dikt, cls) @property - def websocket_uri(self): + def websocket_uri(self) -> str: """Gets the websocket_uri of this WebsockNotifConfig. string formatted according to IETF RFC 3986 identifying a referenced resource. # noqa: E501 @@ -59,7 +56,7 @@ class WebsockNotifConfig(Model): return self._websocket_uri @websocket_uri.setter - def websocket_uri(self, websocket_uri): + def websocket_uri(self, websocket_uri: str): """Sets the websocket_uri of this WebsockNotifConfig. string formatted according to IETF RFC 3986 identifying a referenced resource. # noqa: E501 @@ -71,7 +68,7 @@ class WebsockNotifConfig(Model): self._websocket_uri = websocket_uri @property - def request_websocket_uri(self): + def request_websocket_uri(self) -> bool: """Gets the request_websocket_uri of this WebsockNotifConfig. Set by the SCS/AS to indicate that the Websocket delivery is requested. # noqa: E501 @@ -82,7 +79,7 @@ class WebsockNotifConfig(Model): return self._request_websocket_uri @request_websocket_uri.setter - def request_websocket_uri(self, request_websocket_uri): + def request_websocket_uri(self, request_websocket_uri: bool): """Sets the request_websocket_uri of this WebsockNotifConfig. Set by the SCS/AS to indicate that the Websocket delivery is requested. # noqa: E501 diff --git a/services/TS29222_CAPIF_Events_API/capif_events/openapi/openapi.yaml b/services/TS29222_CAPIF_Events_API/capif_events/openapi/openapi.yaml index d89f8dd..892a7a2 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/openapi/openapi.yaml +++ b/services/TS29222_CAPIF_Events_API/capif_events/openapi/openapi.yaml @@ -1,20 +1,18 @@ openapi: 3.0.0 info: - description: | - API for event subscription management. - © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. + description: "API for event subscription management. \n© 2023, 3GPP Organizational\ + \ Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). \nAll rights reserved.\n" title: CAPIF_Events_API - version: 1.2.0-alpha.1 + version: 1.3.0-alpha.4 externalDocs: - description: 3GPP TS 29.222 V17.1.0 Common API Framework for 3GPP Northbound APIs - url: http://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ + description: 3GPP TS 29.222 V18.4.0 Common API Framework for 3GPP Northbound APIs + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ servers: -- url: '{apiRoot}/capif-events/v1' +- url: "{apiRoot}/capif-events/v1" variables: apiRoot: default: https://example.com - description: apiRoot as defined in subclause 7.5 of 3GPP TS 29.222 + description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222 paths: /{subscriberId}/subscriptions: post: @@ -83,7 +81,7 @@ paths: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' - description: Payload Too Large + description: Content Too Large "415": content: application/problem+json: @@ -137,8 +135,8 @@ paths: description: Created (Successful creation of subscription) headers: Location: - description: 'Contains the URI of the newly created resource, according - to the structure: {apiRoot}/capif-events/v1/{subscriberId}/subscriptions/{subscriptionId}' + description: | + Contains the URI of the newly created resource, according to the structure {apiRoot}/capif-events/v1/{subscriberId}/subscriptions/{subscriptionId} explode: false required: true schema: @@ -179,7 +177,7 @@ paths: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' - description: Payload Too Large + description: Content Too Large "415": content: application/problem+json: @@ -230,8 +228,8 @@ paths: style: simple responses: "204": - description: The individual CAPIF Events Subscription matching the subscriptionId - is deleted. + description: | + The individual CAPIF Events Subscription matching the subscriptionId is deleted. "307": description: Temporary Redirect headers: @@ -293,7 +291,282 @@ paths: default: description: Generic Error x-openapi-router-controller: capif_events.controllers.default_controller + patch: + description: Modification of an existing individual CAPIF Event Subscription. + operationId: subscriber_id_subscriptions_subscription_id_patch + parameters: + - description: Identifier of the Subscriber + explode: false + in: path + name: subscriberId + required: true + schema: + type: string + style: simple + - description: Identifier of the individual Subscriber + explode: false + in: path + name: subscriptionId + required: true + schema: + type: string + style: simple + requestBody: + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/EventSubscriptionPatch' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/EventSubscription' + description: OK (Successful update of the subscription) + "204": + description: No Content + "400": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Bad request + "401": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unauthorized + "403": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Forbidden + "404": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Not Found + "411": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Length Required + "413": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Content Too Large + "415": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unsupported Media Type + "429": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Too Many Requests + "500": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Internal Server Error + "503": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Service Unavailable + default: + description: Generic Error + x-openapi-router-controller: capif_events.controllers.default_controller + put: + description: Update of an existing individual CAPIF Event Subscription. + operationId: subscriber_id_subscriptions_subscription_id_put + parameters: + - description: Identifier of the Subscriber + explode: false + in: path + name: subscriberId + required: true + schema: + type: string + style: simple + - description: Identifier of the individual Subscriber + explode: false + in: path + name: subscriptionId + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/EventSubscription' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/EventSubscription' + description: OK (Successful update of the subscription). + "204": + description: No Content + "400": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Bad request + "401": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unauthorized + "403": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Forbidden + "404": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Not Found + "411": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Length Required + "413": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Content Too Large + "415": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unsupported Media Type + "429": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Too Many Requests + "500": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Internal Server Error + "503": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Service Unavailable + default: + description: Generic Error + x-openapi-router-controller: capif_events.controllers.default_controller components: + responses: + "400": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Bad request + "401": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unauthorized + "403": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Forbidden + "404": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Not Found + "411": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Length Required + "413": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Content Too Large + "415": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Unsupported Media Type + "429": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Too Many Requests + "500": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Internal Server Error + "503": + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + description: Service Unavailable + default: + description: Generic Error + "307": + description: Temporary Redirect + headers: + Location: + description: An alternative URI of the resource. + required: true + schema: + type: string + "308": + description: Permanent Redirect + headers: + Location: + description: An alternative URI of the resource. + required: true + schema: + type: string schemas: EventSubscription: description: Represents an individual CAPIF Event Subscription resource. @@ -320,21 +593,29 @@ components: - apiIds supportedFeatures: supportedFeatures eventReq: + notifMethod: PERIODIC partitionCriteria: - - null - - null + - TAC + - TAC grpRepTime: 5 + notifFlag: ACTIVATE + mutingSetting: + maxNoOfNotif: 5 + durationBufferedNotif: 2 monDur: 2000-01-23T04:56:07.000+00:00 immRep: true maxReportNbr: 0 repPeriod: 6 sampRatio: 15 + notifFlagInstruct: + bufferedNotifs: SEND_ALL + subscription: CLOSE websockNotifConfig: requestWebsocketUri: true websocketUri: websocketUri events: - - null - - null + - SERVICE_API_AVAILABLE + - SERVICE_API_AVAILABLE requestTestNotification: true properties: events: @@ -358,27 +639,16 @@ components: title: Uri type: string requestTestNotification: - description: Set to true by Subscriber to request the CAPIF core function - to send a test notification as defined in in subclause 7.6. Set to false - or omitted otherwise. + description: | + Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in clause 7.6. Set to false or omitted otherwise. title: requestTestNotification type: boolean websockNotifConfig: $ref: '#/components/schemas/WebsockNotifConfig' supportedFeatures: - description: A string used to indicate the features supported by an API - that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall - contain a bitmask indicating supported features in hexadecimal representation - Each character in the string shall take a value of "0" to "9", "a" to - "f" or "A" to "F" and shall represent the support of 4 features as described - in table 5.2.2-3. The most significant character representing the highest-numbered - features shall appear first in the string, and the character representing - features 1 to 4 shall appear last in the string. The list of features - and their numbering (starting with 1) are defined separately for each - API. If the string contains a lower number of characters than there are - defined features for an API, all features that would be represented by - characters that are not present in the string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string required: @@ -406,7 +676,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -414,14 +686,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - apiName: apiName @@ -431,7 +707,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -439,14 +717,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - supportedFeatures: supportedFeatures @@ -460,7 +742,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -468,14 +752,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - apiName: apiName @@ -485,7 +773,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -493,14 +783,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" apiTopoHide: @@ -512,15 +806,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -528,19 +848,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -549,6 +885,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -556,37 +906,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 @@ -598,15 +1020,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -614,19 +1062,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -635,6 +1099,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -642,42 +1120,133 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 - start: 198.51.100.1 end: 198.51.100.1 + accCtrlPolList: + apiInvokerPolicies: + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + apiId: apiId serviceAPIDescriptions: - serviceAPICategory: serviceAPICategory ccfId: ccfId @@ -687,20 +1256,51 @@ components: - capifProvDoms - capifProvDoms isShareable: true + apiProvName: apiProvName supportedFeatures: supportedFeatures description: description apiSuppFeats: apiSuppFeats apiId: apiId + apiStatus: + aefIds: + - aefIds + - aefIds aefProfiles: - - securityMethods: - - null - - null + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -708,19 +1308,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -729,6 +1345,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -736,46 +1366,144 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - - securityMethods: - - null - - null + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -783,19 +1511,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -804,6 +1548,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -811,37 +1569,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp pubApiPath: ccfIds: - ccfIds @@ -854,20 +1684,51 @@ components: - capifProvDoms - capifProvDoms isShareable: true + apiProvName: apiProvName supportedFeatures: supportedFeatures description: description apiSuppFeats: apiSuppFeats apiId: apiId + apiStatus: + aefIds: + - aefIds + - aefIds aefProfiles: - - securityMethods: - - null - - null + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -875,19 +1736,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -896,6 +1773,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -903,46 +1794,144 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - - securityMethods: - - null - - null + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -950,19 +1939,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -971,6 +1976,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -978,37 +1997,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp pubApiPath: ccfIds: - ccfIds @@ -1016,10 +2107,12 @@ components: apiIds: - apiIds - apiIds + events: SERVICE_API_AVAILABLE properties: subscriptionId: - description: Identifier of the subscription resource to which the notification - is related – CAPIF resource identifier + description: | + Identifier of the subscription resource to which the notification is related – CAPIF resource identifier + title: subscriptionId type: string events: $ref: '#/components/schemas/CAPIFEvent' @@ -1028,6 +2121,7 @@ components: required: - events - subscriptionId + title: EventNotification type: object CAPIFEventFilter: description: Represents a CAPIF event filter. @@ -1083,7 +2177,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -1091,14 +2187,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - apiName: apiName @@ -1108,7 +2208,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -1116,14 +2218,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - supportedFeatures: supportedFeatures @@ -1137,7 +2243,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -1145,14 +2253,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - apiName: apiName @@ -1162,7 +2274,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -1170,14 +2284,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" apiTopoHide: @@ -1189,15 +2307,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1205,19 +2349,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1226,6 +2386,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1233,37 +2407,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 @@ -1275,15 +2521,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1291,19 +2563,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1312,6 +2600,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1319,42 +2621,133 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 - start: 198.51.100.1 end: 198.51.100.1 + accCtrlPolList: + apiInvokerPolicies: + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + apiId: apiId serviceAPIDescriptions: - serviceAPICategory: serviceAPICategory ccfId: ccfId @@ -1364,20 +2757,51 @@ components: - capifProvDoms - capifProvDoms isShareable: true + apiProvName: apiProvName supportedFeatures: supportedFeatures description: description apiSuppFeats: apiSuppFeats apiId: apiId + apiStatus: + aefIds: + - aefIds + - aefIds aefProfiles: - - securityMethods: - - null - - null + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1385,19 +2809,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1406,6 +2846,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1413,46 +2867,144 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - - securityMethods: - - null - - null + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1460,19 +3012,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1481,6 +3049,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1488,37 +3070,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp pubApiPath: ccfIds: - ccfIds @@ -1531,20 +3185,51 @@ components: - capifProvDoms - capifProvDoms isShareable: true + apiProvName: apiProvName supportedFeatures: supportedFeatures description: description apiSuppFeats: apiSuppFeats apiId: apiId + apiStatus: + aefIds: + - aefIds + - aefIds aefProfiles: - - securityMethods: - - null - - null + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1552,19 +3237,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1573,6 +3274,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1580,46 +3295,144 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - - securityMethods: - - null - - null + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1627,19 +3440,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1648,6 +3477,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1655,37 +3498,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp pubApiPath: ccfIds: - ccfIds @@ -1731,14 +3646,32 @@ components: AccessControlPolicyListExt: allOf: - $ref: '#/components/schemas/AccessControlPolicyList' - - $ref: '#/components/schemas/AccessControlPolicyListExt_allOf' + - properties: + apiId: + type: string + type: object description: Represents the extension for access control policies. + example: + apiInvokerPolicies: + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + - apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 + apiId: apiId required: - apiId - properties: - apiId: - title: apiId - type: string title: AccessControlPolicyListExt TopologyHiding: description: Represents the routing rules information of a service API. @@ -1751,15 +3684,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1767,19 +3726,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1788,6 +3763,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1795,37 +3784,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 @@ -1837,15 +3898,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1853,19 +3940,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -1874,6 +3977,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -1881,37 +3998,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 @@ -1932,14 +4121,72 @@ components: - routingRules title: TopologyHiding type: object + EventSubscriptionPatch: + description: | + Represents the parameters to request the updated of an individual CAPIF Event Subscription resource. + properties: + events: + description: Subscribed events + items: + $ref: '#/components/schemas/CAPIFEvent' + minItems: 1 + title: events + type: array + eventFilters: + description: Subscribed event filters + items: + $ref: '#/components/schemas/CAPIFEventFilter' + minItems: 1 + title: eventFilters + type: array + eventReq: + $ref: '#/components/schemas/ReportingInformation' + notificationDestination: + description: string providing an URI formatted according to IETF RFC 3986. + title: Uri + type: string + title: EventSubscriptionPatch + type: object CAPIFEvent: anyOf: - - $ref: '#/components/schemas/CAPIFEvent_anyOf' + - enum: + - SERVICE_API_AVAILABLE + - SERVICE_API_UNAVAILABLE + - SERVICE_API_UPDATE + - API_INVOKER_ONBOARDED + - API_INVOKER_OFFBOARDED + - SERVICE_API_INVOCATION_SUCCESS + - SERVICE_API_INVOCATION_FAILURE + - ACCESS_CONTROL_POLICY_UPDATE + - ACCESS_CONTROL_POLICY_UNAVAILABLE + - API_INVOKER_AUTHORIZATION_REVOKED + - API_INVOKER_UPDATED + - API_TOPOLOGY_HIDING_CREATED + - API_TOPOLOGY_HIDING_REVOKED + type: string - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - SERVICE_API_AVAILABLE: Events related to the availability of service APIs after the service APIs are published. - SERVICE_API_UNAVAILABLE: Events related to the unavailability of service APIs after the service APIs are unpublished. - SERVICE_API_UPDATE: Events related to change in service API information. - API_INVOKER_ONBOARDED: Events related to API invoker onboarded to CAPIF. - API_INVOKER_OFFBOARDED: Events related to API invoker offboarded from CAPIF. - SERVICE_API_INVOCATION_SUCCESS: Events related to the successful invocation of service APIs. - SERVICE_API_INVOCATION_FAILURE: Events related to the failed invocation of service APIs. - ACCESS_CONTROL_POLICY_UPDATE: Events related to the update for the access control policy related to the service APIs. - ACCESS_CONTROL_POLICY_UNAVAILABLE: Events related to the unavailability of the access control policy related to the service APIs. - API_INVOKER_AUTHORIZATION_REVOKED: Events related to the revocation of the authorization of API invokers to access the service APIs. - API_INVOKER_UPDATED: Events related to API invoker profile updated to CAPIF. - API_TOPOLOGY_HIDING_CREATED: Events related to the creation or update of the API topology hiding information of the service APIs after the service APIs are published. - API_TOPOLOGY_HIDING_REVOKED: Events related to the revocation of the API topology hiding information of the service APIs after the service APIs are unpublished. + description: "Describes the CAPIF event. \nPossible values are:\n- SERVICE_API_AVAILABLE:\n\ + \ Events related to the availability of service APIs after the service APIs\ + \ are\n published.\n- SERVICE_API_UNAVAILABLE:\n Events related to the unavailability\ + \ of service APIs after the service APIs are\n unpublished.\n- SERVICE_API_UPDATE:\ + \ Events related to change in service API information.\n- API_INVOKER_ONBOARDED:\ + \ Events related to API invoker onboarded to CAPIF.\n- API_INVOKER_OFFBOARDED:\ + \ Events related to API invoker offboarded from CAPIF.\n- SERVICE_API_INVOCATION_SUCCESS:\n\ + \ Events related to the successful invocation of service APIs.\n- SERVICE_API_INVOCATION_FAILURE:\ + \ Events related to the failed invocation of service APIs.\n- ACCESS_CONTROL_POLICY_UPDATE:\n\ + \ Events related to the update for the access control policy related to the\ + \ service APIs.\n- ACCESS_CONTROL_POLICY_UNAVAILABLE:\n Events related to\ + \ the unavailability of the access control policy related to\n the service\ + \ APIs.\n- API_INVOKER_AUTHORIZATION_REVOKED: Events related to the revocation\ + \ of the authorization\n of API invokers to access the service APIs.\n- API_INVOKER_UPDATED:\ + \ Events related to API invoker profile updated to CAPIF.\n- API_TOPOLOGY_HIDING_CREATED:\n\ + \ Events related to the creation or update of the API topology hiding\n \ + \ information of the service APIs after the service APIs are published.\n\ + - API_TOPOLOGY_HIDING_REVOKED:\n Events related to the revocation of the\ + \ API topology hiding information of\n the service APIs after the service\ + \ APIs are unpublished.\n" title: CAPIFEvent ProblemDetails: description: Represents additional information and details on an error response. @@ -1949,8 +4196,8 @@ components: title: Uri type: string title: - description: A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem. + description: "A short, human-readable summary of the problem type. It should\ + \ not change from occurrence to occurrence of the problem. \n" title: title type: string status: @@ -1967,33 +4214,22 @@ components: title: Uri type: string cause: - description: A machine-readable application error cause specific to this - occurrence of the problem. This IE should be present and provide application-related - error information, if available. + description: | + A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. title: cause type: string invalidParams: - description: Description of invalid parameters, for a request rejected due - to invalid parameters. + description: | + Description of invalid parameters, for a request rejected due to invalid parameters. items: $ref: '#/components/schemas/InvalidParam' minItems: 1 title: invalidParams type: array supportedFeatures: - description: A string used to indicate the features supported by an API - that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall - contain a bitmask indicating supported features in hexadecimal representation - Each character in the string shall take a value of "0" to "9", "a" to - "f" or "A" to "F" and shall represent the support of 4 features as described - in table 5.2.2-3. The most significant character representing the highest-numbered - features shall appear first in the string, and the character representing - features 1 to 4 shall appear last in the string. The list of features - and their numbering (starting with 1) are defined separately for each - API. If the string contains a lower number of characters than there are - defined features for an API, all features that would be represented by - characters that are not present in the string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string title: ProblemDetails @@ -2003,15 +4239,16 @@ components: title: Uri type: string InvalidParam: - description: Represents the description of invalid parameters, for a request - rejected due to invalid parameters. + description: | + Represents the description of invalid parameters, for a request rejected due to invalid parameters. properties: param: - description: Attribute's name encoded as a JSON Pointer, or header's name. + description: "Attribute's name encoded as a JSON Pointer, or header's name." title: param type: string reason: - description: A human-readable reason, e.g. "must be a positive integer". + description: "A human-readable reason, e.g. \"must be a positive integer\"\ + ." title: reason type: string required: @@ -2021,15 +4258,23 @@ components: ReportingInformation: description: Represents the type of reporting that the subscription requires. example: + notifMethod: PERIODIC partitionCriteria: - - null - - null + - TAC + - TAC grpRepTime: 5 + notifFlag: ACTIVATE + mutingSetting: + maxNoOfNotif: 5 + durationBufferedNotif: 2 monDur: 2000-01-23T04:56:07.000+00:00 immRep: true maxReportNbr: 0 repPeriod: 6 sampRatio: 15 + notifFlagInstruct: + bufferedNotifs: SEND_ALL + subscription: CLOSE properties: immRep: title: immRep @@ -2037,13 +4282,13 @@ components: notifMethod: $ref: '#/components/schemas/NotificationMethod' maxReportNbr: - description: Unsigned Integer, i.e. only value 0 and integers above 0 are - permissible. + description: "Unsigned Integer, i.e. only value 0 and integers above 0 are\ + \ permissible." minimum: 0 title: Uinteger type: integer monDur: - description: string with format "date-time" as defined in OpenAPI. + description: string with format 'date-time' as defined in OpenAPI. format: date-time title: DateTime type: string @@ -2052,8 +4297,8 @@ components: title: DurationSec type: integer sampRatio: - description: Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 - of 3GPP TS 23.502), expressed in percent. + description: "Unsigned integer indicating Sampling Ratio (see clauses 4.15.1\ + \ of 3GPP TS 23.502), expressed in percent. \n" maximum: 100 minimum: 1 title: SamplingRatio @@ -2072,11 +4317,15 @@ components: type: integer notifFlag: $ref: '#/components/schemas/NotificationFlag' + notifFlagInstruct: + $ref: '#/components/schemas/MutingExceptionInstructions' + mutingSetting: + $ref: '#/components/schemas/MutingNotificationsSettings' title: ReportingInformation type: object WebsockNotifConfig: - description: Represents the configuration information for the delivery of notifications - over Websockets. + description: | + Represents the configuration information for the delivery of notifications over Websockets. example: requestWebsocketUri: true websocketUri: websocketUri @@ -2099,19 +4348,9 @@ components: title: Link type: string SupportedFeatures: - description: A string used to indicate the features supported by an API that - is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain - a bitmask indicating supported features in hexadecimal representation Each - character in the string shall take a value of "0" to "9", "a" to "f" or "A" - to "F" and shall represent the support of 4 features as described in table 5.2.2-3. - The most significant character representing the highest-numbered features - shall appear first in the string, and the character representing features - 1 to 4 shall appear last in the string. The list of features and their numbering - (starting with 1) are defined separately for each API. If the string contains - a lower number of characters than there are defined features for an API, all - features that would be represented by characters that are not present in the - string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string ServiceAPIDescription: @@ -2126,20 +4365,51 @@ components: - capifProvDoms - capifProvDoms isShareable: true + apiProvName: apiProvName supportedFeatures: supportedFeatures description: description apiSuppFeats: apiSuppFeats apiId: apiId + apiStatus: + aefIds: + - aefIds + - aefIds aefProfiles: - - securityMethods: - - null - - null + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2147,19 +4417,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -2168,6 +4454,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2175,46 +4475,144 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - - securityMethods: - - null - - null + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + - protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + securityMethods: + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2222,19 +4620,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -2243,6 +4657,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2250,59 +4678,129 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp pubApiPath: ccfIds: - ccfIds - ccfIds properties: apiName: - description: API name, it is set as {apiName} part of the URI structure - as defined in subclause 4.4 of 3GPP TS 29.501. + description: | + API name, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. title: apiName type: string apiId: - description: API identifier assigned by the CAPIF core function to the published - service API. Shall not be present in the HTTP POST request from the API - publishing function to the CAPIF core function. Shall be present in the - HTTP POST response from the CAPIF core function to the API publishing - function and in the HTTP GET response from the CAPIF core function to - the API invoker (discovery API). + description: | + API identifier assigned by the CAPIF core function to the published service API. Shall not be present in the HTTP POST request from the API publishing function to the CAPIF core function. Shall be present in the HTTP POST response from the CAPIF core function to the API publishing function and in the HTTP GET response from the CAPIF core function to the API invoker (discovery API). title: apiId type: string + apiStatus: + $ref: '#/components/schemas/ApiStatus' aefProfiles: - description: AEF profile information, which includes the exposed API details - (e.g. protocol). + description: | + AEF profile information, which includes the exposed API details (e.g. protocol). items: $ref: '#/components/schemas/AefProfile' minItems: 1 @@ -2313,40 +4811,21 @@ components: title: description type: string supportedFeatures: - description: A string used to indicate the features supported by an API - that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall - contain a bitmask indicating supported features in hexadecimal representation - Each character in the string shall take a value of "0" to "9", "a" to - "f" or "A" to "F" and shall represent the support of 4 features as described - in table 5.2.2-3. The most significant character representing the highest-numbered - features shall appear first in the string, and the character representing - features 1 to 4 shall appear last in the string. The list of features - and their numbering (starting with 1) are defined separately for each - API. If the string contains a lower number of characters than there are - defined features for an API, all features that would be represented by - characters that are not present in the string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string shareableInfo: $ref: '#/components/schemas/ShareableInformation' serviceAPICategory: + description: The service API category to which the service API belongs to. title: serviceAPICategory type: string apiSuppFeats: - description: A string used to indicate the features supported by an API - that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall - contain a bitmask indicating supported features in hexadecimal representation - Each character in the string shall take a value of "0" to "9", "a" to - "f" or "A" to "F" and shall represent the support of 4 features as described - in table 5.2.2-3. The most significant character representing the highest-numbered - features shall appear first in the string, and the character representing - features 1 to 4 shall appear last in the string. The list of features - and their numbering (starting with 1) are defined separately for each - API. If the string contains a lower number of characters than there are - defined features for an API, all features that would be represented by - characters that are not present in the string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string pubApiPath: @@ -2355,22 +4834,71 @@ components: description: CAPIF core function identifier. title: ccfId type: string + apiProvName: + description: Represents the API provider name. + title: apiProvName + type: string required: - apiName title: ServiceAPIDescription type: object + ApiStatus: + description: | + Represents the API status. + example: + aefIds: + - aefIds + - aefIds + properties: + aefIds: + description: | + Indicates the list of AEF ID(s) where the API is active. If this attribute is omitted, the API is inactive at all AEF(s) defined in the "aefProfiles" attribute within the ServiceAPIDescription data structure. + items: + type: string + title: aefIds + type: array + required: + - aefIds + title: ApiStatus + type: object AefProfile: description: Represents the AEF profile data. example: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2378,19 +4906,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -2399,6 +4943,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2406,42 +4964,117 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - oneOf: + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + nullable: true + oneOf: - required: - - domainName + - ipv4Addr - required: - - interfaceDescriptions + - ipv6Addr + - required: + - fqdn properties: aefId: description: Identifier of the API exposing function @@ -2476,6 +5109,12 @@ components: minItems: 1 title: interfaceDescriptions type: array + aefLocation: + $ref: '#/components/schemas/AefLocation' + serviceKpis: + $ref: '#/components/schemas/ServiceKpis' + ueIpRange: + $ref: '#/components/schemas/IpAddrRange' required: - aefId - versions @@ -2489,6 +5128,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2496,19 +5149,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -2520,7 +5189,7 @@ components: expiry: description: string with format "date-time" as defined in OpenAPI. format: date-time - title: DateTime + title: DateTime_1 type: string resources: description: Resources supported by the API. @@ -2546,6 +5215,20 @@ components: operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -2558,19 +5241,26 @@ components: commType: $ref: '#/components/schemas/CommunicationType' uri: - description: Relative URI of the API resource, it is set as {apiSpecificResourceUriPart} - part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. + description: | + Relative URI of the API resource, it is set as {apiSpecificSuffixes} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. title: uri type: string custOpName: - description: it is set as {custOpName} part of the URI structure for a custom - operation associated with a resource as defined in subclause 4.4 of 3GPP - TS 29.501. + description: | + it is set as {custOpName} part of the URI structure for a custom operation associated with a resource as defined in clause 5.2.4 of 3GPP TS 29.122. title: custOpName type: string + custOperations: + description: | + Custom operations associated with this resource. + items: + $ref: '#/components/schemas/CustomOperation' + minItems: 1 + title: custOperations + type: array operations: - description: Supported HTTP methods for the API resource. Only applicable - when the protocol in AefProfile indicates HTTP. + description: | + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. items: $ref: '#/components/schemas/Operation' minItems: 1 @@ -2588,42 +5278,38 @@ components: type: object CommunicationType: anyOf: - - $ref: '#/components/schemas/CommunicationType_anyOf' - - description: | - This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. + - enum: + - REQUEST_RESPONSE + - SUBSCRIBE_NOTIFY type: string - description: | - Possible values are - REQUEST_RESPONSE: The communication is of the type request-response - SUBSCRIBE_NOTIFY: The communication is of the type subscribe-notify - title: CommunicationType - Operation: - anyOf: - - $ref: '#/components/schemas/Operation_anyOf' - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - GET: HTTP GET method - POST: HTTP POST method - PUT: HTTP PUT method - PATCH: HTTP PATCH method - DELETE: HTTP DELETE method - title: Operation + description: "Indicates a communication type of the resource or the custom operation.\ + \ \nPossible values are:\n- REQUEST_RESPONSE: The communication is of the\ + \ type request-response.\n- SUBSCRIBE_NOTIFY: The communication is of the\ + \ type subscribe-notify.\n" + title: CommunicationType CustomOperation: description: Represents the description of a custom operation. example: operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName properties: commType: $ref: '#/components/schemas/CommunicationType' custOpName: - description: it is set as {custOpName} part of the URI structure for a custom - operation without resource association as defined in subclause 4.4 of - 3GPP TS 29.501. + description: | + it is set as {custOpName} part of the URI structure for a custom operation without resource association as defined in clause 5.2.4 of 3GPP TS 29.122. title: custOpName type: string operations: - description: Supported HTTP methods for the API resource. Only applicable - when the protocol in AefProfile indicates HTTP. + description: | + Supported HTTP methods for the API resource. Only applicable when the protocol in AefProfile indicates HTTP. items: $ref: '#/components/schemas/Operation' minItems: 1 @@ -2638,32 +5324,68 @@ components: - custOpName title: CustomOperation type: object + Operation: + anyOf: + - enum: + - GET + - POST + - PUT + - PATCH + - DELETE + type: string + - description: | + This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. + type: string + description: "Indicates an HTTP method. \nPossible values are:\n- GET: HTTP\ + \ GET method.\n- POST: HTTP POST method.\n- PUT: HTTP PUT method.\n- PATCH:\ + \ HTTP PATCH method.\n- DELETE: HTTP DELETE method.\n" + title: Operation Protocol: anyOf: - - $ref: '#/components/schemas/Protocol_anyOf' + - enum: + - HTTP_1_1 + - HTTP_2 + - MQTT + - WEBSOCKET + type: string - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - HTTP_1_1: HTTP version 1.1 - HTTP_2: HTTP version 2 + description: "Indicates a protocol and protocol version used by the API. \n\ + Possible values are:\n- HTTP_1_1: Indicates that the protocol is HTTP version\ + \ 1.1.\n- HTTP_2: Indicates that the protocol is HTTP version 2.\n- MQTT:\ + \ Indicates that the protocol is Message Queuing Telemetry Transport.\n- WEBSOCKET:\ + \ Indicates that the protocol is Websocket.\n" title: Protocol DataFormat: anyOf: - - $ref: '#/components/schemas/DataFormat_anyOf' + - enum: + - JSON + - XML + - PROTOBUF3 + type: string - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - JSON: JavaScript Object Notation + description: "Indicates a data format. \nPossible values are:\n- JSON: Indicates\ + \ that the data format is JSON.\n- XML: Indicates that the data format is\ + \ Extensible Markup Language.\n- PROTOBUF3: Indicates that the data format\ + \ is Protocol buffers version 3.\n" title: DataFormat SecurityMethod: anyOf: - - $ref: '#/components/schemas/SecurityMethod_anyOf' + - enum: + - PSK + - PKI + - OAUTH + type: string - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - PSK: Security method 1 (Using TLS-PSK) as described in 3GPP TS 33.122 - PKI: Security method 2 (Using PKI) as described in 3GPP TS 33.122 - OAUTH: Security method 3 (TLS with OAuth token) as described in 3GPP TS 33.122 + description: "Indicates the security method. \nPossible values are:\n- PSK:\ + \ Security method 1 (Using TLS-PSK) as described in 3GPP TS 33.122.\n- PKI:\ + \ Security method 2 (Using PKI) as described in 3GPP TS 33.122.\n- OAUTH:\ + \ Security method 3 (TLS with OAuth token) as described in 3GPP TS 33.122.\n" title: SecurityMethod InterfaceDescription: description: Represents the description of an API's interface. @@ -2672,34 +5394,49 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + nullable: true oneOf: - required: - - ipv4Addr + - domainName - required: - - ipv6Addr + - interfaceDescriptions properties: ipv4Addr: - description: string identifying a Ipv4 address formatted in the "dotted - decimal" notation as defined in IETF RFC 1166. + description: | + string identifying a Ipv4 address formatted in the "dotted decimal" notation as defined in IETF RFC 1166. title: Ipv4Addr type: string ipv6Addr: - description: string identifying a Ipv6 address formatted according to clause - 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 - of IETF RFC 5952 shall not be used. + description: | + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. title: Ipv6Addr type: string + fqdn: + description: Fully Qualified Domain Name + maxLength: 253 + minLength: 4 + pattern: "^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\\.)+[A-Za-z]{2,63}\\\ + .?$" + title: Fqdn + type: string port: description: Unsigned integer with valid values between 0 and 65535. maximum: 65535 minimum: 0 title: Port type: integer + apiPrefix: + description: | + A string representing a sequence of path segments that starts with the slash character. + title: apiPrefix + type: string securityMethods: - description: Security methods supported by the interface, it take precedence - over the security methods provided in AefProfile, for this specific interface. + description: | + Security methods supported by the interface, it take precedence over the security methods provided in AefProfile, for this specific interface. items: $ref: '#/components/schemas/SecurityMethod' minItems: 1 @@ -2707,9 +5444,160 @@ components: type: array title: InterfaceDescription type: object + AefLocation: + description: | + Represents the location information (e.g. civic address, GPS coordinates, data center ID) where the AEF providing the service API is located. + example: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR + properties: + civicAddr: + $ref: '#/components/schemas/CivicAddress' + geoArea: + $ref: '#/components/schemas/GeographicArea' + dcId: + description: | + Identifies the data center where the AEF providing the service API is located. + title: dcId + type: string + title: AefLocation + type: object + ServiceKpis: + description: | + Represents information about the service characteristics provided by a service API. + example: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp + properties: + maxReqRate: + description: "Unsigned Integer, i.e. only value 0 and integers above 0 are\ + \ permissible." + minimum: 0 + title: Uinteger + type: integer + maxRestime: + description: Unsigned integer identifying a period of time in units of seconds. + minimum: 0 + title: DurationSec_1 + type: integer + availability: + description: "Unsigned Integer, i.e. only value 0 and integers above 0 are\ + \ permissible." + minimum: 0 + title: Uinteger + type: integer + avalComp: + description: | + The maximum compute resource available in FLOPS for the API Invoker. + pattern: ^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$ + title: avalComp + type: string + avalGraComp: + description: | + The maximum graphical compute resource in FLOPS available for the API Invoker. + pattern: ^\d+(\.\d+)? (kFLOPS|MFLOPS|GFLOPS|TFLOPS|PFLOPS|EFLOPS|ZFLOPS)$ + title: avalGraComp + type: string + avalMem: + description: | + The maximum memory resource available for the API Invoker. + pattern: ^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$ + title: avalMem + type: string + avalStor: + description: | + The maximum storage resource available for the API Invoker. + pattern: ^\d+(\.\d+)? (KB|MB|GB|TB|PB|EB|ZB|YB)$ + title: avalStor + type: string + conBand: + description: "Unsigned Integer, i.e. only value 0 and integers above 0 are\ + \ permissible." + minimum: 0 + title: Uinteger + type: integer + title: ServiceKpis + type: object + IpAddrRange: + anyOf: [] + description: Represents the list of public IP ranges + example: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + nullable: true + properties: + ueIpv4AddrRanges: + description: Represents the IPv4 Address ranges of the UE(s). + items: + $ref: '#/components/schemas/Ipv4AddressRange' + minItems: 1 + title: ueIpv4AddrRanges + type: array + ueIpv6AddrRanges: + description: Represents the Ipv6 Address ranges of the UE(s). + items: + $ref: '#/components/schemas/Ipv6AddressRange_1' + minItems: 1 + title: ueIpv6AddrRanges + type: array + title: IpAddrRange + type: object ShareableInformation: - description: Indicates whether the service API and/or the service API category - can be shared to the list of CAPIF provider domains. + description: | + Indicates whether the service API and/or the service API category can be shared to the list of CAPIF provider domains. example: capifProvDoms: - capifProvDoms @@ -2717,14 +5605,13 @@ components: isShareable: true properties: isShareable: - description: Set to "true" indicates that the service API and/or the service - API category can be shared to the list of CAPIF provider domain information. - Otherwise set to "false". + description: | + Set to "true" indicates that the service API and/or the service API category can be shared to the list of CAPIF provider domain information. Otherwise set to "false". title: isShareable type: boolean capifProvDoms: - description: List of CAPIF provider domains to which the service API information - to be shared. + description: | + List of CAPIF provider domains to which the service API information to be shared. items: type: string minItems: 1 @@ -2753,8 +5640,8 @@ components: title: PublishedApiPath type: object InvocationLog: - description: Represents a set of Service API invocation logs to be stored in - a CAPIF core function. + description: | + Represents a set of Service API invocation logs to be stored in a CAPIF core function. example: supportedFeatures: supportedFeatures apiInvokerId: apiInvokerId @@ -2767,7 +5654,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -2775,14 +5664,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" - apiName: apiName @@ -2792,7 +5685,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -2800,20 +5695,24 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" properties: aefId: - description: Identity information of the API exposing function requesting - logging of service API invocations + description: | + Identity information of the API exposing function requesting logging of service API invocations title: aefId type: string apiInvokerId: @@ -2828,19 +5727,9 @@ components: title: logs type: array supportedFeatures: - description: A string used to indicate the features supported by an API - that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall - contain a bitmask indicating supported features in hexadecimal representation - Each character in the string shall take a value of "0" to "9", "a" to - "f" or "A" to "F" and shall represent the support of 4 features as described - in table 5.2.2-3. The most significant character representing the highest-numbered - features shall appear first in the string, and the character representing - features 1 to 4 shall appear last in the string. The list of features - and their numbering (starting with 1) are defined separately for each - API. If the string contains a lower number of characters than there are - defined features for an API, all features that would be represented by - characters that are not present in the string are not supported - pattern: ^[A-Fa-f0-9]*$ + description: | + A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported. + pattern: "^[A-Fa-f0-9]*$" title: SupportedFeatures type: string required: @@ -2859,7 +5748,9 @@ components: securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr fwdInterface: fwdInterface resourceName: resourceName @@ -2867,14 +5758,18 @@ components: inputParameters: "" invocationLatency: 0 result: result + protocol: null apiVersion: apiVersion destInterface: ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + operation: null apiId: apiId outputParameters: "" properties: @@ -2883,8 +5778,8 @@ components: title: apiId type: string apiName: - description: Name of the API which was invoked, it is set as {apiName} part - of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501. + description: | + Name of the API which was invoked, it is set as {apiName} part of the URI structure as defined in clause 5.2.4 of 3GPP TS 29.122. title: apiName type: string apiVersion: @@ -2904,35 +5799,34 @@ components: operation: $ref: '#/components/schemas/Operation' result: - description: For HTTP protocol, it contains HTTP status code of the invocation + description: "For HTTP protocol, it contains HTTP status code of the invocation" title: result type: string invocationTime: description: string with format "date-time" as defined in OpenAPI. format: date-time - title: DateTime + title: DateTime_1 type: string invocationLatency: - description: Unsigned integer identifying a period of time in units of milliseconds. + description: Represents a period of time in units of milliseconds. minimum: 0 title: DurationMs type: integer inputParameters: - description: List of input parameters. Can be any value - string, number, - boolean, array or object. + description: | + List of input parameters. Can be any value - string, number, boolean, array or object. title: inputParameters outputParameters: - description: List of output parameters. Can be any value - string, number, - boolean, array or object. + description: | + List of output parameters. Can be any value - string, number, boolean, array or object. title: outputParameters srcInterface: $ref: '#/components/schemas/InterfaceDescription' destInterface: $ref: '#/components/schemas/InterfaceDescription' fwdInterface: - description: It includes the node identifier (as defined in IETF RFC 7239 - of all forwarding entities between the API invoker and the AEF, concatenated - with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 + description: | + It includes the node identifier (as defined in IETF RFC 7239 of all forwarding entities between the API invoker and the AEF, concatenated with comma and space, e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60 title: fwdInterface type: string required: @@ -2945,7 +5839,7 @@ components: title: Log type: object DurationMs: - description: Unsigned integer identifying a period of time in units of milliseconds. + description: Represents a period of time in units of milliseconds. minimum: 0 title: DurationMs type: integer @@ -2964,6 +5858,15 @@ components: type: object ApiInvokerPolicy: description: Represents the policy of an API Invoker. + example: + apiInvokerId: apiInvokerId + allowedTotalInvocations: 9 + allowedInvocationTimeRangeList: + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + - startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 + allowedInvocationsPerSecond: 3 properties: apiInvokerId: description: API invoker ID assigned by the CAPIF core function @@ -2980,8 +5883,8 @@ components: title: allowedInvocationsPerSecond type: integer allowedInvocationTimeRangeList: - description: The time ranges during which the invocations are allowed on - the service API by the API invoker. + description: | + The time ranges during which the invocations are allowed on the service API by the API invoker. items: $ref: '#/components/schemas/TimeRangeList' minItems: 0 @@ -2992,18 +5895,21 @@ components: title: ApiInvokerPolicy type: object TimeRangeList: - description: Represents the time range during which the invocation of a service - API is allowed by the API invoker. + description: | + Represents the time range during which the invocation of a service API is allowed by the API invoker. + example: + startTime: 2000-01-23T04:56:07.000+00:00 + stopTime: 2000-01-23T04:56:07.000+00:00 properties: startTime: description: string with format "date-time" as defined in OpenAPI. format: date-time - title: DateTime + title: DateTime_1 type: string stopTime: description: string with format "date-time" as defined in OpenAPI. format: date-time - title: DateTime + title: DateTime_1 type: string title: TimeRangeList type: object @@ -3016,15 +5922,41 @@ components: - start: start end: end aefProfile: + protocol: HTTP_1_1 + ueIpRange: + ueIpv4AddrRanges: + - start: 198.51.100.1 + end: 198.51.100.1 + - start: 198.51.100.1 + end: 198.51.100.1 + ueIpv6AddrRanges: + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + - start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 securityMethods: - - null - - null + - PSK + - PSK versions: - apiVersion: apiVersion resources: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -3032,19 +5964,35 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 @@ -3053,6 +6001,20 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName @@ -3060,37 +6022,109 @@ components: - operations: - null - null + commType: REQUEST_RESPONSE + custOperations: + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName + - operations: + - GET + - GET + commType: null + description: description + custOpName: custOpName description: description resourceName: resourceName custOpName: custOpName uri: uri custOperations: - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName - operations: - - null - - null + - GET + - GET + commType: null description: description custOpName: custOpName expiry: 2000-01-23T04:56:07.000+00:00 + dataFormat: JSON domainName: domainName + aefLocation: + dcId: dcId + geoArea: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + civicAddr: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR aefId: aefId interfaceDescriptions: - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr - ipv6Addr: ipv6Addr securityMethods: - null - null + fqdn: fqdn port: 5248 + apiPrefix: apiPrefix ipv4Addr: ipv4Addr + serviceKpis: + avalMem: avalMem + avalStor: avalStor + avalComp: avalComp + conBand: 0 + maxRestime: 0 + availability: 0 + maxReqRate: 0 + avalGraComp: avalGraComp ipv4AddrRanges: - start: 198.51.100.1 end: 198.51.100.1 @@ -3099,7 +6133,7 @@ components: properties: ipv4AddrRanges: items: - $ref: '#/components/schemas/Ipv4AddressRange' + $ref: '#/components/schemas/Ipv4AddressRange_1' minItems: 1 title: ipv4AddrRanges type: array @@ -3122,15 +6156,13 @@ components: end: end properties: start: - description: string identifying a Ipv6 address formatted according to clause - 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 - of IETF RFC 5952 shall not be used. + description: | + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. title: Ipv6Addr type: string end: - description: string identifying a Ipv6 address formatted according to clause - 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 - of IETF RFC 5952 shall not be used. + description: | + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. title: Ipv6Addr type: string required: @@ -3140,20 +6172,24 @@ components: type: object NotificationMethod: anyOf: - - $ref: '#/components/schemas/NotificationMethod_anyOf' + - enum: + - PERIODIC + - ONE_TIME + - ON_EVENT_DETECTION + type: string - description: | - This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. + This string provides forward-compatibility with future extensions to the enumeration and is not used to encode content defined in the present version of this API. type: string - description: | - Possible values are - PERIODIC - ONE_TIME - ON_EVENT_DETECTION + description: "Represents the notification methods that can be subscribed. \n\ + Possible values are:\n- PERIODIC\n- ONE_TIME\n- ON_EVENT_DETECTION\n" title: NotificationMethod Uinteger: - description: Unsigned Integer, i.e. only value 0 and integers above 0 are permissible. + description: "Unsigned Integer, i.e. only value 0 and integers above 0 are permissible." minimum: 0 title: Uinteger type: integer DateTime: - description: string with format "date-time" as defined in OpenAPI. + description: string with format 'date-time' as defined in OpenAPI. format: date-time title: DateTime type: string @@ -3162,47 +6198,646 @@ components: title: DurationSec type: integer SamplingRatio: - description: Unsigned integer indicating Sampling Ratio (see clauses 4.15.1 - of 3GPP TS 23.502), expressed in percent. + description: "Unsigned integer indicating Sampling Ratio (see clauses 4.15.1\ + \ of 3GPP TS 23.502), expressed in percent. \n" maximum: 100 minimum: 1 title: SamplingRatio type: integer PartitioningCriteria: anyOf: - - $ref: '#/components/schemas/PartitioningCriteria_anyOf' + - enum: + - TAC + - SUBPLMN + - GEOAREA + - SNSSAI + - DNN + type: string - description: | This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. type: string description: | - Possible values are - "TAC": Type Allocation Code - "SUBPLMN": Subscriber PLMN ID - "GEOAREA": Geographical area, i.e. list(s) of TAI(s) - "SNSSAI": S-NSSAI - "DNN": DNN + Possible values are: + - "TAC": Type Allocation Code + - "SUBPLMN": Subscriber PLMN ID + - "GEOAREA": Geographical area, i.e. list(s) of TAI(s) + - "SNSSAI": S-NSSAI + - "DNN": DNN title: PartitioningCriteria NotificationFlag: anyOf: - - $ref: '#/components/schemas/NotificationFlag_anyOf' - - description: | - This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. + - enum: + - ACTIVATE + - DEACTIVATE + - RETRIEVAL type: string - description: | - Possible values are - ACTIVATE: The event notification is activated. - DEACTIVATE: The event notification is deactivated and shall be muted. The available event(s) shall be stored. - RETRIEVAL: The event notification shall be sent to the NF service consumer(s), after that, is muted again. + - description: "This string provides forward-compatibility with future extensions\ + \ to the enumeration but is not used to encode content defined in the present\ + \ version of this API. \n" + type: string + description: "Possible values are:\n- ACTIVATE: The event notification is activated.\n\ + - DEACTIVATE: The event notification is deactivated and shall be muted. The\ + \ available\n event(s) shall be stored.\n- RETRIEVAL: The event notification\ + \ shall be sent to the NF service consumer(s),\n after that, is muted again.\ + \ \n" title: NotificationFlag + MutingExceptionInstructions: + description: | + Indicates to an Event producer NF instructions for the subscription and stored events when an exception (e.g. full buffer) occurs at the Event producer NF while the event is muted. + example: + bufferedNotifs: SEND_ALL + subscription: CLOSE + properties: + bufferedNotifs: + $ref: '#/components/schemas/BufferedNotificationsAction' + subscription: + $ref: '#/components/schemas/SubscriptionAction' + title: MutingExceptionInstructions + type: object + BufferedNotificationsAction: + anyOf: + - enum: + - SEND_ALL + - DISCARD_ALL + - DROP_OLD + type: string + - type: string + description: | + Indicates the required action by the event producer NF on the buffered Notifications. + title: BufferedNotificationsAction + SubscriptionAction: + anyOf: + - enum: + - CLOSE + - CONTINUE_WITH_MUTING + - CONTINUE_WITHOUT_MUTING + type: string + - type: string + description: | + Indicates the required action by the event producer NF on the event subscription if an exception occurs while the event is muted. + title: SubscriptionAction + MutingNotificationsSettings: + description: | + Indicates the Event producer NF settings to the Event consumer NF + example: + maxNoOfNotif: 5 + durationBufferedNotif: 2 + properties: + maxNoOfNotif: + title: maxNoOfNotif + type: integer + durationBufferedNotif: + description: indicating a time in seconds. + title: DurationSec + type: integer + title: MutingNotificationsSettings + type: object + DateTime_1: + description: string with format "date-time" as defined in OpenAPI. + format: date-time + title: DateTime_1 + type: string Ipv4Addr: - description: string identifying a Ipv4 address formatted in the "dotted decimal" - notation as defined in IETF RFC 1166. + description: | + string identifying a Ipv4 address formatted in the "dotted decimal" notation as defined in IETF RFC 1166. title: Ipv4Addr type: string Ipv6Addr: - description: string identifying a Ipv6 address formatted according to clause - 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of - IETF RFC 5952 shall not be used. + description: | + string identifying a Ipv6 address formatted according to clause 4 in IETF RFC 5952. The mixed Ipv4 Ipv6 notation according to clause 5 of IETF RFC 5952 shall not be used. title: Ipv6Addr type: string + Fqdn: + description: Fully Qualified Domain Name + maxLength: 253 + minLength: 4 + pattern: "^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\\.)+[A-Za-z]{2,63}\\\ + .?$" + title: Fqdn + type: string Port: description: Unsigned integer with valid values between 0 and 65535. maximum: 65535 minimum: 0 title: Port type: integer + CivicAddress: + description: Indicates a Civic address. + example: + POBOX: POBOX + usageRules: usageRules + country: country + PRD: PRD + PLC: PLC + HNO: HNO + PRM: PRM + HNS: HNS + FLR: FLR + A1: A1 + A2: A2 + A3: A3 + A4: A4 + STS: STS + A5: A5 + A6: A6 + RDSEC: RDSEC + providedBy: providedBy + LOC: LOC + UNIT: UNIT + SEAT: SEAT + POD: POD + RDBR: RDBR + method: method + LMK: LMK + POM: POM + ADDCODE: ADDCODE + RD: RD + PC: PC + PCN: PCN + NAM: NAM + BLD: BLD + ROOM: ROOM + RDSUBBR: RDSUBBR + properties: + country: + title: country + type: string + A1: + title: A1 + type: string + A2: + title: A2 + type: string + A3: + title: A3 + type: string + A4: + title: A4 + type: string + A5: + title: A5 + type: string + A6: + title: A6 + type: string + PRD: + title: PRD + type: string + POD: + title: POD + type: string + STS: + title: STS + type: string + HNO: + title: HNO + type: string + HNS: + title: HNS + type: string + LMK: + title: LMK + type: string + LOC: + title: LOC + type: string + NAM: + title: NAM + type: string + PC: + title: PC + type: string + BLD: + title: BLD + type: string + UNIT: + title: UNIT + type: string + FLR: + title: FLR + type: string + ROOM: + title: ROOM + type: string + PLC: + title: PLC + type: string + PCN: + title: PCN + type: string + POBOX: + title: POBOX + type: string + ADDCODE: + title: ADDCODE + type: string + SEAT: + title: SEAT + type: string + RD: + title: RD + type: string + RDSEC: + title: RDSEC + type: string + RDBR: + title: RDBR + type: string + RDSUBBR: + title: RDSUBBR + type: string + PRM: + title: PRM + type: string + POM: + title: POM + type: string + usageRules: + title: usageRules + type: string + method: + title: method + type: string + providedBy: + title: providedBy + type: string + title: CivicAddress + type: object + GeographicArea: + anyOf: + - $ref: '#/components/schemas/Point' + - $ref: '#/components/schemas/PointUncertaintyCircle' + - $ref: '#/components/schemas/PointUncertaintyEllipse' + - $ref: '#/components/schemas/Polygon' + - $ref: '#/components/schemas/PointAltitude' + - $ref: '#/components/schemas/PointAltitudeUncertainty' + - $ref: '#/components/schemas/EllipsoidArc' + description: Geographic area specified by different shape. + title: GeographicArea + Point: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + required: + - point + type: object + description: Ellipsoid Point. + example: + shape: POINT + point: + lon: 36.988422590534526 + lat: -63.615366350946985 + title: Point + GADShape: + description: Common base type for GAD shapes. + discriminator: + mapping: + POINT: '#/components/schemas/Point' + POINT_UNCERTAINTY_CIRCLE: '#/components/schemas/PointUncertaintyCircle' + POINT_UNCERTAINTY_ELLIPSE: '#/components/schemas/PointUncertaintyEllipse' + POLYGON: '#/components/schemas/Polygon' + POINT_ALTITUDE: '#/components/schemas/PointAltitude' + POINT_ALTITUDE_UNCERTAINTY: '#/components/schemas/PointAltitudeUncertainty' + ELLIPSOID_ARC: '#/components/schemas/EllipsoidArc' + LOCAL_2D_POINT_UNCERTAINTY_ELLIPSE: '#/components/schemas/Local2dPointUncertaintyEllipse' + LOCAL_3D_POINT_UNCERTAINTY_ELLIPSOID: '#/components/schemas/Local3dPointUncertaintyEllipsoid' + propertyName: shape + properties: + shape: + $ref: '#/components/schemas/SupportedGADShapes' + required: + - shape + title: GADShape + type: object + SupportedGADShapes: + anyOf: + - enum: + - POINT + - POINT_UNCERTAINTY_CIRCLE + - POINT_UNCERTAINTY_ELLIPSE + - POLYGON + - POINT_ALTITUDE + - POINT_ALTITUDE_UNCERTAINTY + - ELLIPSOID_ARC + - LOCAL_2D_POINT_UNCERTAINTY_ELLIPSE + - LOCAL_3D_POINT_UNCERTAINTY_ELLIPSOID + - DISTANCE_DIRECTION + - RELATIVE_2D_LOCATION_UNCERTAINTY_ELLIPSE + - RELATIVE_3D_LOCATION_UNCERTAINTY_ELLIPSOID + type: string + - type: string + description: Indicates supported GAD shapes. + title: SupportedGADShapes + PointUncertaintyCircle: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + uncertainty: + $ref: '#/components/schemas/Uncertainty' + required: + - point + - uncertainty + type: object + description: Ellipsoid point with uncertainty circle. + title: PointUncertaintyCircle + GeographicalCoordinates: + description: Geographical coordinates. + example: + lon: 36.988422590534526 + lat: -63.615366350946985 + properties: + lon: + format: double + maximum: 180 + minimum: -180 + title: lon + type: number + lat: + format: double + maximum: 90 + minimum: -90 + title: lat + type: number + required: + - lat + - lon + title: GeographicalCoordinates + type: object + Uncertainty: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + PointUncertaintyEllipse: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + uncertaintyEllipse: + $ref: '#/components/schemas/UncertaintyEllipse' + confidence: + $ref: '#/components/schemas/Confidence' + required: + - confidence + - point + - uncertaintyEllipse + type: object + description: Ellipsoid point with uncertainty ellipse. + title: PointUncertaintyEllipse + UncertaintyEllipse: + description: Ellipse with uncertainty. + properties: + semiMajor: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + semiMinor: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + orientationMajor: + description: Indicates value of orientation angle. + maximum: 180 + minimum: 0 + title: Orientation + type: integer + required: + - orientationMajor + - semiMajor + - semiMinor + title: UncertaintyEllipse + type: object + Orientation: + description: Indicates value of orientation angle. + maximum: 180 + minimum: 0 + title: Orientation + type: integer + Confidence: + description: Indicates value of confidence. + maximum: 100 + minimum: 0 + type: integer + Polygon: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + pointList: + $ref: '#/components/schemas/PointList' + required: + - pointList + type: object + description: Polygon. + title: Polygon + PointList: + description: List of points. + items: + $ref: '#/components/schemas/GeographicalCoordinates' + maxItems: 15 + minItems: 3 + type: array + PointAltitude: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + altitude: + $ref: '#/components/schemas/Altitude' + required: + - altitude + - point + type: object + description: Ellipsoid point with altitude. + title: PointAltitude + Altitude: + description: Indicates value of altitude. + format: double + maximum: 32767 + minimum: -32767 + type: number + PointAltitudeUncertainty: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + altitude: + $ref: '#/components/schemas/Altitude' + uncertaintyEllipse: + $ref: '#/components/schemas/UncertaintyEllipse' + uncertaintyAltitude: + $ref: '#/components/schemas/Uncertainty' + confidence: + $ref: '#/components/schemas/Confidence' + vConfidence: + $ref: '#/components/schemas/Confidence' + required: + - altitude + - confidence + - point + - uncertaintyAltitude + - uncertaintyEllipse + type: object + description: Ellipsoid point with altitude and uncertainty ellipsoid. + title: PointAltitudeUncertainty + EllipsoidArc: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + point: + $ref: '#/components/schemas/GeographicalCoordinates' + innerRadius: + $ref: '#/components/schemas/InnerRadius' + uncertaintyRadius: + $ref: '#/components/schemas/Uncertainty' + offsetAngle: + $ref: '#/components/schemas/Angle' + includedAngle: + $ref: '#/components/schemas/Angle' + confidence: + $ref: '#/components/schemas/Confidence' + required: + - confidence + - includedAngle + - innerRadius + - offsetAngle + - point + - uncertaintyRadius + type: object + description: Ellipsoid Arc. + title: EllipsoidArc + InnerRadius: + description: Indicates value of the inner radius. + format: int32 + maximum: 327675 + minimum: 0 + type: integer + Angle: + description: Indicates value of angle. + maximum: 360 + minimum: 0 + type: integer + Local2dPointUncertaintyEllipse: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + localOrigin: + $ref: '#/components/schemas/LocalOrigin' + point: + $ref: '#/components/schemas/RelativeCartesianLocation' + uncertaintyEllipse: + $ref: '#/components/schemas/UncertaintyEllipse' + confidence: + $ref: '#/components/schemas/Confidence' + required: + - confidence + - localOrigin + - point + - uncertaintyEllipse + type: object + description: Local 2D point with uncertainty ellipse + LocalOrigin: + description: Indicates a Local origin in a reference system + properties: + coordinateId: + title: coordinateId + type: string + point: + $ref: '#/components/schemas/GeographicalCoordinates' + title: LocalOrigin + type: object + RelativeCartesianLocation: + description: Relative Cartesian Location + properties: + x: + description: string with format 'float' as defined in OpenAPI. + format: float + title: Float + type: number + "y": + description: string with format 'float' as defined in OpenAPI. + format: float + title: Float + type: number + z: + description: string with format 'float' as defined in OpenAPI. + format: float + title: Float + type: number + required: + - x + - "y" + title: RelativeCartesianLocation + type: object + Local3dPointUncertaintyEllipsoid: + allOf: + - $ref: '#/components/schemas/GADShape' + - properties: + localOrigin: + $ref: '#/components/schemas/LocalOrigin' + point: + $ref: '#/components/schemas/RelativeCartesianLocation' + uncertaintyEllipsoid: + $ref: '#/components/schemas/UncertaintyEllipsoid' + confidence: + $ref: '#/components/schemas/Confidence' + required: + - confidence + - localOrigin + - point + - uncertaintyEllipsoid + type: object + description: Local 3D point with uncertainty ellipsoid + UncertaintyEllipsoid: + description: Ellipsoid with uncertainty + properties: + semiMajor: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + semiMinor: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + vertical: + description: Indicates value of uncertainty. + format: float + minimum: 0 + title: Uncertainty + type: number + orientationMajor: + description: Indicates value of orientation angle. + maximum: 180 + minimum: 0 + title: Orientation + type: integer + required: + - orientationMajor + - semiMajor + - semiMinor + - vertical + title: UncertaintyEllipsoid + type: object + DurationSec_1: + description: Unsigned integer identifying a period of time in units of seconds. + minimum: 0 + title: DurationSec_1 + type: integer Ipv4AddressRange: description: Range of IPv4 addresses example: @@ -3210,105 +6845,79 @@ components: end: 198.51.100.1 properties: start: - description: String identifying a IPv4 address formatted in the "dotted - decimal" notation as defined in RFC 1166. + description: | + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. example: 198.51.100.1 - pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ + pattern: "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" title: Ipv4Addr_1 type: string end: - description: String identifying a IPv4 address formatted in the "dotted - decimal" notation as defined in RFC 1166. + description: | + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. example: 198.51.100.1 - pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ + pattern: "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" title: Ipv4Addr_1 type: string + required: + - end + - start title: Ipv4AddressRange type: object Ipv4Addr_1: - description: String identifying a IPv4 address formatted in the "dotted decimal" - notation as defined in RFC 1166. + description: | + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. example: 198.51.100.1 - pattern: ^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ + pattern: "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" title: Ipv4Addr_1 type: string - AccessControlPolicyListExt_allOf: + Ipv6AddressRange_1: + description: Range of IPv6 addresses + example: + start: 2001:db8:85a3::8a2e:370:7334 + end: 2001:db8:85a3::8a2e:370:7334 + properties: + start: + $ref: '#/components/schemas/Ipv6Addr_1' + end: + $ref: '#/components/schemas/Ipv6Addr_1' + required: + - end + - start + title: Ipv6AddressRange_1 + type: object + Ipv6Addr_1: + allOf: + - pattern: "^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$" + - pattern: "^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$" + description: | + String identifying an IPv6 address formatted according to clause 4 of RFC5952. The mixed IPv4 IPv6 notation according to clause 5 of RFC5952 shall not be used. + example: 2001:db8:85a3::8a2e:370:7334 + title: Ipv6Addr_1 + type: string + Ipv4AddressRange_1: + description: Range of IPv4 addresses + example: + start: 198.51.100.1 + end: 198.51.100.1 properties: - apiId: - title: apiId + start: + description: | + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. + example: 198.51.100.1 + pattern: "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" + title: Ipv4Addr_1 + type: string + end: + description: | + String identifying a IPv4 address formatted in the 'dotted decimal' notation as defined in RFC 1166. + example: 198.51.100.1 + pattern: "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" + title: Ipv4Addr_1 type: string - title: AccessControlPolicyListExt_allOf + title: Ipv4AddressRange_1 type: object - CAPIFEvent_anyOf: - enum: - - SERVICE_API_AVAILABLE - - SERVICE_API_UNAVAILABLE - - SERVICE_API_UPDATE - - API_INVOKER_ONBOARDED - - API_INVOKER_OFFBOARDED - - SERVICE_API_INVOCATION_SUCCESS - - SERVICE_API_INVOCATION_FAILURE - - ACCESS_CONTROL_POLICY_UPDATE - - ACCESS_CONTROL_POLICY_UNAVAILABLE - - API_INVOKER_AUTHORIZATION_REVOKED - - API_INVOKER_UPDATED - - API_TOPOLOGY_HIDING_CREATED - - API_TOPOLOGY_HIDING_REVOKED - title: CAPIFEvent_anyOf - type: string - CommunicationType_anyOf: - enum: - - REQUEST_RESPONSE - - SUBSCRIBE_NOTIFY - title: CommunicationType_anyOf - type: string - Operation_anyOf: - enum: - - GET - - POST - - PUT - - PATCH - - DELETE - title: Operation_anyOf - type: string - Protocol_anyOf: - enum: - - HTTP_1_1 - - HTTP_2 - title: Protocol_anyOf - type: string - DataFormat_anyOf: - enum: - - JSON - title: DataFormat_anyOf - type: string - SecurityMethod_anyOf: - enum: - - PSK - - PKI - - OAUTH - title: SecurityMethod_anyOf - type: string - NotificationMethod_anyOf: - enum: - - PERIODIC - - ONE_TIME - - ON_EVENT_DETECTION - title: NotificationMethod_anyOf - type: string - PartitioningCriteria_anyOf: - enum: - - TAC - - SUBPLMN - - GEOAREA - - SNSSAI - - DNN - title: PartitioningCriteria_anyOf - type: string - NotificationFlag_anyOf: - enum: - - ACTIVATE - - DEACTIVATE - - RETRIEVAL - title: NotificationFlag_anyOf - type: string + Float: + description: string with format 'float' as defined in OpenAPI. + format: float + title: Float + type: number diff --git a/services/TS29222_CAPIF_Events_API/capif_events/test/__init__.py b/services/TS29222_CAPIF_Events_API/capif_events/test/__init__.py new file mode 100644 index 0000000..c55e721 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/test/__init__.py @@ -0,0 +1,16 @@ +import logging + +import connexion +from flask_testing import TestCase + +from capif_events.encoder import JSONEncoder + + +class BaseTestCase(TestCase): + + def create_app(self): + logging.getLogger('connexion.operation').setLevel('ERROR') + app = connexion.App(__name__, specification_dir='../openapi/') + app.app.json_encoder = JSONEncoder + app.add_api('openapi.yaml', pythonic_params=True) + return app.app diff --git a/services/TS29222_CAPIF_Events_API/capif_events/test/test_default_controller.py b/services/TS29222_CAPIF_Events_API/capif_events/test/test_default_controller.py new file mode 100644 index 0000000..7e06036 --- /dev/null +++ b/services/TS29222_CAPIF_Events_API/capif_events/test/test_default_controller.py @@ -0,0 +1,88 @@ +import unittest + +from flask import json + +from capif_events.models.event_subscription import EventSubscription # noqa: E501 +from capif_events.models.event_subscription_patch import EventSubscriptionPatch # noqa: E501 +from capif_events.models.problem_details import ProblemDetails # noqa: E501 +from capif_events.test import BaseTestCase + + +class TestDefaultController(BaseTestCase): + """DefaultController integration test stubs""" + + def test_subscriber_id_subscriptions_post(self): + """Test case for subscriber_id_subscriptions_post + + + """ + event_subscription = {"notificationDestination":"notificationDestination","eventFilters":[{"aefIds":["aefIds","aefIds"],"apiInvokerIds":["apiInvokerIds","apiInvokerIds"],"apiIds":["apiIds","apiIds"]},{"aefIds":["aefIds","aefIds"],"apiInvokerIds":["apiInvokerIds","apiInvokerIds"],"apiIds":["apiIds","apiIds"]}],"supportedFeatures":"supportedFeatures","eventReq":{"notifMethod":"PERIODIC","partitionCriteria":["TAC","TAC"],"grpRepTime":5,"notifFlag":"ACTIVATE","mutingSetting":{"maxNoOfNotif":5,"durationBufferedNotif":2},"monDur":"2000-01-23T04:56:07.000+00:00","immRep":True,"maxReportNbr":0,"repPeriod":6,"sampRatio":15,"notifFlagInstruct":{"bufferedNotifs":"SEND_ALL","subscription":"CLOSE"}},"websockNotifConfig":{"requestWebsocketUri":True,"websocketUri":"websocketUri"},"events":["SERVICE_API_AVAILABLE","SERVICE_API_AVAILABLE"],"requestTestNotification":True} + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + } + response = self.client.open( + '/capif-events/v1/{subscriber_id}/subscriptions'.format(subscriber_id='subscriber_id_example'), + method='POST', + headers=headers, + data=json.dumps(event_subscription), + content_type='application/json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_subscriber_id_subscriptions_subscription_id_delete(self): + """Test case for subscriber_id_subscriptions_subscription_id_delete + + + """ + headers = { + 'Accept': 'application/problem+json', + } + response = self.client.open( + '/capif-events/v1/{subscriber_id}/subscriptions/{subscription_id}'.format(subscriber_id='subscriber_id_example', subscription_id='subscription_id_example'), + method='DELETE', + headers=headers) + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_subscriber_id_subscriptions_subscription_id_patch(self): + """Test case for subscriber_id_subscriptions_subscription_id_patch + + + """ + event_subscription_patch = openapi_server.EventSubscriptionPatch() + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/merge-patch+json', + } + response = self.client.open( + '/capif-events/v1/{subscriber_id}/subscriptions/{subscription_id}'.format(subscriber_id='subscriber_id_example', subscription_id='subscription_id_example'), + method='PATCH', + headers=headers, + data=json.dumps(event_subscription_patch), + content_type='application/merge-patch+json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_subscriber_id_subscriptions_subscription_id_put(self): + """Test case for subscriber_id_subscriptions_subscription_id_put + + + """ + event_subscription = {"notificationDestination":"notificationDestination","eventFilters":[{"aefIds":["aefIds","aefIds"],"apiInvokerIds":["apiInvokerIds","apiInvokerIds"],"apiIds":["apiIds","apiIds"]},{"aefIds":["aefIds","aefIds"],"apiInvokerIds":["apiInvokerIds","apiInvokerIds"],"apiIds":["apiIds","apiIds"]}],"supportedFeatures":"supportedFeatures","eventReq":{"notifMethod":"PERIODIC","partitionCriteria":["TAC","TAC"],"grpRepTime":5,"notifFlag":"ACTIVATE","mutingSetting":{"maxNoOfNotif":5,"durationBufferedNotif":2},"monDur":"2000-01-23T04:56:07.000+00:00","immRep":True,"maxReportNbr":0,"repPeriod":6,"sampRatio":15,"notifFlagInstruct":{"bufferedNotifs":"SEND_ALL","subscription":"CLOSE"}},"websockNotifConfig":{"requestWebsocketUri":True,"websocketUri":"websocketUri"},"events":["SERVICE_API_AVAILABLE","SERVICE_API_AVAILABLE"],"requestTestNotification":True} + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + } + response = self.client.open( + '/capif-events/v1/{subscriber_id}/subscriptions/{subscription_id}'.format(subscriber_id='subscriber_id_example', subscription_id='subscription_id_example'), + method='PUT', + headers=headers, + data=json.dumps(event_subscription), + content_type='application/json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + +if __name__ == '__main__': + unittest.main() diff --git a/services/TS29222_CAPIF_Events_API/capif_events/typing_utils.py b/services/TS29222_CAPIF_Events_API/capif_events/typing_utils.py index 0563f81..74e3c91 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/typing_utils.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/typing_utils.py @@ -1,5 +1,3 @@ -# coding: utf-8 - import sys if sys.version_info < (3, 7): diff --git a/services/TS29222_CAPIF_Events_API/capif_events/util.py b/services/TS29222_CAPIF_Events_API/capif_events/util.py index 28a9e46..2ce4382 100644 --- a/services/TS29222_CAPIF_Events_API/capif_events/util.py +++ b/services/TS29222_CAPIF_Events_API/capif_events/util.py @@ -1,8 +1,7 @@ import datetime -import six -import typing_utils - +import typing +from capif_events import typing_utils def serialize_clean_camel_case(obj): res = obj.to_dict() @@ -44,7 +43,6 @@ def dict_to_camel_case(my_dict): result[my_key] = value return result - def _deserialize(data, klass): """Deserializes dict, list, str into an object. @@ -56,7 +54,7 @@ def _deserialize(data, klass): if data is None: return None - if klass in six.integer_types or klass in (float, str, bool, bytearray): + if klass in (int, float, str, bool, bytearray): return _deserialize_primitive(data, klass) elif klass == object: return _deserialize_object(data) @@ -85,7 +83,7 @@ def _deserialize_primitive(data, klass): try: value = klass(data) except UnicodeEncodeError: - value = six.u(data) + value = data except TypeError: value = data return value @@ -150,7 +148,7 @@ def deserialize_model(data, klass): if not instance.openapi_types: return data - for attr, attr_type in six.iteritems(instance.openapi_types): + for attr, attr_type in instance.openapi_types.items(): if data is not None \ and instance.attribute_map[attr] in data \ and isinstance(data, (list, dict)): @@ -185,4 +183,4 @@ def _deserialize_dict(data, boxed_type): :rtype: dict """ return {k: _deserialize(v, boxed_type) - for k, v in six.iteritems(data)} + for k, v in data.items() } diff --git a/services/TS29222_CAPIF_Events_API/git_push.sh b/services/TS29222_CAPIF_Events_API/git_push.sh index 9405f72..f53a75d 100644 --- a/services/TS29222_CAPIF_Events_API/git_push.sh +++ b/services/TS29222_CAPIF_Events_API/git_push.sh @@ -1,7 +1,7 @@ #!/bin/sh # ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ # -# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" "gitlab.com" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com" git_user_id=$1 git_repo_id=$2 @@ -38,14 +38,14 @@ git add . git commit -m "$release_note" # Sets the new remote -git_remote=`git remote` +git_remote=$(git remote) if [ "$git_remote" = "" ]; then # git remote not defined if [ "$GIT_TOKEN" = "" ]; then echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment." git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git else - git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:"${GIT_TOKEN}"@${git_host}/${git_user_id}/${git_repo_id}.git fi fi diff --git a/services/TS29222_CAPIF_Events_API/requirements.txt b/services/TS29222_CAPIF_Events_API/requirements.txt index 22b0d35..494e0e8 100644 --- a/services/TS29222_CAPIF_Events_API/requirements.txt +++ b/services/TS29222_CAPIF_Events_API/requirements.txt @@ -25,4 +25,4 @@ async-timeout == 4.0.3 Werkzeug == 2.2.3 pyopenssl == 24.1.0 gunicorn == 22.0.0 -packaging == 24.0 +packaging == 24.0 \ No newline at end of file diff --git a/services/TS29222_CAPIF_Events_API/setup.py b/services/TS29222_CAPIF_Events_API/setup.py index 6ac5631..22fbd80 100644 --- a/services/TS29222_CAPIF_Events_API/setup.py +++ b/services/TS29222_CAPIF_Events_API/setup.py @@ -1,5 +1,3 @@ -# coding: utf-8 - import sys from setuptools import setup, find_packages @@ -33,7 +31,7 @@ setup( entry_points={ 'console_scripts': ['capif_events=capif_events.__main__:main']}, long_description="""\ - API for event subscription management. © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. + API for event subscription management. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. """ ) diff --git a/services/TS29222_CAPIF_Events_API/tox.ini b/services/TS29222_CAPIF_Events_API/tox.ini index 8ef20cd..157b48f 100644 --- a/services/TS29222_CAPIF_Events_API/tox.ini +++ b/services/TS29222_CAPIF_Events_API/tox.ini @@ -5,7 +5,7 @@ skipsdist=True [testenv] deps=-r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt - {toxinidir} + {toxinidir} commands= pytest --cov=capif_events diff --git a/services/TS29222_CAPIF_Security_API/capif_security/__main__.py b/services/TS29222_CAPIF_Security_API/capif_security/__main__.py new file mode 100644 index 0000000..fe1e26f --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/__main__.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 + +import connexion + +from capif_security import encoder + + +def main(): + app = connexion.App(__name__, specification_dir='./openapi/') + app.app.json_encoder = encoder.JSONEncoder + app.add_api('openapi.yaml', + arguments={'title': 'CAPIF_Security_API'}, + pythonic_params=True) + + app.run(port=8080) + + +if __name__ == '__main__': + main() diff --git a/services/TS29222_CAPIF_Security_API/capif_security/controllers/security_controller.py b/services/TS29222_CAPIF_Security_API/capif_security/controllers/security_controller.py new file mode 100644 index 0000000..6d294ff --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/controllers/security_controller.py @@ -0,0 +1,2 @@ +from typing import List + diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/base_model.py b/services/TS29222_CAPIF_Security_API/capif_security/models/base_model.py new file mode 100644 index 0000000..4bf9315 --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/base_model.py @@ -0,0 +1,68 @@ +import pprint + +import typing + +from capif_security import util + +T = typing.TypeVar('T') + + +class Model: + # openapiTypes: The key is attribute name and the + # value is attribute type. + openapi_types: typing.Dict[str, type] = {} + + # attributeMap: The key is attribute name and the + # value is json key in definition. + attribute_map: typing.Dict[str, str] = {} + + @classmethod + def from_dict(cls: typing.Type[T], dikt) -> T: + """Returns the dict as a model""" + return util.deserialize_model(dikt, cls) + + def to_dict(self): + """Returns the model properties as a dict + + :rtype: dict + """ + result = {} + + for attr in self.openapi_types: + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + + return result + + def to_str(self): + """Returns the string representation of the model + + :rtype: str + """ + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_info.py b/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_info.py new file mode 100644 index 0000000..4d8885b --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_info.py @@ -0,0 +1,95 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +from capif_security.models.no_profile_match_reason import NoProfileMatchReason +from capif_security.models.query_param_combination import QueryParamCombination +from capif_security import util + +from capif_security.models.no_profile_match_reason import NoProfileMatchReason # noqa: E501 +from capif_security.models.query_param_combination import QueryParamCombination # noqa: E501 + +class NoProfileMatchInfo(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, reason=None, query_param_combination_list=None): # noqa: E501 + """NoProfileMatchInfo - a model defined in OpenAPI + + :param reason: The reason of this NoProfileMatchInfo. # noqa: E501 + :type reason: NoProfileMatchReason + :param query_param_combination_list: The query_param_combination_list of this NoProfileMatchInfo. # noqa: E501 + :type query_param_combination_list: List[QueryParamCombination] + """ + self.openapi_types = { + 'reason': NoProfileMatchReason, + 'query_param_combination_list': List[QueryParamCombination] + } + + self.attribute_map = { + 'reason': 'reason', + 'query_param_combination_list': 'queryParamCombinationList' + } + + self._reason = reason + self._query_param_combination_list = query_param_combination_list + + @classmethod + def from_dict(cls, dikt) -> 'NoProfileMatchInfo': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The NoProfileMatchInfo of this NoProfileMatchInfo. # noqa: E501 + :rtype: NoProfileMatchInfo + """ + return util.deserialize_model(dikt, cls) + + @property + def reason(self) -> NoProfileMatchReason: + """Gets the reason of this NoProfileMatchInfo. + + + :return: The reason of this NoProfileMatchInfo. + :rtype: NoProfileMatchReason + """ + return self._reason + + @reason.setter + def reason(self, reason: NoProfileMatchReason): + """Sets the reason of this NoProfileMatchInfo. + + + :param reason: The reason of this NoProfileMatchInfo. + :type reason: NoProfileMatchReason + """ + if reason is None: + raise ValueError("Invalid value for `reason`, must not be `None`") # noqa: E501 + + self._reason = reason + + @property + def query_param_combination_list(self) -> List[QueryParamCombination]: + """Gets the query_param_combination_list of this NoProfileMatchInfo. + + + :return: The query_param_combination_list of this NoProfileMatchInfo. + :rtype: List[QueryParamCombination] + """ + return self._query_param_combination_list + + @query_param_combination_list.setter + def query_param_combination_list(self, query_param_combination_list: List[QueryParamCombination]): + """Sets the query_param_combination_list of this NoProfileMatchInfo. + + + :param query_param_combination_list: The query_param_combination_list of this NoProfileMatchInfo. + :type query_param_combination_list: List[QueryParamCombination] + """ + if query_param_combination_list is not None and len(query_param_combination_list) < 1: + raise ValueError("Invalid value for `query_param_combination_list`, number of items must be greater than or equal to `1`") # noqa: E501 + + self._query_param_combination_list = query_param_combination_list diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_reason.py b/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_reason.py new file mode 100644 index 0000000..ccec0b3 --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/no_profile_match_reason.py @@ -0,0 +1,34 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +from capif_security import util + + +class NoProfileMatchReason(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self): # noqa: E501 + """NoProfileMatchReason - a model defined in OpenAPI + + """ + self.openapi_types = { + } + + self.attribute_map = { + } + + @classmethod + def from_dict(cls, dikt) -> 'NoProfileMatchReason': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The NoProfileMatchReason of this NoProfileMatchReason. # noqa: E501 + :rtype: NoProfileMatchReason + """ + return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/o_auth_grant_type.py b/services/TS29222_CAPIF_Security_API/capif_security/models/o_auth_grant_type.py new file mode 100644 index 0000000..8bace2b --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/o_auth_grant_type.py @@ -0,0 +1,34 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +from capif_security import util + + +class OAuthGrantType(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self): # noqa: E501 + """OAuthGrantType - a model defined in OpenAPI + + """ + self.openapi_types = { + } + + self.attribute_map = { + } + + @classmethod + def from_dict(cls, dikt) -> 'OAuthGrantType': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The OAuthGrantType of this OAuthGrantType. # noqa: E501 + :rtype: OAuthGrantType + """ + return util.deserialize_model(dikt, cls) diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/query_param_combination.py b/services/TS29222_CAPIF_Security_API/capif_security/models/query_param_combination.py new file mode 100644 index 0000000..a28fb4a --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/query_param_combination.py @@ -0,0 +1,67 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +from capif_security.models.query_parameter import QueryParameter +from capif_security import util + +from capif_security.models.query_parameter import QueryParameter # noqa: E501 + +class QueryParamCombination(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, _query_params=None): # noqa: E501 + """QueryParamCombination - a model defined in OpenAPI + + :param _query_params: The _query_params of this QueryParamCombination. # noqa: E501 + :type _query_params: List[QueryParameter] + """ + self.openapi_types = { + '_query_params': List[QueryParameter] + } + + self.attribute_map = { + '_query_params': 'queryParams' + } + + self.__query_params = _query_params + + @classmethod + def from_dict(cls, dikt) -> 'QueryParamCombination': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The QueryParamCombination of this QueryParamCombination. # noqa: E501 + :rtype: QueryParamCombination + """ + return util.deserialize_model(dikt, cls) + + @property + def _query_params(self) -> List[QueryParameter]: + """Gets the _query_params of this QueryParamCombination. + + + :return: The _query_params of this QueryParamCombination. + :rtype: List[QueryParameter] + """ + return self.__query_params + + @_query_params.setter + def _query_params(self, _query_params: List[QueryParameter]): + """Sets the _query_params of this QueryParamCombination. + + + :param _query_params: The _query_params of this QueryParamCombination. + :type _query_params: List[QueryParameter] + """ + if _query_params is None: + raise ValueError("Invalid value for `_query_params`, must not be `None`") # noqa: E501 + if _query_params is not None and len(_query_params) < 1: + raise ValueError("Invalid value for `_query_params`, number of items must be greater than or equal to `1`") # noqa: E501 + + self.__query_params = _query_params diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/query_parameter.py b/services/TS29222_CAPIF_Security_API/capif_security/models/query_parameter.py new file mode 100644 index 0000000..183bb32 --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/query_parameter.py @@ -0,0 +1,91 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +from capif_security import util + + +class QueryParameter(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, name=None, value=None): # noqa: E501 + """QueryParameter - a model defined in OpenAPI + + :param name: The name of this QueryParameter. # noqa: E501 + :type name: str + :param value: The value of this QueryParameter. # noqa: E501 + :type value: str + """ + self.openapi_types = { + 'name': str, + 'value': str + } + + self.attribute_map = { + 'name': 'name', + 'value': 'value' + } + + self._name = name + self._value = value + + @classmethod + def from_dict(cls, dikt) -> 'QueryParameter': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The QueryParameter of this QueryParameter. # noqa: E501 + :rtype: QueryParameter + """ + return util.deserialize_model(dikt, cls) + + @property + def name(self) -> str: + """Gets the name of this QueryParameter. + + + :return: The name of this QueryParameter. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name: str): + """Sets the name of this QueryParameter. + + + :param name: The name of this QueryParameter. + :type name: str + """ + if name is None: + raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501 + + self._name = name + + @property + def value(self) -> str: + """Gets the value of this QueryParameter. + + + :return: The value of this QueryParameter. + :rtype: str + """ + return self._value + + @value.setter + def value(self, value: str): + """Sets the value of this QueryParameter. + + + :param value: The value of this QueryParameter. + :type value: str + """ + if value is None: + raise ValueError("Invalid value for `value`, must not be `None`") # noqa: E501 + + self._value = value diff --git a/services/TS29222_CAPIF_Security_API/capif_security/models/res_owner_id.py b/services/TS29222_CAPIF_Security_API/capif_security/models/res_owner_id.py new file mode 100644 index 0000000..d7b9c67 --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/models/res_owner_id.py @@ -0,0 +1,67 @@ +from datetime import date, datetime # noqa: F401 + +from typing import List, Dict # noqa: F401 + +from capif_security.models.base_model import Model +import re +from capif_security import util + +import re # noqa: E501 + +class ResOwnerId(Model): + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + + Do not edit the class manually. + """ + + def __init__(self, gpsi=None): # noqa: E501 + """ResOwnerId - a model defined in OpenAPI + + :param gpsi: The gpsi of this ResOwnerId. # noqa: E501 + :type gpsi: str + """ + self.openapi_types = { + 'gpsi': str + } + + self.attribute_map = { + 'gpsi': 'gpsi' + } + + self._gpsi = gpsi + + @classmethod + def from_dict(cls, dikt) -> 'ResOwnerId': + """Returns the dict as a model + + :param dikt: A dict. + :type: dict + :return: The ResOwnerId of this ResOwnerId. # noqa: E501 + :rtype: ResOwnerId + """ + return util.deserialize_model(dikt, cls) + + @property + def gpsi(self) -> str: + """Gets the gpsi of this ResOwnerId. + + String identifying a Gpsi shall contain either an External Id or an MSISDN. It shall be formatted as follows -External Identifier= \"extid-'extid', where 'extid' shall be formatted according to clause 19.7.2 of 3GPP TS 23.003 that describes an External Identifier. # noqa: E501 + + :return: The gpsi of this ResOwnerId. + :rtype: str + """ + return self._gpsi + + @gpsi.setter + def gpsi(self, gpsi: str): + """Sets the gpsi of this ResOwnerId. + + String identifying a Gpsi shall contain either an External Id or an MSISDN. It shall be formatted as follows -External Identifier= \"extid-'extid', where 'extid' shall be formatted according to clause 19.7.2 of 3GPP TS 23.003 that describes an External Identifier. # noqa: E501 + + :param gpsi: The gpsi of this ResOwnerId. + :type gpsi: str + """ + if gpsi is not None and not re.search(r'^(msisdn-[0-9]{5,15}|extid-[^@]+@[^@]+|.+)$', gpsi): # noqa: E501 + raise ValueError("Invalid value for `gpsi`, must be a follow pattern or equal to `/^(msisdn-[0-9]{5,15}|extid-[^@]+@[^@]+|.+)$/`") # noqa: E501 + + self._gpsi = gpsi diff --git a/services/TS29222_CAPIF_Security_API/capif_security/test/__init__.py b/services/TS29222_CAPIF_Security_API/capif_security/test/__init__.py new file mode 100644 index 0000000..d3c5dca --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/test/__init__.py @@ -0,0 +1,16 @@ +import logging + +import connexion +from flask_testing import TestCase + +from capif_security.encoder import JSONEncoder + + +class BaseTestCase(TestCase): + + def create_app(self): + logging.getLogger('connexion.operation').setLevel('ERROR') + app = connexion.App(__name__, specification_dir='../openapi/') + app.app.json_encoder = JSONEncoder + app.add_api('openapi.yaml', pythonic_params=True) + return app.app diff --git a/services/TS29222_CAPIF_Security_API/capif_security/test/test_default_controller.py b/services/TS29222_CAPIF_Security_API/capif_security/test/test_default_controller.py new file mode 100644 index 0000000..edb68b3 --- /dev/null +++ b/services/TS29222_CAPIF_Security_API/capif_security/test/test_default_controller.py @@ -0,0 +1,135 @@ +import unittest + +from flask import json + +from capif_security.models.access_token_err import AccessTokenErr # noqa: E501 +from capif_security.models.access_token_rsp import AccessTokenRsp # noqa: E501 +from capif_security.models.problem_details import ProblemDetails # noqa: E501 +from capif_security.models.res_owner_id import ResOwnerId # noqa: E501 +from capif_security.models.security_notification import SecurityNotification # noqa: E501 +from capif_security.models.service_security import ServiceSecurity # noqa: E501 +from capif_security.test import BaseTestCase + + +class TestDefaultController(BaseTestCase): + """DefaultController integration test stubs""" + + @unittest.skip("application/x-www-form-urlencoded not supported by Connexion") + def test_securities_security_id_token_post(self): + """Test case for securities_security_id_token_post + + + """ + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/x-www-form-urlencoded', + } + data = dict(grant_type='grant_type_example', + client_id='client_id_example', + res_owner_id=openapi_server.ResOwnerId(), + client_secret='client_secret_example', + scope='scope_example', + auth_code='auth_code_example', + redirect_uri='redirect_uri_example') + response = self.client.open( + '/capif-security/v1/securities/{security_id}/token'.format(security_id='security_id_example'), + method='POST', + headers=headers, + data=data, + content_type='application/x-www-form-urlencoded') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_trusted_invokers_api_invoker_id_delete(self): + """Test case for trusted_invokers_api_invoker_id_delete + + + """ + headers = { + 'Accept': 'application/problem+json', + } + response = self.client.open( + '/capif-security/v1/trustedInvokers/{api_invoker_id}'.format(api_invoker_id='api_invoker_id_example'), + method='DELETE', + headers=headers) + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_trusted_invokers_api_invoker_id_delete_post(self): + """Test case for trusted_invokers_api_invoker_id_delete_post + + + """ + security_notification = {"apiInvokerId":"apiInvokerId","cause":"OVERLIMIT_USAGE","aefId":"aefId","apiIds":["apiIds","apiIds"]} + headers = { + 'Accept': 'application/problem+json', + 'Content-Type': 'application/json', + } + response = self.client.open( + '/capif-security/v1/trustedInvokers/{api_invoker_id}/delete'.format(api_invoker_id='api_invoker_id_example'), + method='POST', + headers=headers, + data=json.dumps(security_notification), + content_type='application/json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_trusted_invokers_api_invoker_id_get(self): + """Test case for trusted_invokers_api_invoker_id_get + + + """ + query_string = [('authenticationInfo', True), + ('authorizationInfo', True)] + headers = { + 'Accept': 'application/json', + } + response = self.client.open( + '/capif-security/v1/trustedInvokers/{api_invoker_id}'.format(api_invoker_id='api_invoker_id_example'), + method='GET', + headers=headers, + query_string=query_string) + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_trusted_invokers_api_invoker_id_put(self): + """Test case for trusted_invokers_api_invoker_id_put + + + """ + service_security = {"notificationDestination":"notificationDestination","supportedFeatures":"supportedFeatures","securityInfo":[{"authenticationInfo":"authenticationInfo","authorizationInfo":"authorizationInfo","interfaceDetails":{"ipv6Addr":"ipv6Addr","securityMethods":["PSK","PSK"],"fqdn":"fqdn","port":5248,"apiPrefix":"apiPrefix","ipv4Addr":"ipv4Addr"},"prefSecurityMethods":[null,null],"aefId":"aefId","grantType":["CLIENT_CREDENTIALS","CLIENT_CREDENTIALS"],"apiId":"apiId"},{"authenticationInfo":"authenticationInfo","authorizationInfo":"authorizationInfo","interfaceDetails":{"ipv6Addr":"ipv6Addr","securityMethods":["PSK","PSK"],"fqdn":"fqdn","port":5248,"apiPrefix":"apiPrefix","ipv4Addr":"ipv4Addr"},"prefSecurityMethods":[null,null],"aefId":"aefId","grantType":["CLIENT_CREDENTIALS","CLIENT_CREDENTIALS"],"apiId":"apiId"}],"websockNotifConfig":{"requestWebsocketUri":True,"websocketUri":"websocketUri"},"requestTestNotification":True} + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + } + response = self.client.open( + '/capif-security/v1/trustedInvokers/{api_invoker_id}'.format(api_invoker_id='api_invoker_id_example'), + method='PUT', + headers=headers, + data=json.dumps(service_security), + content_type='application/json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + def test_trusted_invokers_api_invoker_id_update_post(self): + """Test case for trusted_invokers_api_invoker_id_update_post + + + """ + service_security = {"notificationDestination":"notificationDestination","supportedFeatures":"supportedFeatures","securityInfo":[{"authenticationInfo":"authenticationInfo","authorizationInfo":"authorizationInfo","interfaceDetails":{"ipv6Addr":"ipv6Addr","securityMethods":["PSK","PSK"],"fqdn":"fqdn","port":5248,"apiPrefix":"apiPrefix","ipv4Addr":"ipv4Addr"},"prefSecurityMethods":[null,null],"aefId":"aefId","grantType":["CLIENT_CREDENTIALS","CLIENT_CREDENTIALS"],"apiId":"apiId"},{"authenticationInfo":"authenticationInfo","authorizationInfo":"authorizationInfo","interfaceDetails":{"ipv6Addr":"ipv6Addr","securityMethods":["PSK","PSK"],"fqdn":"fqdn","port":5248,"apiPrefix":"apiPrefix","ipv4Addr":"ipv4Addr"},"prefSecurityMethods":[null,null],"aefId":"aefId","grantType":["CLIENT_CREDENTIALS","CLIENT_CREDENTIALS"],"apiId":"apiId"}],"websockNotifConfig":{"requestWebsocketUri":True,"websocketUri":"websocketUri"},"requestTestNotification":True} + headers = { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + } + response = self.client.open( + '/capif-security/v1/trustedInvokers/{api_invoker_id}/update'.format(api_invoker_id='api_invoker_id_example'), + method='POST', + headers=headers, + data=json.dumps(service_security), + content_type='application/json') + self.assert200(response, + 'Response body is : ' + response.data.decode('utf-8')) + + +if __name__ == '__main__': + unittest.main() -- GitLab