Skip to content

Commit 1b0f1c1

Browse files
Added support for publishing detailed metrics to CloudWatch for operational monitoring of collaborations, including query performance and resource utilization.
This change introduces "Roles" attribute for User entities supported by AWS Identity Store SDK.
1 parent 483f4a5 commit 1b0f1c1

File tree

22 files changed

+563
-130
lines changed

22 files changed

+563
-130
lines changed

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.11.720
1+
1.11.721

generated/src/aws-cpp-sdk-cleanrooms/include/aws/cleanrooms/model/Collaboration.h

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,24 @@ class Collaboration {
362362
return *this;
363363
}
364364
///@}
365+
366+
///@{
367+
/**
368+
* <p>An indicator as to whether metrics are enabled for the collaboration.</p>
369+
* <p>When <code>true</code>, collaboration members can opt in to Amazon CloudWatch
370+
* metrics for their membership queries.</p>
371+
*/
372+
inline bool GetIsMetricsEnabled() const { return m_isMetricsEnabled; }
373+
inline bool IsMetricsEnabledHasBeenSet() const { return m_isMetricsEnabledHasBeenSet; }
374+
inline void SetIsMetricsEnabled(bool value) {
375+
m_isMetricsEnabledHasBeenSet = true;
376+
m_isMetricsEnabled = value;
377+
}
378+
inline Collaboration& WithIsMetricsEnabled(bool value) {
379+
SetIsMetricsEnabled(value);
380+
return *this;
381+
}
382+
///@}
365383
private:
366384
Aws::String m_id;
367385

@@ -396,6 +414,8 @@ class Collaboration {
396414
Aws::Vector<AutoApprovedChangeType> m_autoApprovedChangeTypes;
397415

398416
Aws::Vector<SupportedS3Region> m_allowedResultRegions;
417+
418+
bool m_isMetricsEnabled{false};
399419
bool m_idHasBeenSet = false;
400420
bool m_arnHasBeenSet = false;
401421
bool m_nameHasBeenSet = false;
@@ -413,6 +433,7 @@ class Collaboration {
413433
bool m_analyticsEngineHasBeenSet = false;
414434
bool m_autoApprovedChangeTypesHasBeenSet = false;
415435
bool m_allowedResultRegionsHasBeenSet = false;
436+
bool m_isMetricsEnabledHasBeenSet = false;
416437
};
417438

418439
} // namespace Model

generated/src/aws-cpp-sdk-cleanrooms/include/aws/cleanrooms/model/CreateCollaborationRequest.h

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,25 @@ class CreateCollaborationRequest : public CleanRoomsRequest {
331331
return *this;
332332
}
333333
///@}
334+
335+
///@{
336+
/**
337+
* <p>An indicator as to whether metrics have been enabled or disabled for the
338+
* collaboration.</p> <p>When <code>true</code>, collaboration members can opt in
339+
* to Amazon CloudWatch metrics for their membership queries. The default value is
340+
* <code>false</code>.</p>
341+
*/
342+
inline bool GetIsMetricsEnabled() const { return m_isMetricsEnabled; }
343+
inline bool IsMetricsEnabledHasBeenSet() const { return m_isMetricsEnabledHasBeenSet; }
344+
inline void SetIsMetricsEnabled(bool value) {
345+
m_isMetricsEnabledHasBeenSet = true;
346+
m_isMetricsEnabled = value;
347+
}
348+
inline CreateCollaborationRequest& WithIsMetricsEnabled(bool value) {
349+
SetIsMetricsEnabled(value);
350+
return *this;
351+
}
352+
///@}
334353
private:
335354
Aws::Vector<MemberSpecification> m_members;
336355

@@ -359,6 +378,8 @@ class CreateCollaborationRequest : public CleanRoomsRequest {
359378
Aws::Vector<AutoApprovedChangeType> m_autoApprovedChangeRequestTypes;
360379

361380
Aws::Vector<SupportedS3Region> m_allowedResultRegions;
381+
382+
bool m_isMetricsEnabled{false};
362383
bool m_membersHasBeenSet = false;
363384
bool m_nameHasBeenSet = false;
364385
bool m_descriptionHasBeenSet = false;
@@ -373,6 +394,7 @@ class CreateCollaborationRequest : public CleanRoomsRequest {
373394
bool m_analyticsEngineHasBeenSet = false;
374395
bool m_autoApprovedChangeRequestTypesHasBeenSet = false;
375396
bool m_allowedResultRegionsHasBeenSet = false;
397+
bool m_isMetricsEnabledHasBeenSet = false;
376398
};
377399

378400
} // namespace Model

generated/src/aws-cpp-sdk-cleanrooms/include/aws/cleanrooms/model/CreateMembershipRequest.h

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,28 @@ class CreateMembershipRequest : public CleanRoomsRequest {
178178
return *this;
179179
}
180180
///@}
181+
182+
///@{
183+
/**
184+
* <p>An indicator as to whether Amazon CloudWatch metrics have been enabled or
185+
* disabled for the membership.</p> <p>Amazon CloudWatch metrics are only available
186+
* when the collaboration has metrics enabled. This option can be set by
187+
* collaboration members who have the ability to run queries (analysis runners) or
188+
* by members who are configured as payers.</p> <p>When <code>true</code>, metrics
189+
* about query execution are collected in Amazon CloudWatch. The default value is
190+
* <code>false</code>.</p>
191+
*/
192+
inline bool GetIsMetricsEnabled() const { return m_isMetricsEnabled; }
193+
inline bool IsMetricsEnabledHasBeenSet() const { return m_isMetricsEnabledHasBeenSet; }
194+
inline void SetIsMetricsEnabled(bool value) {
195+
m_isMetricsEnabledHasBeenSet = true;
196+
m_isMetricsEnabled = value;
197+
}
198+
inline CreateMembershipRequest& WithIsMetricsEnabled(bool value) {
199+
SetIsMetricsEnabled(value);
200+
return *this;
201+
}
202+
///@}
181203
private:
182204
Aws::String m_collaborationIdentifier;
183205

@@ -192,13 +214,16 @@ class CreateMembershipRequest : public CleanRoomsRequest {
192214
MembershipProtectedJobResultConfiguration m_defaultJobResultConfiguration;
193215

194216
MembershipPaymentConfiguration m_paymentConfiguration;
217+
218+
bool m_isMetricsEnabled{false};
195219
bool m_collaborationIdentifierHasBeenSet = false;
196220
bool m_queryLogStatusHasBeenSet = false;
197221
bool m_jobLogStatusHasBeenSet = false;
198222
bool m_tagsHasBeenSet = false;
199223
bool m_defaultResultConfigurationHasBeenSet = false;
200224
bool m_defaultJobResultConfigurationHasBeenSet = false;
201225
bool m_paymentConfigurationHasBeenSet = false;
226+
bool m_isMetricsEnabledHasBeenSet = false;
202227
};
203228

204229
} // namespace Model

generated/src/aws-cpp-sdk-cleanrooms/include/aws/cleanrooms/model/Membership.h

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,24 @@ class Membership {
356356
return *this;
357357
}
358358
///@}
359+
360+
///@{
361+
/**
362+
* <p>An indicator as to whether Amazon CloudWatch metrics are enabled for the
363+
* membership.</p> <p>When <code>true</code>, metrics about query execution are
364+
* collected in Amazon CloudWatch.</p>
365+
*/
366+
inline bool GetIsMetricsEnabled() const { return m_isMetricsEnabled; }
367+
inline bool IsMetricsEnabledHasBeenSet() const { return m_isMetricsEnabledHasBeenSet; }
368+
inline void SetIsMetricsEnabled(bool value) {
369+
m_isMetricsEnabledHasBeenSet = true;
370+
m_isMetricsEnabled = value;
371+
}
372+
inline Membership& WithIsMetricsEnabled(bool value) {
373+
SetIsMetricsEnabled(value);
374+
return *this;
375+
}
376+
///@}
359377
private:
360378
Aws::String m_id;
361379

@@ -390,6 +408,8 @@ class Membership {
390408
MembershipProtectedJobResultConfiguration m_defaultJobResultConfiguration;
391409

392410
MembershipPaymentConfiguration m_paymentConfiguration;
411+
412+
bool m_isMetricsEnabled{false};
393413
bool m_idHasBeenSet = false;
394414
bool m_arnHasBeenSet = false;
395415
bool m_collaborationArnHasBeenSet = false;
@@ -407,6 +427,7 @@ class Membership {
407427
bool m_defaultResultConfigurationHasBeenSet = false;
408428
bool m_defaultJobResultConfigurationHasBeenSet = false;
409429
bool m_paymentConfigurationHasBeenSet = false;
430+
bool m_isMetricsEnabledHasBeenSet = false;
410431
};
411432

412433
} // namespace Model

generated/src/aws-cpp-sdk-cleanrooms/source/model/Collaboration.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,10 @@ Collaboration& Collaboration::operator=(JsonView jsonValue) {
9696
}
9797
m_allowedResultRegionsHasBeenSet = true;
9898
}
99+
if (jsonValue.ValueExists("isMetricsEnabled")) {
100+
m_isMetricsEnabled = jsonValue.GetBool("isMetricsEnabled");
101+
m_isMetricsEnabledHasBeenSet = true;
102+
}
99103
return *this;
100104
}
101105

@@ -182,6 +186,10 @@ JsonValue Collaboration::Jsonize() const {
182186
payload.WithArray("allowedResultRegions", std::move(allowedResultRegionsJsonList));
183187
}
184188

