Class OriginEndpointOptions.Builder

java.lang.Object
software.amazon.awscdk.services.mediapackagev2.alpha.OriginEndpointOptions.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<OriginEndpointOptions>
Enclosing interface:
OriginEndpointOptions

@Stability(Experimental) public static final class OriginEndpointOptions.Builder extends Object implements software.amazon.jsii.Builder<OriginEndpointOptions>
A builder for OriginEndpointOptions
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • manifests

      @Stability(Experimental) public OriginEndpointOptions.Builder manifests(List<? extends Manifest> manifests)
      Parameters:
      manifests - Manifests configuration for HLS, Low Latency HLS and DASH. This parameter is required.
      Returns:
      this
    • segment

      @Stability(Experimental) public OriginEndpointOptions.Builder segment(SegmentConfiguration segment)
      Parameters:
      segment - The segment associated with the origin endpoint. This parameter is required. Inside the segment configuration you can define options such as encryption, SPEKE parameters and other general segment configurations.

      Use Segment.ts() or Segment.cmaf() to create the configuration.

      Returns:
      this
    • cdnAuth

      @Stability(Experimental) public OriginEndpointOptions.Builder cdnAuth(CdnAuthConfiguration cdnAuth)
      Parameters:
      cdnAuth - Provide access to MediaPackage V2 Origin Endpoint via secret header. Use this when your CDN doesn't support AWS Signature Version 4 (SigV4) authentication. For SigV4-based access with Amazon CloudFront, see MediaPackageV2Origin.

      Setting cdnAuth auto-creates the following policy on the OriginEndpoint:

                      {
                        "Version":"2012-10-17",
                        "Statement": [
                          {
                            "Sid": "AllowGetObjectAccessForAuthorizedRequest",
                            "Effect": "Allow",
                            "Principal": "*",
                            "Action": "mediapackagev2:GetObject",
                            "Resource": "arn:aws:mediapackagev2:us-east-1:111122223333:channelGroup/channelGroupName/channel/channelName/originEndpoint/originEndpointName",
                            "Condition": {
                              "Bool": {
                                "mediapackagev2:RequestHasMatchingCdnAuthHeader": "true"
                              }
                            }
                          }
                        ]
                      }
                      
      Returns:
      this
    • description

      @Stability(Experimental) public OriginEndpointOptions.Builder description(String description)
      Parameters:
      description - The description associated with the origin endpoint.
      Returns:
      this
    • forceEndpointConfigurationConditions

      @Stability(Experimental) public OriginEndpointOptions.Builder forceEndpointConfigurationConditions(List<? extends EndpointErrorConfiguration> forceEndpointConfigurationConditions)
      Parameters:
      forceEndpointConfigurationConditions - The failover settings for the endpoint.
      Returns:
      this
    • originEndpointName

      @Stability(Experimental) public OriginEndpointOptions.Builder originEndpointName(String originEndpointName)
      Parameters:
      originEndpointName - The name of the origin endpoint associated with the origin endpoint configuration.
      Returns:
      this
    • removalPolicy

      @Stability(Experimental) public OriginEndpointOptions.Builder removalPolicy(RemovalPolicy removalPolicy)
      Parameters:
      removalPolicy - Policy to apply when the origin endpoint is removed from the stack. Even though MediaPackage ChannelGroups, Channels and OriginEndpoints are technically stateful, their contents are transient and it is common to add and remove these while rearchitecting your application. The default is therefore DESTROY. Change it to RETAIN if the content (in a lookback window) are so valuable that accidentally losing it would be unacceptable.
      Returns:
      this
    • startoverWindow

      @Stability(Experimental) public OriginEndpointOptions.Builder startoverWindow(Duration startoverWindow)
      Parameters:
      startoverWindow - The size of the window to specify a window of the live stream that's available for on-demand viewing. Viewers can start-over or catch-up on content that falls within the window.
      Returns:
      this
    • tags

      @Stability(Experimental) public OriginEndpointOptions.Builder tags(Map<String,String> tags)
      Parameters:
      tags - The tags associated with the origin endpoint.
      Returns:
      this
    • build

      @Stability(Experimental) public OriginEndpointOptions build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<OriginEndpointOptions>
      Returns:
      a new instance of OriginEndpointOptions
      Throws:
      NullPointerException - if any required attribute was not provided