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>
57 template<
typename GrpcRetryEventsT = Aws::Vector<GrpcRetryPolicyEvent>>
58 void SetGrpcRetryEvents(GrpcRetryEventsT&& value) { m_grpcRetryEventsHasBeenSet =
true; m_grpcRetryEvents = std::forward<GrpcRetryEventsT>(value); }
59 template<
typename GrpcRetryEventsT = Aws::Vector<GrpcRetryPolicyEvent>>
75 template<
typename HttpRetryEventsT = Aws::Vector<Aws::String>>
76 void SetHttpRetryEvents(HttpRetryEventsT&& value) { m_httpRetryEventsHasBeenSet =
true; m_httpRetryEvents = std::forward<HttpRetryEventsT>(value); }
77 template<
typename HttpRetryEventsT = Aws::Vector<Aws::String>>
79 template<
typename HttpRetryEventsT = Aws::String>
80 GrpcRetryPolicy&
AddHttpRetryEvents(HttpRetryEventsT&& value) { m_httpRetryEventsHasBeenSet =
true; m_httpRetryEvents.emplace_back(std::forward<HttpRetryEventsT>(value));
return *
this; }
89 inline void SetMaxRetries(
long long value) { m_maxRetriesHasBeenSet =
true; m_maxRetries = value; }
99 template<
typename PerRetryTimeoutT = Duration>
100 void SetPerRetryTimeout(PerRetryTimeoutT&& value) { m_perRetryTimeoutHasBeenSet =
true; m_perRetryTimeout = std::forward<PerRetryTimeoutT>(value); }
101 template<
typename PerRetryTimeoutT = Duration>
113 template<
typename TcpRetryEventsT = Aws::Vector<TcpRetryPolicyEvent>>
114 void SetTcpRetryEvents(TcpRetryEventsT&& value) { m_tcpRetryEventsHasBeenSet =
true; m_tcpRetryEvents = std::forward<TcpRetryEventsT>(value); }
115 template<
typename TcpRetryEventsT = Aws::Vector<TcpRetryPolicyEvent>>
122 bool m_grpcRetryEventsHasBeenSet =
false;
125 bool m_httpRetryEventsHasBeenSet =
false;
127 long long m_maxRetries{0};
128 bool m_maxRetriesHasBeenSet =
false;
130 Duration m_perRetryTimeout;
131 bool m_perRetryTimeoutHasBeenSet =
false;
134 bool m_tcpRetryEventsHasBeenSet =
false;
GrpcRetryPolicy & AddHttpRetryEvents(HttpRetryEventsT &&value)
void SetTcpRetryEvents(TcpRetryEventsT &&value)
GrpcRetryPolicy & WithGrpcRetryEvents(GrpcRetryEventsT &&value)
void SetHttpRetryEvents(HttpRetryEventsT &&value)
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
GrpcRetryPolicy & WithHttpRetryEvents(HttpRetryEventsT &&value)
const Aws::Vector< TcpRetryPolicyEvent > & GetTcpRetryEvents() const
bool HttpRetryEventsHasBeenSet() const
AWS_APPMESH_API GrpcRetryPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
const Duration & GetPerRetryTimeout() const
AWS_APPMESH_API GrpcRetryPolicy()=default
void SetGrpcRetryEvents(GrpcRetryEventsT &&value)
void SetPerRetryTimeout(PerRetryTimeoutT &&value)
bool PerRetryTimeoutHasBeenSet() const
const Aws::Vector< Aws::String > & GetHttpRetryEvents() const
bool GrpcRetryEventsHasBeenSet() const
long long GetMaxRetries() const
GrpcRetryPolicy & WithPerRetryTimeout(PerRetryTimeoutT &&value)
void SetMaxRetries(long long value)
GrpcRetryPolicy & AddGrpcRetryEvents(GrpcRetryPolicyEvent value)
GrpcRetryPolicy & AddTcpRetryEvents(TcpRetryPolicyEvent value)
bool MaxRetriesHasBeenSet() const
GrpcRetryPolicy & WithTcpRetryEvents(TcpRetryEventsT &&value)
const Aws::Vector< GrpcRetryPolicyEvent > & GetGrpcRetryEvents() const
AWS_APPMESH_API GrpcRetryPolicy(Aws::Utils::Json::JsonView jsonValue)
GrpcRetryPolicy & WithMaxRetries(long long value)
bool TcpRetryEventsHasBeenSet() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue