/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the configuration for a launch permission. The launch permission
* modification request is sent to the EC2
* ModifyImageAttribute API on behalf of the user for each Region they have
* selected to distribute the AMI. To make an AMI public, set the launch permission
* authorized accounts to all. See the examples for making an AMI
* public at EC2
* ModifyImageAttribute. See Also:
AWS
* API Reference
The AWS account ID.
*/ inline const Aws::VectorThe AWS account ID.
*/ inline bool UserIdsHasBeenSet() const { return m_userIdsHasBeenSet; } /** *The AWS account ID.
*/ inline void SetUserIds(const Aws::VectorThe AWS account ID.
*/ inline void SetUserIds(Aws::VectorThe AWS account ID.
*/ inline LaunchPermissionConfiguration& WithUserIds(const Aws::VectorThe AWS account ID.
*/ inline LaunchPermissionConfiguration& WithUserIds(Aws::VectorThe AWS account ID.
*/ inline LaunchPermissionConfiguration& AddUserIds(const Aws::String& value) { m_userIdsHasBeenSet = true; m_userIds.push_back(value); return *this; } /** *The AWS account ID.
*/ inline LaunchPermissionConfiguration& AddUserIds(Aws::String&& value) { m_userIdsHasBeenSet = true; m_userIds.push_back(std::move(value)); return *this; } /** *The AWS account ID.
*/ inline LaunchPermissionConfiguration& AddUserIds(const char* value) { m_userIdsHasBeenSet = true; m_userIds.push_back(value); return *this; } /** *The name of the group.
*/ inline const Aws::VectorThe name of the group.
*/ inline bool UserGroupsHasBeenSet() const { return m_userGroupsHasBeenSet; } /** *The name of the group.
*/ inline void SetUserGroups(const Aws::VectorThe name of the group.
*/ inline void SetUserGroups(Aws::VectorThe name of the group.
*/ inline LaunchPermissionConfiguration& WithUserGroups(const Aws::VectorThe name of the group.
*/ inline LaunchPermissionConfiguration& WithUserGroups(Aws::VectorThe name of the group.
*/ inline LaunchPermissionConfiguration& AddUserGroups(const Aws::String& value) { m_userGroupsHasBeenSet = true; m_userGroups.push_back(value); return *this; } /** *The name of the group.
*/ inline LaunchPermissionConfiguration& AddUserGroups(Aws::String&& value) { m_userGroupsHasBeenSet = true; m_userGroups.push_back(std::move(value)); return *this; } /** *The name of the group.
*/ inline LaunchPermissionConfiguration& AddUserGroups(const char* value) { m_userGroupsHasBeenSet = true; m_userGroups.push_back(value); return *this; } private: Aws::Vector