/** * 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 Macie2 { namespace Model { /** *

Provides information about an API operation that an entity invoked for an * affected resource.

See Also:

AWS * API Reference

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

The name of the operation that was invoked most recently and produced the * finding.

*/ inline const Aws::String& GetApi() const{ return m_api; } /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline bool ApiHasBeenSet() const { return m_apiHasBeenSet; } /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline void SetApi(const Aws::String& value) { m_apiHasBeenSet = true; m_api = value; } /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline void SetApi(Aws::String&& value) { m_apiHasBeenSet = true; m_api = std::move(value); } /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline void SetApi(const char* value) { m_apiHasBeenSet = true; m_api.assign(value); } /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline ApiCallDetails& WithApi(const Aws::String& value) { SetApi(value); return *this;} /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline ApiCallDetails& WithApi(Aws::String&& value) { SetApi(std::move(value)); return *this;} /** *

The name of the operation that was invoked most recently and produced the * finding.

*/ inline ApiCallDetails& WithApi(const char* value) { SetApi(value); return *this;} /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline const Aws::String& GetApiServiceName() const{ return m_apiServiceName; } /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline bool ApiServiceNameHasBeenSet() const { return m_apiServiceNameHasBeenSet; } /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline void SetApiServiceName(const Aws::String& value) { m_apiServiceNameHasBeenSet = true; m_apiServiceName = value; } /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline void SetApiServiceName(Aws::String&& value) { m_apiServiceNameHasBeenSet = true; m_apiServiceName = std::move(value); } /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline void SetApiServiceName(const char* value) { m_apiServiceNameHasBeenSet = true; m_apiServiceName.assign(value); } /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline ApiCallDetails& WithApiServiceName(const Aws::String& value) { SetApiServiceName(value); return *this;} /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline ApiCallDetails& WithApiServiceName(Aws::String&& value) { SetApiServiceName(std::move(value)); return *this;} /** *

The URL of the AWS service that provides the operation, for example: * s3.amazonaws.com.

*/ inline ApiCallDetails& WithApiServiceName(const char* value) { SetApiServiceName(value); return *this;} /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline const Aws::Utils::DateTime& GetFirstSeen() const{ return m_firstSeen; } /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline bool FirstSeenHasBeenSet() const { return m_firstSeenHasBeenSet; } /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline void SetFirstSeen(const Aws::Utils::DateTime& value) { m_firstSeenHasBeenSet = true; m_firstSeen = value; } /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline void SetFirstSeen(Aws::Utils::DateTime&& value) { m_firstSeenHasBeenSet = true; m_firstSeen = std::move(value); } /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline ApiCallDetails& WithFirstSeen(const Aws::Utils::DateTime& value) { SetFirstSeen(value); return *this;} /** *

The first date and time, in UTC and extended ISO 8601 format, when any * operation was invoked and produced the finding.

*/ inline ApiCallDetails& WithFirstSeen(Aws::Utils::DateTime&& value) { SetFirstSeen(std::move(value)); return *this;} /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline const Aws::Utils::DateTime& GetLastSeen() const{ return m_lastSeen; } /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline bool LastSeenHasBeenSet() const { return m_lastSeenHasBeenSet; } /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline void SetLastSeen(const Aws::Utils::DateTime& value) { m_lastSeenHasBeenSet = true; m_lastSeen = value; } /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline void SetLastSeen(Aws::Utils::DateTime&& value) { m_lastSeenHasBeenSet = true; m_lastSeen = std::move(value); } /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline ApiCallDetails& WithLastSeen(const Aws::Utils::DateTime& value) { SetLastSeen(value); return *this;} /** *

The most recent date and time, in UTC and extended ISO 8601 format, when the * specified operation (api) was invoked and produced the finding.

*/ inline ApiCallDetails& WithLastSeen(Aws::Utils::DateTime&& value) { SetLastSeen(std::move(value)); return *this;} private: Aws::String m_api; bool m_apiHasBeenSet; Aws::String m_apiServiceName; bool m_apiServiceNameHasBeenSet; Aws::Utils::DateTime m_firstSeen; bool m_firstSeenHasBeenSet; Aws::Utils::DateTime m_lastSeen; bool m_lastSeenHasBeenSet; }; } // namespace Model } // namespace Macie2 } // namespace Aws