/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Define and configure faster launching for output Windows AMIs.See
* Also:
AWS
* API Reference
A Boolean that represents the current state of faster launching for the
* Windows AMI. Set to true
to start using Windows faster launching,
* or false
to stop using it.
A Boolean that represents the current state of faster launching for the
* Windows AMI. Set to true
to start using Windows faster launching,
* or false
to stop using it.
A Boolean that represents the current state of faster launching for the
* Windows AMI. Set to true
to start using Windows faster launching,
* or false
to stop using it.
A Boolean that represents the current state of faster launching for the
* Windows AMI. Set to true
to start using Windows faster launching,
* or false
to stop using it.
Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline const FastLaunchSnapshotConfiguration& GetSnapshotConfiguration() const{ return m_snapshotConfiguration; } /** *Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline bool SnapshotConfigurationHasBeenSet() const { return m_snapshotConfigurationHasBeenSet; } /** *Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline void SetSnapshotConfiguration(const FastLaunchSnapshotConfiguration& value) { m_snapshotConfigurationHasBeenSet = true; m_snapshotConfiguration = value; } /** *Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline void SetSnapshotConfiguration(FastLaunchSnapshotConfiguration&& value) { m_snapshotConfigurationHasBeenSet = true; m_snapshotConfiguration = std::move(value); } /** *Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline FastLaunchConfiguration& WithSnapshotConfiguration(const FastLaunchSnapshotConfiguration& value) { SetSnapshotConfiguration(value); return *this;} /** *Configuration settings for managing the number of snapshots that are created * from pre-provisioned instances for the Windows AMI when faster launching is * enabled.
*/ inline FastLaunchConfiguration& WithSnapshotConfiguration(FastLaunchSnapshotConfiguration&& value) { SetSnapshotConfiguration(std::move(value)); return *this;} /** *The maximum number of parallel instances that are launched for creating * resources.
*/ inline int GetMaxParallelLaunches() const{ return m_maxParallelLaunches; } /** *The maximum number of parallel instances that are launched for creating * resources.
*/ inline bool MaxParallelLaunchesHasBeenSet() const { return m_maxParallelLaunchesHasBeenSet; } /** *The maximum number of parallel instances that are launched for creating * resources.
*/ inline void SetMaxParallelLaunches(int value) { m_maxParallelLaunchesHasBeenSet = true; m_maxParallelLaunches = value; } /** *The maximum number of parallel instances that are launched for creating * resources.
*/ inline FastLaunchConfiguration& WithMaxParallelLaunches(int value) { SetMaxParallelLaunches(value); return *this;} /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline const FastLaunchLaunchTemplateSpecification& GetLaunchTemplate() const{ return m_launchTemplate; } /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; } /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline void SetLaunchTemplate(const FastLaunchLaunchTemplateSpecification& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = value; } /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline void SetLaunchTemplate(FastLaunchLaunchTemplateSpecification&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::move(value); } /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline FastLaunchConfiguration& WithLaunchTemplate(const FastLaunchLaunchTemplateSpecification& value) { SetLaunchTemplate(value); return *this;} /** *The launch template that the fast-launch enabled Windows AMI uses when it * launches Windows instances to create pre-provisioned snapshots.
*/ inline FastLaunchConfiguration& WithLaunchTemplate(FastLaunchLaunchTemplateSpecification&& value) { SetLaunchTemplate(std::move(value)); return *this;} /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline FastLaunchConfiguration& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline FastLaunchConfiguration& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *The owner account ID for the fast-launch enabled Windows AMI.
*/ inline FastLaunchConfiguration& WithAccountId(const char* value) { SetAccountId(value); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet = false; FastLaunchSnapshotConfiguration m_snapshotConfiguration; bool m_snapshotConfigurationHasBeenSet = false; int m_maxParallelLaunches; bool m_maxParallelLaunchesHasBeenSet = false; FastLaunchLaunchTemplateSpecification m_launchTemplate; bool m_launchTemplateHasBeenSet = false; Aws::String m_accountId; bool m_accountIdHasBeenSet = false; }; } // namespace Model } // namespace imagebuilder } // namespace Aws