189+
if (m_isMetricsEnabledHasBeenSet) {
190+
payload.WithBool("isMetricsEnabled", m_isMetricsEnabled);
191+
}
192+
185193
return payload;
186194
}
187195

generated/src/aws-cpp-sdk-cleanrooms/source/model/CreateCollaborationRequest.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,5 +98,9 @@ Aws::String CreateCollaborationRequest::SerializePayload() const {
9898
payload.WithArray("allowedResultRegions", std::move(allowedResultRegionsJsonList));
9999
}
100100

101+
if (m_isMetricsEnabledHasBeenSet) {
102+
payload.WithBool("isMetricsEnabled", m_isMetricsEnabled);
103+
}
104+
101105
return payload.View().WriteReadable();
102106
}

generated/src/aws-cpp-sdk-cleanrooms/source/model/CreateMembershipRequest.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,5 +47,9 @@ Aws::String CreateMembershipRequest::SerializePayload() const {
4747
payload.WithObject("paymentConfiguration", m_paymentConfiguration.Jsonize());
4848
}
4949

50+
if (m_isMetricsEnabledHasBeenSet) {
51+
payload.WithBool("isMetricsEnabled", m_isMetricsEnabled);
52+
}
53+
5054
return payload.View().WriteReadable();
5155
}

generated/src/aws-cpp-sdk-cleanrooms/source/model/Membership.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,10 @@ Membership& Membership::operator=(JsonView jsonValue) {
8989
m_paymentConfiguration = jsonValue.GetObject("paymentConfiguration");
9090
m_paymentConfigurationHasBeenSet = true;
9191
}
92+
if (jsonValue.ValueExists("isMetricsEnabled")) {
93+
m_isMetricsEnabled = jsonValue.GetBool("isMetricsEnabled");
94+
m_isMetricsEnabledHasBeenSet = true;
95+
}
9296
return *this;
9397
}
9498

@@ -168,6 +172,10 @@ JsonValue Membership::Jsonize() const {
168172
payload.WithObject("paymentConfiguration", m_paymentConfiguration.Jsonize());
169173
}
170174

175+
if (m_isMetricsEnabledHasBeenSet) {
176+
payload.WithBool("isMetricsEnabled", m_isMetricsEnabled);
177+
}
178+
171179
return payload;
172180
}
173181

generated/src/aws-cpp-sdk-identitystore/include/aws/identitystore/model/CreateUserRequest.h

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#include <aws/identitystore/model/Name.h>
1616
#include <aws/identitystore/model/PhoneNumber.h>
1717
#include <aws/identitystore/model/Photo.h>
18+
#include <aws/identitystore/model/Role.h>
1819

1920
#include <utility>
2021

@@ -386,6 +387,31 @@ class CreateUserRequest : public IdentityStoreRequest {
386387
}
387388
///@}
388389

390+
///@{
391+
/**
392+
* <p>A list of <code>Role</code> objects containing roles associated with the
393+
* user.</p>
394+
*/
395+
inline const Aws::Vector<Role>& GetRoles() const { return m_roles; }
396+
inline bool RolesHasBeenSet() const { return m_rolesHasBeenSet; }
397+
template <typename RolesT = Aws::Vector<Role>>
398+
void SetRoles(RolesT&& value) {
399+
m_rolesHasBeenSet = true;
400+
m_roles = std::forward<RolesT>(value);
401+
}
402+
template <typename RolesT = Aws::Vector<Role>>
403+
CreateUserRequest& WithRoles(RolesT&& value) {
404+
SetRoles(std::forward<RolesT>(value));
405+
return *this;
406+
}
407+
template <typename RolesT = Role>
408+
CreateUserRequest& AddRoles(RolesT&& value) {
409+
m_rolesHasBeenSet = true;
410+
m_roles.emplace_back(std::forward<RolesT>(value));
411+
return *this;
412+
}
413+
///@}
414+
389415
///@{
390416
/**
391417
* <p>A map with additional attribute extensions for the user. Each map key
@@ -448,6 +474,8 @@ class CreateUserRequest : public IdentityStoreRequest {
448474

449475
Aws::String m_birthdate;
450476

477+
Aws::Vector<Role> m_roles;
478+
451479
Aws::Map<Aws::String, Aws::Utils::Document> m_extensions;
452480
bool m_identityStoreIdHasBeenSet = false;
453481
bool m_userNameHasBeenSet = false;
@@ -466,6 +494,7 @@ class CreateUserRequest : public IdentityStoreRequest {
466494
bool m_photosHasBeenSet = false;
467495
bool m_websiteHasBeenSet = false;
468496
bool m_birthdateHasBeenSet = false;
497+
bool m_rolesHasBeenSet = false;
469498
bool m_extensionsHasBeenSet = false;
470499
};
471500

0 commit comments

Comments
 (0)