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

A specification for an environment configuration.

See Also:

* AWS * API Reference

*/ class SourceConfiguration { public: AWS_ELASTICBEANSTALK_API SourceConfiguration(); AWS_ELASTICBEANSTALK_API SourceConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICBEANSTALK_API SourceConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICBEANSTALK_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_ELASTICBEANSTALK_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The name of the application associated with the configuration.

*/ inline const Aws::String& GetApplicationName() const{ return m_applicationName; } /** *

The name of the application associated with the configuration.

*/ inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; } /** *

The name of the application associated with the configuration.

*/ inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; } /** *

The name of the application associated with the configuration.

*/ inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); } /** *

The name of the application associated with the configuration.

*/ inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); } /** *

The name of the application associated with the configuration.

*/ inline SourceConfiguration& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;} /** *

The name of the application associated with the configuration.

*/ inline SourceConfiguration& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;} /** *

The name of the application associated with the configuration.

*/ inline SourceConfiguration& WithApplicationName(const char* value) { SetApplicationName(value); return *this;} /** *

The name of the configuration template.

*/ inline const Aws::String& GetTemplateName() const{ return m_templateName; } /** *

The name of the configuration template.

*/ inline bool TemplateNameHasBeenSet() const { return m_templateNameHasBeenSet; } /** *

The name of the configuration template.

*/ inline void SetTemplateName(const Aws::String& value) { m_templateNameHasBeenSet = true; m_templateName = value; } /** *

The name of the configuration template.

*/ inline void SetTemplateName(Aws::String&& value) { m_templateNameHasBeenSet = true; m_templateName = std::move(value); } /** *

The name of the configuration template.

*/ inline void SetTemplateName(const char* value) { m_templateNameHasBeenSet = true; m_templateName.assign(value); } /** *

The name of the configuration template.

*/ inline SourceConfiguration& WithTemplateName(const Aws::String& value) { SetTemplateName(value); return *this;} /** *

The name of the configuration template.

*/ inline SourceConfiguration& WithTemplateName(Aws::String&& value) { SetTemplateName(std::move(value)); return *this;} /** *

The name of the configuration template.

*/ inline SourceConfiguration& WithTemplateName(const char* value) { SetTemplateName(value); return *this;} private: Aws::String m_applicationName; bool m_applicationNameHasBeenSet = false; Aws::String m_templateName; bool m_templateNameHasBeenSet = false; }; } // namespace Model } // namespace ElasticBeanstalk } // namespace Aws