AWS SDK for C++

AWS SDK for C++ Version 1.11.742

Loading...
Searching...
No Matches
TableReference.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AthenaTableReference.h>
9#include <aws/cleanrooms/model/GlueTableReference.h>
10#include <aws/cleanrooms/model/SnowflakeTableReference.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CleanRooms {
22namespace Model {
23
31 public:
32 AWS_CLEANROOMS_API TableReference() = default;
33 AWS_CLEANROOMS_API TableReference(Aws::Utils::Json::JsonView jsonValue);
34 AWS_CLEANROOMS_API TableReference& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const GlueTableReference& GetGlue() const { return m_glue; }
43 inline bool GlueHasBeenSet() const { return m_glueHasBeenSet; }
44 template <typename GlueT = GlueTableReference>
45 void SetGlue(GlueT&& value) {
46 m_glueHasBeenSet = true;
47 m_glue = std::forward<GlueT>(value);
48 }
49 template <typename GlueT = GlueTableReference>
50 TableReference& WithGlue(GlueT&& value) {
51 SetGlue(std::forward<GlueT>(value));
52 return *this;
53 }
55
57
61 inline const SnowflakeTableReference& GetSnowflake() const { return m_snowflake; }
62 inline bool SnowflakeHasBeenSet() const { return m_snowflakeHasBeenSet; }
63 template <typename SnowflakeT = SnowflakeTableReference>
64 void SetSnowflake(SnowflakeT&& value) {
65 m_snowflakeHasBeenSet = true;
66 m_snowflake = std::forward<SnowflakeT>(value);
67 }
68 template <typename SnowflakeT = SnowflakeTableReference>
69 TableReference& WithSnowflake(SnowflakeT&& value) {
70 SetSnowflake(std::forward<SnowflakeT>(value));
71 return *this;
72 }
74
76
80 inline const AthenaTableReference& GetAthena() const { return m_athena; }
81 inline bool AthenaHasBeenSet() const { return m_athenaHasBeenSet; }
82 template <typename AthenaT = AthenaTableReference>
83 void SetAthena(AthenaT&& value) {
84 m_athenaHasBeenSet = true;
85 m_athena = std::forward<AthenaT>(value);
86 }
87 template <typename AthenaT = AthenaTableReference>
88 TableReference& WithAthena(AthenaT&& value) {
89 SetAthena(std::forward<AthenaT>(value));
90 return *this;
91 }
93 private:
94 GlueTableReference m_glue;
95
96 SnowflakeTableReference m_snowflake;
97
98 AthenaTableReference m_athena;
99 bool m_glueHasBeenSet = false;
100 bool m_snowflakeHasBeenSet = false;
101 bool m_athenaHasBeenSet = false;
102};
103
104} // namespace Model
105} // namespace CleanRooms
106} // namespace Aws
void SetSnowflake(SnowflakeT &&value)
AWS_CLEANROOMS_API TableReference()=default
const AthenaTableReference & GetAthena() const
AWS_CLEANROOMS_API TableReference & operator=(Aws::Utils::Json::JsonView jsonValue)
const GlueTableReference & GetGlue() const
TableReference & WithSnowflake(SnowflakeT &&value)
TableReference & WithAthena(AthenaT &&value)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
TableReference & WithGlue(GlueT &&value)
const SnowflakeTableReference & GetSnowflake() const
AWS_CLEANROOMS_API TableReference(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue