AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
GrpcRetryPolicy.h
1
6#pragma once
7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/appmesh/model/Duration.h>
10#include <aws/appmesh/model/GrpcRetryPolicyEvent.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/appmesh/model/TcpRetryPolicyEvent.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace AppMesh
26{
27namespace Model
28{
29
43 {
44 public:
45 AWS_APPMESH_API GrpcRetryPolicy();
46 AWS_APPMESH_API GrpcRetryPolicy(Aws::Utils::Json::JsonView jsonValue);
48 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
49
50
52
55 inline const Aws::Vector<GrpcRetryPolicyEvent>& GetGrpcRetryEvents() const{ return m_grpcRetryEvents; }
56 inline bool GrpcRetryEventsHasBeenSet() const { return m_grpcRetryEventsHasBeenSet; }
57 inline void SetGrpcRetryEvents(const Aws::Vector<GrpcRetryPolicyEvent>& value) { m_grpcRetryEventsHasBeenSet = true; m_grpcRetryEvents = value; }
58 inline void SetGrpcRetryEvents(Aws::Vector<GrpcRetryPolicyEvent>&& value) { m_grpcRetryEventsHasBeenSet = true; m_grpcRetryEvents = std::move(value); }
61 inline GrpcRetryPolicy& AddGrpcRetryEvents(const GrpcRetryPolicyEvent& value) { m_grpcRetryEventsHasBeenSet = true; m_grpcRetryEvents.push_back(value); return *this; }
62 inline GrpcRetryPolicy& AddGrpcRetryEvents(GrpcRetryPolicyEvent&& value) { m_grpcRetryEventsHasBeenSet = true; m_grpcRetryEvents.push_back(std::move(value)); return *this; }
64
66
74 inline const Aws::Vector<Aws::String>& GetHttpRetryEvents() const{ return m_httpRetryEvents; }
75 inline bool HttpRetryEventsHasBeenSet() const { return m_httpRetryEventsHasBeenSet; }
76 inline void SetHttpRetryEvents(const Aws::Vector<Aws::String>& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents = value; }
77 inline void SetHttpRetryEvents(Aws::Vector<Aws::String>&& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents = std::move(value); }
79 inline GrpcRetryPolicy& WithHttpRetryEvents(Aws::Vector<Aws::String>&& value) { SetHttpRetryEvents(std::move(value)); return *this;}
80 inline GrpcRetryPolicy& AddHttpRetryEvents(const Aws::String& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(value); return *this; }
81 inline GrpcRetryPolicy& AddHttpRetryEvents(Aws::String&& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(std::move(value)); return *this; }
82 inline GrpcRetryPolicy& AddHttpRetryEvents(const char* value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(value); return *this; }
84
86
89 inline long long GetMaxRetries() const{ return m_maxRetries; }
90 inline bool MaxRetriesHasBeenSet() const { return m_maxRetriesHasBeenSet; }
91 inline void SetMaxRetries(long long value) { m_maxRetriesHasBeenSet = true; m_maxRetries = value; }
92 inline GrpcRetryPolicy& WithMaxRetries(long long value) { SetMaxRetries(value); return *this;}
94
96
99 inline const Duration& GetPerRetryTimeout() const{ return m_perRetryTimeout; }
100 inline bool PerRetryTimeoutHasBeenSet() const { return m_perRetryTimeoutHasBeenSet; }
101 inline void SetPerRetryTimeout(const Duration& value) { m_perRetryTimeoutHasBeenSet = true; m_perRetryTimeout = value; }
102 inline void SetPerRetryTimeout(Duration&& value) { m_perRetryTimeoutHasBeenSet = true; m_perRetryTimeout = std::move(value); }
103 inline GrpcRetryPolicy& WithPerRetryTimeout(const Duration& value) { SetPerRetryTimeout(value); return *this;}
104 inline GrpcRetryPolicy& WithPerRetryTimeout(Duration&& value) { SetPerRetryTimeout(std::move(value)); return *this;}
106
108
113 inline const Aws::Vector<TcpRetryPolicyEvent>& GetTcpRetryEvents() const{ return m_tcpRetryEvents; }
114 inline bool TcpRetryEventsHasBeenSet() const { return m_tcpRetryEventsHasBeenSet; }
115 inline void SetTcpRetryEvents(const Aws::Vector<TcpRetryPolicyEvent>& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents = value; }
116 inline void SetTcpRetryEvents(Aws::Vector<TcpRetryPolicyEvent>&& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents = std::move(value); }
119 inline GrpcRetryPolicy& AddTcpRetryEvents(const TcpRetryPolicyEvent& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents.push_back(value); return *this; }
120 inline GrpcRetryPolicy& AddTcpRetryEvents(TcpRetryPolicyEvent&& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents.push_back(std::move(value)); return *this; }
122 private:
123
124 Aws::Vector<GrpcRetryPolicyEvent> m_grpcRetryEvents;
125 bool m_grpcRetryEventsHasBeenSet = false;
126
127 Aws::Vector<Aws::String> m_httpRetryEvents;
128 bool m_httpRetryEventsHasBeenSet = false;
129
130 long long m_maxRetries;
131 bool m_maxRetriesHasBeenSet = false;
132
133 Duration m_perRetryTimeout;
134 bool m_perRetryTimeoutHasBeenSet = false;
135
136 Aws::Vector<TcpRetryPolicyEvent> m_tcpRetryEvents;
137 bool m_tcpRetryEventsHasBeenSet = false;
138 };
139
140} // namespace Model
141} // namespace AppMesh
142} // namespace Aws
GrpcRetryPolicy & AddTcpRetryEvents(const TcpRetryPolicyEvent &value)
GrpcRetryPolicy & WithGrpcRetryEvents(Aws::Vector< GrpcRetryPolicyEvent > &&value)
void SetHttpRetryEvents(Aws::Vector< Aws::String > &&value)
void SetPerRetryTimeout(Duration &&value)
GrpcRetryPolicy & AddHttpRetryEvents(const Aws::String &value)
GrpcRetryPolicy & WithPerRetryTimeout(const Duration &value)
GrpcRetryPolicy & WithGrpcRetryEvents(const Aws::Vector< GrpcRetryPolicyEvent > &value)
GrpcRetryPolicy & WithTcpRetryEvents(const Aws::Vector< TcpRetryPolicyEvent > &value)
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
void SetGrpcRetryEvents(Aws::Vector< GrpcRetryPolicyEvent > &&value)
const Aws::Vector< TcpRetryPolicyEvent > & GetTcpRetryEvents() const
GrpcRetryPolicy & AddGrpcRetryEvents(const GrpcRetryPolicyEvent &value)
AWS_APPMESH_API GrpcRetryPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetPerRetryTimeout(const Duration &value)
void SetTcpRetryEvents(const Aws::Vector< TcpRetryPolicyEvent > &value)
GrpcRetryPolicy & WithHttpRetryEvents(Aws::Vector< Aws::String > &&value)
GrpcRetryPolicy & AddTcpRetryEvents(TcpRetryPolicyEvent &&value)
const Duration & GetPerRetryTimeout() const
void SetHttpRetryEvents(const Aws::Vector< Aws::String > &value)
GrpcRetryPolicy & WithHttpRetryEvents(const Aws::Vector< Aws::String > &value)
GrpcRetryPolicy & AddGrpcRetryEvents(GrpcRetryPolicyEvent &&value)
void SetTcpRetryEvents(Aws::Vector< TcpRetryPolicyEvent > &&value)
GrpcRetryPolicy & WithPerRetryTimeout(Duration &&value)
const Aws::Vector< Aws::String > & GetHttpRetryEvents() const
GrpcRetryPolicy & WithTcpRetryEvents(Aws::Vector< TcpRetryPolicyEvent > &&value)
GrpcRetryPolicy & AddHttpRetryEvents(Aws::String &&value)
void SetGrpcRetryEvents(const Aws::Vector< GrpcRetryPolicyEvent > &value)
const Aws::Vector< GrpcRetryPolicyEvent > & GetGrpcRetryEvents() const
AWS_APPMESH_API GrpcRetryPolicy(Aws::Utils::Json::JsonView jsonValue)
GrpcRetryPolicy & WithMaxRetries(long long value)
GrpcRetryPolicy & AddHttpRetryEvents(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue