/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace LexModelsV2 { namespace Model { /** */ class StartImportRequest : public LexModelsV2Request { public: AWS_LEXMODELSV2_API StartImportRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartImport"; } AWS_LEXMODELSV2_API Aws::String SerializePayload() const override; /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline const Aws::String& GetImportId() const{ return m_importId; } /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline bool ImportIdHasBeenSet() const { return m_importIdHasBeenSet; } /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline void SetImportId(const Aws::String& value) { m_importIdHasBeenSet = true; m_importId = value; } /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline void SetImportId(Aws::String&& value) { m_importIdHasBeenSet = true; m_importId = std::move(value); } /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline void SetImportId(const char* value) { m_importIdHasBeenSet = true; m_importId.assign(value); } /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline StartImportRequest& WithImportId(const Aws::String& value) { SetImportId(value); return *this;} /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline StartImportRequest& WithImportId(Aws::String&& value) { SetImportId(std::move(value)); return *this;} /** *

The unique identifier for the import. It is included in the response from the * CreateUploadUrl * operation.

*/ inline StartImportRequest& WithImportId(const char* value) { SetImportId(value); return *this;} /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline const ImportResourceSpecification& GetResourceSpecification() const{ return m_resourceSpecification; } /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline bool ResourceSpecificationHasBeenSet() const { return m_resourceSpecificationHasBeenSet; } /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline void SetResourceSpecification(const ImportResourceSpecification& value) { m_resourceSpecificationHasBeenSet = true; m_resourceSpecification = value; } /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline void SetResourceSpecification(ImportResourceSpecification&& value) { m_resourceSpecificationHasBeenSet = true; m_resourceSpecification = std::move(value); } /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline StartImportRequest& WithResourceSpecification(const ImportResourceSpecification& value) { SetResourceSpecification(value); return *this;} /** *

Parameters for creating the bot, bot locale or custom vocabulary.

*/ inline StartImportRequest& WithResourceSpecification(ImportResourceSpecification&& value) { SetResourceSpecification(std::move(value)); return *this;} /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline const MergeStrategy& GetMergeStrategy() const{ return m_mergeStrategy; } /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline bool MergeStrategyHasBeenSet() const { return m_mergeStrategyHasBeenSet; } /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline void SetMergeStrategy(const MergeStrategy& value) { m_mergeStrategyHasBeenSet = true; m_mergeStrategy = value; } /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline void SetMergeStrategy(MergeStrategy&& value) { m_mergeStrategyHasBeenSet = true; m_mergeStrategy = std::move(value); } /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline StartImportRequest& WithMergeStrategy(const MergeStrategy& value) { SetMergeStrategy(value); return *this;} /** *

The strategy to use when there is a name conflict between the imported * resource and an existing resource. When the merge strategy is * FailOnConflict existing resources are not overwritten and the * import fails.

*/ inline StartImportRequest& WithMergeStrategy(MergeStrategy&& value) { SetMergeStrategy(std::move(value)); return *this;} /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline const Aws::String& GetFilePassword() const{ return m_filePassword; } /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline bool FilePasswordHasBeenSet() const { return m_filePasswordHasBeenSet; } /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline void SetFilePassword(const Aws::String& value) { m_filePasswordHasBeenSet = true; m_filePassword = value; } /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline void SetFilePassword(Aws::String&& value) { m_filePasswordHasBeenSet = true; m_filePassword = std::move(value); } /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline void SetFilePassword(const char* value) { m_filePasswordHasBeenSet = true; m_filePassword.assign(value); } /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline StartImportRequest& WithFilePassword(const Aws::String& value) { SetFilePassword(value); return *this;} /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline StartImportRequest& WithFilePassword(Aws::String&& value) { SetFilePassword(std::move(value)); return *this;} /** *

The password used to encrypt the zip archive that contains the resource * definition. You should always encrypt the zip archive to protect it during * transit between your site and Amazon Lex.

*/ inline StartImportRequest& WithFilePassword(const char* value) { SetFilePassword(value); return *this;} private: Aws::String m_importId; bool m_importIdHasBeenSet = false; ImportResourceSpecification m_resourceSpecification; bool m_resourceSpecificationHasBeenSet = false; MergeStrategy m_mergeStrategy; bool m_mergeStrategyHasBeenSet = false; Aws::String m_filePassword; bool m_filePasswordHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws