/** * 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 LicenseManager { namespace Model { /** *

The options you can specify when you create a new version of a grant, such as * activation override behavior. For more information, see Granted * licenses in License Manager in the License Manager User * Guide.

See Also:

AWS * API Reference

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

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline const ActivationOverrideBehavior& GetActivationOverrideBehavior() const{ return m_activationOverrideBehavior; } /** *

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline bool ActivationOverrideBehaviorHasBeenSet() const { return m_activationOverrideBehaviorHasBeenSet; } /** *

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline void SetActivationOverrideBehavior(const ActivationOverrideBehavior& value) { m_activationOverrideBehaviorHasBeenSet = true; m_activationOverrideBehavior = value; } /** *

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline void SetActivationOverrideBehavior(ActivationOverrideBehavior&& value) { m_activationOverrideBehaviorHasBeenSet = true; m_activationOverrideBehavior = std::move(value); } /** *

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline Options& WithActivationOverrideBehavior(const ActivationOverrideBehavior& value) { SetActivationOverrideBehavior(value); return *this;} /** *

An activation option for your grant that determines the behavior of * activating a grant. Activation options can only be used with granted licenses * sourced from the Amazon Web Services Marketplace. Additionally, the operation * must specify the value of ACTIVE for the Status * parameter.

  • As a license administrator, you can optionally * specify an ActivationOverrideBehavior when activating a grant.

    *
  • As a grantor, you can optionally specify an * ActivationOverrideBehavior when you activate a grant for a grantee * account in your organization.

  • As a grantee, if the grantor * creating the distributed grant doesn’t specify an * ActivationOverrideBehavior, you can optionally specify one when you * are activating the grant.

DISTRIBUTED_GRANTS_ONLY
*

Use this value to activate a grant without replacing any member * account’s active grants for the same product.

*
ALL_GRANTS_PERMITTED_BY_ISSUER

Use this value to activate a * grant and disable other active grants in any member accounts for the same * product. This action will also replace their previously activated grants with * this activated grant.

*/ inline Options& WithActivationOverrideBehavior(ActivationOverrideBehavior&& value) { SetActivationOverrideBehavior(std::move(value)); return *this;} private: ActivationOverrideBehavior m_activationOverrideBehavior; bool m_activationOverrideBehaviorHasBeenSet = false; }; } // namespace Model } // namespace LicenseManager } // namespace Aws