/** * 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 CloudWatchLogs { namespace Model { /** */ class PutLogEventsRequest : public CloudWatchLogsRequest { public: AWS_CLOUDWATCHLOGS_API PutLogEventsRequest(); // 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 "PutLogEvents"; } AWS_CLOUDWATCHLOGS_API Aws::String SerializePayload() const override; AWS_CLOUDWATCHLOGS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the log group.

*/ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *

The name of the log group.

*/ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *

The name of the log group.

*/ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *

The name of the log group.

*/ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *

The name of the log group.

*/ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *

The name of the log group.

*/ inline PutLogEventsRequest& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *

The name of the log group.

*/ inline PutLogEventsRequest& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *

The name of the log group.

*/ inline PutLogEventsRequest& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} /** *

The name of the log stream.

*/ inline const Aws::String& GetLogStreamName() const{ return m_logStreamName; } /** *

The name of the log stream.

*/ inline bool LogStreamNameHasBeenSet() const { return m_logStreamNameHasBeenSet; } /** *

The name of the log stream.

*/ inline void SetLogStreamName(const Aws::String& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = value; } /** *

The name of the log stream.

*/ inline void SetLogStreamName(Aws::String&& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = std::move(value); } /** *

The name of the log stream.

*/ inline void SetLogStreamName(const char* value) { m_logStreamNameHasBeenSet = true; m_logStreamName.assign(value); } /** *

The name of the log stream.

*/ inline PutLogEventsRequest& WithLogStreamName(const Aws::String& value) { SetLogStreamName(value); return *this;} /** *

The name of the log stream.

*/ inline PutLogEventsRequest& WithLogStreamName(Aws::String&& value) { SetLogStreamName(std::move(value)); return *this;} /** *

The name of the log stream.

*/ inline PutLogEventsRequest& WithLogStreamName(const char* value) { SetLogStreamName(value); return *this;} /** *

The log events.

*/ inline const Aws::Vector& GetLogEvents() const{ return m_logEvents; } /** *

The log events.

*/ inline bool LogEventsHasBeenSet() const { return m_logEventsHasBeenSet; } /** *

The log events.

*/ inline void SetLogEvents(const Aws::Vector& value) { m_logEventsHasBeenSet = true; m_logEvents = value; } /** *

The log events.

*/ inline void SetLogEvents(Aws::Vector&& value) { m_logEventsHasBeenSet = true; m_logEvents = std::move(value); } /** *

The log events.

*/ inline PutLogEventsRequest& WithLogEvents(const Aws::Vector& value) { SetLogEvents(value); return *this;} /** *

The log events.

*/ inline PutLogEventsRequest& WithLogEvents(Aws::Vector&& value) { SetLogEvents(std::move(value)); return *this;} /** *

The log events.

*/ inline PutLogEventsRequest& AddLogEvents(const InputLogEvent& value) { m_logEventsHasBeenSet = true; m_logEvents.push_back(value); return *this; } /** *

The log events.

*/ inline PutLogEventsRequest& AddLogEvents(InputLogEvent&& value) { m_logEventsHasBeenSet = true; m_logEvents.push_back(std::move(value)); return *this; } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline const Aws::String& GetSequenceToken() const{ return m_sequenceToken; } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline bool SequenceTokenHasBeenSet() const { return m_sequenceTokenHasBeenSet; } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline void SetSequenceToken(const Aws::String& value) { m_sequenceTokenHasBeenSet = true; m_sequenceToken = value; } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline void SetSequenceToken(Aws::String&& value) { m_sequenceTokenHasBeenSet = true; m_sequenceToken = std::move(value); } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline void SetSequenceToken(const char* value) { m_sequenceTokenHasBeenSet = true; m_sequenceToken.assign(value); } /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline PutLogEventsRequest& WithSequenceToken(const Aws::String& value) { SetSequenceToken(value); return *this;} /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline PutLogEventsRequest& WithSequenceToken(Aws::String&& value) { SetSequenceToken(std::move(value)); return *this;} /** *

The sequence token obtained from the response of the previous * PutLogEvents call.

The * sequenceToken parameter is now ignored in PutLogEvents * actions. PutLogEvents actions are now accepted and never return * InvalidSequenceTokenException or * DataAlreadyAcceptedException even if the sequence token is not * valid.

*/ inline PutLogEventsRequest& WithSequenceToken(const char* value) { SetSequenceToken(value); return *this;} private: Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet = false; Aws::String m_logStreamName; bool m_logStreamNameHasBeenSet = false; Aws::Vector m_logEvents; bool m_logEventsHasBeenSet = false; Aws::String m_sequenceToken; bool m_sequenceTokenHasBeenSet = false; }; } // namespace Model } // namespace CloudWatchLogs } // namespace Aws