/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Amazon EMR releases 4.x or later. An optional
* configuration specification to be used when provisioning cluster instances,
* which can include configurations for applications and software bundled with
* Amazon EMR. A configuration consists of a classification, properties, and
* optional nested configurations. A classification refers to an
* application-specific configuration file. Properties are the settings you want to
* change in that file. For more information, see Configuring
* Applications.See Also:
AWS
* API Reference
The classification within a configuration.
*/ inline const Aws::String& GetClassification() const{ return m_classification; } /** *The classification within a configuration.
*/ inline bool ClassificationHasBeenSet() const { return m_classificationHasBeenSet; } /** *The classification within a configuration.
*/ inline void SetClassification(const Aws::String& value) { m_classificationHasBeenSet = true; m_classification = value; } /** *The classification within a configuration.
*/ inline void SetClassification(Aws::String&& value) { m_classificationHasBeenSet = true; m_classification = std::move(value); } /** *The classification within a configuration.
*/ inline void SetClassification(const char* value) { m_classificationHasBeenSet = true; m_classification.assign(value); } /** *The classification within a configuration.
*/ inline Configuration& WithClassification(const Aws::String& value) { SetClassification(value); return *this;} /** *The classification within a configuration.
*/ inline Configuration& WithClassification(Aws::String&& value) { SetClassification(std::move(value)); return *this;} /** *The classification within a configuration.
*/ inline Configuration& WithClassification(const char* value) { SetClassification(value); return *this;} /** *A list of additional configurations to apply within a configuration * object.
*/ inline const Aws::VectorA list of additional configurations to apply within a configuration * object.
*/ inline bool ConfigurationsHasBeenSet() const { return m_configurationsHasBeenSet; } /** *A list of additional configurations to apply within a configuration * object.
*/ inline void SetConfigurations(const Aws::VectorA list of additional configurations to apply within a configuration * object.
*/ inline void SetConfigurations(Aws::VectorA list of additional configurations to apply within a configuration * object.
*/ inline Configuration& WithConfigurations(const Aws::VectorA list of additional configurations to apply within a configuration * object.
*/ inline Configuration& WithConfigurations(Aws::VectorA list of additional configurations to apply within a configuration * object.
*/ inline Configuration& AddConfigurations(const Configuration& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(value); return *this; } /** *A list of additional configurations to apply within a configuration * object.
*/ inline Configuration& AddConfigurations(Configuration&& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(std::move(value)); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline const Aws::MapA set of properties specified within a configuration classification.
*/ inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; } /** *A set of properties specified within a configuration classification.
*/ inline void SetProperties(const Aws::MapA set of properties specified within a configuration classification.
*/ inline void SetProperties(Aws::MapA set of properties specified within a configuration classification.
*/ inline Configuration& WithProperties(const Aws::MapA set of properties specified within a configuration classification.
*/ inline Configuration& WithProperties(Aws::MapA set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(const Aws::String& key, const Aws::String& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, value); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(Aws::String&& key, const Aws::String& value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), value); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(const Aws::String& key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, std::move(value)); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(Aws::String&& key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), std::move(value)); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(const char* key, Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, std::move(value)); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(Aws::String&& key, const char* value) { m_propertiesHasBeenSet = true; m_properties.emplace(std::move(key), value); return *this; } /** *A set of properties specified within a configuration classification.
*/ inline Configuration& AddProperties(const char* key, const char* value) { m_propertiesHasBeenSet = true; m_properties.emplace(key, value); return *this; } private: Aws::String m_classification; bool m_classificationHasBeenSet = false; Aws::Vector