/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace IoTAnalytics { namespace Model { /** */ class StartPipelineReprocessingRequest : public IoTAnalyticsRequest { public: AWS_IOTANALYTICS_API StartPipelineReprocessingRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartPipelineReprocessing"; } AWS_IOTANALYTICS_API Aws::String SerializePayload() const override; /** *

The name of the pipeline on which to start reprocessing.

*/ inline const Aws::String& GetPipelineName() const{ return m_pipelineName; } /** *

The name of the pipeline on which to start reprocessing.

*/ inline bool PipelineNameHasBeenSet() const { return m_pipelineNameHasBeenSet; } /** *

The name of the pipeline on which to start reprocessing.

*/ inline void SetPipelineName(const Aws::String& value) { m_pipelineNameHasBeenSet = true; m_pipelineName = value; } /** *

The name of the pipeline on which to start reprocessing.

*/ inline void SetPipelineName(Aws::String&& value) { m_pipelineNameHasBeenSet = true; m_pipelineName = std::move(value); } /** *

The name of the pipeline on which to start reprocessing.

*/ inline void SetPipelineName(const char* value) { m_pipelineNameHasBeenSet = true; m_pipelineName.assign(value); } /** *

The name of the pipeline on which to start reprocessing.

*/ inline StartPipelineReprocessingRequest& WithPipelineName(const Aws::String& value) { SetPipelineName(value); return *this;} /** *

The name of the pipeline on which to start reprocessing.

*/ inline StartPipelineReprocessingRequest& WithPipelineName(Aws::String&& value) { SetPipelineName(std::move(value)); return *this;} /** *

The name of the pipeline on which to start reprocessing.

*/ inline StartPipelineReprocessingRequest& WithPipelineName(const char* value) { SetPipelineName(value); return *this;} /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline StartPipelineReprocessingRequest& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The start time (inclusive) of raw message data that is reprocessed.

If * you specify a value for the startTime parameter, you must not use * the channelMessages object.

*/ inline StartPipelineReprocessingRequest& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline StartPipelineReprocessingRequest& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *

The end time (exclusive) of raw message data that is reprocessed.

If * you specify a value for the endTime parameter, you must not use the * channelMessages object.

*/ inline StartPipelineReprocessingRequest& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline const ChannelMessages& GetChannelMessages() const{ return m_channelMessages; } /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline bool ChannelMessagesHasBeenSet() const { return m_channelMessagesHasBeenSet; } /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline void SetChannelMessages(const ChannelMessages& value) { m_channelMessagesHasBeenSet = true; m_channelMessages = value; } /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline void SetChannelMessages(ChannelMessages&& value) { m_channelMessagesHasBeenSet = true; m_channelMessages = std::move(value); } /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline StartPipelineReprocessingRequest& WithChannelMessages(const ChannelMessages& value) { SetChannelMessages(value); return *this;} /** *

Specifies one or more sets of channel messages that you want to * reprocess.

If you use the channelMessages object, you must * not specify a value for startTime and endTime.

*/ inline StartPipelineReprocessingRequest& WithChannelMessages(ChannelMessages&& value) { SetChannelMessages(std::move(value)); return *this;} private: Aws::String m_pipelineName; bool m_pipelineNameHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; Aws::Utils::DateTime m_endTime; bool m_endTimeHasBeenSet = false; ChannelMessages m_channelMessages; bool m_channelMessagesHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws