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

A map of key-value pairs containing the patterns that need to be replaced in * a managed template job document schema. You can use the description of each key * as a guidance to specify the inputs during runtime when creating a job.

*

documentParameters can only be used when creating jobs * from Amazon Web Services managed templates. This parameter can't be used with * custom job templates or to create jobs from them.

See * Also:

AWS * API Reference

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

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline const Aws::String& GetKey() const{ return m_key; } /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; } /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; } /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); } /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); } /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline DocumentParameter& WithKey(const Aws::String& value) { SetKey(value); return *this;} /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline DocumentParameter& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;} /** *

Key of the map field containing the patterns that need to be replaced in a * managed template job document schema.

*/ inline DocumentParameter& WithKey(const char* value) { SetKey(value); return *this;} /** *

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

Description of the map field containing the patterns that need to be replaced * in a managed template job document schema.

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

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline const Aws::String& GetRegex() const{ return m_regex; } /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline bool RegexHasBeenSet() const { return m_regexHasBeenSet; } /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline void SetRegex(const Aws::String& value) { m_regexHasBeenSet = true; m_regex = value; } /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline void SetRegex(Aws::String&& value) { m_regexHasBeenSet = true; m_regex = std::move(value); } /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline void SetRegex(const char* value) { m_regexHasBeenSet = true; m_regex.assign(value); } /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithRegex(const Aws::String& value) { SetRegex(value); return *this;} /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithRegex(Aws::String&& value) { SetRegex(std::move(value)); return *this;} /** *

A regular expression of the patterns that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithRegex(const char* value) { SetRegex(value); return *this;} /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline const Aws::String& GetExample() const{ return m_example; } /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline bool ExampleHasBeenSet() const { return m_exampleHasBeenSet; } /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline void SetExample(const Aws::String& value) { m_exampleHasBeenSet = true; m_example = value; } /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline void SetExample(Aws::String&& value) { m_exampleHasBeenSet = true; m_example = std::move(value); } /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline void SetExample(const char* value) { m_exampleHasBeenSet = true; m_example.assign(value); } /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithExample(const Aws::String& value) { SetExample(value); return *this;} /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithExample(Aws::String&& value) { SetExample(std::move(value)); return *this;} /** *

An example illustrating a pattern that need to be replaced in a managed * template job document schema.

*/ inline DocumentParameter& WithExample(const char* value) { SetExample(value); return *this;} /** *

Specifies whether a pattern that needs to be replaced in a managed template * job document schema is optional or required.

*/ inline bool GetOptional() const{ return m_optional; } /** *

Specifies whether a pattern that needs to be replaced in a managed template * job document schema is optional or required.

*/ inline bool OptionalHasBeenSet() const { return m_optionalHasBeenSet; } /** *

Specifies whether a pattern that needs to be replaced in a managed template * job document schema is optional or required.

*/ inline void SetOptional(bool value) { m_optionalHasBeenSet = true; m_optional = value; } /** *

Specifies whether a pattern that needs to be replaced in a managed template * job document schema is optional or required.

*/ inline DocumentParameter& WithOptional(bool value) { SetOptional(value); return *this;} private: Aws::String m_key; bool m_keyHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_regex; bool m_regexHasBeenSet = false; Aws::String m_example; bool m_exampleHasBeenSet = false; bool m_optional; bool m_optionalHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws