AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
GrpcRoute.h
1
6#pragma once
7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/appmesh/model/GrpcRouteAction.h>
9#include <aws/appmesh/model/GrpcRouteMatch.h>
10#include <aws/appmesh/model/GrpcRetryPolicy.h>
11#include <aws/appmesh/model/GrpcTimeout.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
35 {
36 public:
37 AWS_APPMESH_API GrpcRoute() = default;
38 AWS_APPMESH_API GrpcRoute(Aws::Utils::Json::JsonView jsonValue);
39 AWS_APPMESH_API GrpcRoute& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const GrpcRouteAction& GetAction() const { return m_action; }
48 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
49 template<typename ActionT = GrpcRouteAction>
50 void SetAction(ActionT&& value) { m_actionHasBeenSet = true; m_action = std::forward<ActionT>(value); }
51 template<typename ActionT = GrpcRouteAction>
52 GrpcRoute& WithAction(ActionT&& value) { SetAction(std::forward<ActionT>(value)); return *this;}
54
56
59 inline const GrpcRouteMatch& GetMatch() const { return m_match; }
60 inline bool MatchHasBeenSet() const { return m_matchHasBeenSet; }
61 template<typename MatchT = GrpcRouteMatch>
62 void SetMatch(MatchT&& value) { m_matchHasBeenSet = true; m_match = std::forward<MatchT>(value); }
63 template<typename MatchT = GrpcRouteMatch>
64 GrpcRoute& WithMatch(MatchT&& value) { SetMatch(std::forward<MatchT>(value)); return *this;}
66
68
71 inline const GrpcRetryPolicy& GetRetryPolicy() const { return m_retryPolicy; }
72 inline bool RetryPolicyHasBeenSet() const { return m_retryPolicyHasBeenSet; }
73 template<typename RetryPolicyT = GrpcRetryPolicy>
74 void SetRetryPolicy(RetryPolicyT&& value) { m_retryPolicyHasBeenSet = true; m_retryPolicy = std::forward<RetryPolicyT>(value); }
75 template<typename RetryPolicyT = GrpcRetryPolicy>
76 GrpcRoute& WithRetryPolicy(RetryPolicyT&& value) { SetRetryPolicy(std::forward<RetryPolicyT>(value)); return *this;}
78
80
83 inline const GrpcTimeout& GetTimeout() const { return m_timeout; }
84 inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; }
85 template<typename TimeoutT = GrpcTimeout>
86 void SetTimeout(TimeoutT&& value) { m_timeoutHasBeenSet = true; m_timeout = std::forward<TimeoutT>(value); }
87 template<typename TimeoutT = GrpcTimeout>
88 GrpcRoute& WithTimeout(TimeoutT&& value) { SetTimeout(std::forward<TimeoutT>(value)); return *this;}
90 private:
91
92 GrpcRouteAction m_action;
93 bool m_actionHasBeenSet = false;
94
95 GrpcRouteMatch m_match;
96 bool m_matchHasBeenSet = false;
97
98 GrpcRetryPolicy m_retryPolicy;
99 bool m_retryPolicyHasBeenSet = false;
100
101 GrpcTimeout m_timeout;
102 bool m_timeoutHasBeenSet = false;
103 };
104
105} // namespace Model
106} // namespace AppMesh
107} // namespace Aws
void SetRetryPolicy(RetryPolicyT &&value)
Definition GrpcRoute.h:74
GrpcRoute & WithAction(ActionT &&value)
Definition GrpcRoute.h:52
void SetMatch(MatchT &&value)
Definition GrpcRoute.h:62
void SetAction(ActionT &&value)
Definition GrpcRoute.h:50
const GrpcRetryPolicy & GetRetryPolicy() const
Definition GrpcRoute.h:71
GrpcRoute & WithMatch(MatchT &&value)
Definition GrpcRoute.h:64
GrpcRoute & WithTimeout(TimeoutT &&value)
Definition GrpcRoute.h:88
AWS_APPMESH_API GrpcRoute()=default
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPMESH_API GrpcRoute(Aws::Utils::Json::JsonView jsonValue)
bool RetryPolicyHasBeenSet() const
Definition GrpcRoute.h:72
const GrpcRouteMatch & GetMatch() const
Definition GrpcRoute.h:59
GrpcRoute & WithRetryPolicy(RetryPolicyT &&value)
Definition GrpcRoute.h:76
void SetTimeout(TimeoutT &&value)
Definition GrpcRoute.h:86
const GrpcTimeout & GetTimeout() const
Definition GrpcRoute.h:83
AWS_APPMESH_API GrpcRoute & operator=(Aws::Utils::Json::JsonView jsonValue)
const GrpcRouteAction & GetAction() const
Definition GrpcRoute.h:47
Aws::Utils::Json::JsonValue JsonValue