Commit 8e9afd46 authored by Giacomo Bernini's avatar Giacomo Bernini
Browse files

fixed issue #2

parent e87cb02b
Loading
Loading
Loading
Loading
Loading
+6 −160
Original line number Diff line number Diff line
@@ -284,7 +284,7 @@ components:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/NsInstanceUsageSubscriptionRequest"
            $ref: "definitions/NSInstanceUsageNotification_def.yaml#/definitions/schemas/NsInstanceUsageSubscriptionRequest"

    NsInstanceUsageNotification:
      description: 
@@ -293,7 +293,7 @@ components:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/NsInstanceUsageNotification"
            $ref: "definitions/NSInstanceUsageNotification_def.yaml#/definitions/schemas/NsInstanceUsageNotification"

  responses:
    Subscriptions.Post.201:
@@ -324,7 +324,7 @@ components:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NsInstanceUsageSubscription'
            $ref: 'definitions/NSInstanceUsageNotification_def.yaml#/definitions/schemas/NsInstanceUsageSubscription'
    
    Subscriptions.Post.303:
      description: >-
@@ -384,7 +384,7 @@ components:
          schema:
            type: array
            items:
              $ref: "#/components/schemas/NsInstanceUsageSubscription"
              $ref: "definitions/NSInstanceUsageNotification_def.yaml#/definitions/schemas/NsInstanceUsageSubscription"

    Subscription.Get.200:
      description: >-
@@ -408,7 +408,7 @@ components:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NsInstanceUsageSubscription'
            $ref: 'definitions/NSInstanceUsageNotification_def.yaml#/definitions/schemas/NsInstanceUsageSubscription'

    Subscription.Delete.204:
      description: >-
@@ -463,157 +463,3 @@ components:
            Version of the API used in the response.
          schema:
            type: string
 No newline at end of file

  schemas:
    NsInstanceUsageSubscriptionRequest:
      description: >-
        This type represents a subscription request related to notifications about NS 
        instance usage. It shall comply with the provisions defined in table 8.6.2.2-1.
      type: object
      required:
        - callbackUri
      properties:
        filter:
          description: >-
            Filter settings for this subscription, to define the subset of all notifications 
            this subscription relates to. A particular notification is sent to the subscriber 
            if the filter matches, or if there is no filter.
          $ref: "#/components/schemas/NsInstanceUsageNotificationsFilter"
        callbackUri:
          description: >-
            The URI of the endpoint to send the notification to.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Uri"
        authentication:
          description: >-
            Authentication parameters to configure the use of Authorization when sending 
            notifications corresponding to this subscription, as defined in clause 8.3.4 
            of ETSI GS NFV-SOL 013.
            
            This attribute shall only be present if the subscriber requires authorization 
            of notifications.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/SubscriptionAuthentication"

    NsInstanceUsageSubscription:
      description: >-
        This type represents a subscription related to notifications about NS instance usage. 
        It shall comply with the provisions defined in table 8.6.2.3-1.
      type: object
      required:
        - id
        - callbackUri
        - _links
      properties:
        id:
          description: >-
            Identifier that identifies the subscription.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        filter:
          description: >-
            Filter settings for this subscription, to define the subset of all notifications 
            this subscription relates to. A particular notification is sent to the subscriber 
            if the filter matches, or if there is no filter.
          $ref: "#/components/schemas/NsInstanceUsageNotificationsFilter"
        callbackUri:
          description: >-
            The URI of the endpoint to send the notification to.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Uri"
        _links:
          description: >-
            Links to resources related to this resource.
          type: object
          required:
            - self
          properties:
            self: 
              description: >-
                URI of this resource.
              $ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
    
    NsInstanceUsageNotification:
      description: >-
        This type represents an NS instance usage notification, which indicates the start 
        or end of usage of an NS instance as a part of a composite NS managed by the NFVO-C. 
        It shall comply with the provisions defined in table 8.6.2.4-1.
      type: object
      required:
        - id
        - notificationType
        - subscriptionId
        - timeStamp
        - nsInstanceId
        - status
        - _links
      properties:
        id:
          description: >-
            Identifier of this notification. If a notification is sent multiple times due 
            to multiple subscriptions, the "id" attribute of all these notifications shall 
            have the same value.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        notificationType:
          description: >-
            Discriminator for the different notification types. Shall be set to 
            "NsInstanceUsageNotification" for this notification type.
          type: string
        subscriptionId:
          description: >-
            Identifier of the subscription that this notification relates to.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        timeStamp:
          description: >-
            Date and time of the generation of the notification.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/DateTime"
        nsInstanceId:
          description: >-
            Identifier of the NS instance affected.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        status:
          description: >-
            Indicates whether this notification reports about the start of the usage of 
            an NS instance or about the end of the usage of an NS instance.
          $ref: "#/components/schemas/NsInstanceUsageStatusType"
        _links:
          description: >-
            Links to resources related to this notification.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/NotificationLink"

    NsInstanceUsageNotificationsFilter:
      description: >-
        This type represents a subscription filter related to notifications about NS 
        instance usage. It shall comply with the provisions defined in table 8.6.3.1-1. 
      type: object
      properties:
        notificationTypes:
          description: >-
            Match particular notification types. 
            
            Permitted values:
            - NsInstanceUsageNotification

            NOTE: The permitted values of the "notificationTypes" attribute are spelled 
            exactly as the names of the notification types to facilitate automated code 
            generation systems.
          type: array
          items:
            type: string
            enum:
            - NsInstanceUsageNotification
        nsInstanceId:
          description: >-
            If present, match NS instances with an instance identifier listed in this attribute.
          type: array
          items:
            $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        status:
          description: >-
            If present, match a particular status of usage of an NS instance.
          $ref: "#/components/schemas/NsInstanceUsageStatusType"
    
    NsInstanceUsageStatusType:
      description: >-
        The enumeration NsInstanceUsageStatusType shall comply with the provisions defined 
        in table 8.6.4.3-1.
      type: string
      enum:
        - START
        - END
