7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/mpa/MPA_EXPORTS.h>
12#include <aws/mpa/model/ActionCompletionStrategy.h>
13#include <aws/mpa/model/AdditionalSecurityRequirement.h>
14#include <aws/mpa/model/ApprovalStrategyResponse.h>
15#include <aws/mpa/model/GetSessionResponseApproverResponse.h>
16#include <aws/mpa/model/SessionExecutionStatus.h>
17#include <aws/mpa/model/SessionStatus.h>
18#include <aws/mpa/model/SessionStatusCode.h>
23template <
typename RESULT_TYPE>
24class AmazonWebServiceResult;
44 template <
typename SessionArnT = Aws::String>
46 m_sessionArnHasBeenSet =
true;
47 m_sessionArn = std::forward<SessionArnT>(value);
49 template <
typename SessionArnT = Aws::String>
61 template <
typename ApprovalTeamArnT = Aws::String>
63 m_approvalTeamArnHasBeenSet =
true;
64 m_approvalTeamArn = std::forward<ApprovalTeamArnT>(value);
66 template <
typename ApprovalTeamArnT = Aws::String>
78 template <
typename ApprovalTeamNameT = Aws::String>
80 m_approvalTeamNameHasBeenSet =
true;
81 m_approvalTeamName = std::forward<ApprovalTeamNameT>(value);
83 template <
typename ApprovalTeamNameT = Aws::String>
95 template <
typename ProtectedResourceArnT = Aws::String>
97 m_protectedResourceArnHasBeenSet =
true;
98 m_protectedResourceArn = std::forward<ProtectedResourceArnT>(value);
100 template <
typename ProtectedResourceArnT = Aws::String>
113 template <
typename ApprovalStrategyT = ApprovalStrategyResponse>
115 m_approvalStrategyHasBeenSet =
true;
116 m_approvalStrategy = std::forward<ApprovalStrategyT>(value);
118 template <
typename ApprovalStrategyT = ApprovalStrategyResponse>
131 m_numberOfApproversHasBeenSet =
true;
132 m_numberOfApprovers = value;
145 template <
typename InitiationTimeT = Aws::Utils::DateTime>
147 m_initiationTimeHasBeenSet =
true;
148 m_initiationTime = std::forward<InitiationTimeT>(value);
150 template <
typename InitiationTimeT = Aws::Utils::DateTime>
162 template <
typename ExpirationTimeT = Aws::Utils::DateTime>
164 m_expirationTimeHasBeenSet =
true;
165 m_expirationTime = std::forward<ExpirationTimeT>(value);
167 template <
typename ExpirationTimeT = Aws::Utils::DateTime>
179 template <
typename CompletionTimeT = Aws::Utils::DateTime>
181 m_completionTimeHasBeenSet =
true;
182 m_completionTime = std::forward<CompletionTimeT>(value);
184 template <
typename CompletionTimeT = Aws::Utils::DateTime>
196 template <
typename DescriptionT = Aws::String>
198 m_descriptionHasBeenSet =
true;
199 m_description = std::forward<DescriptionT>(value);
201 template <
typename DescriptionT = Aws::String>
213 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
215 m_metadataHasBeenSet =
true;
216 m_metadata = std::forward<MetadataT>(value);
218 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
223 template <
typename MetadataKeyT = Aws::String,
typename MetadataValueT = Aws::String>
225 m_metadataHasBeenSet =
true;
226 m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
238 m_statusHasBeenSet =
true;
253 m_statusCodeHasBeenSet =
true;
254 m_statusCode = value;
267 template <
typename StatusMessageT = Aws::String>
269 m_statusMessageHasBeenSet =
true;
270 m_statusMessage = std::forward<StatusMessageT>(value);
272 template <
typename StatusMessageT = Aws::String>
286 m_executionStatusHasBeenSet =
true;
287 m_executionStatus = value;
300 template <
typename ActionNameT = Aws::String>
302 m_actionNameHasBeenSet =
true;
303 m_actionName = std::forward<ActionNameT>(value);
305 template <
typename ActionNameT = Aws::String>
319 template <
typename RequesterServicePrincipalT = Aws::String>
321 m_requesterServicePrincipalHasBeenSet =
true;
322 m_requesterServicePrincipal = std::forward<RequesterServicePrincipalT>(value);
324 template <
typename RequesterServicePrincipalT = Aws::String>
338 template <
typename RequesterPrincipalArnT = Aws::String>
340 m_requesterPrincipalArnHasBeenSet =
true;
341 m_requesterPrincipalArn = std::forward<RequesterPrincipalArnT>(value);
343 template <
typename RequesterPrincipalArnT = Aws::String>
355 template <
typename RequesterAccountIdT = Aws::String>
357 m_requesterAccountIdHasBeenSet =
true;
358 m_requesterAccountId = std::forward<RequesterAccountIdT>(value);
360 template <
typename RequesterAccountIdT = Aws::String>
372 template <
typename RequesterRegionT = Aws::String>
374 m_requesterRegionHasBeenSet =
true;
375 m_requesterRegion = std::forward<RequesterRegionT>(value);
377 template <
typename RequesterRegionT = Aws::String>
389 template <
typename RequesterCommentT = Aws::String>
391 m_requesterCommentHasBeenSet =
true;
392 m_requesterComment = std::forward<RequesterCommentT>(value);
394 template <
typename RequesterCommentT = Aws::String>
409 m_actionCompletionStrategyHasBeenSet =
true;
410 m_actionCompletionStrategy = value;
424 template <
typename ApproverResponsesT = Aws::Vector<GetSessionResponseApproverResponse>>
426 m_approverResponsesHasBeenSet =
true;
427 m_approverResponses = std::forward<ApproverResponsesT>(value);
429 template <
typename ApproverResponsesT = Aws::Vector<GetSessionResponseApproverResponse>>
434 template <
typename ApproverResponsesT = GetSessionResponseApproverResponse>
436 m_approverResponsesHasBeenSet =
true;
437 m_approverResponses.emplace_back(std::forward<ApproverResponsesT>(value));
448 return m_additionalSecurityRequirements;
450 template <
typename AdditionalSecurityRequirementsT = Aws::Vector<AdditionalSecurityRequirement>>
452 m_additionalSecurityRequirementsHasBeenSet =
true;
453 m_additionalSecurityRequirements = std::forward<AdditionalSecurityRequirementsT>(value);
455 template <
typename AdditionalSecurityRequirementsT = Aws::Vector<AdditionalSecurityRequirement>>
461 m_additionalSecurityRequirementsHasBeenSet =
true;
462 m_additionalSecurityRequirements.push_back(value);
470 template <
typename RequestIdT = Aws::String>
472 m_requestIdHasBeenSet =
true;
473 m_requestId = std::forward<RequestIdT>(value);
475 template <
typename RequestIdT = Aws::String>
492 int m_numberOfApprovers{0};
531 bool m_sessionArnHasBeenSet =
false;
532 bool m_approvalTeamArnHasBeenSet =
false;
533 bool m_approvalTeamNameHasBeenSet =
false;
534 bool m_protectedResourceArnHasBeenSet =
false;
535 bool m_approvalStrategyHasBeenSet =
false;
536 bool m_numberOfApproversHasBeenSet =
false;
537 bool m_initiationTimeHasBeenSet =
false;
538 bool m_expirationTimeHasBeenSet =
false;
539 bool m_completionTimeHasBeenSet =
false;
540 bool m_descriptionHasBeenSet =
false;
541 bool m_metadataHasBeenSet =
false;
542 bool m_statusHasBeenSet =
false;
543 bool m_statusCodeHasBeenSet =
false;
544 bool m_statusMessageHasBeenSet =
false;
545 bool m_executionStatusHasBeenSet =
false;
546 bool m_actionNameHasBeenSet =
false;
547 bool m_requesterServicePrincipalHasBeenSet =
false;
548 bool m_requesterPrincipalArnHasBeenSet =
false;
549 bool m_requesterAccountIdHasBeenSet =
false;
550 bool m_requesterRegionHasBeenSet =
false;
551 bool m_requesterCommentHasBeenSet =
false;
552 bool m_actionCompletionStrategyHasBeenSet =
false;
553 bool m_approverResponsesHasBeenSet =
false;
554 bool m_additionalSecurityRequirementsHasBeenSet =
false;
555 bool m_requestIdHasBeenSet =
false;
GetSessionResult & AddApproverResponses(ApproverResponsesT &&value)
const Aws::Vector< GetSessionResponseApproverResponse > & GetApproverResponses() const
void SetApprovalTeamArn(ApprovalTeamArnT &&value)
const Aws::String & GetRequesterPrincipalArn() const
GetSessionResult & WithExpirationTime(ExpirationTimeT &&value)
void SetCompletionTime(CompletionTimeT &&value)
const ApprovalStrategyResponse & GetApprovalStrategy() const
void SetApprovalTeamName(ApprovalTeamNameT &&value)
AWS_MPA_API GetSessionResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
SessionStatus GetStatus() const
GetSessionResult & WithApprovalStrategy(ApprovalStrategyT &&value)
const Aws::String & GetRequesterComment() const
void SetRequesterServicePrincipal(RequesterServicePrincipalT &&value)
void SetStatus(SessionStatus value)
void SetNumberOfApprovers(int value)
GetSessionResult & WithActionCompletionStrategy(ActionCompletionStrategy value)
const Aws::String & GetProtectedResourceArn() const
const Aws::String & GetApprovalTeamArn() const
void SetApprovalStrategy(ApprovalStrategyT &&value)
void SetStatusMessage(StatusMessageT &&value)
const Aws::String & GetRequesterServicePrincipal() const
GetSessionResult & WithExecutionStatus(SessionExecutionStatus value)
void SetInitiationTime(InitiationTimeT &&value)
void SetRequesterAccountId(RequesterAccountIdT &&value)
GetSessionResult & WithInitiationTime(InitiationTimeT &&value)
void SetExpirationTime(ExpirationTimeT &&value)
AWS_MPA_API GetSessionResult()=default
GetSessionResult & WithRequesterAccountId(RequesterAccountIdT &&value)
const Aws::Utils::DateTime & GetInitiationTime() const
const Aws::String & GetDescription() const
ActionCompletionStrategy GetActionCompletionStrategy() const
const Aws::Utils::DateTime & GetExpirationTime() const
const Aws::String & GetApprovalTeamName() const
GetSessionResult & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
void SetProtectedResourceArn(ProtectedResourceArnT &&value)
const Aws::String & GetRequestId() const
GetSessionResult & WithStatus(SessionStatus value)
void SetActionName(ActionNameT &&value)
GetSessionResult & WithStatusMessage(StatusMessageT &&value)
GetSessionResult & WithRequesterComment(RequesterCommentT &&value)
GetSessionResult & AddAdditionalSecurityRequirements(AdditionalSecurityRequirement value)
GetSessionResult & WithRequesterRegion(RequesterRegionT &&value)
AWS_MPA_API GetSessionResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetSessionResult & WithApproverResponses(ApproverResponsesT &&value)
void SetRequestId(RequestIdT &&value)
void SetStatusCode(SessionStatusCode value)
void SetRequesterPrincipalArn(RequesterPrincipalArnT &&value)
GetSessionResult & WithProtectedResourceArn(ProtectedResourceArnT &&value)
const Aws::Vector< AdditionalSecurityRequirement > & GetAdditionalSecurityRequirements() const
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
GetSessionResult & WithApprovalTeamName(ApprovalTeamNameT &&value)
GetSessionResult & WithMetadata(MetadataT &&value)
GetSessionResult & WithRequesterServicePrincipal(RequesterServicePrincipalT &&value)
GetSessionResult & WithStatusCode(SessionStatusCode value)
void SetApproverResponses(ApproverResponsesT &&value)
GetSessionResult & WithRequesterPrincipalArn(RequesterPrincipalArnT &&value)
void SetRequesterComment(RequesterCommentT &&value)
const Aws::String & GetRequesterRegion() const
GetSessionResult & WithCompletionTime(CompletionTimeT &&value)
void SetExecutionStatus(SessionExecutionStatus value)
const Aws::String & GetActionName() const
void SetAdditionalSecurityRequirements(AdditionalSecurityRequirementsT &&value)
void SetRequesterRegion(RequesterRegionT &&value)
void SetActionCompletionStrategy(ActionCompletionStrategy value)
GetSessionResult & WithDescription(DescriptionT &&value)
GetSessionResult & WithActionName(ActionNameT &&value)
const Aws::String & GetStatusMessage() const
GetSessionResult & WithAdditionalSecurityRequirements(AdditionalSecurityRequirementsT &&value)
GetSessionResult & WithRequestId(RequestIdT &&value)
SessionExecutionStatus GetExecutionStatus() const
GetSessionResult & WithNumberOfApprovers(int value)
int GetNumberOfApprovers() const
const Aws::String & GetRequesterAccountId() const
SessionStatusCode GetStatusCode() const
GetSessionResult & WithSessionArn(SessionArnT &&value)
const Aws::Utils::DateTime & GetCompletionTime() const
const Aws::String & GetSessionArn() const
GetSessionResult & WithApprovalTeamArn(ApprovalTeamArnT &&value)
void SetMetadata(MetadataT &&value)
void SetDescription(DescriptionT &&value)
void SetSessionArn(SessionArnT &&value)
AdditionalSecurityRequirement
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue