Commit 119b1eb8 authored by bradburyr's avatar bradburyr
Browse files

TS 26.512 CR0084 prototype.

parent d54f1ea3
Loading
Loading
Loading
Loading
+22 −14
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ paths:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContentHostingConfiguration'
                $ref: '#/components/schemas/ProvisioningContentHostingConfiguration'
        '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors
          $ref: 'TS29571_CommonData.yaml#/components/responses/400'
        '401': # Unauthorized
@@ -124,7 +124,7 @@ paths:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContentHostingConfiguration'
              $ref: '#/components/schemas/PContentHostingConfiguration'
      responses:
        '200': # OK
          description: 'Content Hosting Configuration Replaced'
@@ -330,12 +330,9 @@ components:
        mappedPath:
          type: string

    DistributionConfiguration:
    BaseDistributionConfiguration:
      type: object
      required:
        - canonicalDomainName
        - baseURL
      description: 'A content distribution configuration.'
      description: 'Base data type for content distribution configurations.'
      properties:
        supplementaryDistributionNetworks:
          type: array
@@ -356,15 +353,8 @@ components:
          $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId'
        certificateId:
          $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId'
        canonicalDomainName:
          readOnly: true
          type: string
        domainNameAlias:
          type: string
        baseURL:
          readOnly: true
          allOf:
            - $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl'
        entryPoint:
          $ref: 'TS26510_CommonData.yaml#/components/schemas/RelativeMediaEntryPoint'
        pathRewriteRules:
@@ -417,6 +407,24 @@ components:
            ipAddressName:
              type: string

    DistributionConfiguration:
      description: 'A content distribution configuration.'
      allOf:
        - $ref: '#/components/schemas/BaseDistributionConfiguration'
        - type: object
          required:
            - canonicalDomainName
            - baseURL
          properties:
            canonicalDomainName:
              readOnly: true
              type: string
              description: 'Default Fully-Qualified Domain Name assigned by the Media AF for use at reference point M4.'
            baseURL:
              readOnly: true
              allOf:
                - $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl'

    # Schema for the resource itself
    ContentHostingConfiguration:
      type: object
+19 −11
Original line number Diff line number Diff line
@@ -328,12 +328,10 @@ components:
            $ref: 'TS26510_CommonData.yaml#/components/schemas/CachingConfiguration'
          minItems: 1
 
    ContributionConfiguration:
    BaseContributionConfiguration:
      type: object
      description: 'A configuration for content contribution.'
      required:
        - canonicalDomainName
        - baseURL
        - entryPoint
      properties:
        edgeResourcesConfigurationId:
@@ -344,19 +342,29 @@ components:
          allOf:
            - $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId'
            - description: 'A reference to a Server Certificate resource to be presented by the Media AS at reference point M4.'
        domainNameAlias: 
          type: string
          description: 'Additional domain name nominated by the Media Application Provider and used by the Media AS to set appropriate CORS HTTP response headers at reference point M4.'
        entryPoint:
          $ref: 'TS26510_CommonData.yaml#/components/schemas/RelativeMediaEntryPoint'

    ContributionConfiguration:
      description: 'A content contribution configuration.'
      allOf:
        - $ref: '#/components/schemas/BaseContributionConfiguration'
        - type: object
          required:
            - canonicalDomainName
            - baseURL
          properties:
            canonicalDomainName:
              readOnly: true
              type: string
              description: 'Default Fully-Qualified Domain Name assigned by the Media AF for use at reference point M4.'
        domainNameAlias: 
          type: string
          description: 'Additional domain name nominated by the Media Application Provider and used by the Media AS to set appropriate CORS HTTP response headers at reference point M4.'
            baseURL:
              readOnly: true
              allOf:
                - $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl'
        entryPoint:
          $ref: 'TS26510_CommonData.yaml#/components/schemas/RelativeMediaEntryPoint'

    # Schema for the resource itself
    ContentPublishingConfiguration:
