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

Describes the configuration of a destination in Splunk.

See * Also:

AWS * API Reference

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

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline const Aws::String& GetHECEndpoint() const{ return m_hECEndpoint; } /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline bool HECEndpointHasBeenSet() const { return m_hECEndpointHasBeenSet; } /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline void SetHECEndpoint(const Aws::String& value) { m_hECEndpointHasBeenSet = true; m_hECEndpoint = value; } /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline void SetHECEndpoint(Aws::String&& value) { m_hECEndpointHasBeenSet = true; m_hECEndpoint = std::move(value); } /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline void SetHECEndpoint(const char* value) { m_hECEndpointHasBeenSet = true; m_hECEndpoint.assign(value); } /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline SplunkDestinationConfiguration& WithHECEndpoint(const Aws::String& value) { SetHECEndpoint(value); return *this;} /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline SplunkDestinationConfiguration& WithHECEndpoint(Aws::String&& value) { SetHECEndpoint(std::move(value)); return *this;} /** *

The HTTP Event Collector (HEC) endpoint to which Kinesis Data Firehose sends * your data.

*/ inline SplunkDestinationConfiguration& WithHECEndpoint(const char* value) { SetHECEndpoint(value); return *this;} /** *

This type can be either "Raw" or "Event."

*/ inline const HECEndpointType& GetHECEndpointType() const{ return m_hECEndpointType; } /** *

This type can be either "Raw" or "Event."

*/ inline bool HECEndpointTypeHasBeenSet() const { return m_hECEndpointTypeHasBeenSet; } /** *

This type can be either "Raw" or "Event."

*/ inline void SetHECEndpointType(const HECEndpointType& value) { m_hECEndpointTypeHasBeenSet = true; m_hECEndpointType = value; } /** *

This type can be either "Raw" or "Event."

*/ inline void SetHECEndpointType(HECEndpointType&& value) { m_hECEndpointTypeHasBeenSet = true; m_hECEndpointType = std::move(value); } /** *

This type can be either "Raw" or "Event."

*/ inline SplunkDestinationConfiguration& WithHECEndpointType(const HECEndpointType& value) { SetHECEndpointType(value); return *this;} /** *

This type can be either "Raw" or "Event."

*/ inline SplunkDestinationConfiguration& WithHECEndpointType(HECEndpointType&& value) { SetHECEndpointType(std::move(value)); return *this;} /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline const Aws::String& GetHECToken() const{ return m_hECToken; } /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline bool HECTokenHasBeenSet() const { return m_hECTokenHasBeenSet; } /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline void SetHECToken(const Aws::String& value) { m_hECTokenHasBeenSet = true; m_hECToken = value; } /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline void SetHECToken(Aws::String&& value) { m_hECTokenHasBeenSet = true; m_hECToken = std::move(value); } /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline void SetHECToken(const char* value) { m_hECTokenHasBeenSet = true; m_hECToken.assign(value); } /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline SplunkDestinationConfiguration& WithHECToken(const Aws::String& value) { SetHECToken(value); return *this;} /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline SplunkDestinationConfiguration& WithHECToken(Aws::String&& value) { SetHECToken(std::move(value)); return *this;} /** *

This is a GUID that you obtain from your Splunk cluster when you create a new * HEC endpoint.

*/ inline SplunkDestinationConfiguration& WithHECToken(const char* value) { SetHECToken(value); return *this;} /** *

The amount of time that Kinesis Data Firehose waits to receive an * acknowledgment from Splunk after it sends it data. At the end of the timeout * period, Kinesis Data Firehose either tries to send the data again or considers * it an error, based on your retry settings.

*/ inline int GetHECAcknowledgmentTimeoutInSeconds() const{ return m_hECAcknowledgmentTimeoutInSeconds; } /** *

The amount of time that Kinesis Data Firehose waits to receive an * acknowledgment from Splunk after it sends it data. At the end of the timeout * period, Kinesis Data Firehose either tries to send the data again or considers * it an error, based on your retry settings.

*/ inline bool HECAcknowledgmentTimeoutInSecondsHasBeenSet() const { return m_hECAcknowledgmentTimeoutInSecondsHasBeenSet; } /** *

The amount of time that Kinesis Data Firehose waits to receive an * acknowledgment from Splunk after it sends it data. At the end of the timeout * period, Kinesis Data Firehose either tries to send the data again or considers * it an error, based on your retry settings.

*/ inline void SetHECAcknowledgmentTimeoutInSeconds(int value) { m_hECAcknowledgmentTimeoutInSecondsHasBeenSet = true; m_hECAcknowledgmentTimeoutInSeconds = value; } /** *

The amount of time that Kinesis Data Firehose waits to receive an * acknowledgment from Splunk after it sends it data. At the end of the timeout * period, Kinesis Data Firehose either tries to send the data again or considers * it an error, based on your retry settings.

*/ inline SplunkDestinationConfiguration& WithHECAcknowledgmentTimeoutInSeconds(int value) { SetHECAcknowledgmentTimeoutInSeconds(value); return *this;} /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline const SplunkRetryOptions& GetRetryOptions() const{ return m_retryOptions; } /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline bool RetryOptionsHasBeenSet() const { return m_retryOptionsHasBeenSet; } /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline void SetRetryOptions(const SplunkRetryOptions& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = value; } /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline void SetRetryOptions(SplunkRetryOptions&& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = std::move(value); } /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline SplunkDestinationConfiguration& WithRetryOptions(const SplunkRetryOptions& value) { SetRetryOptions(value); return *this;} /** *

The retry behavior in case Kinesis Data Firehose is unable to deliver data to * Splunk, or if it doesn't receive an acknowledgment of receipt from Splunk.

*/ inline SplunkDestinationConfiguration& WithRetryOptions(SplunkRetryOptions&& value) { SetRetryOptions(std::move(value)); return *this;} /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline const SplunkS3BackupMode& GetS3BackupMode() const{ return m_s3BackupMode; } /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline bool S3BackupModeHasBeenSet() const { return m_s3BackupModeHasBeenSet; } /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline void SetS3BackupMode(const SplunkS3BackupMode& value) { m_s3BackupModeHasBeenSet = true; m_s3BackupMode = value; } /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline void SetS3BackupMode(SplunkS3BackupMode&& value) { m_s3BackupModeHasBeenSet = true; m_s3BackupMode = std::move(value); } /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline SplunkDestinationConfiguration& WithS3BackupMode(const SplunkS3BackupMode& value) { SetS3BackupMode(value); return *this;} /** *

Defines how documents should be delivered to Amazon S3. When set to * FailedEventsOnly, Kinesis Data Firehose writes any data that could * not be indexed to the configured Amazon S3 destination. When set to * AllEvents, Kinesis Data Firehose delivers all incoming records to * Amazon S3, and also writes failed documents to Amazon S3. The default value is * FailedEventsOnly.

You can update this backup mode from * FailedEventsOnly to AllEvents. You can't update it * from AllEvents to FailedEventsOnly.

*/ inline SplunkDestinationConfiguration& WithS3BackupMode(SplunkS3BackupMode&& value) { SetS3BackupMode(std::move(value)); return *this;} /** *

The configuration for the backup Amazon S3 location.

*/ inline const S3DestinationConfiguration& GetS3Configuration() const{ return m_s3Configuration; } /** *

The configuration for the backup Amazon S3 location.

*/ inline bool S3ConfigurationHasBeenSet() const { return m_s3ConfigurationHasBeenSet; } /** *

The configuration for the backup Amazon S3 location.

*/ inline void SetS3Configuration(const S3DestinationConfiguration& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = value; } /** *

The configuration for the backup Amazon S3 location.

*/ inline void SetS3Configuration(S3DestinationConfiguration&& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = std::move(value); } /** *

The configuration for the backup Amazon S3 location.

*/ inline SplunkDestinationConfiguration& WithS3Configuration(const S3DestinationConfiguration& value) { SetS3Configuration(value); return *this;} /** *

The configuration for the backup Amazon S3 location.

*/ inline SplunkDestinationConfiguration& WithS3Configuration(S3DestinationConfiguration&& value) { SetS3Configuration(std::move(value)); return *this;} /** *

The data processing configuration.

*/ inline const ProcessingConfiguration& GetProcessingConfiguration() const{ return m_processingConfiguration; } /** *

The data processing configuration.

*/ inline bool ProcessingConfigurationHasBeenSet() const { return m_processingConfigurationHasBeenSet; } /** *

The data processing configuration.

*/ inline void SetProcessingConfiguration(const ProcessingConfiguration& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = value; } /** *

The data processing configuration.

*/ inline void SetProcessingConfiguration(ProcessingConfiguration&& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = std::move(value); } /** *

The data processing configuration.

*/ inline SplunkDestinationConfiguration& WithProcessingConfiguration(const ProcessingConfiguration& value) { SetProcessingConfiguration(value); return *this;} /** *

The data processing configuration.

*/ inline SplunkDestinationConfiguration& WithProcessingConfiguration(ProcessingConfiguration&& value) { SetProcessingConfiguration(std::move(value)); return *this;} /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline const CloudWatchLoggingOptions& GetCloudWatchLoggingOptions() const{ return m_cloudWatchLoggingOptions; } /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline bool CloudWatchLoggingOptionsHasBeenSet() const { return m_cloudWatchLoggingOptionsHasBeenSet; } /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline void SetCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = value; } /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline void SetCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = std::move(value); } /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline SplunkDestinationConfiguration& WithCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { SetCloudWatchLoggingOptions(value); return *this;} /** *

The Amazon CloudWatch logging options for your delivery stream.

*/ inline SplunkDestinationConfiguration& WithCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { SetCloudWatchLoggingOptions(std::move(value)); return *this;} private: Aws::String m_hECEndpoint; bool m_hECEndpointHasBeenSet; HECEndpointType m_hECEndpointType; bool m_hECEndpointTypeHasBeenSet; Aws::String m_hECToken; bool m_hECTokenHasBeenSet; int m_hECAcknowledgmentTimeoutInSeconds; bool m_hECAcknowledgmentTimeoutInSecondsHasBeenSet; SplunkRetryOptions m_retryOptions; bool m_retryOptionsHasBeenSet; SplunkS3BackupMode m_s3BackupMode; bool m_s3BackupModeHasBeenSet; S3DestinationConfiguration m_s3Configuration; bool m_s3ConfigurationHasBeenSet; ProcessingConfiguration m_processingConfiguration; bool m_processingConfigurationHasBeenSet; CloudWatchLoggingOptions m_cloudWatchLoggingOptions; bool m_cloudWatchLoggingOptionsHasBeenSet; }; } // namespace Model } // namespace Firehose } // namespace Aws