AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
HttpRetryPolicy.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/core/utils/memory/stl/AWSString.h>
11#include <aws/appmesh/model/TcpRetryPolicyEvent.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
42 {
43 public:
44 AWS_APPMESH_API HttpRetryPolicy();
45 AWS_APPMESH_API HttpRetryPolicy(Aws::Utils::Json::JsonView jsonValue);
47 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
48
49
51
59 inline const Aws::Vector<Aws::String>& GetHttpRetryEvents() const{ return m_httpRetryEvents; }
60 inline bool HttpRetryEventsHasBeenSet() const { return m_httpRetryEventsHasBeenSet; }
61 inline void SetHttpRetryEvents(const Aws::Vector<Aws::String>& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents = value; }
62 inline void SetHttpRetryEvents(Aws::Vector<Aws::String>&& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents = std::move(value); }
64 inline HttpRetryPolicy& WithHttpRetryEvents(Aws::Vector<Aws::String>&& value) { SetHttpRetryEvents(std::move(value)); return *this;}
65 inline HttpRetryPolicy& AddHttpRetryEvents(const Aws::String& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(value); return *this; }
66 inline HttpRetryPolicy& AddHttpRetryEvents(Aws::String&& value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(std::move(value)); return *this; }
67 inline HttpRetryPolicy& AddHttpRetryEvents(const char* value) { m_httpRetryEventsHasBeenSet = true; m_httpRetryEvents.push_back(value); return *this; }
69
71
74 inline long long GetMaxRetries() const{ return m_maxRetries; }
75 inline bool MaxRetriesHasBeenSet() const { return m_maxRetriesHasBeenSet; }
76 inline void SetMaxRetries(long long value) { m_maxRetriesHasBeenSet = true; m_maxRetries = value; }
77 inline HttpRetryPolicy& WithMaxRetries(long long value) { SetMaxRetries(value); return *this;}
79
81
84 inline const Duration& GetPerRetryTimeout() const{ return m_perRetryTimeout; }
85 inline bool PerRetryTimeoutHasBeenSet() const { return m_perRetryTimeoutHasBeenSet; }
86 inline void SetPerRetryTimeout(const Duration& value) { m_perRetryTimeoutHasBeenSet = true; m_perRetryTimeout = value; }
87 inline void SetPerRetryTimeout(Duration&& value) { m_perRetryTimeoutHasBeenSet = true; m_perRetryTimeout = std::move(value); }
88 inline HttpRetryPolicy& WithPerRetryTimeout(const Duration& value) { SetPerRetryTimeout(value); return *this;}
89 inline HttpRetryPolicy& WithPerRetryTimeout(Duration&& value) { SetPerRetryTimeout(std::move(value)); return *this;}
91
93
98 inline const Aws::Vector<TcpRetryPolicyEvent>& GetTcpRetryEvents() const{ return m_tcpRetryEvents; }
99 inline bool TcpRetryEventsHasBeenSet() const { return m_tcpRetryEventsHasBeenSet; }
100 inline void SetTcpRetryEvents(const Aws::Vector<TcpRetryPolicyEvent>& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents = value; }
101 inline void SetTcpRetryEvents(Aws::Vector<TcpRetryPolicyEvent>&& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents = std::move(value); }
104 inline HttpRetryPolicy& AddTcpRetryEvents(const TcpRetryPolicyEvent& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents.push_back(value); return *this; }
105 inline HttpRetryPolicy& AddTcpRetryEvents(TcpRetryPolicyEvent&& value) { m_tcpRetryEventsHasBeenSet = true; m_tcpRetryEvents.push_back(std::move(value)); return *this; }
107 private:
108
109 Aws::Vector<Aws::String> m_httpRetryEvents;
110 bool m_httpRetryEventsHasBeenSet = false;
111
112 long long m_maxRetries;
113 bool m_maxRetriesHasBeenSet = false;
114
115 Duration m_perRetryTimeout;
116 bool m_perRetryTimeoutHasBeenSet = false;
117
118 Aws::Vector<TcpRetryPolicyEvent> m_tcpRetryEvents;
119 bool m_tcpRetryEventsHasBeenSet = false;
120 };
121
122} // namespace Model
123} // namespace AppMesh
124} // namespace Aws
const Aws::Vector< Aws::String > & GetHttpRetryEvents() const
HttpRetryPolicy & AddHttpRetryEvents(const Aws::String &value)
AWS_APPMESH_API HttpRetryPolicy(Aws::Utils::Json::JsonView jsonValue)
void SetPerRetryTimeout(const Duration &value)
AWS_APPMESH_API HttpRetryPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
HttpRetryPolicy & AddTcpRetryEvents(const TcpRetryPolicyEvent &value)
HttpRetryPolicy & WithHttpRetryEvents(const Aws::Vector< Aws::String > &value)
HttpRetryPolicy & WithPerRetryTimeout(Duration &&value)
void SetHttpRetryEvents(const Aws::Vector< Aws::String > &value)
void SetTcpRetryEvents(const Aws::Vector< TcpRetryPolicyEvent > &value)
HttpRetryPolicy & AddTcpRetryEvents(TcpRetryPolicyEvent &&value)
HttpRetryPolicy & AddHttpRetryEvents(const char *value)
HttpRetryPolicy & WithMaxRetries(long long value)
HttpRetryPolicy & WithPerRetryTimeout(const Duration &value)
HttpRetryPolicy & WithHttpRetryEvents(Aws::Vector< Aws::String > &&value)
void SetTcpRetryEvents(Aws::Vector< TcpRetryPolicyEvent > &&value)
const Duration & GetPerRetryTimeout() const
void SetHttpRetryEvents(Aws::Vector< Aws::String > &&value)
const Aws::Vector< TcpRetryPolicyEvent > & GetTcpRetryEvents() const
HttpRetryPolicy & WithTcpRetryEvents(const Aws::Vector< TcpRetryPolicyEvent > &value)
void SetPerRetryTimeout(Duration &&value)
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
HttpRetryPolicy & WithTcpRetryEvents(Aws::Vector< TcpRetryPolicyEvent > &&value)
HttpRetryPolicy & AddHttpRetryEvents(Aws::String &&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