/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AmplifyUIBuilder { namespace Model { /** *

Represents the data binding configuration for a value map.

See * Also:

AWS * API Reference

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

The value and display value pairs.

*/ inline const Aws::Vector& GetValues() const{ return m_values; } /** *

The value and display value pairs.

*/ inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; } /** *

The value and display value pairs.

*/ inline void SetValues(const Aws::Vector& value) { m_valuesHasBeenSet = true; m_values = value; } /** *

The value and display value pairs.

*/ inline void SetValues(Aws::Vector&& value) { m_valuesHasBeenSet = true; m_values = std::move(value); } /** *

The value and display value pairs.

*/ inline ValueMappings& WithValues(const Aws::Vector& value) { SetValues(value); return *this;} /** *

The value and display value pairs.

*/ inline ValueMappings& WithValues(Aws::Vector&& value) { SetValues(std::move(value)); return *this;} /** *

The value and display value pairs.

*/ inline ValueMappings& AddValues(const ValueMapping& value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; } /** *

The value and display value pairs.

*/ inline ValueMappings& AddValues(ValueMapping&& value) { m_valuesHasBeenSet = true; m_values.push_back(std::move(value)); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline const Aws::Map& GetBindingProperties() const{ return m_bindingProperties; } /** *

The information to bind fields to data at runtime.

*/ inline bool BindingPropertiesHasBeenSet() const { return m_bindingPropertiesHasBeenSet; } /** *

The information to bind fields to data at runtime.

*/ inline void SetBindingProperties(const Aws::Map& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties = value; } /** *

The information to bind fields to data at runtime.

*/ inline void SetBindingProperties(Aws::Map&& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties = std::move(value); } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& WithBindingProperties(const Aws::Map& value) { SetBindingProperties(value); return *this;} /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& WithBindingProperties(Aws::Map&& value) { SetBindingProperties(std::move(value)); return *this;} /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(const Aws::String& key, const FormInputBindingPropertiesValue& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(key, value); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(Aws::String&& key, const FormInputBindingPropertiesValue& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(std::move(key), value); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(const Aws::String& key, FormInputBindingPropertiesValue&& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(key, std::move(value)); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(Aws::String&& key, FormInputBindingPropertiesValue&& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(std::move(key), std::move(value)); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(const char* key, FormInputBindingPropertiesValue&& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(key, std::move(value)); return *this; } /** *

The information to bind fields to data at runtime.

*/ inline ValueMappings& AddBindingProperties(const char* key, const FormInputBindingPropertiesValue& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties.emplace(key, value); return *this; } private: Aws::Vector m_values; bool m_valuesHasBeenSet = false; Aws::Map m_bindingProperties; bool m_bindingPropertiesHasBeenSet = false; }; } // namespace Model } // namespace AmplifyUIBuilder } // namespace Aws