33namespace AsyncAws \CloudFormation \ValueObject ;
44
55use AsyncAws \CloudFormation \Enum \Capability ;
6+ use AsyncAws \CloudFormation \Enum \DeletionMode ;
67use AsyncAws \CloudFormation \Enum \DetailedStatus ;
78use AsyncAws \CloudFormation \Enum \StackStatus ;
89use AsyncAws \Core \Exception \InvalidArgument ;
@@ -201,6 +202,16 @@ final class Stack
201202 */
202203 private $ retainExceptOnCreate ;
203204
205+ /**
206+ * Specifies the deletion mode for the stack. Possible values are:
207+ *
208+ * - `STANDARD` - Use the standard behavior. Specifying this value is the same as not specifying this parameter.
209+ * - `FORCE_DELETE_STACK` - Delete the stack if it's stuck in a `DELETE_FAILED` state due to resource deletion failure.
210+ *
211+ * @var DeletionMode::*|null
212+ */
213+ private $ deletionMode ;
214+
204215 /**
205216 * The detailed status of the resource or stack. If `CONFIGURATION_COMPLETE` is present, the resource or resource
206217 * configuration phase has completed and the stabilization of the resources is in progress. The stack sets
@@ -238,6 +249,7 @@ final class Stack
238249 * RootId?: null|string,
239250 * DriftInformation?: null|StackDriftInformation|array,
240251 * RetainExceptOnCreate?: null|bool,
252+ * DeletionMode?: null|DeletionMode::*,
241253 * DetailedStatus?: null|DetailedStatus::*,
242254 * } $input
243255 */
@@ -266,6 +278,7 @@ public function __construct(array $input)
266278 $ this ->rootId = $ input ['RootId ' ] ?? null ;
267279 $ this ->driftInformation = isset ($ input ['DriftInformation ' ]) ? StackDriftInformation::create ($ input ['DriftInformation ' ]) : null ;
268280 $ this ->retainExceptOnCreate = $ input ['RetainExceptOnCreate ' ] ?? null ;
281+ $ this ->deletionMode = $ input ['DeletionMode ' ] ?? null ;
269282 $ this ->detailedStatus = $ input ['DetailedStatus ' ] ?? null ;
270283 }
271284
@@ -294,6 +307,7 @@ public function __construct(array $input)
294307 * RootId?: null|string,
295308 * DriftInformation?: null|StackDriftInformation|array,
296309 * RetainExceptOnCreate?: null|bool,
310+ * DeletionMode?: null|DeletionMode::*,
297311 * DetailedStatus?: null|DetailedStatus::*,
298312 * }|Stack $input
299313 */
@@ -320,6 +334,14 @@ public function getCreationTime(): \DateTimeImmutable
320334 return $ this ->creationTime ;
321335 }
322336
337+ /**
338+ * @return DeletionMode::*|null
339+ */
340+ public function getDeletionMode (): ?string
341+ {
342+ return $ this ->deletionMode ;
343+ }
344+
323345 public function getDeletionTime (): ?\DateTimeImmutable
324346 {
325347 return $ this ->deletionTime ;
0 commit comments