Editor/CoreAPI/StackStatus.cs (65 lines of code) (raw):

// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 using System; namespace AmazonGameLift.Editor { /// <summary> /// All statuses at https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-describing-stacks.html /// </summary> public static class StackStatus { public const string CreateComplete = "CREATE_COMPLETE"; public const string CreateFailed = "CREATE_FAILED"; public const string CreateInProgress = "CREATE_IN_PROGRESS"; public const string DeleteComplete = "DELETE_COMPLETE"; public const string DeleteFailed = "DELETE_FAILED"; public const string DeleteInProgress = "DELETE_IN_PROGRESS"; public const string ReviewInProgress = "REVIEW_IN_PROGRESS"; public const string RollbackComplete = "ROLLBACK_COMPLETE"; public const string RollbackFailed = "ROLLBACK_FAILED"; public const string RollbackInProgress = "ROLLBACK_IN_PROGRESS"; public const string UpdateComplete = "UPDATE_COMPLETE"; public const string UpdateCompleteCleanUpInProgress = "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"; public const string UpdateFailed = "UPDATE_FAILED"; public const string UpdateInProgress = "UPDATE_IN_PROGRESS"; public const string UpdateRollbackInProgress = "UPDATE_ROLLBACK_IN_PROGRESS"; public const string UpdateRollbackComplete = "UPDATE_ROLLBACK_COMPLETE"; public static bool IsStackStatusOperationDone(this string stackStatus) { if (stackStatus is null) { throw new ArgumentNullException(nameof(stackStatus)); } return stackStatus.Contains("_COMPLETE") || stackStatus.Contains("_FAILED"); } public static bool IsStackStatusFailed(this string stackStatus) { if (stackStatus is null) { throw new ArgumentNullException(nameof(stackStatus)); } return stackStatus.Contains("_FAILED"); } public static bool IsStackStatusInProgress(this string stackStatus) { if (stackStatus is null) { throw new ArgumentNullException(nameof(stackStatus)); } return stackStatus.Contains("_IN_PROGRESS"); } public static bool IsStackStatusRollback(this string stackStatus) { if (stackStatus is null) { throw new ArgumentNullException(nameof(stackStatus)); } return stackStatus.Contains("ROLLBACK"); } public static bool IsStackStatusModifiable(this string stackStatus) { if (stackStatus is null) { throw new ArgumentNullException(nameof(stackStatus)); } return stackStatus.Contains("_COMPLETE") && stackStatus != DeleteComplete && stackStatus != RollbackComplete; } } }