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

The parameters required to set up enrichment on your pipe.

See * Also:

AWS * API Reference

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

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline const PipeEnrichmentHttpParameters& GetHttpParameters() const{ return m_httpParameters; } /** *

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline bool HttpParametersHasBeenSet() const { return m_httpParametersHasBeenSet; } /** *

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline void SetHttpParameters(const PipeEnrichmentHttpParameters& value) { m_httpParametersHasBeenSet = true; m_httpParameters = value; } /** *

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline void SetHttpParameters(PipeEnrichmentHttpParameters&& value) { m_httpParametersHasBeenSet = true; m_httpParameters = std::move(value); } /** *

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline PipeEnrichmentParameters& WithHttpParameters(const PipeEnrichmentHttpParameters& value) { SetHttpParameters(value); return *this;} /** *

Contains the HTTP parameters to use when the target is a API Gateway REST * endpoint or EventBridge ApiDestination.

If you specify an API Gateway * REST API or EventBridge ApiDestination as a target, you can use this parameter * to specify headers, path parameters, and query string keys/values as part of * your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting * keys, values from the Connection take precedence.

*/ inline PipeEnrichmentParameters& WithHttpParameters(PipeEnrichmentHttpParameters&& value) { SetHttpParameters(std::move(value)); return *this;} /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline const Aws::String& GetInputTemplate() const{ return m_inputTemplate; } /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline bool InputTemplateHasBeenSet() const { return m_inputTemplateHasBeenSet; } /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline void SetInputTemplate(const Aws::String& value) { m_inputTemplateHasBeenSet = true; m_inputTemplate = value; } /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline void SetInputTemplate(Aws::String&& value) { m_inputTemplateHasBeenSet = true; m_inputTemplate = std::move(value); } /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline void SetInputTemplate(const char* value) { m_inputTemplateHasBeenSet = true; m_inputTemplate.assign(value); } /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline PipeEnrichmentParameters& WithInputTemplate(const Aws::String& value) { SetInputTemplate(value); return *this;} /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline PipeEnrichmentParameters& WithInputTemplate(Aws::String&& value) { SetInputTemplate(std::move(value)); return *this;} /** *

Valid JSON text passed to the enrichment. In this case, nothing from the * event itself is passed to the enrichment. For more information, see The JavaScript Object Notation * (JSON) Data Interchange Format.

*/ inline PipeEnrichmentParameters& WithInputTemplate(const char* value) { SetInputTemplate(value); return *this;} private: PipeEnrichmentHttpParameters m_httpParameters; bool m_httpParametersHasBeenSet = false; Aws::String m_inputTemplate; bool m_inputTemplateHasBeenSet = false; }; } // namespace Model } // namespace Pipes } // namespace Aws