Commit 1f06eabd authored by Muhammad Hamza's avatar Muhammad Hamza
Browse files

Remove and separate common SOL002 SOL003 VNF Indicator API definitions

parent 65988d63
Loading
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -380,7 +380,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest
            $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest
      required: true

  responses:
@@ -420,7 +420,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
              $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator

    VnfIndicators.Get.200:
      description: |
@@ -458,7 +458,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
              $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator

    VnfIndividualIndicator.Get.200:
      description: |
@@ -481,7 +481,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
            $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator

    VnfIndicatorSubscriptions.Get.200:
      description: |
@@ -519,7 +519,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
              $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription

    VnfIndicatorSubscription.Post.201:
      description: |
@@ -560,7 +560,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
              $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription

    VnfIndicatorSubscription.Get.200:
      description: |
@@ -583,7 +583,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
            $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription

    VnfIndicatorSubscription.Delete.204:
      description: |
+25 −25
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ definitions:
      id:
        description: >
          Identifier of this VNF indicator.
        $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
      name:
        description: >
          Human readable name of the indicator. Shall be present if defined in
@@ -30,7 +30,7 @@ definitions:
      vnfInstanceId:
        description: >
          Identifier of the "Individual VNF instance" which provides the indicator value.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links for this resource.
@@ -42,11 +42,11 @@ definitions:
          self:
            description: >
              URI of this resource.
            $ref: "SOL002SOL003_def.yaml#/definitions/Link"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"
          vnfInstance:
            description: >
              Link to the related "Individual VNF instance" resource.
            $ref: "SOL002SOL003_def.yaml#/definitions/Link"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"

  VnfIndicatorNotificationsFilter:
    description: >
@@ -64,7 +64,7 @@ definitions:
      vnfInstanceSubscriptionFilter:
        description: >
          Filter criteria to select VNF instances about which to notify.
        $ref: "SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
      notificationTypes:
        description: >
          Match particular notification types. 
@@ -82,7 +82,7 @@ definitions:
          Match particular VNF indicator identifiers.
        type: array
        items:
          $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
          $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"

  VnfIndicatorSubscription:
    description: >
@@ -97,7 +97,7 @@ definitions:
      id:
        description: >
          Identifier of this "Individual subscription" resource.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      filter:
        description: >
          Filter settings for this subscription, to define the subset of all
@@ -120,7 +120,7 @@ definitions:
          self:
            description: >
              URI of this resource.
            $ref: "SOL002SOL003_def.yaml#/definitions/Link"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"

  VnfIndicatorSubscriptionRequest:
    description: >
@@ -140,7 +140,7 @@ definitions:
      callbackUri:
        description: >
          The URI of the endpoint to send the notification to.
        $ref: "SOL002SOL003_def.yaml#/definitions/Uri"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri"
      authentication:
        description: >
          Authentication parameters to configure the use of Authorization when
@@ -148,7 +148,7 @@ definitions:
          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: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"

  VnfIndicatorValueChangeNotification:
    description: >
@@ -172,7 +172,7 @@ definitions:
          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: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types. Shall be set to
@@ -183,15 +183,15 @@ definitions:
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      timeStamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "SOL002SOL003_def.yaml#/definitions/DateTime"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime"
      vnfIndicatorId:
        description: >
          Identifier of the VNF indicator whose value has changed.
        $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
      name:
        description: >
          Human readable name of the VNF indicator. Shall be present if
@@ -204,7 +204,7 @@ definitions:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance which provides the indicator value.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links for this resource.
@@ -217,11 +217,11 @@ definitions:
            description: >
              Link to the related "Individual VNF instance" resource. Shall be present
              if the VNF instance information is accessible as a resource.
            $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
          subscription:
            description: >
              Link to the related subscription.
            $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"

  SupportedIndicatorsChangeNotification:
    description: >
@@ -247,7 +247,7 @@ definitions:
          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: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types. Shall be set to 
@@ -258,15 +258,15 @@ definitions:
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      timeStamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "SOL002SOL003_def.yaml#/definitions/DateTime"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime"
      vnfInstanceId:
        description: >
          Identifier of the VNF instance which provides the indicator value.
        $ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      supportedIndicators:
        description: >
          Set of VNF indicators supported by the VNF instance.
@@ -279,7 +279,7 @@ definitions:
            vnfIndicatorId:
              description: >
                Identifier of the VNF indicator whose value has changed.
              $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" 
              $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" 
            name:
              description: >
                Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note.
@@ -295,8 +295,8 @@ definitions:
            description: >
              Link to the related "Individual VNF instance" resource. Shall be present 
              if the VNF instance information is accessible as a resource.
            $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink"
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
          subscription:
            description: >
              Link to the related subscription.
            $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink"
 No newline at end of file
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
 No newline at end of file
+7 −7
Original line number Diff line number Diff line
@@ -385,7 +385,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest
            $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest
      required: true

  responses:
@@ -428,7 +428,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
              $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
    
    VnfInstanceIndicators.Get.200:
      description: |
@@ -470,7 +470,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
              $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
    
    VnfInstanceIndividualIndicator.Get.200:
      description: |
@@ -495,7 +495,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
            $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator
    
    Subscriptions.Post.201:
      description: |
@@ -532,7 +532,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
              $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription

    Subscriptions.Post.303:
      description: |
@@ -657,7 +657,7 @@ components:
          schema:
            type: array
            items:
              $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
              $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
    
    IndividualSubscription.Get.200:
      description: |
@@ -683,7 +683,7 @@ components:
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
            $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription
    
    IndividualSubscription.Delete.204:
      description: |
+302 −0
Original line number Diff line number Diff line
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt

definitions:  
  VnfIndicator:
    description: >
      This type represents a VNF indicator value. It shall comply with the provisions defined in table 8.5.2.2-1.

      NOTE:	ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications.
    type: object
    required:
      - id
      - value
      - vnfInstanceId
      - _links
    properties:
      id:
        description: >
          Identifier of this VNF indicator.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
      name:
        description: >
          Human readable name of the indicator. Shall be present if defined in
          the VNFD.
        type: string
      value:
        description: >
          Provides the value of the indicator. The value format is defined in the VNFD. See note.
        type: object
      vnfInstanceId:
        description: >
          Identifier of the "Individual VNF instance" which provides the indicator value.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links for this resource.
        type: object
        required:
          - self
          - vnfInstance
        properties:
          self:
            description: >
              URI of this resource.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"
          vnfInstance:
            description: >
              Link to the related "Individual VNF instance" resource.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"

  VnfIndicatorNotificationsFilter:
    description: >
      This type represents a subscription filter for notifications related to VNF indicators. 
      It shall comply with the provisions defined in table 8.5.3.2-1. 
      At a particular nesting level in the filter structure, the following applies: 
      All attributes shall match in order for the filter to match (logical "and" between different 
      filter attributes). If an attribute is an array, the attribute shall match if at least one of 
      the values in the array matches (logical "or" between the values of one filter attribute).

      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: object
    properties:
      vnfInstanceSubscriptionFilter:
        description: >
          Filter criteria to select VNF instances about which to notify.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
      notificationTypes:
        description: >
          Match particular notification types. 

          Permitted values:
          -	VnfIndicatorValueChangeNotification
          -	SupportedIndicatorsChangeNotification
          See note.
        type: string
        enum:
          - VnfIndicatorValueChangeNotification
          - SupportedIndicatorsChangeNotification
      indicatorIds:
        description: >
          Match particular VNF indicator identifiers.
        type: array
        items:
          $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"

  VnfIndicatorSubscription:
    description: >
      This type represents a subscription related to notifications about VNF
      indicator value changes.
    type: object
    required:
      - id
      - callbackUri
      - _links
    properties:
      id:
        description: >
          Identifier of this "Individual subscription" resource.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/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/VnfIndicatorNotificationsFilter"
      callbackUri:
        description: >
          The URI of the endpoint to send the notification to.
        type: string
        format: url
      _links:
        description: >
          Links for this resource.
        type: object
        required:
          - self
        properties:
          self:
            description: >
              URI of this resource.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link"

  VnfIndicatorSubscriptionRequest:
    description: >
      This type represents a subscription request related to VNF indicator
      value change notifications.
    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/VnfIndicatorNotificationsFilter"
      callbackUri:
        description: >
          The URI of the endpoint to send the notification to.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/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: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"

  VnfIndicatorValueChangeNotification:
    description: >
      This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1.
      The notification shall be triggered by the VNFM when the value of an indicator has changed.

      NOTE:	ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications.
    type: object
    required:
      - id
      - notificationType
      - subscriptionId
      - timeStamp
      - vnfIndicatorId
      - value
      - vnfInstanceId
      - _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: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types. Shall be set to
          "VnfIndicatorValueChangeNotification" for this notification type.
        type: string
        enum:
          - VnfIndicatorValueChangeNotification
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      timeStamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime"
      vnfIndicatorId:
        description: >
          Identifier of the VNF indicator whose value has changed.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
      name:
        description: >
          Human readable name of the VNF indicator. Shall be present if
          defined in the VNFD.
        type: string
      value:
        description: >
          Provides the value of the VNF indicator. The value format is defined in the VNFD. See note.
        type: object
      vnfInstanceId:
        description: >
          Identifier of the VNF instance which provides the indicator value.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links for this resource.
        type: object
        required:
          - vnfInstance
          - subscription
        properties:
          vnfInstance:
            description: >
              Link to the related "Individual VNF instance" resource. Shall be present
              if the VNF instance information is accessible as a resource.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
          subscription:
            description: >
              Link to the related subscription.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"

  SupportedIndicatorsChangeNotification:
    description: >
      This type represents a notification to inform the receiver that the set of indicators supported 
      by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1.
      
      The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed 
      as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when 
      a VNF has been instantiated.

      NOTE:	ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications.
    type: object
    required:
      - id
      - notificationType
      - subscriptionId
      - timeStamp
      - vnfInstanceId
      - _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: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types. Shall be set to 
          "SupportedIndicatorsChangeNotification" for this notification type.
        type: string
        enum:
          - VnfIndicatorValueChangeNotification
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      timeStamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime"
      vnfInstanceId:
        description: >
          Identifier of the VNF instance which provides the indicator value.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      supportedIndicators:
        description: >
          Set of VNF indicators supported by the VNF instance.
        type: array
        items:
          type: object
          required:
            - vnfIndicatorId
          properties:
            vnfIndicatorId:
              description: >
                Identifier of the VNF indicator whose value has changed.
              $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" 
            name:
              description: >
                Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note.
              type: string
      _links:
        description: >
          Links for this resource.
        type: object
        required:
          - subscription
        properties:
          vnfInstance:
            description: >
              Link to the related "Individual VNF instance" resource. Shall be present 
              if the VNF instance information is accessible as a resource.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
          subscription:
            description: >
              Link to the related subscription.
            $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"
 No newline at end of file
+2 −2

File changed.

Preview size limit exceeded, changes collapsed.