 
                        
        
                        
        software.amazon.awssdk.services.mediatailor.MediaTailorAsyncClient Maven / Gradle / Ivy
/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package software.amazon.awssdk.services.mediatailor;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkPublicApi;
import software.amazon.awssdk.annotations.ThreadSafe;
import software.amazon.awssdk.core.SdkClient;
import software.amazon.awssdk.services.mediatailor.model.ConfigureLogsForPlaybackConfigurationRequest;
import software.amazon.awssdk.services.mediatailor.model.ConfigureLogsForPlaybackConfigurationResponse;
import software.amazon.awssdk.services.mediatailor.model.CreateChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.CreateChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.CreateLiveSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.CreateLiveSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.CreatePrefetchScheduleRequest;
import software.amazon.awssdk.services.mediatailor.model.CreatePrefetchScheduleResponse;
import software.amazon.awssdk.services.mediatailor.model.CreateProgramRequest;
import software.amazon.awssdk.services.mediatailor.model.CreateProgramResponse;
import software.amazon.awssdk.services.mediatailor.model.CreateSourceLocationRequest;
import software.amazon.awssdk.services.mediatailor.model.CreateSourceLocationResponse;
import software.amazon.awssdk.services.mediatailor.model.CreateVodSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.CreateVodSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteChannelPolicyRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteChannelPolicyResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteLiveSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteLiveSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.DeletePlaybackConfigurationRequest;
import software.amazon.awssdk.services.mediatailor.model.DeletePlaybackConfigurationResponse;
import software.amazon.awssdk.services.mediatailor.model.DeletePrefetchScheduleRequest;
import software.amazon.awssdk.services.mediatailor.model.DeletePrefetchScheduleResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteProgramRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteProgramResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteSourceLocationRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteSourceLocationResponse;
import software.amazon.awssdk.services.mediatailor.model.DeleteVodSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.DeleteVodSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.DescribeChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.DescribeChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.DescribeLiveSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.DescribeLiveSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.DescribeProgramRequest;
import software.amazon.awssdk.services.mediatailor.model.DescribeProgramResponse;
import software.amazon.awssdk.services.mediatailor.model.DescribeSourceLocationRequest;
import software.amazon.awssdk.services.mediatailor.model.DescribeSourceLocationResponse;
import software.amazon.awssdk.services.mediatailor.model.DescribeVodSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.DescribeVodSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.GetChannelPolicyRequest;
import software.amazon.awssdk.services.mediatailor.model.GetChannelPolicyResponse;
import software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleRequest;
import software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleResponse;
import software.amazon.awssdk.services.mediatailor.model.GetPlaybackConfigurationRequest;
import software.amazon.awssdk.services.mediatailor.model.GetPlaybackConfigurationResponse;
import software.amazon.awssdk.services.mediatailor.model.GetPrefetchScheduleRequest;
import software.amazon.awssdk.services.mediatailor.model.GetPrefetchScheduleResponse;
import software.amazon.awssdk.services.mediatailor.model.ListAlertsRequest;
import software.amazon.awssdk.services.mediatailor.model.ListAlertsResponse;
import software.amazon.awssdk.services.mediatailor.model.ListChannelsRequest;
import software.amazon.awssdk.services.mediatailor.model.ListChannelsResponse;
import software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesRequest;
import software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesResponse;
import software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest;
import software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsResponse;
import software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesRequest;
import software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesResponse;
import software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsRequest;
import software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsResponse;
import software.amazon.awssdk.services.mediatailor.model.ListTagsForResourceRequest;
import software.amazon.awssdk.services.mediatailor.model.ListTagsForResourceResponse;
import software.amazon.awssdk.services.mediatailor.model.ListVodSourcesRequest;
import software.amazon.awssdk.services.mediatailor.model.ListVodSourcesResponse;
import software.amazon.awssdk.services.mediatailor.model.PutChannelPolicyRequest;
import software.amazon.awssdk.services.mediatailor.model.PutChannelPolicyResponse;
import software.amazon.awssdk.services.mediatailor.model.PutPlaybackConfigurationRequest;
import software.amazon.awssdk.services.mediatailor.model.PutPlaybackConfigurationResponse;
import software.amazon.awssdk.services.mediatailor.model.StartChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.StartChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.StopChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.StopChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.TagResourceRequest;
import software.amazon.awssdk.services.mediatailor.model.TagResourceResponse;
import software.amazon.awssdk.services.mediatailor.model.UntagResourceRequest;
import software.amazon.awssdk.services.mediatailor.model.UntagResourceResponse;
import software.amazon.awssdk.services.mediatailor.model.UpdateChannelRequest;
import software.amazon.awssdk.services.mediatailor.model.UpdateChannelResponse;
import software.amazon.awssdk.services.mediatailor.model.UpdateLiveSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.UpdateLiveSourceResponse;
import software.amazon.awssdk.services.mediatailor.model.UpdateSourceLocationRequest;
import software.amazon.awssdk.services.mediatailor.model.UpdateSourceLocationResponse;
import software.amazon.awssdk.services.mediatailor.model.UpdateVodSourceRequest;
import software.amazon.awssdk.services.mediatailor.model.UpdateVodSourceResponse;
import software.amazon.awssdk.services.mediatailor.paginators.GetChannelSchedulePublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListAlertsPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListChannelsPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListLiveSourcesPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListPrefetchSchedulesPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListSourceLocationsPublisher;
import software.amazon.awssdk.services.mediatailor.paginators.ListVodSourcesPublisher;
/**
 * Service client for accessing MediaTailor asynchronously. This can be created using the static {@link #builder()}
 * method.
 *
 * 
 * Use the AWS Elemental MediaTailor SDKs and CLI to configure scalable ad insertion and linear channels. With
 * MediaTailor, you can assemble existing content into a linear stream and serve targeted ads to viewers while
 * maintaining broadcast quality in over-the-top (OTT) video applications. For information about using the service,
 * including detailed information about the settings covered in this guide, see the AWS Elemental MediaTailor User Guide.
 * 
 * 
 * Through the SDKs and the CLI you manage AWS Elemental MediaTailor configurations and channels the same as you do
 * through the console. For example, you specify ad insertion behavior and mapping information for the origin server and
 * the ad decision server (ADS).
 * 
 */
