AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
HttpRoute.h
1
6#pragma once
7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/appmesh/model/HttpRouteAction.h>
9#include <aws/appmesh/model/HttpRouteMatch.h>
10#include <aws/appmesh/model/HttpRetryPolicy.h>
11#include <aws/appmesh/model/HttpTimeout.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace AppMesh
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_APPMESH_API HttpRoute() = default;
39 AWS_APPMESH_API HttpRoute(Aws::Utils::Json::JsonView jsonValue);
40 AWS_APPMESH_API HttpRoute& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const HttpRouteAction& GetAction() const { return m_action; }
49 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
50 template<typename ActionT = HttpRouteAction>
51 void SetAction(ActionT&& value) { m_actionHasBeenSet = true; m_action = std::forward<ActionT>(value); }
52 template<typename ActionT = HttpRouteAction>
53 HttpRoute& WithAction(ActionT&& value) { SetAction(std::forward<ActionT>(value)); return *this;}
55
57
60 inline const HttpRouteMatch& GetMatch() const { return m_match; }
61 inline bool MatchHasBeenSet() const { return m_matchHasBeenSet; }
62 template<typename MatchT = HttpRouteMatch>
63 void SetMatch(MatchT&& value) { m_matchHasBeenSet = true; m_match = std::forward<MatchT>(value); }
64 template<typename MatchT = HttpRouteMatch>
65 HttpRoute& WithMatch(MatchT&& value) { SetMatch(std::forward<MatchT>(value)); return *this;}
67
69
72 inline const HttpRetryPolicy& GetRetryPolicy() const { return m_retryPolicy; }
73 inline bool RetryPolicyHasBeenSet() const { return m_retryPolicyHasBeenSet; }
74 template<typename RetryPolicyT = HttpRetryPolicy>
75 void SetRetryPolicy(RetryPolicyT&& value) { m_retryPolicyHasBeenSet = true; m_retryPolicy = std::forward<RetryPolicyT>(value); }
76 template<typename RetryPolicyT = HttpRetryPolicy>
77 HttpRoute& WithRetryPolicy(RetryPolicyT&& value) { SetRetryPolicy(std::forward<RetryPolicyT>(value)); return *this;}
79
81
84 inline const HttpTimeout& GetTimeout() const { return m_timeout; }
85 inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; }
86 template<typename TimeoutT = HttpTimeout>
87 void SetTimeout(TimeoutT&& value) { m_timeoutHasBeenSet = true; m_timeout = std::forward<TimeoutT>(value); }
88 template<typename TimeoutT = HttpTimeout>
89 HttpRoute& WithTimeout(TimeoutT&& value) { SetTimeout(std::forward<TimeoutT>(value)); return *this;}
91 private:
92
93 HttpRouteAction m_action;
94 bool m_actionHasBeenSet = false;
95
96 HttpRouteMatch m_match;
97 bool m_matchHasBeenSet = false;
98
99 HttpRetryPolicy m_retryPolicy;
100 bool m_retryPolicyHasBeenSet = false;
101
102 HttpTimeout m_timeout;
103 bool m_timeoutHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace AppMesh
108} // namespace Aws
const HttpRetryPolicy & GetRetryPolicy() const
Definition HttpRoute.h:72
void SetAction(ActionT &&value)
Definition HttpRoute.h:51
HttpRoute & WithAction(ActionT &&value)
Definition HttpRoute.h:53
const HttpTimeout & GetTimeout() const
Definition HttpRoute.h:84
const HttpRouteMatch & GetMatch() const
Definition HttpRoute.h:60
AWS_APPMESH_API HttpRoute & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_APPMESH_API HttpRoute()=default
AWS_APPMESH_API HttpRoute(Aws::Utils::Json::JsonView jsonValue)
HttpRoute & WithTimeout(TimeoutT &&value)
Definition HttpRoute.h:89
HttpRoute & WithMatch(MatchT &&value)
Definition HttpRoute.h:65
HttpRoute & WithRetryPolicy(RetryPolicyT &&value)
Definition HttpRoute.h:77
void SetTimeout(TimeoutT &&value)
Definition HttpRoute.h:87
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
bool RetryPolicyHasBeenSet() const
Definition HttpRoute.h:73
void SetRetryPolicy(RetryPolicyT &&value)
Definition HttpRoute.h:75
void SetMatch(MatchT &&value)
Definition HttpRoute.h:63
const HttpRouteAction & GetAction() const
Definition HttpRoute.h:48
Aws::Utils::Json::JsonValue JsonValue