/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace MediaLive { namespace Model { /** * Channel class that the channel should be updated to.

See Also:

AWS * API Reference

*/ class UpdateChannelClassRequest : public MediaLiveRequest { public: AWS_MEDIALIVE_API UpdateChannelClassRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateChannelClass"; } AWS_MEDIALIVE_API Aws::String SerializePayload() const override; /** * The channel class that you wish to update this channel to use. */ inline const ChannelClass& GetChannelClass() const{ return m_channelClass; } /** * The channel class that you wish to update this channel to use. */ inline bool ChannelClassHasBeenSet() const { return m_channelClassHasBeenSet; } /** * The channel class that you wish to update this channel to use. */ inline void SetChannelClass(const ChannelClass& value) { m_channelClassHasBeenSet = true; m_channelClass = value; } /** * The channel class that you wish to update this channel to use. */ inline void SetChannelClass(ChannelClass&& value) { m_channelClassHasBeenSet = true; m_channelClass = std::move(value); } /** * The channel class that you wish to update this channel to use. */ inline UpdateChannelClassRequest& WithChannelClass(const ChannelClass& value) { SetChannelClass(value); return *this;} /** * The channel class that you wish to update this channel to use. */ inline UpdateChannelClassRequest& WithChannelClass(ChannelClass&& value) { SetChannelClass(std::move(value)); return *this;} /** * Channel Id of the channel whose class should be updated. */ inline const Aws::String& GetChannelId() const{ return m_channelId; } /** * Channel Id of the channel whose class should be updated. */ inline bool ChannelIdHasBeenSet() const { return m_channelIdHasBeenSet; } /** * Channel Id of the channel whose class should be updated. */ inline void SetChannelId(const Aws::String& value) { m_channelIdHasBeenSet = true; m_channelId = value; } /** * Channel Id of the channel whose class should be updated. */ inline void SetChannelId(Aws::String&& value) { m_channelIdHasBeenSet = true; m_channelId = std::move(value); } /** * Channel Id of the channel whose class should be updated. */ inline void SetChannelId(const char* value) { m_channelIdHasBeenSet = true; m_channelId.assign(value); } /** * Channel Id of the channel whose class should be updated. */ inline UpdateChannelClassRequest& WithChannelId(const Aws::String& value) { SetChannelId(value); return *this;} /** * Channel Id of the channel whose class should be updated. */ inline UpdateChannelClassRequest& WithChannelId(Aws::String&& value) { SetChannelId(std::move(value)); return *this;} /** * Channel Id of the channel whose class should be updated. */ inline UpdateChannelClassRequest& WithChannelId(const char* value) { SetChannelId(value); return *this;} /** * A list of output destinations for this channel. */ inline const Aws::Vector& GetDestinations() const{ return m_destinations; } /** * A list of output destinations for this channel. */ inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; } /** * A list of output destinations for this channel. */ inline void SetDestinations(const Aws::Vector& value) { m_destinationsHasBeenSet = true; m_destinations = value; } /** * A list of output destinations for this channel. */ inline void SetDestinations(Aws::Vector&& value) { m_destinationsHasBeenSet = true; m_destinations = std::move(value); } /** * A list of output destinations for this channel. */ inline UpdateChannelClassRequest& WithDestinations(const Aws::Vector& value) { SetDestinations(value); return *this;} /** * A list of output destinations for this channel. */ inline UpdateChannelClassRequest& WithDestinations(Aws::Vector&& value) { SetDestinations(std::move(value)); return *this;} /** * A list of output destinations for this channel. */ inline UpdateChannelClassRequest& AddDestinations(const OutputDestination& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(value); return *this; } /** * A list of output destinations for this channel. */ inline UpdateChannelClassRequest& AddDestinations(OutputDestination&& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(std::move(value)); return *this; } private: ChannelClass m_channelClass; bool m_channelClassHasBeenSet = false; Aws::String m_channelId; bool m_channelIdHasBeenSet = false; Aws::Vector m_destinations; bool m_destinationsHasBeenSet = false; }; } // namespace Model } // namespace MediaLive } // namespace Aws