+38 −2
Original line number Diff line number Diff line
@@ -79,7 +79,7 @@ paths:
        content:
          application/json:
            schema:
              $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/ContentHostingConfiguration'
              $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/ApplicationServerContentHostingConfiguration'
      responses:
        '201': # Created
          description: 'Content Hosting Configuration Created'
@@ -124,7 +124,7 @@ paths:
        content:
          application/json:
            schema:
              $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/ContentHostingConfiguration'
              $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/ApplicationServerContentHostingConfiguration'
      responses:
        '200': # OK
          description: 'Content Hosting Configuration Replaced'
@@ -328,3 +328,39 @@ components:
            content-hosting-configuration_modify-state: Modify the state of a Content Hosting Configuration resource
            content-hosting-configuration_interrogate-state: Interrogate the state of a Content Hosting Configuration resource
            content-hosting-configuration_purge-cache: Purge the cache associated with a Content Hosting Configuration resource

  schemas:
    ApplicationServerDistributionConfiguration:
      description: 'A content distribution configuration used to configure a Media AS.'
      allOf:
        - $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/BaseDistributionConfiguration'
        - type: object
          required:
            - canonicalDomainName
            - baseURL
          properties:
            canonicalDomainName:
              type: string
              description: 'Default Fully-Qualified Domain Name assigned by the Media AF for use at reference point M4.'
            baseURL:
              allOf:
                - $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl'

    # Schema for the resource itself
    ApplicationServerContentHostingConfiguration:
      type: object
      description: "A representation of a Content Hosting Configuration resource used to configure a Media AS."
      required:
        - name
        - ingestConfiguration
        - distributionConfigurations
      properties:
        name:
          type: string
        ingestConfiguration:
          $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/IngestConfiguration'
        distributionConfigurations:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationServerDistributionConfiguration'
          minItems: 1
+38 −2
Original line number Diff line number Diff line
@@ -79,7 +79,7 @@ paths:
        content:
          application/json:
            schema:
              $ref: 'TS26510_Maf_Provisioning_ContentPublishing.yaml#/components/schemas/ContentPublishingConfiguration'
              $ref: 'TS26510_Maf_Provisioning_ContentPublishing.yaml#/components/schemas/ApplicationServerContentPublishingConfiguration'
      responses:
        '201': # Created
          description: 'Content Publishing Configuration Created'
@@ -124,7 +124,7 @@ paths:
        content:
          application/json:
            schema:
              $ref: 'TS26510_Maf_Provisioning_ContentPublishing.yaml#/components/schemas/ContentPublishingConfiguration'
              $ref: 'TS26510_Maf_Provisioning_ContentPublishing.yaml#/components/schemas/ApplicationServerContentPublishingConfiguration'
      responses:
        '200': # OK
          description: 'Content Publishing Configuration Replaced'
@@ -328,3 +328,39 @@ components:
            content-publishing-configuration_modify-state: Modify the state of a Content Publishing Configuration resource
            content-publishing-configuration_interrogate-state: Interrogate the state of a Content Publishing Configuration resource
            content-publishing-configuration_purge-cache: Purge the cache associated with a Content Publishing Configuration resource
       
 schemas:
    ApplicationServerContributionConfiguration:
      description: 'A content contribution configuration used to configure a Media AS.'
      allOf:
        - $ref: 'TS26510_Maf_Provisioning_ContentPublishing.yaml#/components/schemas/BaseContributionConfiguration'
        - type: object
          required:
            - canonicalDomainName
            - baseURL
          properties:
            canonicalDomainName:
              type: string
              description: 'Default Fully-Qualified Domain Name assigned by the Media AF for use at reference point M4.'
            baseURL:
              allOf:
                - $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl'

    # Schema for the resource itself
    ApplicationServerContentPublishingConfiguration:
      type: object
      description: "A representation of a Content Publishing Configuration resource used to configure a Media AS."
      required:
        - name
        - contributionConfigurations
        - egestConfiguration
      properties:
        name:
          type: string
        contributionConfigurations:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationServerContributionConfiguration'
          minItems: 1
        egestConfiguration:
          $ref: 'TS26510_Maf_Provisioning_ContentHosting.yaml#/components/schemas/EgestConfiguration'