7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/appmesh/model/Duration.h>
9#include <aws/appmesh/model/TcpRetryPolicyEvent.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
55 template <
typename HttpRetryEventsT = Aws::Vector<Aws::String>>
57 m_httpRetryEventsHasBeenSet =
true;
58 m_httpRetryEvents = std::forward<HttpRetryEventsT>(value);
60 template <
typename HttpRetryEventsT = Aws::Vector<Aws::String>>
65 template <
typename HttpRetryEventsT = Aws::String>
67 m_httpRetryEventsHasBeenSet =
true;
68 m_httpRetryEvents.emplace_back(std::forward<HttpRetryEventsT>(value));
80 m_maxRetriesHasBeenSet =
true;
95 template <
typename PerRetryTimeoutT = Duration>
97 m_perRetryTimeoutHasBeenSet =
true;
98 m_perRetryTimeout = std::forward<PerRetryTimeoutT>(value);
100 template <
typename PerRetryTimeoutT = Duration>
115 template <
typename TcpRetryEventsT = Aws::Vector<TcpRetryPolicyEvent>>
117 m_tcpRetryEventsHasBeenSet =
true;
118 m_tcpRetryEvents = std::forward<TcpRetryEventsT>(value);
120 template <
typename TcpRetryEventsT = Aws::Vector<TcpRetryPolicyEvent>>
126 m_tcpRetryEventsHasBeenSet =
true;
127 m_tcpRetryEvents.push_back(value);
134 long long m_maxRetries{0};
136 Duration m_perRetryTimeout;
139 bool m_httpRetryEventsHasBeenSet =
false;
140 bool m_maxRetriesHasBeenSet =
false;
141 bool m_perRetryTimeoutHasBeenSet =
false;
142 bool m_tcpRetryEventsHasBeenSet =
false;
HttpRetryPolicy & AddHttpRetryEvents(HttpRetryEventsT &&value)
bool HttpRetryEventsHasBeenSet() const
const Aws::Vector< Aws::String > & GetHttpRetryEvents() const
AWS_APPMESH_API HttpRetryPolicy(Aws::Utils::Json::JsonView jsonValue)
void SetPerRetryTimeout(PerRetryTimeoutT &&value)
void SetTcpRetryEvents(TcpRetryEventsT &&value)
AWS_APPMESH_API HttpRetryPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetMaxRetries(long long value)
HttpRetryPolicy & WithTcpRetryEvents(TcpRetryEventsT &&value)
bool PerRetryTimeoutHasBeenSet() const
AWS_APPMESH_API HttpRetryPolicy()=default
HttpRetryPolicy & WithMaxRetries(long long value)
void SetHttpRetryEvents(HttpRetryEventsT &&value)
const Duration & GetPerRetryTimeout() const
const Aws::Vector< TcpRetryPolicyEvent > & GetTcpRetryEvents() const
HttpRetryPolicy & WithHttpRetryEvents(HttpRetryEventsT &&value)
long long GetMaxRetries() const
HttpRetryPolicy & AddTcpRetryEvents(TcpRetryPolicyEvent value)
bool MaxRetriesHasBeenSet() const
HttpRetryPolicy & WithPerRetryTimeout(PerRetryTimeoutT &&value)
bool TcpRetryEventsHasBeenSet() const
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue