/** * 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 { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Glue { namespace Model { class CreateSchemaResult { public: AWS_GLUE_API CreateSchemaResult(); AWS_GLUE_API CreateSchemaResult(const Aws::AmazonWebServiceResult& result); AWS_GLUE_API CreateSchemaResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the registry.

*/ inline const Aws::String& GetRegistryName() const{ return m_registryName; } /** *

The name of the registry.

*/ inline void SetRegistryName(const Aws::String& value) { m_registryName = value; } /** *

The name of the registry.

*/ inline void SetRegistryName(Aws::String&& value) { m_registryName = std::move(value); } /** *

The name of the registry.

*/ inline void SetRegistryName(const char* value) { m_registryName.assign(value); } /** *

The name of the registry.

*/ inline CreateSchemaResult& WithRegistryName(const Aws::String& value) { SetRegistryName(value); return *this;} /** *

The name of the registry.

*/ inline CreateSchemaResult& WithRegistryName(Aws::String&& value) { SetRegistryName(std::move(value)); return *this;} /** *

The name of the registry.

*/ inline CreateSchemaResult& WithRegistryName(const char* value) { SetRegistryName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline const Aws::String& GetRegistryArn() const{ return m_registryArn; } /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline void SetRegistryArn(const Aws::String& value) { m_registryArn = value; } /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline void SetRegistryArn(Aws::String&& value) { m_registryArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline void SetRegistryArn(const char* value) { m_registryArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline CreateSchemaResult& WithRegistryArn(const Aws::String& value) { SetRegistryArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline CreateSchemaResult& WithRegistryArn(Aws::String&& value) { SetRegistryArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the registry.

*/ inline CreateSchemaResult& WithRegistryArn(const char* value) { SetRegistryArn(value); return *this;} /** *

The name of the schema.

*/ inline const Aws::String& GetSchemaName() const{ return m_schemaName; } /** *

The name of the schema.

*/ inline void SetSchemaName(const Aws::String& value) { m_schemaName = value; } /** *

The name of the schema.

*/ inline void SetSchemaName(Aws::String&& value) { m_schemaName = std::move(value); } /** *

The name of the schema.

*/ inline void SetSchemaName(const char* value) { m_schemaName.assign(value); } /** *

The name of the schema.

*/ inline CreateSchemaResult& WithSchemaName(const Aws::String& value) { SetSchemaName(value); return *this;} /** *

The name of the schema.

*/ inline CreateSchemaResult& WithSchemaName(Aws::String&& value) { SetSchemaName(std::move(value)); return *this;} /** *

The name of the schema.

*/ inline CreateSchemaResult& WithSchemaName(const char* value) { SetSchemaName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline const Aws::String& GetSchemaArn() const{ return m_schemaArn; } /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline void SetSchemaArn(const Aws::String& value) { m_schemaArn = value; } /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline void SetSchemaArn(Aws::String&& value) { m_schemaArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline void SetSchemaArn(const char* value) { m_schemaArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline CreateSchemaResult& WithSchemaArn(const Aws::String& value) { SetSchemaArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline CreateSchemaResult& WithSchemaArn(Aws::String&& value) { SetSchemaArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the schema.

*/ inline CreateSchemaResult& WithSchemaArn(const char* value) { SetSchemaArn(value); return *this;} /** *

A description of the schema if specified when created.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description of the schema if specified when created.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

A description of the schema if specified when created.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

A description of the schema if specified when created.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

A description of the schema if specified when created.

*/ inline CreateSchemaResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description of the schema if specified when created.

*/ inline CreateSchemaResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description of the schema if specified when created.

*/ inline CreateSchemaResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The data format of the schema definition. Currently AVRO, * JSON and PROTOBUF are supported.

*/ inline const DataFormat& GetDataFormat() const{ return m_dataFormat; } /** *

The data format of the schema definition. Currently AVRO, * JSON and PROTOBUF are supported.

*/ inline void SetDataFormat(const DataFormat& value) { m_dataFormat = value; } /** *

The data format of the schema definition. Currently AVRO, * JSON and PROTOBUF are supported.

*/ inline void SetDataFormat(DataFormat&& value) { m_dataFormat = std::move(value); } /** *

The data format of the schema definition. Currently AVRO, * JSON and PROTOBUF are supported.

*/ inline CreateSchemaResult& WithDataFormat(const DataFormat& value) { SetDataFormat(value); return *this;} /** *

The data format of the schema definition. Currently AVRO, * JSON and PROTOBUF are supported.

*/ inline CreateSchemaResult& WithDataFormat(DataFormat&& value) { SetDataFormat(std::move(value)); return *this;} /** *

The schema compatibility mode.

*/ inline const Compatibility& GetCompatibility() const{ return m_compatibility; } /** *

The schema compatibility mode.

*/ inline void SetCompatibility(const Compatibility& value) { m_compatibility = value; } /** *

The schema compatibility mode.

*/ inline void SetCompatibility(Compatibility&& value) { m_compatibility = std::move(value); } /** *

The schema compatibility mode.

*/ inline CreateSchemaResult& WithCompatibility(const Compatibility& value) { SetCompatibility(value); return *this;} /** *

The schema compatibility mode.

*/ inline CreateSchemaResult& WithCompatibility(Compatibility&& value) { SetCompatibility(std::move(value)); return *this;} /** *

The version number of the checkpoint (the last time the compatibility mode * was changed).

*/ inline long long GetSchemaCheckpoint() const{ return m_schemaCheckpoint; } /** *

The version number of the checkpoint (the last time the compatibility mode * was changed).

*/ inline void SetSchemaCheckpoint(long long value) { m_schemaCheckpoint = value; } /** *

The version number of the checkpoint (the last time the compatibility mode * was changed).

*/ inline CreateSchemaResult& WithSchemaCheckpoint(long long value) { SetSchemaCheckpoint(value); return *this;} /** *

The latest version of the schema associated with the returned schema * definition.

*/ inline long long GetLatestSchemaVersion() const{ return m_latestSchemaVersion; } /** *

The latest version of the schema associated with the returned schema * definition.

*/ inline void SetLatestSchemaVersion(long long value) { m_latestSchemaVersion = value; } /** *

The latest version of the schema associated with the returned schema * definition.

*/ inline CreateSchemaResult& WithLatestSchemaVersion(long long value) { SetLatestSchemaVersion(value); return *this;} /** *

The next version of the schema associated with the returned schema * definition.

*/ inline long long GetNextSchemaVersion() const{ return m_nextSchemaVersion; } /** *

The next version of the schema associated with the returned schema * definition.

*/ inline void SetNextSchemaVersion(long long value) { m_nextSchemaVersion = value; } /** *

The next version of the schema associated with the returned schema * definition.

*/ inline CreateSchemaResult& WithNextSchemaVersion(long long value) { SetNextSchemaVersion(value); return *this;} /** *

The status of the schema.

*/ inline const SchemaStatus& GetSchemaStatus() const{ return m_schemaStatus; } /** *

The status of the schema.

*/ inline void SetSchemaStatus(const SchemaStatus& value) { m_schemaStatus = value; } /** *

The status of the schema.

*/ inline void SetSchemaStatus(SchemaStatus&& value) { m_schemaStatus = std::move(value); } /** *

The status of the schema.

*/ inline CreateSchemaResult& WithSchemaStatus(const SchemaStatus& value) { SetSchemaStatus(value); return *this;} /** *

The status of the schema.

*/ inline CreateSchemaResult& WithSchemaStatus(SchemaStatus&& value) { SetSchemaStatus(std::move(value)); return *this;} /** *

The tags for the schema.

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

The tags for the schema.

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

The tags for the schema.

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

The tags for the schema.

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

The tags for the schema.

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

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } /** *

The tags for the schema.

*/ inline CreateSchemaResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } /** *

The unique identifier of the first schema version.

*/ inline const Aws::String& GetSchemaVersionId() const{ return m_schemaVersionId; } /** *

The unique identifier of the first schema version.

*/ inline void SetSchemaVersionId(const Aws::String& value) { m_schemaVersionId = value; } /** *

The unique identifier of the first schema version.

*/ inline void SetSchemaVersionId(Aws::String&& value) { m_schemaVersionId = std::move(value); } /** *

The unique identifier of the first schema version.

*/ inline void SetSchemaVersionId(const char* value) { m_schemaVersionId.assign(value); } /** *

The unique identifier of the first schema version.

*/ inline CreateSchemaResult& WithSchemaVersionId(const Aws::String& value) { SetSchemaVersionId(value); return *this;} /** *

The unique identifier of the first schema version.

*/ inline CreateSchemaResult& WithSchemaVersionId(Aws::String&& value) { SetSchemaVersionId(std::move(value)); return *this;} /** *

The unique identifier of the first schema version.

*/ inline CreateSchemaResult& WithSchemaVersionId(const char* value) { SetSchemaVersionId(value); return *this;} /** *

The status of the first schema version created.

*/ inline const SchemaVersionStatus& GetSchemaVersionStatus() const{ return m_schemaVersionStatus; } /** *

The status of the first schema version created.

*/ inline void SetSchemaVersionStatus(const SchemaVersionStatus& value) { m_schemaVersionStatus = value; } /** *

The status of the first schema version created.

*/ inline void SetSchemaVersionStatus(SchemaVersionStatus&& value) { m_schemaVersionStatus = std::move(value); } /** *

The status of the first schema version created.

*/ inline CreateSchemaResult& WithSchemaVersionStatus(const SchemaVersionStatus& value) { SetSchemaVersionStatus(value); return *this;} /** *

The status of the first schema version created.

*/ inline CreateSchemaResult& WithSchemaVersionStatus(SchemaVersionStatus&& value) { SetSchemaVersionStatus(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline CreateSchemaResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CreateSchemaResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CreateSchemaResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_registryName; Aws::String m_registryArn; Aws::String m_schemaName; Aws::String m_schemaArn; Aws::String m_description; DataFormat m_dataFormat; Compatibility m_compatibility; long long m_schemaCheckpoint; long long m_latestSchemaVersion; long long m_nextSchemaVersion; SchemaStatus m_schemaStatus; Aws::Map m_tags; Aws::String m_schemaVersionId; SchemaVersionStatus m_schemaVersionStatus; Aws::String m_requestId; }; } // namespace Model } // namespace Glue } // namespace Aws