+155 −0
Original line number Diff line number Diff line
definitions:
  schemas:
    NsInstanceUsageSubscriptionRequest:
      description: >-
        This type represents a subscription request related to notifications about NS
        instance usage. It shall comply with the provisions defined in table 8.6.2.2-1.
      type: object
      required:
        - callbackUri
      properties:
        filter:
          description: >-
            Filter settings for this subscription, to define the subset of all notifications
            this subscription relates to. A particular notification is sent to the subscriber
            if the filter matches, or if there is no filter.
          $ref: "#/definitions/schemas/NsInstanceUsageNotificationsFilter"
        callbackUri:
          description: >-
            The URI of the endpoint to send the notification to.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Uri"
        authentication:
          description: >-
            Authentication parameters to configure the use of Authorization when sending
            notifications corresponding to this subscription, as defined in clause 8.3.4
            of ETSI GS NFV-SOL 013.

            This attribute shall only be present if the subscriber requires authorization
            of notifications.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/SubscriptionAuthentication"

    NsInstanceUsageSubscription:
      description: >-
        This type represents a subscription related to notifications about NS instance usage.
        It shall comply with the provisions defined in table 8.6.2.3-1.
      type: object
      required:
        - id
        - callbackUri
        - _links
      properties:
        id:
          description: >-
            Identifier that identifies the subscription.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        filter:
          description: >-
            Filter settings for this subscription, to define the subset of all notifications
            this subscription relates to. A particular notification is sent to the subscriber
            if the filter matches, or if there is no filter.
          $ref: "#/definitions/schemas/NsInstanceUsageNotificationsFilter"
        callbackUri:
          description: >-
            The URI of the endpoint to send the notification to.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Uri"
        _links:
          description: >-
            Links to resources related to this resource.
          type: object
          required:
            - self
          properties:
            self:
              description: >-
                URI of this resource.
              $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Link"

    NsInstanceUsageNotification:
      description: >-
        This type represents an NS instance usage notification, which indicates the start
        or end of usage of an NS instance as a part of a composite NS managed by the NFVO-C.
        It shall comply with the provisions defined in table 8.6.2.4-1.
      type: object
      required:
        - id
        - notificationType
        - subscriptionId
        - timeStamp
        - nsInstanceId
        - status
        - _links
      properties:
        id:
          description: >-
            Identifier of this notification. If a notification is sent multiple times due
            to multiple subscriptions, the "id" attribute of all these notifications shall
            have the same value.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        notificationType:
          description: >-
            Discriminator for the different notification types. Shall be set to
            "NsInstanceUsageNotification" for this notification type.
          type: string
        subscriptionId:
          description: >-
            Identifier of the subscription that this notification relates to.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        timeStamp:
          description: >-
            Date and time of the generation of the notification.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/DateTime"
        nsInstanceId:
          description: >-
            Identifier of the NS instance affected.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        status:
          description: >-
            Indicates whether this notification reports about the start of the usage of
            an NS instance or about the end of the usage of an NS instance.
          $ref: "#/definitions/schemas/NsInstanceUsageStatusType"
        _links:
          description: >-
            Links to resources related to this notification.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/NotificationLink"

    NsInstanceUsageNotificationsFilter:
      description: >-
        This type represents a subscription filter related to notifications about NS
        instance usage. It shall comply with the provisions defined in table 8.6.3.1-1.
      type: object
      properties:
        notificationTypes:
          description: >-
            Match particular notification types.

            Permitted values:
            - NsInstanceUsageNotification

            NOTE: The permitted values of the "notificationTypes" attribute are spelled
            exactly as the names of the notification types to facilitate automated code
            generation systems.
          type: array
          items:
            type: string
            enum:
              - NsInstanceUsageNotification
        nsInstanceId:
          description: >-
            If present, match NS instances with an instance identifier listed in this attribute.
          type: array
          items:
            $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        status:
          description: >-
            If present, match a particular status of usage of an NS instance.
          $ref: "#/definitions/schemas/NsInstanceUsageStatusType"

    NsInstanceUsageStatusType:
      description: >-
        The enumeration NsInstanceUsageStatusType shall comply with the provisions defined
        in table 8.6.4.3-1.
      type: string
      enum:
        - START
        - END
+3 −96
Original line number Diff line number Diff line
@@ -121,7 +121,7 @@ components:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/GrantNsLifecycleOperationRequest"
            $ref: "definitions/NSLifecycleOperationGranting_def.yaml#/definitions/schemas/GrantNsLifecycleOperationRequest"
  responses:
    Grants.Post.201:
      description: >-
@@ -151,7 +151,7 @@ components:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Grant'
            $ref: 'definitions/NSLifecycleOperationGranting_def.yaml#/definitions/schemas/Grant'

    Grants.Post.403:
      description: >-
@@ -200,98 +200,5 @@ components:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Grant'
            $ref: 'definitions/NSLifecycleOperationGranting_def.yaml#/definitions/schemas/Grant'
  schemas:
    GrantNsLifecycleOperationRequest:
      description: >-
        This type represents request parameters for the "grant NS lifecycle" operation.
        It shall comply with the provisions defined in table 7.6.2.2-1.
      type: object
      required:
        - nsInstanceId
        - nsdId
        - nsLcmOpOccId
        - lifecycleOperation
      properties:
        nsInstanceId:
          description: >-
            Identifier of the NS instance which this grant request relates to.
            Each NFVO-N instance manages its own namespace for NS instance identifiers.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsdId:
          description: >-
            Identifier of the NSD that defines the NS for which the lifecycle management operation is to be granted.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsLcmOpOccId:
          description: >-
            The identifier of the NS lifecycle management operation occurrence associated to the GrantRequest..
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        lifecycleOperation:
          description: >-
            Type of the lifecycle management operation for which the granting is requested.
            The NS LCM operations InstantiateNS, CreateNsIdentifier, DeleteNsIdentifier and
            QueryNs can be executed by NFVO-N without requesting granting.
          $ref: "#/components/schemas/NsLcmOperation"
        additionalParams:
          description: >-
            Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"

    NsLcmOperation:
      description: >-
        The enumeration NsLcmOperation shall comply with the provisions defined in table 7.6.4.3-1.
        It indicates the type of the NS lifecycle management operation for which the granting is requested.
      type: string
      enum:
        - SCALE
        - TERMINATE
        - HEAL

    Grant:
      description: >-
        This type represents a grant. It shall comply with the provisions defined in table 7.6.2.3-1.
      type: object
      required:
        - id
        - nsInstanceId
        - nsLcmOpOccId
        - _links
      properties:
        id:
          description: >-
            Identifier of the grant.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsInstanceId:
          description: >-
            Identifier of the NS instance which this grant request relates to.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsLcmOpOccId:
          description: >-
            Identifier of the NS lifecycle management operation occurrence associated to the GrantRequest.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        additionalParams:
          description: >-
            Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
          $ref: "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
        _links:
          description: >-
            Links to resources related to this resource.
          type: object
          required:
            - self
            - nsLcmOpOcc
            - nsInstance
          properties:
            self:
              description: >-
                URI of this resource
              $ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
            nsLcmOpOcc:
              description: >-
                Related NS lifecycle management operation occurrence
              $ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
            nsInstance:
              description: >-
                Related NS instance.
              $ref: "../components/SOL011_schemas.yaml#/components/schemas/Link"
+95 −0
Original line number Diff line number Diff line
definitions:
  schemas:
    GrantNsLifecycleOperationRequest:
      description: >-
        This type represents request parameters for the "grant NS lifecycle" operation.
        It shall comply with the provisions defined in table 7.6.2.2-1.
      type: object
      required:
        - nsInstanceId
        - nsdId
        - nsLcmOpOccId
        - lifecycleOperation
      properties:
        nsInstanceId:
          description: >-
            Identifier of the NS instance which this grant request relates to.
            Each NFVO-N instance manages its own namespace for NS instance identifiers.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsdId:
          description: >-
            Identifier of the NSD that defines the NS for which the lifecycle management operation is to be granted.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsLcmOpOccId:
          description: >-
            The identifier of the NS lifecycle management operation occurrence associated to the GrantRequest..
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        lifecycleOperation:
          description: >-
            Type of the lifecycle management operation for which the granting is requested.
            The NS LCM operations InstantiateNS, CreateNsIdentifier, DeleteNsIdentifier and
            QueryNs can be executed by NFVO-N without requesting granting.
          $ref: "#/definitions/schemas/NsLcmOperation"
        additionalParams:
          description: >-
            Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"

    NsLcmOperation:
      description: >-
        The enumeration NsLcmOperation shall comply with the provisions defined in table 7.6.4.3-1.
        It indicates the type of the NS lifecycle management operation for which the granting is requested.
      type: string
      enum:
        - SCALE
        - TERMINATE
        - HEAL

    Grant:
      description: >-
        This type represents a grant. It shall comply with the provisions defined in table 7.6.2.3-1.
      type: object
      required:
        - id
        - nsInstanceId
        - nsLcmOpOccId
        - _links
      properties:
        id:
          description: >-
            Identifier of the grant.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsInstanceId:
          description: >-
            Identifier of the NS instance which this grant request relates to.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        nsLcmOpOccId:
          description: >-
            Identifier of the NS lifecycle management operation occurrence associated to the GrantRequest.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Identifier"
        additionalParams:
          description: >-
            Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.
          $ref: "../../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
        _links:
          description: >-
            Links to resources related to this resource.
          type: object
          required:
            - self
            - nsLcmOpOcc
            - nsInstance
          properties:
            self:
              description: >-
                URI of this resource
              $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Link"
            nsLcmOpOcc:
              description: >-
                Related NS lifecycle management operation occurrence
              $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Link"
            nsInstance:
              description: >-
                Related NS instance.
              $ref: "../../components/SOL011_schemas.yaml#/components/schemas/Link"