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

Describes a field in a generic data schema.

See Also:

AWS * API Reference

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

The data type for the generic data field.

*/ inline const CodegenGenericDataFieldDataType& GetDataType() const{ return m_dataType; } /** *

The data type for the generic data field.

*/ inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; } /** *

The data type for the generic data field.

*/ inline void SetDataType(const CodegenGenericDataFieldDataType& value) { m_dataTypeHasBeenSet = true; m_dataType = value; } /** *

The data type for the generic data field.

*/ inline void SetDataType(CodegenGenericDataFieldDataType&& value) { m_dataTypeHasBeenSet = true; m_dataType = std::move(value); } /** *

The data type for the generic data field.

*/ inline CodegenGenericDataField& WithDataType(const CodegenGenericDataFieldDataType& value) { SetDataType(value); return *this;} /** *

The data type for the generic data field.

*/ inline CodegenGenericDataField& WithDataType(CodegenGenericDataFieldDataType&& value) { SetDataType(std::move(value)); return *this;} /** *

The value of the data type for the generic data field.

*/ inline const Aws::String& GetDataTypeValue() const{ return m_dataTypeValue; } /** *

The value of the data type for the generic data field.

*/ inline bool DataTypeValueHasBeenSet() const { return m_dataTypeValueHasBeenSet; } /** *

The value of the data type for the generic data field.

*/ inline void SetDataTypeValue(const Aws::String& value) { m_dataTypeValueHasBeenSet = true; m_dataTypeValue = value; } /** *

The value of the data type for the generic data field.

*/ inline void SetDataTypeValue(Aws::String&& value) { m_dataTypeValueHasBeenSet = true; m_dataTypeValue = std::move(value); } /** *

The value of the data type for the generic data field.

*/ inline void SetDataTypeValue(const char* value) { m_dataTypeValueHasBeenSet = true; m_dataTypeValue.assign(value); } /** *

The value of the data type for the generic data field.

*/ inline CodegenGenericDataField& WithDataTypeValue(const Aws::String& value) { SetDataTypeValue(value); return *this;} /** *

The value of the data type for the generic data field.

*/ inline CodegenGenericDataField& WithDataTypeValue(Aws::String&& value) { SetDataTypeValue(std::move(value)); return *this;} /** *

The value of the data type for the generic data field.

*/ inline CodegenGenericDataField& WithDataTypeValue(const char* value) { SetDataTypeValue(value); return *this;} /** *

Specifies whether the generic data field is required.

*/ inline bool GetRequired() const{ return m_required; } /** *

Specifies whether the generic data field is required.

*/ inline bool RequiredHasBeenSet() const { return m_requiredHasBeenSet; } /** *

Specifies whether the generic data field is required.

*/ inline void SetRequired(bool value) { m_requiredHasBeenSet = true; m_required = value; } /** *

Specifies whether the generic data field is required.

*/ inline CodegenGenericDataField& WithRequired(bool value) { SetRequired(value); return *this;} /** *

Specifies whether the generic data field is read-only.

*/ inline bool GetReadOnly() const{ return m_readOnly; } /** *

Specifies whether the generic data field is read-only.

*/ inline bool ReadOnlyHasBeenSet() const { return m_readOnlyHasBeenSet; } /** *

Specifies whether the generic data field is read-only.

*/ inline void SetReadOnly(bool value) { m_readOnlyHasBeenSet = true; m_readOnly = value; } /** *

Specifies whether the generic data field is read-only.

*/ inline CodegenGenericDataField& WithReadOnly(bool value) { SetReadOnly(value); return *this;} /** *

Specifies whether the generic data field is an array.

*/ inline bool GetIsArray() const{ return m_isArray; } /** *

Specifies whether the generic data field is an array.

*/ inline bool IsArrayHasBeenSet() const { return m_isArrayHasBeenSet; } /** *

Specifies whether the generic data field is an array.

*/ inline void SetIsArray(bool value) { m_isArrayHasBeenSet = true; m_isArray = value; } /** *

Specifies whether the generic data field is an array.

*/ inline CodegenGenericDataField& WithIsArray(bool value) { SetIsArray(value); return *this;} /** *

The relationship of the generic data schema.

*/ inline const CodegenGenericDataRelationshipType& GetRelationship() const{ return m_relationship; } /** *

The relationship of the generic data schema.

*/ inline bool RelationshipHasBeenSet() const { return m_relationshipHasBeenSet; } /** *

The relationship of the generic data schema.

*/ inline void SetRelationship(const CodegenGenericDataRelationshipType& value) { m_relationshipHasBeenSet = true; m_relationship = value; } /** *

The relationship of the generic data schema.

*/ inline void SetRelationship(CodegenGenericDataRelationshipType&& value) { m_relationshipHasBeenSet = true; m_relationship = std::move(value); } /** *

The relationship of the generic data schema.

*/ inline CodegenGenericDataField& WithRelationship(const CodegenGenericDataRelationshipType& value) { SetRelationship(value); return *this;} /** *

The relationship of the generic data schema.

*/ inline CodegenGenericDataField& WithRelationship(CodegenGenericDataRelationshipType&& value) { SetRelationship(std::move(value)); return *this;} private: CodegenGenericDataFieldDataType m_dataType; bool m_dataTypeHasBeenSet = false; Aws::String m_dataTypeValue; bool m_dataTypeValueHasBeenSet = false; bool m_required; bool m_requiredHasBeenSet = false; bool m_readOnly; bool m_readOnlyHasBeenSet = false; bool m_isArray; bool m_isArrayHasBeenSet = false; CodegenGenericDataRelationshipType m_relationship; bool m_relationshipHasBeenSet = false; }; } // namespace Model } // namespace AmplifyUIBuilder } // namespace Aws