@Generated("software.amazon.awssdk:codegen")
@SdkPublicApi
@ThreadSafe
public interface MediaTailorAsyncClient extends SdkClient {
    String SERVICE_NAME = "mediatailor";
    /**
     * Value for looking up the service's metadata from the
     * {@link software.amazon.awssdk.regions.ServiceMetadataProvider}.
     */
    String SERVICE_METADATA_ID = "api.mediatailor";
    /**
     * Create a {@link MediaTailorAsyncClient} with the region loaded from the
     * {@link software.amazon.awssdk.regions.providers.DefaultAwsRegionProviderChain} and credentials loaded from the
     * {@link software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider}.
     */
    static MediaTailorAsyncClient create() {
        return builder().build();
    }
    /**
     * Create a builder that can be used to configure and create a {@link MediaTailorAsyncClient}.
     */
    static MediaTailorAsyncClientBuilder builder() {
        return new DefaultMediaTailorAsyncClientBuilder();
    }
    /**
     * 
     * Configures Amazon CloudWatch log settings for a playback configuration.
     * 
     *
     * @param configureLogsForPlaybackConfigurationRequest
     *        Configures Amazon CloudWatch log settings for a playback configuration.
     * @return A Java Future containing the result of the ConfigureLogsForPlaybackConfiguration operation returned by
     *         the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ConfigureLogsForPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture configureLogsForPlaybackConfiguration(
            ConfigureLogsForPlaybackConfigurationRequest configureLogsForPlaybackConfigurationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Configures Amazon CloudWatch log settings for a playback configuration.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the
     * {@link ConfigureLogsForPlaybackConfigurationRequest.Builder} avoiding the need to create one manually via
     * {@link ConfigureLogsForPlaybackConfigurationRequest#builder()}
     * 
     *
     * @param configureLogsForPlaybackConfigurationRequest
     *        A {@link Consumer} that will call methods on {@link ConfigureLogsForPlaybackConfigurationRequest.Builder}
     *        to create a request. Configures Amazon CloudWatch log settings for a playback configuration.
     * @return A Java Future containing the result of the ConfigureLogsForPlaybackConfiguration operation returned by
     *         the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ConfigureLogsForPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture configureLogsForPlaybackConfiguration(
            Consumer configureLogsForPlaybackConfigurationRequest) {
        return configureLogsForPlaybackConfiguration(ConfigureLogsForPlaybackConfigurationRequest.builder()
                .applyMutation(configureLogsForPlaybackConfigurationRequest).build());
    }
    /**
     * 
     * Creates a channel.
     * 
     *
     * @param createChannelRequest
     * @return A Java Future containing the result of the CreateChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture createChannel(CreateChannelRequest createChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates a channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreateChannelRequest.Builder} avoiding the need to
     * create one manually via {@link CreateChannelRequest#builder()}
     * 
     *
     * @param createChannelRequest
     *        A {@link Consumer} that will call methods on {@link CreateChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the CreateChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture createChannel(Consumer createChannelRequest) {
        return createChannel(CreateChannelRequest.builder().applyMutation(createChannelRequest).build());
    }
    /**
     * 
     * Creates name for a specific live source in a source location.
     * 
     *
     * @param createLiveSourceRequest
     * @return A Java Future containing the result of the CreateLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture createLiveSource(CreateLiveSourceRequest createLiveSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates name for a specific live source in a source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreateLiveSourceRequest.Builder} avoiding the need
     * to create one manually via {@link CreateLiveSourceRequest#builder()}
     * 
     *
     * @param createLiveSourceRequest
     *        A {@link Consumer} that will call methods on {@link CreateLiveSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the CreateLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture createLiveSource(
            Consumer createLiveSourceRequest) {
        return createLiveSource(CreateLiveSourceRequest.builder().applyMutation(createLiveSourceRequest).build());
    }
    /**
     * 
     * Creates a new prefetch schedule for the specified playback configuration.
     * 
     *
     * @param createPrefetchScheduleRequest
     * @return A Java Future containing the result of the CreatePrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreatePrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture createPrefetchSchedule(
            CreatePrefetchScheduleRequest createPrefetchScheduleRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates a new prefetch schedule for the specified playback configuration.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreatePrefetchScheduleRequest.Builder} avoiding the
     * need to create one manually via {@link CreatePrefetchScheduleRequest#builder()}
     * 
     *
     * @param createPrefetchScheduleRequest
     *        A {@link Consumer} that will call methods on {@link CreatePrefetchScheduleRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the CreatePrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreatePrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture createPrefetchSchedule(
            Consumer createPrefetchScheduleRequest) {
        return createPrefetchSchedule(CreatePrefetchScheduleRequest.builder().applyMutation(createPrefetchScheduleRequest)
                .build());
    }
    /**
     * 
     * Creates a program.
     * 
     *
     * @param createProgramRequest
     * @return A Java Future containing the result of the CreateProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateProgram
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture createProgram(CreateProgramRequest createProgramRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates a program.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreateProgramRequest.Builder} avoiding the need to
     * create one manually via {@link CreateProgramRequest#builder()}
     * 
     *
     * @param createProgramRequest
     *        A {@link Consumer} that will call methods on {@link CreateProgramRequest.Builder} to create a request.
     * @return A Java Future containing the result of the CreateProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateProgram
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture createProgram(Consumer createProgramRequest) {
        return createProgram(CreateProgramRequest.builder().applyMutation(createProgramRequest).build());
    }
    /**
     * 
     * Creates a source location on a specific channel.
     * 
     *
     * @param createSourceLocationRequest
     * @return A Java Future containing the result of the CreateSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture createSourceLocation(
            CreateSourceLocationRequest createSourceLocationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates a source location on a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreateSourceLocationRequest.Builder} avoiding the
     * need to create one manually via {@link CreateSourceLocationRequest#builder()}
     * 
     *
     * @param createSourceLocationRequest
     *        A {@link Consumer} that will call methods on {@link CreateSourceLocationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the CreateSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture createSourceLocation(
            Consumer createSourceLocationRequest) {
        return createSourceLocation(CreateSourceLocationRequest.builder().applyMutation(createSourceLocationRequest).build());
    }
    /**
     * 
     * Creates name for a specific VOD source in a source location.
     * 
     *
     * @param createVodSourceRequest
     * @return A Java Future containing the result of the CreateVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture createVodSource(CreateVodSourceRequest createVodSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates name for a specific VOD source in a source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link CreateVodSourceRequest.Builder} avoiding the need
     * to create one manually via {@link CreateVodSourceRequest#builder()}
     * 
     *
     * @param createVodSourceRequest
     *        A {@link Consumer} that will call methods on {@link CreateVodSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the CreateVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.CreateVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture createVodSource(
            Consumer createVodSourceRequest) {
        return createVodSource(CreateVodSourceRequest.builder().applyMutation(createVodSourceRequest).build());
    }
    /**
     * 
     * Deletes a channel. You must stop the channel before it can be deleted.
     * 
     *
     * @param deleteChannelRequest
     * @return A Java Future containing the result of the DeleteChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture deleteChannel(DeleteChannelRequest deleteChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a channel. You must stop the channel before it can be deleted.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteChannelRequest.Builder} avoiding the need to
     * create one manually via {@link DeleteChannelRequest#builder()}
     * 
     *
     * @param deleteChannelRequest
     *        A {@link Consumer} that will call methods on {@link DeleteChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DeleteChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture deleteChannel(Consumer deleteChannelRequest) {
        return deleteChannel(DeleteChannelRequest.builder().applyMutation(deleteChannelRequest).build());
    }
    /**
     * 
     * Deletes a channel's IAM policy.
     * 
     *
     * @param deleteChannelPolicyRequest
     * @return A Java Future containing the result of the DeleteChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteChannelPolicy
     * @see AWS API Documentation
     */
    default CompletableFuture deleteChannelPolicy(
            DeleteChannelPolicyRequest deleteChannelPolicyRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a channel's IAM policy.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteChannelPolicyRequest.Builder} avoiding the
     * need to create one manually via {@link DeleteChannelPolicyRequest#builder()}
     * 
     *
     * @param deleteChannelPolicyRequest
     *        A {@link Consumer} that will call methods on {@link DeleteChannelPolicyRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the DeleteChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteChannelPolicy
     * @see AWS API Documentation
     */
    default CompletableFuture deleteChannelPolicy(
            Consumer deleteChannelPolicyRequest) {
        return deleteChannelPolicy(DeleteChannelPolicyRequest.builder().applyMutation(deleteChannelPolicyRequest).build());
    }
    /**
     * 
     * Deletes a specific live source in a specific source location.
     * 
     *
     * @param deleteLiveSourceRequest
     * @return A Java Future containing the result of the DeleteLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture deleteLiveSource(DeleteLiveSourceRequest deleteLiveSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a specific live source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteLiveSourceRequest.Builder} avoiding the need
     * to create one manually via {@link DeleteLiveSourceRequest#builder()}
     * 
     *
     * @param deleteLiveSourceRequest
     *        A {@link Consumer} that will call methods on {@link DeleteLiveSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DeleteLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture deleteLiveSource(
            Consumer deleteLiveSourceRequest) {
        return deleteLiveSource(DeleteLiveSourceRequest.builder().applyMutation(deleteLiveSourceRequest).build());
    }
    /**
     * 
     * Deletes the playback configuration for the specified name.
     * 
     *
     * @param deletePlaybackConfigurationRequest
     * @return A Java Future containing the result of the DeletePlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeletePlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture deletePlaybackConfiguration(
            DeletePlaybackConfigurationRequest deletePlaybackConfigurationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes the playback configuration for the specified name.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeletePlaybackConfigurationRequest.Builder}
     * avoiding the need to create one manually via {@link DeletePlaybackConfigurationRequest#builder()}
     * 
     *
     * @param deletePlaybackConfigurationRequest
     *        A {@link Consumer} that will call methods on {@link DeletePlaybackConfigurationRequest.Builder} to create
     *        a request.
     * @return A Java Future containing the result of the DeletePlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeletePlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture deletePlaybackConfiguration(
            Consumer deletePlaybackConfigurationRequest) {
        return deletePlaybackConfiguration(DeletePlaybackConfigurationRequest.builder()
                .applyMutation(deletePlaybackConfigurationRequest).build());
    }
    /**
     * 
     * Deletes a prefetch schedule for a specific playback configuration. If you call DeletePrefetchSchedule on an
     * expired prefetch schedule, MediaTailor returns an HTTP 404 status code.
     * 
     *
     * @param deletePrefetchScheduleRequest
     * @return A Java Future containing the result of the DeletePrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeletePrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture deletePrefetchSchedule(
            DeletePrefetchScheduleRequest deletePrefetchScheduleRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a prefetch schedule for a specific playback configuration. If you call DeletePrefetchSchedule on an
     * expired prefetch schedule, MediaTailor returns an HTTP 404 status code.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeletePrefetchScheduleRequest.Builder} avoiding the
     * need to create one manually via {@link DeletePrefetchScheduleRequest#builder()}
     * 
     *
     * @param deletePrefetchScheduleRequest
     *        A {@link Consumer} that will call methods on {@link DeletePrefetchScheduleRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the DeletePrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeletePrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture deletePrefetchSchedule(
            Consumer deletePrefetchScheduleRequest) {
        return deletePrefetchSchedule(DeletePrefetchScheduleRequest.builder().applyMutation(deletePrefetchScheduleRequest)
                .build());
    }
    /**
     * 
     * Deletes a specific program on a specific channel.
     * 
     *
     * @param deleteProgramRequest
     * @return A Java Future containing the result of the DeleteProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteProgram
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture deleteProgram(DeleteProgramRequest deleteProgramRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a specific program on a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteProgramRequest.Builder} avoiding the need to
     * create one manually via {@link DeleteProgramRequest#builder()}
     * 
     *
     * @param deleteProgramRequest
     *        A {@link Consumer} that will call methods on {@link DeleteProgramRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DeleteProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteProgram
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture deleteProgram(Consumer deleteProgramRequest) {
        return deleteProgram(DeleteProgramRequest.builder().applyMutation(deleteProgramRequest).build());
    }
    /**
     * 
     * Deletes a source location on a specific channel.
     * 
     *
     * @param deleteSourceLocationRequest
     * @return A Java Future containing the result of the DeleteSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture deleteSourceLocation(
            DeleteSourceLocationRequest deleteSourceLocationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a source location on a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteSourceLocationRequest.Builder} avoiding the
     * need to create one manually via {@link DeleteSourceLocationRequest#builder()}
     * 
     *
     * @param deleteSourceLocationRequest
     *        A {@link Consumer} that will call methods on {@link DeleteSourceLocationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the DeleteSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture deleteSourceLocation(
            Consumer deleteSourceLocationRequest) {
        return deleteSourceLocation(DeleteSourceLocationRequest.builder().applyMutation(deleteSourceLocationRequest).build());
    }
    /**
     * 
     * Deletes a specific VOD source in a specific source location.
     * 
     *
     * @param deleteVodSourceRequest
     * @return A Java Future containing the result of the DeleteVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture deleteVodSource(DeleteVodSourceRequest deleteVodSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Deletes a specific VOD source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DeleteVodSourceRequest.Builder} avoiding the need
     * to create one manually via {@link DeleteVodSourceRequest#builder()}
     * 
     *
     * @param deleteVodSourceRequest
     *        A {@link Consumer} that will call methods on {@link DeleteVodSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DeleteVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DeleteVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture deleteVodSource(
            Consumer deleteVodSourceRequest) {
        return deleteVodSource(DeleteVodSourceRequest.builder().applyMutation(deleteVodSourceRequest).build());
    }
    /**
     * 
     * Describes the properties of a specific channel.
     * 
     *
     * @param describeChannelRequest
     * @return A Java Future containing the result of the DescribeChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeChannel
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeChannel(DescribeChannelRequest describeChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Describes the properties of a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DescribeChannelRequest.Builder} avoiding the need
     * to create one manually via {@link DescribeChannelRequest#builder()}
     * 
     *
     * @param describeChannelRequest
     *        A {@link Consumer} that will call methods on {@link DescribeChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DescribeChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeChannel
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeChannel(
            Consumer describeChannelRequest) {
        return describeChannel(DescribeChannelRequest.builder().applyMutation(describeChannelRequest).build());
    }
    /**
     * 
     * Provides details about a specific live source in a specific source location.
     * 
     *
     * @param describeLiveSourceRequest
     * @return A Java Future containing the result of the DescribeLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeLiveSource
     * @see AWS API Documentation
     */
    default CompletableFuture describeLiveSource(DescribeLiveSourceRequest describeLiveSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Provides details about a specific live source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DescribeLiveSourceRequest.Builder} avoiding the
     * need to create one manually via {@link DescribeLiveSourceRequest#builder()}
     * 
     *
     * @param describeLiveSourceRequest
     *        A {@link Consumer} that will call methods on {@link DescribeLiveSourceRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the DescribeLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeLiveSource
     * @see AWS API Documentation
     */
    default CompletableFuture describeLiveSource(
            Consumer describeLiveSourceRequest) {
        return describeLiveSource(DescribeLiveSourceRequest.builder().applyMutation(describeLiveSourceRequest).build());
    }
    /**
     * 
     * Retrieves the properties of the requested program.
     * 
     *
     * @param describeProgramRequest
     * @return A Java Future containing the result of the DescribeProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeProgram
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeProgram(DescribeProgramRequest describeProgramRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves the properties of the requested program.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DescribeProgramRequest.Builder} avoiding the need
     * to create one manually via {@link DescribeProgramRequest#builder()}
     * 
     *
     * @param describeProgramRequest
     *        A {@link Consumer} that will call methods on {@link DescribeProgramRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DescribeProgram operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeProgram
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeProgram(
            Consumer describeProgramRequest) {
        return describeProgram(DescribeProgramRequest.builder().applyMutation(describeProgramRequest).build());
    }
    /**
     * 
     * Retrieves the properties of the requested source location.
     * 
     *
     * @param describeSourceLocationRequest
     * @return A Java Future containing the result of the DescribeSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture describeSourceLocation(
            DescribeSourceLocationRequest describeSourceLocationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves the properties of the requested source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DescribeSourceLocationRequest.Builder} avoiding the
     * need to create one manually via {@link DescribeSourceLocationRequest#builder()}
     * 
     *
     * @param describeSourceLocationRequest
     *        A {@link Consumer} that will call methods on {@link DescribeSourceLocationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the DescribeSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture describeSourceLocation(
            Consumer describeSourceLocationRequest) {
        return describeSourceLocation(DescribeSourceLocationRequest.builder().applyMutation(describeSourceLocationRequest)
                .build());
    }
    /**
     * 
     * Provides details about a specific VOD source in a specific source location.
     * 
     *
     * @param describeVodSourceRequest
     * @return A Java Future containing the result of the DescribeVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeVodSource(DescribeVodSourceRequest describeVodSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Provides details about a specific VOD source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link DescribeVodSourceRequest.Builder} avoiding the need
     * to create one manually via {@link DescribeVodSourceRequest#builder()}
     * 
     *
     * @param describeVodSourceRequest
     *        A {@link Consumer} that will call methods on {@link DescribeVodSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the DescribeVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.DescribeVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture describeVodSource(
            Consumer describeVodSourceRequest) {
        return describeVodSource(DescribeVodSourceRequest.builder().applyMutation(describeVodSourceRequest).build());
    }
    /**
     * 
     * Retrieves information about a channel's IAM policy.
     * 
     *
     * @param getChannelPolicyRequest
     * @return A Java Future containing the result of the GetChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelPolicy
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture getChannelPolicy(GetChannelPolicyRequest getChannelPolicyRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves information about a channel's IAM policy.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link GetChannelPolicyRequest.Builder} avoiding the need
     * to create one manually via {@link GetChannelPolicyRequest#builder()}
     * 
     *
     * @param getChannelPolicyRequest
     *        A {@link Consumer} that will call methods on {@link GetChannelPolicyRequest.Builder} to create a request.
     * @return A Java Future containing the result of the GetChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelPolicy
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture getChannelPolicy(
            Consumer getChannelPolicyRequest) {
        return getChannelPolicy(GetChannelPolicyRequest.builder().applyMutation(getChannelPolicyRequest).build());
    }
    /**
     * 
     * Retrieves information about your channel's schedule.
     * 
     *
     * @param getChannelScheduleRequest
     * @return A Java Future containing the result of the GetChannelSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture getChannelSchedule(GetChannelScheduleRequest getChannelScheduleRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves information about your channel's schedule.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link GetChannelScheduleRequest.Builder} avoiding the
     * need to create one manually via {@link GetChannelScheduleRequest#builder()}
     * 
     *
     * @param getChannelScheduleRequest
     *        A {@link Consumer} that will call methods on {@link GetChannelScheduleRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the GetChannelSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture getChannelSchedule(
            Consumer getChannelScheduleRequest) {
        return getChannelSchedule(GetChannelScheduleRequest.builder().applyMutation(getChannelScheduleRequest).build());
    }
    /**
     * 
     * Retrieves information about your channel's schedule.
     * 
     * 
     * 
     * This is a variant of
     * {@link #getChannelSchedule(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.GetChannelSchedulePublisher publisher = client.getChannelSchedulePaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.GetChannelSchedulePublisher publisher = client.getChannelSchedulePaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #getChannelSchedule(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleRequest)}
     * operation.
     * 
     *
     * @param getChannelScheduleRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelSchedule
     * @see AWS API Documentation
     */
    default GetChannelSchedulePublisher getChannelSchedulePaginator(GetChannelScheduleRequest getChannelScheduleRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Retrieves information about your channel's schedule.
     * 
     * 
     * 
     * This is a variant of
     * {@link #getChannelSchedule(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.GetChannelSchedulePublisher publisher = client.getChannelSchedulePaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.GetChannelSchedulePublisher publisher = client.getChannelSchedulePaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #getChannelSchedule(software.amazon.awssdk.services.mediatailor.model.GetChannelScheduleRequest)}
     * operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link GetChannelScheduleRequest.Builder} avoiding the
     * need to create one manually via {@link GetChannelScheduleRequest#builder()}
     * 
     *
     * @param getChannelScheduleRequest
     *        A {@link Consumer} that will call methods on {@link GetChannelScheduleRequest.Builder} to create a
     *        request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetChannelSchedule
     * @see AWS API Documentation
     */
    default GetChannelSchedulePublisher getChannelSchedulePaginator(
            Consumer getChannelScheduleRequest) {
        return getChannelSchedulePaginator(GetChannelScheduleRequest.builder().applyMutation(getChannelScheduleRequest).build());
    }
    /**
     * 
     * Returns the playback configuration for the specified name.
     * 
     *
     * @param getPlaybackConfigurationRequest
     * @return A Java Future containing the result of the GetPlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture getPlaybackConfiguration(
            GetPlaybackConfigurationRequest getPlaybackConfigurationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Returns the playback configuration for the specified name.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link GetPlaybackConfigurationRequest.Builder} avoiding
     * the need to create one manually via {@link GetPlaybackConfigurationRequest#builder()}
     * 
     *
     * @param getPlaybackConfigurationRequest
     *        A {@link Consumer} that will call methods on {@link GetPlaybackConfigurationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the GetPlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture getPlaybackConfiguration(
            Consumer getPlaybackConfigurationRequest) {
        return getPlaybackConfiguration(GetPlaybackConfigurationRequest.builder().applyMutation(getPlaybackConfigurationRequest)
                .build());
    }
    /**
     * 
     * Returns information about the prefetch schedule for a specific playback configuration. If you call
     * GetPrefetchSchedule on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code.
     * 
     *
     * @param getPrefetchScheduleRequest
     * @return A Java Future containing the result of the GetPrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetPrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture getPrefetchSchedule(
            GetPrefetchScheduleRequest getPrefetchScheduleRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Returns information about the prefetch schedule for a specific playback configuration. If you call
     * GetPrefetchSchedule on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link GetPrefetchScheduleRequest.Builder} avoiding the
     * need to create one manually via {@link GetPrefetchScheduleRequest#builder()}
     * 
     *
     * @param getPrefetchScheduleRequest
     *        A {@link Consumer} that will call methods on {@link GetPrefetchScheduleRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the GetPrefetchSchedule operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.GetPrefetchSchedule
     * @see AWS API Documentation
     */
    default CompletableFuture getPrefetchSchedule(
            Consumer getPrefetchScheduleRequest) {
        return getPrefetchSchedule(GetPrefetchScheduleRequest.builder().applyMutation(getPrefetchScheduleRequest).build());
    }
    /**
     * 
     * Returns a list of alerts for the given resource.
     * 
     *
     * @param listAlertsRequest
     * @return A Java Future containing the result of the ListAlerts operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListAlerts
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture listAlerts(ListAlertsRequest listAlertsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Returns a list of alerts for the given resource.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListAlertsRequest.Builder} avoiding the need to
     * create one manually via {@link ListAlertsRequest#builder()}
     * 
     *
     * @param listAlertsRequest
     *        A {@link Consumer} that will call methods on {@link ListAlertsRequest.Builder} to create a request.
     * @return A Java Future containing the result of the ListAlerts operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListAlerts
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture listAlerts(Consumer listAlertsRequest) {
        return listAlerts(ListAlertsRequest.builder().applyMutation(listAlertsRequest).build());
    }
    /**
     * 
     * Returns a list of alerts for the given resource.
     * 
     * 
     * 
     * This is a variant of {@link #listAlerts(software.amazon.awssdk.services.mediatailor.model.ListAlertsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListAlertsPublisher publisher = client.listAlertsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListAlertsPublisher publisher = client.listAlertsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListAlertsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listAlerts(software.amazon.awssdk.services.mediatailor.model.ListAlertsRequest)} operation.
     * 
     *
     * @param listAlertsRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListAlerts
     * @see AWS API
     *      Documentation
     */
    default ListAlertsPublisher listAlertsPaginator(ListAlertsRequest listAlertsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Returns a list of alerts for the given resource.
     * 
     * 
     * 
     * This is a variant of {@link #listAlerts(software.amazon.awssdk.services.mediatailor.model.ListAlertsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListAlertsPublisher publisher = client.listAlertsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListAlertsPublisher publisher = client.listAlertsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListAlertsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listAlerts(software.amazon.awssdk.services.mediatailor.model.ListAlertsRequest)} operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListAlertsRequest.Builder} avoiding the need to
     * create one manually via {@link ListAlertsRequest#builder()}
     * 
     *
     * @param listAlertsRequest
     *        A {@link Consumer} that will call methods on {@link ListAlertsRequest.Builder} to create a request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListAlerts
     * @see AWS API
     *      Documentation
     */
    default ListAlertsPublisher listAlertsPaginator(Consumer listAlertsRequest) {
        return listAlertsPaginator(ListAlertsRequest.builder().applyMutation(listAlertsRequest).build());
    }
    /**
     * 
     * Retrieves a list of channels that are associated with this account.
     * 
     *
     * @param listChannelsRequest
     * @return A Java Future containing the result of the ListChannels operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListChannels
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture listChannels(ListChannelsRequest listChannelsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves a list of channels that are associated with this account.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListChannelsRequest.Builder} avoiding the need to
     * create one manually via {@link ListChannelsRequest#builder()}
     * 
     *
     * @param listChannelsRequest
     *        A {@link Consumer} that will call methods on {@link ListChannelsRequest.Builder} to create a request.
     * @return A Java Future containing the result of the ListChannels operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListChannels
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture listChannels(Consumer listChannelsRequest) {
        return listChannels(ListChannelsRequest.builder().applyMutation(listChannelsRequest).build());
    }
    /**
     * 
     * Retrieves a list of channels that are associated with this account.
     * 
     * 
     * 
     * This is a variant of {@link #listChannels(software.amazon.awssdk.services.mediatailor.model.ListChannelsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListChannelsPublisher publisher = client.listChannelsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListChannelsPublisher publisher = client.listChannelsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListChannelsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listChannels(software.amazon.awssdk.services.mediatailor.model.ListChannelsRequest)} operation.
     * 
     *
     * @param listChannelsRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListChannels
     * @see AWS API
     *      Documentation
     */
    default ListChannelsPublisher listChannelsPaginator(ListChannelsRequest listChannelsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Retrieves a list of channels that are associated with this account.
     * 
     * 
     * 
     * This is a variant of {@link #listChannels(software.amazon.awssdk.services.mediatailor.model.ListChannelsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListChannelsPublisher publisher = client.listChannelsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListChannelsPublisher publisher = client.listChannelsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListChannelsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listChannels(software.amazon.awssdk.services.mediatailor.model.ListChannelsRequest)} operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListChannelsRequest.Builder} avoiding the need to
     * create one manually via {@link ListChannelsRequest#builder()}
     * 
     *
     * @param listChannelsRequest
     *        A {@link Consumer} that will call methods on {@link ListChannelsRequest.Builder} to create a request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListChannels
     * @see AWS API
     *      Documentation
     */
    default ListChannelsPublisher listChannelsPaginator(Consumer listChannelsRequest) {
        return listChannelsPaginator(ListChannelsRequest.builder().applyMutation(listChannelsRequest).build());
    }
    /**
     * 
     * lists all the live sources in a source location.
     * 
     *
     * @param listLiveSourcesRequest
     * @return A Java Future containing the result of the ListLiveSources operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListLiveSources
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture listLiveSources(ListLiveSourcesRequest listLiveSourcesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * lists all the live sources in a source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListLiveSourcesRequest.Builder} avoiding the need
     * to create one manually via {@link ListLiveSourcesRequest#builder()}
     * 
     *
     * @param listLiveSourcesRequest
     *        A {@link Consumer} that will call methods on {@link ListLiveSourcesRequest.Builder} to create a request.
     * @return A Java Future containing the result of the ListLiveSources operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListLiveSources
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture listLiveSources(
            Consumer listLiveSourcesRequest) {
        return listLiveSources(ListLiveSourcesRequest.builder().applyMutation(listLiveSourcesRequest).build());
    }
    /**
     * 
     * lists all the live sources in a source location.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listLiveSources(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesRequest)} operation. The
     * return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will
     * internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListLiveSourcesPublisher publisher = client.listLiveSourcesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListLiveSourcesPublisher publisher = client.listLiveSourcesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listLiveSources(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesRequest)} operation.
     * 
     *
     * @param listLiveSourcesRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListLiveSources
     * @see AWS
     *      API Documentation
     */
    default ListLiveSourcesPublisher listLiveSourcesPaginator(ListLiveSourcesRequest listLiveSourcesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * lists all the live sources in a source location.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listLiveSources(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesRequest)} operation. The
     * return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will
     * internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListLiveSourcesPublisher publisher = client.listLiveSourcesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListLiveSourcesPublisher publisher = client.listLiveSourcesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listLiveSources(software.amazon.awssdk.services.mediatailor.model.ListLiveSourcesRequest)} operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListLiveSourcesRequest.Builder} avoiding the need
     * to create one manually via {@link ListLiveSourcesRequest#builder()}
     * 
     *
     * @param listLiveSourcesRequest
     *        A {@link Consumer} that will call methods on {@link ListLiveSourcesRequest.Builder} to create a request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListLiveSources
     * @see AWS
     *      API Documentation
     */
    default ListLiveSourcesPublisher listLiveSourcesPaginator(Consumer listLiveSourcesRequest) {
        return listLiveSourcesPaginator(ListLiveSourcesRequest.builder().applyMutation(listLiveSourcesRequest).build());
    }
    /**
     * 
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     *
     * @param listPlaybackConfigurationsRequest
     * @return A Java Future containing the result of the ListPlaybackConfigurations operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default CompletableFuture listPlaybackConfigurations(
            ListPlaybackConfigurationsRequest listPlaybackConfigurationsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListPlaybackConfigurationsRequest.Builder} avoiding
     * the need to create one manually via {@link ListPlaybackConfigurationsRequest#builder()}
     * 
     *
     * @param listPlaybackConfigurationsRequest
     *        A {@link Consumer} that will call methods on {@link ListPlaybackConfigurationsRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the ListPlaybackConfigurations operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default CompletableFuture listPlaybackConfigurations(
            Consumer listPlaybackConfigurationsRequest) {
        return listPlaybackConfigurations(ListPlaybackConfigurationsRequest.builder()
                .applyMutation(listPlaybackConfigurationsRequest).build());
    }
    /**
     * 
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     *
     * @return A Java Future containing the result of the ListPlaybackConfigurations operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default CompletableFuture listPlaybackConfigurations() {
        return listPlaybackConfigurations(ListPlaybackConfigurationsRequest.builder().build());
    }
    /**
     * 
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation.
     * 
     *
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default ListPlaybackConfigurationsPublisher listPlaybackConfigurationsPaginator() {
        return listPlaybackConfigurationsPaginator(ListPlaybackConfigurationsRequest.builder().build());
    }
    /**
     *
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation.
     * 
     *
     * @param listPlaybackConfigurationsRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default ListPlaybackConfigurationsPublisher listPlaybackConfigurationsPaginator(
            ListPlaybackConfigurationsRequest listPlaybackConfigurationsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Returns a list of the playback configurations defined in AWS Elemental MediaTailor. You can specify a maximum
     * number of configurations to return at a time. The default maximum is 50. Results are returned in pagefuls. If
     * MediaTailor has more configurations than the specified maximum, it provides parameters in the response that you
     * can use to retrieve the next pageful.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPlaybackConfigurationsPublisher publisher = client.listPlaybackConfigurationsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listPlaybackConfigurations(software.amazon.awssdk.services.mediatailor.model.ListPlaybackConfigurationsRequest)}
     * operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListPlaybackConfigurationsRequest.Builder} avoiding
     * the need to create one manually via {@link ListPlaybackConfigurationsRequest#builder()}
     * 
     *
     * @param listPlaybackConfigurationsRequest
     *        A {@link Consumer} that will call methods on {@link ListPlaybackConfigurationsRequest.Builder} to create a
     *        request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPlaybackConfigurations
     * @see AWS API Documentation
     */
    default ListPlaybackConfigurationsPublisher listPlaybackConfigurationsPaginator(
            Consumer listPlaybackConfigurationsRequest) {
        return listPlaybackConfigurationsPaginator(ListPlaybackConfigurationsRequest.builder()
                .applyMutation(listPlaybackConfigurationsRequest).build());
    }
    /**
     * 
     * Creates a new prefetch schedule.
     * 
     *
     * @param listPrefetchSchedulesRequest
     * @return A Java Future containing the result of the ListPrefetchSchedules operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPrefetchSchedules
     * @see AWS API Documentation
     */
    default CompletableFuture listPrefetchSchedules(
            ListPrefetchSchedulesRequest listPrefetchSchedulesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates a new prefetch schedule.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListPrefetchSchedulesRequest.Builder} avoiding the
     * need to create one manually via {@link ListPrefetchSchedulesRequest#builder()}
     * 
     *
     * @param listPrefetchSchedulesRequest
     *        A {@link Consumer} that will call methods on {@link ListPrefetchSchedulesRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the ListPrefetchSchedules operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPrefetchSchedules
     * @see AWS API Documentation
     */
    default CompletableFuture listPrefetchSchedules(
            Consumer listPrefetchSchedulesRequest) {
        return listPrefetchSchedules(ListPrefetchSchedulesRequest.builder().applyMutation(listPrefetchSchedulesRequest).build());
    }
    /**
     * 
     * Creates a new prefetch schedule.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listPrefetchSchedules(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPrefetchSchedulesPublisher publisher = client.listPrefetchSchedulesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPrefetchSchedulesPublisher publisher = client.listPrefetchSchedulesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listPrefetchSchedules(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesRequest)}
     * operation.
     * 
     *
     * @param listPrefetchSchedulesRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPrefetchSchedules
     * @see AWS API Documentation
     */
    default ListPrefetchSchedulesPublisher listPrefetchSchedulesPaginator(
            ListPrefetchSchedulesRequest listPrefetchSchedulesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Creates a new prefetch schedule.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listPrefetchSchedules(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPrefetchSchedulesPublisher publisher = client.listPrefetchSchedulesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListPrefetchSchedulesPublisher publisher = client.listPrefetchSchedulesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listPrefetchSchedules(software.amazon.awssdk.services.mediatailor.model.ListPrefetchSchedulesRequest)}
     * operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListPrefetchSchedulesRequest.Builder} avoiding the
     * need to create one manually via {@link ListPrefetchSchedulesRequest#builder()}
     * 
     *
     * @param listPrefetchSchedulesRequest
     *        A {@link Consumer} that will call methods on {@link ListPrefetchSchedulesRequest.Builder} to create a
     *        request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListPrefetchSchedules
     * @see AWS API Documentation
     */
    default ListPrefetchSchedulesPublisher listPrefetchSchedulesPaginator(
            Consumer listPrefetchSchedulesRequest) {
        return listPrefetchSchedulesPaginator(ListPrefetchSchedulesRequest.builder().applyMutation(listPrefetchSchedulesRequest)
                .build());
    }
    /**
     * 
     * Retrieves a list of source locations.
     * 
     *
     * @param listSourceLocationsRequest
     * @return A Java Future containing the result of the ListSourceLocations operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListSourceLocations
     * @see AWS API Documentation
     */
    default CompletableFuture listSourceLocations(
            ListSourceLocationsRequest listSourceLocationsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Retrieves a list of source locations.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListSourceLocationsRequest.Builder} avoiding the
     * need to create one manually via {@link ListSourceLocationsRequest#builder()}
     * 
     *
     * @param listSourceLocationsRequest
     *        A {@link Consumer} that will call methods on {@link ListSourceLocationsRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the ListSourceLocations operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListSourceLocations
     * @see AWS API Documentation
     */
    default CompletableFuture listSourceLocations(
            Consumer listSourceLocationsRequest) {
        return listSourceLocations(ListSourceLocationsRequest.builder().applyMutation(listSourceLocationsRequest).build());
    }
    /**
     * 
     * Retrieves a list of source locations.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listSourceLocations(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListSourceLocationsPublisher publisher = client.listSourceLocationsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListSourceLocationsPublisher publisher = client.listSourceLocationsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listSourceLocations(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsRequest)}
     * operation.
     * 
     *
     * @param listSourceLocationsRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListSourceLocations
     * @see AWS API Documentation
     */
    default ListSourceLocationsPublisher listSourceLocationsPaginator(ListSourceLocationsRequest listSourceLocationsRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Retrieves a list of source locations.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listSourceLocations(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsRequest)}
     * operation. The return type is a custom publisher that can be subscribed to request a stream of response pages.
     * SDK will internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListSourceLocationsPublisher publisher = client.listSourceLocationsPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListSourceLocationsPublisher publisher = client.listSourceLocationsPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listSourceLocations(software.amazon.awssdk.services.mediatailor.model.ListSourceLocationsRequest)}
     * operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListSourceLocationsRequest.Builder} avoiding the
     * need to create one manually via {@link ListSourceLocationsRequest#builder()}
     * 
     *
     * @param listSourceLocationsRequest
     *        A {@link Consumer} that will call methods on {@link ListSourceLocationsRequest.Builder} to create a
     *        request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListSourceLocations
     * @see AWS API Documentation
     */
    default ListSourceLocationsPublisher listSourceLocationsPaginator(
            Consumer listSourceLocationsRequest) {
        return listSourceLocationsPaginator(ListSourceLocationsRequest.builder().applyMutation(listSourceLocationsRequest)
                .build());
    }
    /**
     * 
     * Returns a list of the tags assigned to the specified playback configuration resource.
     * 
     *
     * @param listTagsForResourceRequest
     * @return A Java Future containing the result of the ListTagsForResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListTagsForResource
     * @see AWS API Documentation
     */
    default CompletableFuture listTagsForResource(
            ListTagsForResourceRequest listTagsForResourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Returns a list of the tags assigned to the specified playback configuration resource.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListTagsForResourceRequest.Builder} avoiding the
     * need to create one manually via {@link ListTagsForResourceRequest#builder()}
     * 
     *
     * @param listTagsForResourceRequest
     *        A {@link Consumer} that will call methods on {@link ListTagsForResourceRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the ListTagsForResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListTagsForResource
     * @see AWS API Documentation
     */
    default CompletableFuture listTagsForResource(
            Consumer listTagsForResourceRequest) {
        return listTagsForResource(ListTagsForResourceRequest.builder().applyMutation(listTagsForResourceRequest).build());
    }
    /**
     * 
     * Lists all the VOD sources in a source location.
     * 
     *
     * @param listVodSourcesRequest
     * @return A Java Future containing the result of the ListVodSources operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListVodSources
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture listVodSources(ListVodSourcesRequest listVodSourcesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Lists all the VOD sources in a source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListVodSourcesRequest.Builder} avoiding the need to
     * create one manually via {@link ListVodSourcesRequest#builder()}
     * 
     *
     * @param listVodSourcesRequest
     *        A {@link Consumer} that will call methods on {@link ListVodSourcesRequest.Builder} to create a request.
     * @return A Java Future containing the result of the ListVodSources operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListVodSources
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture listVodSources(Consumer listVodSourcesRequest) {
        return listVodSources(ListVodSourcesRequest.builder().applyMutation(listVodSourcesRequest).build());
    }
    /**
     * 
     * Lists all the VOD sources in a source location.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listVodSources(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesRequest)} operation. The
     * return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will
     * internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListVodSourcesPublisher publisher = client.listVodSourcesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListVodSourcesPublisher publisher = client.listVodSourcesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listVodSources(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesRequest)} operation.
     * 
     *
     * @param listVodSourcesRequest
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListVodSources
     * @see AWS
     *      API Documentation
     */
    default ListVodSourcesPublisher listVodSourcesPaginator(ListVodSourcesRequest listVodSourcesRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     *
     * Lists all the VOD sources in a source location.
     * 
     * 
     * 
     * This is a variant of
     * {@link #listVodSources(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesRequest)} operation. The
     * return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will
     * internally handle making service calls for you.
     * 
     * 
     * When the operation is called, an instance of this class is returned. At this point, no service calls are made yet
     * and so there is no guarantee that the request is valid. If there are errors in your request, you will see the
     * failures only after you start streaming the data. The subscribe method should be called as a request to start
     * streaming data. For more info, see
     * {@link org.reactivestreams.Publisher#subscribe(org.reactivestreams.Subscriber)}. Each call to the subscribe
     * method will result in a new {@link org.reactivestreams.Subscription} i.e., a new contract to stream data from the
     * starting request.
     * 
     *
     * 
     * The following are few ways to use the response class:
     * 
     * 1) Using the subscribe helper method
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListVodSourcesPublisher publisher = client.listVodSourcesPaginator(request);
     * CompletableFuture future = publisher.subscribe(res -> { // Do something with the response });
     * future.get();
     * }
     *  
     *
     * 2) Using a custom subscriber
     * 
     * 
     * {@code
     * software.amazon.awssdk.services.mediatailor.paginators.ListVodSourcesPublisher publisher = client.listVodSourcesPaginator(request);
     * publisher.subscribe(new Subscriber() {
     * 
     * public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
     * 
     * 
     * public void onNext(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesResponse response) { //... };
     * });}
     *  
     * 
     * As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.
     * 
     * Please notice that the configuration of MaxResults won't limit the number of results you get with the
     * paginator. It only limits the number of results in each page.
     * 
     * 
     * Note: If you prefer to have control on service calls, use the
     * {@link #listVodSources(software.amazon.awssdk.services.mediatailor.model.ListVodSourcesRequest)} operation.
     * 
     * 
     * This is a convenience which creates an instance of the {@link ListVodSourcesRequest.Builder} avoiding the need to
     * create one manually via {@link ListVodSourcesRequest#builder()}
     * 
     *
     * @param listVodSourcesRequest
     *        A {@link Consumer} that will call methods on {@link ListVodSourcesRequest.Builder} to create a request.
     * @return A custom publisher that can be subscribed to request a stream of response pages.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.ListVodSources
     * @see AWS
     *      API Documentation
     */
    default ListVodSourcesPublisher listVodSourcesPaginator(Consumer listVodSourcesRequest) {
        return listVodSourcesPaginator(ListVodSourcesRequest.builder().applyMutation(listVodSourcesRequest).build());
    }
    /**
     * 
     * Creates an IAM policy for the channel.
     * 
     *
     * @param putChannelPolicyRequest
     * @return A Java Future containing the result of the PutChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.PutChannelPolicy
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture putChannelPolicy(PutChannelPolicyRequest putChannelPolicyRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Creates an IAM policy for the channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link PutChannelPolicyRequest.Builder} avoiding the need
     * to create one manually via {@link PutChannelPolicyRequest#builder()}
     * 
     *
     * @param putChannelPolicyRequest
     *        A {@link Consumer} that will call methods on {@link PutChannelPolicyRequest.Builder} to create a request.
     * @return A Java Future containing the result of the PutChannelPolicy operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.PutChannelPolicy
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture putChannelPolicy(
            Consumer putChannelPolicyRequest) {
        return putChannelPolicy(PutChannelPolicyRequest.builder().applyMutation(putChannelPolicyRequest).build());
    }
    /**
     * 
     * Adds a new playback configuration to AWS Elemental MediaTailor.
     * 
     *
     * @param putPlaybackConfigurationRequest
     * @return A Java Future containing the result of the PutPlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.PutPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture putPlaybackConfiguration(
            PutPlaybackConfigurationRequest putPlaybackConfigurationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Adds a new playback configuration to AWS Elemental MediaTailor.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link PutPlaybackConfigurationRequest.Builder} avoiding
     * the need to create one manually via {@link PutPlaybackConfigurationRequest#builder()}
     * 
     *
     * @param putPlaybackConfigurationRequest
     *        A {@link Consumer} that will call methods on {@link PutPlaybackConfigurationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the PutPlaybackConfiguration operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.PutPlaybackConfiguration
     * @see AWS API Documentation
     */
    default CompletableFuture putPlaybackConfiguration(
            Consumer putPlaybackConfigurationRequest) {
        return putPlaybackConfiguration(PutPlaybackConfigurationRequest.builder().applyMutation(putPlaybackConfigurationRequest)
                .build());
    }
    /**
     * 
     * Starts a specific channel.
     * 
     *
     * @param startChannelRequest
     * @return A Java Future containing the result of the StartChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.StartChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture startChannel(StartChannelRequest startChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Starts a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link StartChannelRequest.Builder} avoiding the need to
     * create one manually via {@link StartChannelRequest#builder()}
     * 
     *
     * @param startChannelRequest
     *        A {@link Consumer} that will call methods on {@link StartChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the StartChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.StartChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture startChannel(Consumer startChannelRequest) {
        return startChannel(StartChannelRequest.builder().applyMutation(startChannelRequest).build());
    }
    /**
     * 
     * Stops a specific channel.
     * 
     *
     * @param stopChannelRequest
     * @return A Java Future containing the result of the StopChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.StopChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture stopChannel(StopChannelRequest stopChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Stops a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link StopChannelRequest.Builder} avoiding the need to
     * create one manually via {@link StopChannelRequest#builder()}
     * 
     *
     * @param stopChannelRequest
     *        A {@link Consumer} that will call methods on {@link StopChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the StopChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.StopChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture stopChannel(Consumer stopChannelRequest) {
        return stopChannel(StopChannelRequest.builder().applyMutation(stopChannelRequest).build());
    }
    /**
     * 
     * Adds tags to the specified playback configuration resource. You can specify one or more tags to add.
     * 
     *
     * @param tagResourceRequest
     * @return A Java Future containing the result of the TagResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.TagResource
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture tagResource(TagResourceRequest tagResourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Adds tags to the specified playback configuration resource. You can specify one or more tags to add.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link TagResourceRequest.Builder} avoiding the need to
     * create one manually via {@link TagResourceRequest#builder()}
     * 
     *
     * @param tagResourceRequest
     *        A {@link Consumer} that will call methods on {@link TagResourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the TagResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.TagResource
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture tagResource(Consumer tagResourceRequest) {
        return tagResource(TagResourceRequest.builder().applyMutation(tagResourceRequest).build());
    }
    /**
     * 
     * Removes tags from the specified playback configuration resource. You can specify one or more tags to remove.
     * 
     *
     * @param untagResourceRequest
     * @return A Java Future containing the result of the UntagResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UntagResource
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture untagResource(UntagResourceRequest untagResourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Removes tags from the specified playback configuration resource. You can specify one or more tags to remove.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link UntagResourceRequest.Builder} avoiding the need to
     * create one manually via {@link UntagResourceRequest#builder()}
     * 
     *
     * @param untagResourceRequest
     *        A {@link Consumer} that will call methods on {@link UntagResourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the UntagResource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - BadRequestException One or more parameters in this request aren't valid.*
- SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UntagResource
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture untagResource(Consumer untagResourceRequest) {
        return untagResource(UntagResourceRequest.builder().applyMutation(untagResourceRequest).build());
    }
    /**
     * 
     * Updates an existing channel.
     * 
     *
     * @param updateChannelRequest
     * @return A Java Future containing the result of the UpdateChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture updateChannel(UpdateChannelRequest updateChannelRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Updates an existing channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link UpdateChannelRequest.Builder} avoiding the need to
     * create one manually via {@link UpdateChannelRequest#builder()}
     * 
     *
     * @param updateChannelRequest
     *        A {@link Consumer} that will call methods on {@link UpdateChannelRequest.Builder} to create a request.
     * @return A Java Future containing the result of the UpdateChannel operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateChannel
     * @see AWS API
     *      Documentation
     */
    default CompletableFuture updateChannel(Consumer updateChannelRequest) {
        return updateChannel(UpdateChannelRequest.builder().applyMutation(updateChannelRequest).build());
    }
    /**
     * 
     * Updates a specific live source in a specific source location.
     * 
     *
     * @param updateLiveSourceRequest
     * @return A Java Future containing the result of the UpdateLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture updateLiveSource(UpdateLiveSourceRequest updateLiveSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Updates a specific live source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link UpdateLiveSourceRequest.Builder} avoiding the need
     * to create one manually via {@link UpdateLiveSourceRequest#builder()}
     * 
     *
     * @param updateLiveSourceRequest
     *        A {@link Consumer} that will call methods on {@link UpdateLiveSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the UpdateLiveSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateLiveSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture updateLiveSource(
            Consumer updateLiveSourceRequest) {
        return updateLiveSource(UpdateLiveSourceRequest.builder().applyMutation(updateLiveSourceRequest).build());
    }
    /**
     * 
     * Updates a source location on a specific channel.
     * 
     *
     * @param updateSourceLocationRequest
     * @return A Java Future containing the result of the UpdateSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture updateSourceLocation(
            UpdateSourceLocationRequest updateSourceLocationRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Updates a source location on a specific channel.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link UpdateSourceLocationRequest.Builder} avoiding the
     * need to create one manually via {@link UpdateSourceLocationRequest#builder()}
     * 
     *
     * @param updateSourceLocationRequest
     *        A {@link Consumer} that will call methods on {@link UpdateSourceLocationRequest.Builder} to create a
     *        request.
     * @return A Java Future containing the result of the UpdateSourceLocation operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateSourceLocation
     * @see AWS API Documentation
     */
    default CompletableFuture updateSourceLocation(
            Consumer updateSourceLocationRequest) {
        return updateSourceLocation(UpdateSourceLocationRequest.builder().applyMutation(updateSourceLocationRequest).build());
    }
    /**
     * 
     * Updates a specific VOD source in a specific source location.
     * 
     *
     * @param updateVodSourceRequest
     * @return A Java Future containing the result of the UpdateVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture updateVodSource(UpdateVodSourceRequest updateVodSourceRequest) {
        throw new UnsupportedOperationException();
    }
    /**
     * 
     * Updates a specific VOD source in a specific source location.
     * 
     * 
     * 
     * This is a convenience which creates an instance of the {@link UpdateVodSourceRequest.Builder} avoiding the need
     * to create one manually via {@link UpdateVodSourceRequest#builder()}
     * 
     *
     * @param updateVodSourceRequest
     *        A {@link Consumer} that will call methods on {@link UpdateVodSourceRequest.Builder} to create a request.
     * @return A Java Future containing the result of the UpdateVodSource operation returned by the service.
     *         The CompletableFuture returned by this method can be completed exceptionally with the following
     *         exceptions.
     *         
     *         - SdkException Base class for all exceptions that can be thrown by the SDK (both service and client).
     *         Can be used for catch all scenarios.*
- SdkClientException If any client side error occurs such as an IO related failure, failure to get
     *         credentials, etc.*
- MediaTailorException Base class for all service exceptions. Unknown exceptions will be thrown as an
     *         instance of this type.*
* @sample MediaTailorAsyncClient.UpdateVodSource
     * @see AWS
     *      API Documentation
     */
    default CompletableFuture updateVodSource(
            Consumer updateVodSourceRequest) {
        return updateVodSource(UpdateVodSourceRequest.builder().applyMutation(updateVodSourceRequest).build());
    }
}