/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace LexModelBuildingService { namespace Model { /** */ class StartImportRequest : public LexModelBuildingServiceRequest { public: AWS_LEXMODELBUILDINGSERVICE_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_LEXMODELBUILDINGSERVICE_API Aws::String SerializePayload() const override; /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline const Aws::Utils::ByteBuffer& GetPayload() const{ return m_payload; } /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline bool PayloadHasBeenSet() const { return m_payloadHasBeenSet; } /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline void SetPayload(const Aws::Utils::ByteBuffer& value) { m_payloadHasBeenSet = true; m_payload = value; } /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline void SetPayload(Aws::Utils::ByteBuffer&& value) { m_payloadHasBeenSet = true; m_payload = std::move(value); } /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline StartImportRequest& WithPayload(const Aws::Utils::ByteBuffer& value) { SetPayload(value); return *this;} /** *

A zip archive in binary format. The archive should contain one file, a JSON * file containing the resource to import. The resource should match the type * specified in the resourceType field.

*/ inline StartImportRequest& WithPayload(Aws::Utils::ByteBuffer&& value) { SetPayload(std::move(value)); return *this;} /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline const ResourceType& GetResourceType() const{ return m_resourceType; } /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline void SetResourceType(const ResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline void SetResourceType(ResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline StartImportRequest& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} /** *

Specifies the type of resource to export. Each resource also exports any * resources that it depends on.

  • A bot exports dependent * intents.

  • An intent exports dependent slot types.

  • *
*/ inline StartImportRequest& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} /** *

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

Specifies the action that the StartImport operation should take * when there is an existing resource with the same name.

  • *

    FAIL_ON_CONFLICT - The import operation is stopped on the first conflict * between a resource in the import file and an existing resource. The name of the * resource causing the conflict is in the failureReason field of the * response to the GetImport operation.

    OVERWRITE_LATEST - The * import operation proceeds even if there is a conflict with an existing resource. * The $LASTEST version of the existing resource is overwritten with the data from * the import file.

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

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline StartImportRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline StartImportRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline StartImportRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

A list of tags to add to the imported bot. You can only add tags when you * import a bot, you can't add tags to an intent or slot type.

*/ inline StartImportRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::Utils::ByteBuffer m_payload; bool m_payloadHasBeenSet = false; ResourceType m_resourceType; bool m_resourceTypeHasBeenSet = false; MergeStrategy m_mergeStrategy; bool m_mergeStrategyHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace LexModelBuildingService } // namespace Aws