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

The output configuration.

See Also:

AWS * API Reference

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

The Amazon Simple Storage (S3) bucker URI.

*/ inline const Aws::String& GetS3OutputLocation() const{ return m_s3OutputLocation; } /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline bool S3OutputLocationHasBeenSet() const { return m_s3OutputLocationHasBeenSet; } /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline void SetS3OutputLocation(const Aws::String& value) { m_s3OutputLocationHasBeenSet = true; m_s3OutputLocation = value; } /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline void SetS3OutputLocation(Aws::String&& value) { m_s3OutputLocationHasBeenSet = true; m_s3OutputLocation = std::move(value); } /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline void SetS3OutputLocation(const char* value) { m_s3OutputLocationHasBeenSet = true; m_s3OutputLocation.assign(value); } /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline EdgeOutputConfig& WithS3OutputLocation(const Aws::String& value) { SetS3OutputLocation(value); return *this;} /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline EdgeOutputConfig& WithS3OutputLocation(Aws::String&& value) { SetS3OutputLocation(std::move(value)); return *this;} /** *

The Amazon Simple Storage (S3) bucker URI.

*/ inline EdgeOutputConfig& WithS3OutputLocation(const char* value) { SetS3OutputLocation(value); return *this;} /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline EdgeOutputConfig& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline EdgeOutputConfig& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

The Amazon Web Services Key Management Service (Amazon Web Services KMS) key * that Amazon SageMaker uses to encrypt data on the storage volume after * compilation job. If you don't provide a KMS key ID, Amazon SageMaker uses the * default KMS key for Amazon S3 for your role's account.

*/ inline EdgeOutputConfig& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline const EdgePresetDeploymentType& GetPresetDeploymentType() const{ return m_presetDeploymentType; } /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline bool PresetDeploymentTypeHasBeenSet() const { return m_presetDeploymentTypeHasBeenSet; } /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline void SetPresetDeploymentType(const EdgePresetDeploymentType& value) { m_presetDeploymentTypeHasBeenSet = true; m_presetDeploymentType = value; } /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline void SetPresetDeploymentType(EdgePresetDeploymentType&& value) { m_presetDeploymentTypeHasBeenSet = true; m_presetDeploymentType = std::move(value); } /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline EdgeOutputConfig& WithPresetDeploymentType(const EdgePresetDeploymentType& value) { SetPresetDeploymentType(value); return *this;} /** *

The deployment type SageMaker Edge Manager will create. Currently only * supports Amazon Web Services IoT Greengrass Version 2 components.

*/ inline EdgeOutputConfig& WithPresetDeploymentType(EdgePresetDeploymentType&& value) { SetPresetDeploymentType(std::move(value)); return *this;} /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline const Aws::String& GetPresetDeploymentConfig() const{ return m_presetDeploymentConfig; } /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline bool PresetDeploymentConfigHasBeenSet() const { return m_presetDeploymentConfigHasBeenSet; } /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline void SetPresetDeploymentConfig(const Aws::String& value) { m_presetDeploymentConfigHasBeenSet = true; m_presetDeploymentConfig = value; } /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline void SetPresetDeploymentConfig(Aws::String&& value) { m_presetDeploymentConfigHasBeenSet = true; m_presetDeploymentConfig = std::move(value); } /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline void SetPresetDeploymentConfig(const char* value) { m_presetDeploymentConfigHasBeenSet = true; m_presetDeploymentConfig.assign(value); } /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline EdgeOutputConfig& WithPresetDeploymentConfig(const Aws::String& value) { SetPresetDeploymentConfig(value); return *this;} /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline EdgeOutputConfig& WithPresetDeploymentConfig(Aws::String&& value) { SetPresetDeploymentConfig(std::move(value)); return *this;} /** *

The configuration used to create deployment artifacts. Specify configuration * options with a JSON string. The available configuration options for each type * are:

  • ComponentName (optional) - Name of the * GreenGrass V2 component. If not specified, the default name generated consists * of "SagemakerEdgeManager" and the name of your SageMaker Edge Manager packaging * job.

  • ComponentDescription (optional) - * Description of the component.

  • ComponentVersion * (optional) - The version of the component.

    Amazon Web Services IoT * Greengrass uses semantic versions for components. Semantic versions follow a * major.minor.patch number system. For example, version 1.0.0 represents the * first major release for a component. For more information, see the semantic version specification.

  • *
  • PlatformOS (optional) - The name of the operating system * for the platform. Supported platforms include Windows and Linux.

  • *

    PlatformArchitecture (optional) - The processor architecture * for the platform.

    Supported architectures Windows include: * Windows32_x86, Windows64_x64.

    Supported architectures for Linux include: * Linux x86_64, Linux ARMV8.

*/ inline EdgeOutputConfig& WithPresetDeploymentConfig(const char* value) { SetPresetDeploymentConfig(value); return *this;} private: Aws::String m_s3OutputLocation; bool m_s3OutputLocationHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; EdgePresetDeploymentType m_presetDeploymentType; bool m_presetDeploymentTypeHasBeenSet = false; Aws::String m_presetDeploymentConfig; bool m_presetDeploymentConfigHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws