/** * 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 CreateExportRequest : public LexModelsV2Request { public: AWS_LEXMODELSV2_API CreateExportRequest(); // 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 "CreateExport"; } AWS_LEXMODELSV2_API Aws::String SerializePayload() const override; /** *

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

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

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

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

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

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

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

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

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

*/ inline CreateExportRequest& WithResourceSpecification(const ExportResourceSpecification& value) { SetResourceSpecification(value); return *this;} /** *

Specifies the type of resource to export, either a bot or a bot locale. You * can only specify one type of resource to export.

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

The file format of the bot or bot locale definition files.

*/ inline const ImportExportFileFormat& GetFileFormat() const{ return m_fileFormat; } /** *

The file format of the bot or bot locale definition files.

*/ inline bool FileFormatHasBeenSet() const { return m_fileFormatHasBeenSet; } /** *

The file format of the bot or bot locale definition files.

*/ inline void SetFileFormat(const ImportExportFileFormat& value) { m_fileFormatHasBeenSet = true; m_fileFormat = value; } /** *

The file format of the bot or bot locale definition files.

*/ inline void SetFileFormat(ImportExportFileFormat&& value) { m_fileFormatHasBeenSet = true; m_fileFormat = std::move(value); } /** *

The file format of the bot or bot locale definition files.

*/ inline CreateExportRequest& WithFileFormat(const ImportExportFileFormat& value) { SetFileFormat(value); return *this;} /** *

The file format of the bot or bot locale definition files.

*/ inline CreateExportRequest& WithFileFormat(ImportExportFileFormat&& value) { SetFileFormat(std::move(value)); return *this;} /** *

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

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

An password to use to encrypt the exported archive. Using a password is * optional, but you should encrypt the archive to protect the data in transit * between Amazon Lex and your local computer.

*/ inline CreateExportRequest& WithFilePassword(const char* value) { SetFilePassword(value); return *this;} private: ExportResourceSpecification m_resourceSpecification; bool m_resourceSpecificationHasBeenSet = false; ImportExportFileFormat m_fileFormat; bool m_fileFormatHasBeenSet = false; Aws::String m_filePassword; bool m_filePasswordHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws