/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace XRay { namespace Model { /** *

Information about an HTTP request.

See Also:

AWS API * Reference

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

The request URL.

*/ inline const Aws::String& GetHttpURL() const{ return m_httpURL; } /** *

The request URL.

*/ inline bool HttpURLHasBeenSet() const { return m_httpURLHasBeenSet; } /** *

The request URL.

*/ inline void SetHttpURL(const Aws::String& value) { m_httpURLHasBeenSet = true; m_httpURL = value; } /** *

The request URL.

*/ inline void SetHttpURL(Aws::String&& value) { m_httpURLHasBeenSet = true; m_httpURL = std::move(value); } /** *

The request URL.

*/ inline void SetHttpURL(const char* value) { m_httpURLHasBeenSet = true; m_httpURL.assign(value); } /** *

The request URL.

*/ inline Http& WithHttpURL(const Aws::String& value) { SetHttpURL(value); return *this;} /** *

The request URL.

*/ inline Http& WithHttpURL(Aws::String&& value) { SetHttpURL(std::move(value)); return *this;} /** *

The request URL.

*/ inline Http& WithHttpURL(const char* value) { SetHttpURL(value); return *this;} /** *

The response status.

*/ inline int GetHttpStatus() const{ return m_httpStatus; } /** *

The response status.

*/ inline bool HttpStatusHasBeenSet() const { return m_httpStatusHasBeenSet; } /** *

The response status.

*/ inline void SetHttpStatus(int value) { m_httpStatusHasBeenSet = true; m_httpStatus = value; } /** *

The response status.

*/ inline Http& WithHttpStatus(int value) { SetHttpStatus(value); return *this;} /** *

The request method.

*/ inline const Aws::String& GetHttpMethod() const{ return m_httpMethod; } /** *

The request method.

*/ inline bool HttpMethodHasBeenSet() const { return m_httpMethodHasBeenSet; } /** *

The request method.

*/ inline void SetHttpMethod(const Aws::String& value) { m_httpMethodHasBeenSet = true; m_httpMethod = value; } /** *

The request method.

*/ inline void SetHttpMethod(Aws::String&& value) { m_httpMethodHasBeenSet = true; m_httpMethod = std::move(value); } /** *

The request method.

*/ inline void SetHttpMethod(const char* value) { m_httpMethodHasBeenSet = true; m_httpMethod.assign(value); } /** *

The request method.

*/ inline Http& WithHttpMethod(const Aws::String& value) { SetHttpMethod(value); return *this;} /** *

The request method.

*/ inline Http& WithHttpMethod(Aws::String&& value) { SetHttpMethod(std::move(value)); return *this;} /** *

The request method.

*/ inline Http& WithHttpMethod(const char* value) { SetHttpMethod(value); return *this;} /** *

The request's user agent string.

*/ inline const Aws::String& GetUserAgent() const{ return m_userAgent; } /** *

The request's user agent string.

*/ inline bool UserAgentHasBeenSet() const { return m_userAgentHasBeenSet; } /** *

The request's user agent string.

*/ inline void SetUserAgent(const Aws::String& value) { m_userAgentHasBeenSet = true; m_userAgent = value; } /** *

The request's user agent string.

*/ inline void SetUserAgent(Aws::String&& value) { m_userAgentHasBeenSet = true; m_userAgent = std::move(value); } /** *

The request's user agent string.

*/ inline void SetUserAgent(const char* value) { m_userAgentHasBeenSet = true; m_userAgent.assign(value); } /** *

The request's user agent string.

*/ inline Http& WithUserAgent(const Aws::String& value) { SetUserAgent(value); return *this;} /** *

The request's user agent string.

*/ inline Http& WithUserAgent(Aws::String&& value) { SetUserAgent(std::move(value)); return *this;} /** *

The request's user agent string.

*/ inline Http& WithUserAgent(const char* value) { SetUserAgent(value); return *this;} /** *

The IP address of the requestor.

*/ inline const Aws::String& GetClientIp() const{ return m_clientIp; } /** *

The IP address of the requestor.

*/ inline bool ClientIpHasBeenSet() const { return m_clientIpHasBeenSet; } /** *

The IP address of the requestor.

*/ inline void SetClientIp(const Aws::String& value) { m_clientIpHasBeenSet = true; m_clientIp = value; } /** *

The IP address of the requestor.

*/ inline void SetClientIp(Aws::String&& value) { m_clientIpHasBeenSet = true; m_clientIp = std::move(value); } /** *

The IP address of the requestor.

*/ inline void SetClientIp(const char* value) { m_clientIpHasBeenSet = true; m_clientIp.assign(value); } /** *

The IP address of the requestor.

*/ inline Http& WithClientIp(const Aws::String& value) { SetClientIp(value); return *this;} /** *

The IP address of the requestor.

*/ inline Http& WithClientIp(Aws::String&& value) { SetClientIp(std::move(value)); return *this;} /** *

The IP address of the requestor.

*/ inline Http& WithClientIp(const char* value) { SetClientIp(value); return *this;} private: Aws::String m_httpURL; bool m_httpURLHasBeenSet = false; int m_httpStatus; bool m_httpStatusHasBeenSet = false; Aws::String m_httpMethod; bool m_httpMethodHasBeenSet = false; Aws::String m_userAgent; bool m_userAgentHasBeenSet = false; Aws::String m_clientIp; bool m_clientIpHasBeenSet = false; }; } // namespace Model } // namespace XRay } // namespace Aws