/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace MediaTailor { namespace Model { /** *

The optional configuration for a server that serves segments. Use this if you * want the segment delivery server to be different from the source location * server. For example, you can configure your source location server to be an * origination server, such as MediaPackage, and the segment delivery server to be * a content delivery network (CDN), such as CloudFront. If you don't specify a * segment delivery server, then the source location server is used.

See * Also:

AWS * API Reference

*/ class DefaultSegmentDeliveryConfiguration { public: AWS_MEDIATAILOR_API DefaultSegmentDeliveryConfiguration(); AWS_MEDIATAILOR_API DefaultSegmentDeliveryConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIATAILOR_API DefaultSegmentDeliveryConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIATAILOR_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline const Aws::String& GetBaseUrl() const{ return m_baseUrl; } /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline bool BaseUrlHasBeenSet() const { return m_baseUrlHasBeenSet; } /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline void SetBaseUrl(const Aws::String& value) { m_baseUrlHasBeenSet = true; m_baseUrl = value; } /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline void SetBaseUrl(Aws::String&& value) { m_baseUrlHasBeenSet = true; m_baseUrl = std::move(value); } /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline void SetBaseUrl(const char* value) { m_baseUrlHasBeenSet = true; m_baseUrl.assign(value); } /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline DefaultSegmentDeliveryConfiguration& WithBaseUrl(const Aws::String& value) { SetBaseUrl(value); return *this;} /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline DefaultSegmentDeliveryConfiguration& WithBaseUrl(Aws::String&& value) { SetBaseUrl(std::move(value)); return *this;} /** *

The hostname of the server that will be used to serve segments. This string * must include the protocol, such as https://.

*/ inline DefaultSegmentDeliveryConfiguration& WithBaseUrl(const char* value) { SetBaseUrl(value); return *this;} private: Aws::String m_baseUrl; bool m_baseUrlHasBeenSet = false; }; } // namespace Model } // namespace MediaTailor } // namespace Aws