AWS SDK for C++

AWS SDK for C++ Version 1.11.812

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& GetStatusDescription() const { return m_statusDescription; }
202 inline bool StatusDescriptionHasBeenSet() const { return m_statusDescriptionHasBeenSet; }
203 template <typename StatusDescriptionT = Aws::String>
205 m_statusDescriptionHasBeenSet = true;
206 m_statusDescription = std::forward<StatusDescriptionT>(value);
207 }
208 template <typename StatusDescriptionT = Aws::String>
210 SetStatusDescription(std::forward<StatusDescriptionT>(value));
211 return *this;
212 }
214
216
219 inline const Aws::String& GetRequestId() const { return m_requestId; }
220 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
221 template <typename RequestIdT = Aws::String>
222 void SetRequestId(RequestIdT&& value) {
223 m_requestIdHasBeenSet = true;
224 m_requestId = std::forward<RequestIdT>(value);
225 }
226 template <typename RequestIdT = Aws::String>
228 SetRequestId(std::forward<RequestIdT>(value));
229 return *this;
230 }
232
234
237 inline const Aws::String& GetOriginRequestId() const { return m_originRequestId; }
238 inline bool OriginRequestIdHasBeenSet() const { return m_originRequestIdHasBeenSet; }
239 template <typename OriginRequestIdT = Aws::String>
241 m_originRequestIdHasBeenSet = true;
242 m_originRequestId = std::forward<OriginRequestIdT>(value);
243 }
244 template <typename OriginRequestIdT = Aws::String>
246 SetOriginRequestId(std::forward<OriginRequestIdT>(value));
247 return *this;
248 }
250
252
255 inline const SpanAttributes& GetAttributes() const { return m_attributes; }
256 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
257 template <typename AttributesT = SpanAttributes>
259 m_attributesHasBeenSet = true;
260 m_attributes = std::forward<AttributesT>(value);
261 }
262 template <typename AttributesT = SpanAttributes>
264 SetAttributes(std::forward<AttributesT>(value));
265 return *this;
266 }
268 private:
269 Aws::String m_spanId;
270
271 Aws::String m_assistantId;
272
273 Aws::String m_sessionId;
274
275 Aws::String m_parentSpanId;
276
277 Aws::String m_spanName;
278
279 SpanType m_spanType{SpanType::NOT_SET};
280
281 Aws::Utils::DateTime m_startTimestamp{};
282
283 Aws::Utils::DateTime m_endTimestamp{};
284
286
287 Aws::String m_statusDescription;
288
289 Aws::String m_requestId;
290
291 Aws::String m_originRequestId;
292
293 SpanAttributes m_attributes;
294 bool m_spanIdHasBeenSet = false;
295 bool m_assistantIdHasBeenSet = false;
296 bool m_sessionIdHasBeenSet = false;
297 bool m_parentSpanIdHasBeenSet = false;
298 bool m_spanNameHasBeenSet = false;
299 bool m_spanTypeHasBeenSet = false;
300 bool m_startTimestampHasBeenSet = false;
301 bool m_endTimestampHasBeenSet = false;
302 bool m_statusHasBeenSet = false;
303 bool m_statusDescriptionHasBeenSet = false;
304 bool m_requestIdHasBeenSet = false;
305 bool m_originRequestIdHasBeenSet = false;
306 bool m_attributesHasBeenSet = false;
307};
308
309} // namespace Model
310} // namespace QConnect
311} // namespace Aws
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetStatusDescription(StatusDescriptionT &&value)
Definition Span.h:204
bool EndTimestampHasBeenSet() const
Definition Span.h:168
void SetRequestId(RequestIdT &&value)
Definition Span.h:222
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:220
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
bool StatusDescriptionHasBeenSet() const
Definition Span.h:202
AWS_QCONNECT_API Span()=default
Span & WithStatusDescription(StatusDescriptionT &&value)
Definition Span.h:209
Span & WithEndTimestamp(EndTimestampT &&value)
Definition Span.h:175
void SetAttributes(AttributesT &&value)
Definition Span.h:258
void SetOriginRequestId(OriginRequestIdT &&value)
Definition Span.h:240
void SetStartTimestamp(StartTimestampT &&value)
Definition Span.h:152
Span & WithSpanName(SpanNameT &&value)
Definition Span.h:123
const Aws::String & GetStatusDescription() const
Definition Span.h:201
Span & WithRequestId(RequestIdT &&value)
Definition Span.h:227
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 & GetOriginRequestId() const
Definition Span.h:237
const Aws::String & GetSpanName() const
Definition Span.h:115
const Aws::String & GetRequestId() const
Definition Span.h:219
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:255
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:256
Span & WithAttributes(AttributesT &&value)
Definition Span.h:263
const Aws::String & GetSpanId() const
Definition Span.h:43
Span & WithOriginRequestId(OriginRequestIdT &&value)
Definition Span.h:245
void SetStatus(SpanStatus value)
Definition Span.h:187
bool OriginRequestIdHasBeenSet() const
Definition Span.h:238
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