AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Span.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/qconnect/QConnect_EXPORTS.h>
10#include <aws/qconnect/model/SpanAttributes.h>
11#include <aws/qconnect/model/SpanStatus.h>
12#include <aws/qconnect/model/SpanType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace QConnect {
24namespace Model {
25
32class Span {
33 public:
34 AWS_QCONNECT_API Span() = default;
37 AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetSpanId() const { return m_spanId; }
44 inline bool SpanIdHasBeenSet() const { return m_spanIdHasBeenSet; }
45 template <typename SpanIdT = Aws::String>
46 void SetSpanId(SpanIdT&& value) {
47 m_spanIdHasBeenSet = true;
48 m_spanId = std::forward<SpanIdT>(value);
49 }
50 template <typename SpanIdT = Aws::String>
52 SetSpanId(std::forward<SpanIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetAssistantId() const { return m_assistantId; }
62 inline bool AssistantIdHasBeenSet() const { return m_assistantIdHasBeenSet; }
63 template <typename AssistantIdT = Aws::String>
65 m_assistantIdHasBeenSet = true;
66 m_assistantId = std::forward<AssistantIdT>(value);
67 }
68 template <typename AssistantIdT = Aws::String>
70 SetAssistantId(std::forward<AssistantIdT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetSessionId() const { return m_sessionId; }
80 inline bool SessionIdHasBeenSet() const { return m_sessionIdHasBeenSet; }
81 template <typename SessionIdT = Aws::String>
82 void SetSessionId(SessionIdT&& value) {
83 m_sessionIdHasBeenSet = true;
84 m_sessionId = std::forward<SessionIdT>(value);
85 }
86 template <typename SessionIdT = Aws::String>
88 SetSessionId(std::forward<SessionIdT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetParentSpanId() const { return m_parentSpanId; }
98 inline bool ParentSpanIdHasBeenSet() const { return m_parentSpanIdHasBeenSet; }
99 template <typename ParentSpanIdT = Aws::String>
101 m_parentSpanIdHasBeenSet = true;
102 m_parentSpanId = std::forward<ParentSpanIdT>(value);
103 }
104 template <typename ParentSpanIdT = Aws::String>
106 SetParentSpanId(std::forward<ParentSpanIdT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetSpanName() const { return m_spanName; }
116 inline bool SpanNameHasBeenSet() const { return m_spanNameHasBeenSet; }
117 template <typename SpanNameT = Aws::String>
118 void SetSpanName(SpanNameT&& value) {
119 m_spanNameHasBeenSet = true;
120 m_spanName = std::forward<SpanNameT>(value);
121 }
122 template <typename SpanNameT = Aws::String>
124 SetSpanName(std::forward<SpanNameT>(value));
125 return *this;
126 }
128
130
133 inline SpanType GetSpanType() const { return m_spanType; }
134 inline bool SpanTypeHasBeenSet() const { return m_spanTypeHasBeenSet; }
135 inline void SetSpanType(SpanType value) {
136 m_spanTypeHasBeenSet = true;
137 m_spanType = value;
138 }
139 inline Span& WithSpanType(SpanType value) {
140 SetSpanType(value);
141 return *this;
142 }
144
146
149 inline const Aws::Utils::DateTime& GetStartTimestamp() const { return m_startTimestamp; }
150 inline bool StartTimestampHasBeenSet() const { return m_startTimestampHasBeenSet; }
151 template <typename StartTimestampT = Aws::Utils::DateTime>
153 m_startTimestampHasBeenSet = true;
154 m_startTimestamp = std::forward<StartTimestampT>(value);
155 }
156 template <typename StartTimestampT = Aws::Utils::DateTime>
158 SetStartTimestamp(std::forward<StartTimestampT>(value));
159 return *this;
160 }
162
164
167 inline const Aws::Utils::DateTime& GetEndTimestamp() const { return m_endTimestamp; }
168 inline bool EndTimestampHasBeenSet() const { return m_endTimestampHasBeenSet; }
169 template <typename EndTimestampT = Aws::Utils::DateTime>
171 m_endTimestampHasBeenSet = true;
172 m_endTimestamp = std::forward<EndTimestampT>(value);
173 }
174 template <typename EndTimestampT = Aws::Utils::DateTime>
176 SetEndTimestamp(std::forward<EndTimestampT>(value));
177 return *this;
178 }
180
182
185 inline SpanStatus GetStatus() const { return m_status; }
186 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
187 inline void SetStatus(SpanStatus value) {
188 m_statusHasBeenSet = true;
189 m_status = value;
190 }
191 inline Span& WithStatus(SpanStatus value) {
192 SetStatus(value);
193 return *this;
194 }
196
198
201 inline const Aws::String& GetRequestId() const { return m_requestId; }
202 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
203 template <typename RequestIdT = Aws::String>
204 void SetRequestId(RequestIdT&& value) {
205 m_requestIdHasBeenSet = true;
206 m_requestId = std::forward<RequestIdT>(value);
207 }
208 template <typename RequestIdT = Aws::String>
210 SetRequestId(std::forward<RequestIdT>(value));
211 return *this;
212 }
214
216
219 inline const SpanAttributes& GetAttributes() const { return m_attributes; }
220 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
221 template <typename AttributesT = SpanAttributes>
223 m_attributesHasBeenSet = true;
224 m_attributes = std::forward<AttributesT>(value);
225 }
226 template <typename AttributesT = SpanAttributes>
228 SetAttributes(std::forward<AttributesT>(value));
229 return *this;
230 }
232 private:
233 Aws::String m_spanId;
234
235 Aws::String m_assistantId;
236
237 Aws::String m_sessionId;
238
239 Aws::String m_parentSpanId;
240
241 Aws::String m_spanName;
242
243 SpanType m_spanType{SpanType::NOT_SET};
244
245 Aws::Utils::DateTime m_startTimestamp{};
246
247 Aws::Utils::DateTime m_endTimestamp{};
248
250
251 Aws::String m_requestId;
252
253 SpanAttributes m_attributes;
254 bool m_spanIdHasBeenSet = false;
255 bool m_assistantIdHasBeenSet = false;
256 bool m_sessionIdHasBeenSet = false;
257 bool m_parentSpanIdHasBeenSet = false;
258 bool m_spanNameHasBeenSet = false;
259 bool m_spanTypeHasBeenSet = false;
260 bool m_startTimestampHasBeenSet = false;
261 bool m_endTimestampHasBeenSet = false;
262 bool m_statusHasBeenSet = false;
263 bool m_requestIdHasBeenSet = false;
264 bool m_attributesHasBeenSet = false;
265};
266
267} // namespace Model
268} // namespace QConnect
269} // namespace Aws
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
bool EndTimestampHasBeenSet() const
Definition Span.h:168
void SetRequestId(RequestIdT &&value)
Definition Span.h:204
void SetSpanId(SpanIdT &&value)
Definition Span.h:46
SpanStatus GetStatus() const
Definition Span.h:185
bool AssistantIdHasBeenSet() const
Definition Span.h:62
void SetSpanType(SpanType value)
Definition Span.h:135
void SetSpanName(SpanNameT &&value)
Definition Span.h:118
bool RequestIdHasBeenSet() const
Definition Span.h:202
AWS_QCONNECT_API Span & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetEndTimestamp(EndTimestampT &&value)
Definition Span.h:170
const Aws::Utils::DateTime & GetEndTimestamp() const
Definition Span.h:167
AWS_QCONNECT_API Span(Aws::Utils::Json::JsonView jsonValue)
bool StatusHasBeenSet() const
Definition Span.h:186
Span & WithStatus(SpanStatus value)
Definition Span.h:191
const Aws::Utils::DateTime & GetStartTimestamp() const
Definition Span.h:149
bool ParentSpanIdHasBeenSet() const
Definition Span.h:98
AWS_QCONNECT_API Span()=default
Span & WithEndTimestamp(EndTimestampT &&value)
Definition Span.h:175
void SetAttributes(AttributesT &&value)
Definition Span.h:222
void SetStartTimestamp(StartTimestampT &&value)
Definition Span.h:152
Span & WithSpanName(SpanNameT &&value)
Definition Span.h:123
Span & WithRequestId(RequestIdT &&value)
Definition Span.h:209
SpanType GetSpanType() const
Definition Span.h:133
bool SpanIdHasBeenSet() const
Definition Span.h:44
const Aws::String & GetParentSpanId() const
Definition Span.h:97
Span & WithSessionId(SessionIdT &&value)
Definition Span.h:87
const Aws::String & GetSessionId() const
Definition Span.h:79
const Aws::String & GetSpanName() const
Definition Span.h:115
const Aws::String & GetRequestId() const
Definition Span.h:201
bool SpanNameHasBeenSet() const
Definition Span.h:116
bool StartTimestampHasBeenSet() const
Definition Span.h:150
void SetParentSpanId(ParentSpanIdT &&value)
Definition Span.h:100
Span & WithSpanType(SpanType value)
Definition Span.h:139
void SetAssistantId(AssistantIdT &&value)
Definition Span.h:64
bool SpanTypeHasBeenSet() const
Definition Span.h:134
const SpanAttributes & GetAttributes() const
Definition Span.h:219
bool SessionIdHasBeenSet() const
Definition Span.h:80
Span & WithAssistantId(AssistantIdT &&value)
Definition Span.h:69
Span & WithSpanId(SpanIdT &&value)
Definition Span.h:51
Span & WithStartTimestamp(StartTimestampT &&value)
Definition Span.h:157
Span & WithParentSpanId(ParentSpanIdT &&value)
Definition Span.h:105
const Aws::String & GetAssistantId() const
Definition Span.h:61
void SetSessionId(SessionIdT &&value)
Definition Span.h:82
bool AttributesHasBeenSet() const
Definition Span.h:220
Span & WithAttributes(AttributesT &&value)
Definition Span.h:227
const Aws::String & GetSpanId() const
Definition Span.h:43
void SetStatus(SpanStatus value)
Definition Span.h:187
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue