/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The market (purchasing) option for the instances.See Also:
* AWS
* API Reference
The market type.
*/ inline const MarketType& GetMarketType() const{ return m_marketType; } /** *The market type.
*/ inline bool MarketTypeHasBeenSet() const { return m_marketTypeHasBeenSet; } /** *The market type.
*/ inline void SetMarketType(const MarketType& value) { m_marketTypeHasBeenSet = true; m_marketType = value; } /** *The market type.
*/ inline void SetMarketType(MarketType&& value) { m_marketTypeHasBeenSet = true; m_marketType = std::move(value); } /** *The market type.
*/ inline LaunchTemplateInstanceMarketOptions& WithMarketType(const MarketType& value) { SetMarketType(value); return *this;} /** *The market type.
*/ inline LaunchTemplateInstanceMarketOptions& WithMarketType(MarketType&& value) { SetMarketType(std::move(value)); return *this;} /** *The options for Spot Instances.
*/ inline const LaunchTemplateSpotMarketOptions& GetSpotOptions() const{ return m_spotOptions; } /** *The options for Spot Instances.
*/ inline bool SpotOptionsHasBeenSet() const { return m_spotOptionsHasBeenSet; } /** *The options for Spot Instances.
*/ inline void SetSpotOptions(const LaunchTemplateSpotMarketOptions& value) { m_spotOptionsHasBeenSet = true; m_spotOptions = value; } /** *The options for Spot Instances.
*/ inline void SetSpotOptions(LaunchTemplateSpotMarketOptions&& value) { m_spotOptionsHasBeenSet = true; m_spotOptions = std::move(value); } /** *The options for Spot Instances.
*/ inline LaunchTemplateInstanceMarketOptions& WithSpotOptions(const LaunchTemplateSpotMarketOptions& value) { SetSpotOptions(value); return *this;} /** *The options for Spot Instances.
*/ inline LaunchTemplateInstanceMarketOptions& WithSpotOptions(LaunchTemplateSpotMarketOptions&& value) { SetSpotOptions(std::move(value)); return *this;} private: MarketType m_marketType; bool m_marketTypeHasBeenSet = false; LaunchTemplateSpotMarketOptions m_spotOptions; bool m_spotOptionsHasBeenSet = false; }; } // namespace Model } // namespace EC2 } // namespace Aws