AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
HttpMatch.h
1
6#pragma once
7#include <aws/vpc-lattice/VPCLattice_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/vpc-lattice/model/PathMatch.h>
11#include <aws/vpc-lattice/model/HeaderMatch.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 VPCLattice
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_VPCLATTICE_API HttpMatch();
39 AWS_VPCLATTICE_API HttpMatch(Aws::Utils::Json::JsonView jsonValue);
40 AWS_VPCLATTICE_API HttpMatch& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_VPCLATTICE_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline const Aws::Vector<HeaderMatch>& GetHeaderMatches() const{ return m_headerMatches; }
50 inline bool HeaderMatchesHasBeenSet() const { return m_headerMatchesHasBeenSet; }
51 inline void SetHeaderMatches(const Aws::Vector<HeaderMatch>& value) { m_headerMatchesHasBeenSet = true; m_headerMatches = value; }
52 inline void SetHeaderMatches(Aws::Vector<HeaderMatch>&& value) { m_headerMatchesHasBeenSet = true; m_headerMatches = std::move(value); }
53 inline HttpMatch& WithHeaderMatches(const Aws::Vector<HeaderMatch>& value) { SetHeaderMatches(value); return *this;}
54 inline HttpMatch& WithHeaderMatches(Aws::Vector<HeaderMatch>&& value) { SetHeaderMatches(std::move(value)); return *this;}
55 inline HttpMatch& AddHeaderMatches(const HeaderMatch& value) { m_headerMatchesHasBeenSet = true; m_headerMatches.push_back(value); return *this; }
56 inline HttpMatch& AddHeaderMatches(HeaderMatch&& value) { m_headerMatchesHasBeenSet = true; m_headerMatches.push_back(std::move(value)); return *this; }
58
60
63 inline const Aws::String& GetMethod() const{ return m_method; }
64 inline bool MethodHasBeenSet() const { return m_methodHasBeenSet; }
65 inline void SetMethod(const Aws::String& value) { m_methodHasBeenSet = true; m_method = value; }
66 inline void SetMethod(Aws::String&& value) { m_methodHasBeenSet = true; m_method = std::move(value); }
67 inline void SetMethod(const char* value) { m_methodHasBeenSet = true; m_method.assign(value); }
68 inline HttpMatch& WithMethod(const Aws::String& value) { SetMethod(value); return *this;}
69 inline HttpMatch& WithMethod(Aws::String&& value) { SetMethod(std::move(value)); return *this;}
70 inline HttpMatch& WithMethod(const char* value) { SetMethod(value); return *this;}
72
74
77 inline const PathMatch& GetPathMatch() const{ return m_pathMatch; }
78 inline bool PathMatchHasBeenSet() const { return m_pathMatchHasBeenSet; }
79 inline void SetPathMatch(const PathMatch& value) { m_pathMatchHasBeenSet = true; m_pathMatch = value; }
80 inline void SetPathMatch(PathMatch&& value) { m_pathMatchHasBeenSet = true; m_pathMatch = std::move(value); }
81 inline HttpMatch& WithPathMatch(const PathMatch& value) { SetPathMatch(value); return *this;}
82 inline HttpMatch& WithPathMatch(PathMatch&& value) { SetPathMatch(std::move(value)); return *this;}
84 private:
85
86 Aws::Vector<HeaderMatch> m_headerMatches;
87 bool m_headerMatchesHasBeenSet = false;
88
89 Aws::String m_method;
90 bool m_methodHasBeenSet = false;
91
92 PathMatch m_pathMatch;
93 bool m_pathMatchHasBeenSet = false;
94 };
95
96} // namespace Model
97} // namespace VPCLattice
98} // namespace Aws
void SetHeaderMatches(Aws::Vector< HeaderMatch > &&value)
Definition HttpMatch.h:52
void SetHeaderMatches(const Aws::Vector< HeaderMatch > &value)
Definition HttpMatch.h:51
void SetMethod(const Aws::String &value)
Definition HttpMatch.h:65
HttpMatch & WithPathMatch(const PathMatch &value)
Definition HttpMatch.h:81
HttpMatch & WithMethod(const char *value)
Definition HttpMatch.h:70
AWS_VPCLATTICE_API HttpMatch(Aws::Utils::Json::JsonView jsonValue)
void SetPathMatch(PathMatch &&value)
Definition HttpMatch.h:80
const Aws::Vector< HeaderMatch > & GetHeaderMatches() const
Definition HttpMatch.h:49
AWS_VPCLATTICE_API HttpMatch()
AWS_VPCLATTICE_API Aws::Utils::Json::JsonValue Jsonize() const
HttpMatch & WithMethod(Aws::String &&value)
Definition HttpMatch.h:69
HttpMatch & WithPathMatch(PathMatch &&value)
Definition HttpMatch.h:82
const Aws::String & GetMethod() const
Definition HttpMatch.h:63
HttpMatch & WithHeaderMatches(const Aws::Vector< HeaderMatch > &value)
Definition HttpMatch.h:53
void SetMethod(Aws::String &&value)
Definition HttpMatch.h:66
const PathMatch & GetPathMatch() const
Definition HttpMatch.h:77
HttpMatch & AddHeaderMatches(const HeaderMatch &value)
Definition HttpMatch.h:55
HttpMatch & WithMethod(const Aws::String &value)
Definition HttpMatch.h:68
void SetPathMatch(const PathMatch &value)
Definition HttpMatch.h:79
HttpMatch & WithHeaderMatches(Aws::Vector< HeaderMatch > &&value)
Definition HttpMatch.h:54
HttpMatch & AddHeaderMatches(HeaderMatch &&value)
Definition HttpMatch.h:56
void SetMethod(const char *value)
Definition HttpMatch.h:67
AWS_VPCLATTICE_API HttpMatch & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue