MEC010-2_AppPkgMgmt.yaml 82.6 KB
Newer Older
        operationalState:
          type: string
          description: Match particular operational state of the application package. May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.
          enum:
            - ENABLED
            - DISABLED
        usageState:
          type: string
          description: Match particular usage state of the application package. May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.
          enum:
            - N_USE
            - NOT_IN_USE
      description: |
        NOTE: The attributes "appPkgInfoId ", and "appDId" are alternatives to reference particular application package in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.
Elian Kraja's avatar
Elian Kraja committed
    Checksum:
      title: Checksum
Elian Kraja's avatar
Elian Kraja committed
      required:
      - algorithm
      - hash
      type: object
      properties:
        algorithm:
          type: string
          description: Name of the algorithm used to generate the checksum,  as defined in ETSI GS NFV-SOL 004. For example, SHA-256, SHA-512.
        hash:
          type: string
          description: "'String 1 The hexadecimal value of the checksum'"
Elian Kraja's avatar
Elian Kraja committed
    CreateAppPkg:
      title: CreateAppPkg
      required:
      - appPkgName
      - appPkgPath
      - appPkgVersion
      - checksum
      type: object
Elian Kraja's avatar
Elian Kraja committed
      properties:
        appPkgName:
          type: string
          description: Name of the application package to be onboarded.
Elian Kraja's avatar
Elian Kraja committed
        appPkgPath:
          type: string
          format: uri
          description: Address information of the application package. See note.
Elian Kraja's avatar
Elian Kraja committed
        appPkgVersion:
          type: string
          description: Version of the application package to be onboarded.The appPkgName with appPkgVersion can be used to uniquely identify the application package.
Elian Kraja's avatar
Elian Kraja committed
        appProvider:
          type: string
          description: The provider's name of the application package to be onboarded.
Elian Kraja's avatar
Elian Kraja committed
        checksum:
          $ref: '#/components/schemas/Checksum'
        userDefinedData:
          $ref: '#/components/schemas/KeyValuePairs'
          description: "'This data type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259'"
      description: |
        NOTE: It is for further study how to convey appPkgPath, and align with ETSI GS NFV-SOL 005 [i.7].

    KeyValuePairs:
Elian Kraja's avatar
Elian Kraja committed
      type: object
      additionalProperties:
        type: object

    LinkType:
      title: LinkType
Elian Kraja's avatar
Elian Kraja committed
      required:
Elian Kraja's avatar
Elian Kraja committed
      type: object
      properties:
        href:
          type: string
          description: URI referring to a resource
Elian Kraja's avatar
Elian Kraja committed
    ProblemDetails:
      title: ProblemDetails
      type: object
Elian Kraja's avatar
Elian Kraja committed
      properties:
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence of the problem
Elian Kraja's avatar
Elian Kraja committed
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence of the problem
Elian Kraja's avatar
Elian Kraja committed
        status:
          type: integer
          description: The HTTP status code for this occurrence of the problem
          format: int32
Elian Kraja's avatar
Elian Kraja committed
        title:
          type: string
          description: A short, human-readable summary of the problem type
Elian Kraja's avatar
Elian Kraja committed
        type:
          type: string
          description: A URI reference according to IETF RFC 3986 that identifies the problem type      
Elian Kraja's avatar
Elian Kraja committed
    TimeStamp:
      title: TimeStamp
      required:
      - nanoSeconds
      - seconds
      type: object
Elian Kraja's avatar
Elian Kraja committed
      properties:
        nanoSeconds:
          type: integer
          description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.
          format: int32
Elian Kraja's avatar
Elian Kraja committed
        seconds:
          type: integer
          description: The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.
          format: int32
    OperationalState:
      title: OperationalState
      enum:
      - DISABLED
      - ENABLED
Elian Kraja's avatar
Elian Kraja committed
      type: string
      examples:
      - DISABLED
    OperationState:
      title: OperationState
      enum:
      - DISABLED
      - ENABLED
Elian Kraja's avatar
Elian Kraja committed
      type: string
      examples:
      - DISABLED
  responses:
    '400':
      description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    '401':
      description: 'Unauthorized :  used when the client did not submit credentials.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    '403':
      description: 'Forbidden :  operation is not allowed given the current status of the resource.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    '404':
      description: 'Not Found :  used when a client provided a URI that cannot be mapped to a valid resource URI.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    '406':
      description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    '429':
      description: 'Too Many Requests: used when a rate limiter has triggered.'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'