{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.CloudFormation.Types.Stack where
import Amazonka.CloudFormation.Types.Capability
import Amazonka.CloudFormation.Types.Output
import Amazonka.CloudFormation.Types.Parameter
import Amazonka.CloudFormation.Types.RollbackConfiguration
import Amazonka.CloudFormation.Types.StackDriftInformation
import Amazonka.CloudFormation.Types.StackStatus
import Amazonka.CloudFormation.Types.Tag
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
data Stack = Stack'
{
Stack -> Maybe [Capability]
capabilities :: Prelude.Maybe [Capability],
Stack -> Maybe Text
changeSetId :: Prelude.Maybe Prelude.Text,
Stack -> Maybe ISO8601
deletionTime :: Prelude.Maybe Data.ISO8601,
Stack -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
Stack -> Maybe Bool
disableRollback :: Prelude.Maybe Prelude.Bool,
Stack -> Maybe StackDriftInformation
driftInformation :: Prelude.Maybe StackDriftInformation,
Stack -> Maybe Bool
enableTerminationProtection :: Prelude.Maybe Prelude.Bool,
Stack -> Maybe ISO8601
lastUpdatedTime :: Prelude.Maybe Data.ISO8601,
Stack -> Maybe [Text]
notificationARNs :: Prelude.Maybe [Prelude.Text],
Stack -> Maybe [Output]
outputs :: Prelude.Maybe [Output],
Stack -> Maybe [Parameter]
parameters :: Prelude.Maybe [Parameter],
Stack -> Maybe Text
parentId :: Prelude.Maybe Prelude.Text,
Stack -> Maybe Text
roleARN :: Prelude.Maybe Prelude.Text,
Stack -> Maybe RollbackConfiguration
rollbackConfiguration :: Prelude.Maybe RollbackConfiguration,
Stack -> Maybe Text
rootId :: Prelude.Maybe Prelude.Text,
Stack -> Maybe Text
stackId :: Prelude.Maybe Prelude.Text,
Stack -> Maybe Text
stackStatusReason :: Prelude.Maybe Prelude.Text,
Stack -> Maybe [Tag]
tags :: Prelude.Maybe [Tag],
Stack -> Maybe Natural
timeoutInMinutes :: Prelude.Maybe Prelude.Natural,
Stack -> Text
stackName :: Prelude.Text,
Stack -> ISO8601
creationTime :: Data.ISO8601,
Stack -> StackStatus
stackStatus :: StackStatus
}
deriving (Stack -> Stack -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Stack -> Stack -> Bool
$c/= :: Stack -> Stack -> Bool
== :: Stack -> Stack -> Bool
$c== :: Stack -> Stack -> Bool
Prelude.Eq, ReadPrec [Stack]
ReadPrec Stack
Int -> ReadS Stack
ReadS [Stack]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Stack]
$creadListPrec :: ReadPrec [Stack]
readPrec :: ReadPrec Stack
$creadPrec :: ReadPrec Stack
readList :: ReadS [Stack]
$creadList :: ReadS [Stack]
readsPrec :: Int -> ReadS Stack
$creadsPrec :: Int -> ReadS Stack
Prelude.Read, Int -> Stack -> ShowS
[Stack] -> ShowS
Stack -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Stack] -> ShowS
$cshowList :: [Stack] -> ShowS
show :: Stack -> String
$cshow :: Stack -> String
showsPrec :: Int -> Stack -> ShowS
$cshowsPrec :: Int -> Stack -> ShowS
Prelude.Show, forall x. Rep Stack x -> Stack
forall x. Stack -> Rep Stack x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Stack x -> Stack
$cfrom :: forall x. Stack -> Rep Stack x
Prelude.Generic)
newStack ::
Prelude.Text ->
Prelude.UTCTime ->
StackStatus ->
Stack
newStack :: Text -> UTCTime -> StackStatus -> Stack
newStack Text
pStackName_ UTCTime
pCreationTime_ StackStatus
pStackStatus_ =
Stack'
{ $sel:capabilities:Stack' :: Maybe [Capability]
capabilities = forall a. Maybe a
Prelude.Nothing,
$sel:changeSetId:Stack' :: Maybe Text
changeSetId = forall a. Maybe a
Prelude.Nothing,
$sel:deletionTime:Stack' :: Maybe ISO8601
deletionTime = forall a. Maybe a
Prelude.Nothing,
$sel:description:Stack' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:disableRollback:Stack' :: Maybe Bool
disableRollback = forall a. Maybe a
Prelude.Nothing,
$sel:driftInformation:Stack' :: Maybe StackDriftInformation
driftInformation = forall a. Maybe a
Prelude.Nothing,
$sel:enableTerminationProtection:Stack' :: Maybe Bool
enableTerminationProtection = forall a. Maybe a
Prelude.Nothing,
$sel:lastUpdatedTime:Stack' :: Maybe ISO8601
lastUpdatedTime = forall a. Maybe a
Prelude.Nothing,
$sel:notificationARNs:Stack' :: Maybe [Text]
notificationARNs = forall a. Maybe a
Prelude.Nothing,
$sel:outputs:Stack' :: Maybe [Output]
outputs = forall a. Maybe a
Prelude.Nothing,
$sel:parameters:Stack' :: Maybe [Parameter]
parameters = forall a. Maybe a
Prelude.Nothing,
$sel:parentId:Stack' :: Maybe Text
parentId = forall a. Maybe a
Prelude.Nothing,
$sel:roleARN:Stack' :: Maybe Text
roleARN = forall a. Maybe a
Prelude.Nothing,
$sel:rollbackConfiguration:Stack' :: Maybe RollbackConfiguration
rollbackConfiguration = forall a. Maybe a
Prelude.Nothing,
$sel:rootId:Stack' :: Maybe Text
rootId = forall a. Maybe a
Prelude.Nothing,
$sel:stackId:Stack' :: Maybe Text
stackId = forall a. Maybe a
Prelude.Nothing,
$sel:stackStatusReason:Stack' :: Maybe Text
stackStatusReason = forall a. Maybe a
Prelude.Nothing,
$sel:tags:Stack' :: Maybe [Tag]
tags = forall a. Maybe a
Prelude.Nothing,
$sel:timeoutInMinutes:Stack' :: Maybe Natural
timeoutInMinutes = forall a. Maybe a
Prelude.Nothing,
$sel:stackName:Stack' :: Text
stackName = Text
pStackName_,
$sel:creationTime:Stack' :: ISO8601
creationTime = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pCreationTime_,
$sel:stackStatus:Stack' :: StackStatus
stackStatus = StackStatus
pStackStatus_
}
stack_capabilities :: Lens.Lens' Stack (Prelude.Maybe [Capability])
stack_capabilities :: Lens' Stack (Maybe [Capability])
stack_capabilities = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe [Capability]
capabilities :: Maybe [Capability]
$sel:capabilities:Stack' :: Stack -> Maybe [Capability]
capabilities} -> Maybe [Capability]
capabilities) (\s :: Stack
s@Stack' {} Maybe [Capability]
a -> Stack
s {$sel:capabilities:Stack' :: Maybe [Capability]
capabilities = Maybe [Capability]
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
stack_changeSetId :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_changeSetId :: Lens' Stack (Maybe Text)
stack_changeSetId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
changeSetId :: Maybe Text
$sel:changeSetId:Stack' :: Stack -> Maybe Text
changeSetId} -> Maybe Text
changeSetId) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:changeSetId:Stack' :: Maybe Text
changeSetId = Maybe Text
a} :: Stack)
stack_deletionTime :: Lens.Lens' Stack (Prelude.Maybe Prelude.UTCTime)
stack_deletionTime :: Lens' Stack (Maybe UTCTime)
stack_deletionTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe ISO8601
deletionTime :: Maybe ISO8601
$sel:deletionTime:Stack' :: Stack -> Maybe ISO8601
deletionTime} -> Maybe ISO8601
deletionTime) (\s :: Stack
s@Stack' {} Maybe ISO8601
a -> Stack
s {$sel:deletionTime:Stack' :: Maybe ISO8601
deletionTime = Maybe ISO8601
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
stack_description :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_description :: Lens' Stack (Maybe Text)
stack_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
description :: Maybe Text
$sel:description:Stack' :: Stack -> Maybe Text
description} -> Maybe Text
description) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:description:Stack' :: Maybe Text
description = Maybe Text
a} :: Stack)
stack_disableRollback :: Lens.Lens' Stack (Prelude.Maybe Prelude.Bool)
stack_disableRollback :: Lens' Stack (Maybe Bool)
stack_disableRollback = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Bool
disableRollback :: Maybe Bool
$sel:disableRollback:Stack' :: Stack -> Maybe Bool
disableRollback} -> Maybe Bool
disableRollback) (\s :: Stack
s@Stack' {} Maybe Bool
a -> Stack
s {$sel:disableRollback:Stack' :: Maybe Bool
disableRollback = Maybe Bool
a} :: Stack)
stack_driftInformation :: Lens.Lens' Stack (Prelude.Maybe StackDriftInformation)
stack_driftInformation :: Lens' Stack (Maybe StackDriftInformation)
stack_driftInformation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe StackDriftInformation
driftInformation :: Maybe StackDriftInformation
$sel:driftInformation:Stack' :: Stack -> Maybe StackDriftInformation
driftInformation} -> Maybe StackDriftInformation
driftInformation) (\s :: Stack
s@Stack' {} Maybe StackDriftInformation
a -> Stack
s {$sel:driftInformation:Stack' :: Maybe StackDriftInformation
driftInformation = Maybe StackDriftInformation
a} :: Stack)
stack_enableTerminationProtection :: Lens.Lens' Stack (Prelude.Maybe Prelude.Bool)
stack_enableTerminationProtection :: Lens' Stack (Maybe Bool)
stack_enableTerminationProtection = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Bool
enableTerminationProtection :: Maybe Bool
$sel:enableTerminationProtection:Stack' :: Stack -> Maybe Bool
enableTerminationProtection} -> Maybe Bool
enableTerminationProtection) (\s :: Stack
s@Stack' {} Maybe Bool
a -> Stack
s {$sel:enableTerminationProtection:Stack' :: Maybe Bool
enableTerminationProtection = Maybe Bool
a} :: Stack)
stack_lastUpdatedTime :: Lens.Lens' Stack (Prelude.Maybe Prelude.UTCTime)
stack_lastUpdatedTime :: Lens' Stack (Maybe UTCTime)
stack_lastUpdatedTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe ISO8601
lastUpdatedTime :: Maybe ISO8601
$sel:lastUpdatedTime:Stack' :: Stack -> Maybe ISO8601
lastUpdatedTime} -> Maybe ISO8601
lastUpdatedTime) (\s :: Stack
s@Stack' {} Maybe ISO8601
a -> Stack
s {$sel:lastUpdatedTime:Stack' :: Maybe ISO8601
lastUpdatedTime = Maybe ISO8601
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
stack_notificationARNs :: Lens.Lens' Stack (Prelude.Maybe [Prelude.Text])
stack_notificationARNs :: Lens' Stack (Maybe [Text])
stack_notificationARNs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe [Text]
notificationARNs :: Maybe [Text]
$sel:notificationARNs:Stack' :: Stack -> Maybe [Text]
notificationARNs} -> Maybe [Text]
notificationARNs) (\s :: Stack
s@Stack' {} Maybe [Text]
a -> Stack
s {$sel:notificationARNs:Stack' :: Maybe [Text]
notificationARNs = Maybe [Text]
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
stack_outputs :: Lens.Lens' Stack (Prelude.Maybe [Output])
stack_outputs :: Lens' Stack (Maybe [Output])
stack_outputs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe [Output]
outputs :: Maybe [Output]
$sel:outputs:Stack' :: Stack -> Maybe [Output]
outputs} -> Maybe [Output]
outputs) (\s :: Stack
s@Stack' {} Maybe [Output]
a -> Stack
s {$sel:outputs:Stack' :: Maybe [Output]
outputs = Maybe [Output]
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
stack_parameters :: Lens.Lens' Stack (Prelude.Maybe [Parameter])
stack_parameters :: Lens' Stack (Maybe [Parameter])
stack_parameters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe [Parameter]
parameters :: Maybe [Parameter]
$sel:parameters:Stack' :: Stack -> Maybe [Parameter]
parameters} -> Maybe [Parameter]
parameters) (\s :: Stack
s@Stack' {} Maybe [Parameter]
a -> Stack
s {$sel:parameters:Stack' :: Maybe [Parameter]
parameters = Maybe [Parameter]
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
stack_parentId :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_parentId :: Lens' Stack (Maybe Text)
stack_parentId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
parentId :: Maybe Text
$sel:parentId:Stack' :: Stack -> Maybe Text
parentId} -> Maybe Text
parentId) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:parentId:Stack' :: Maybe Text
parentId = Maybe Text
a} :: Stack)
stack_roleARN :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_roleARN :: Lens' Stack (Maybe Text)
stack_roleARN = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
roleARN :: Maybe Text
$sel:roleARN:Stack' :: Stack -> Maybe Text
roleARN} -> Maybe Text
roleARN) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:roleARN:Stack' :: Maybe Text
roleARN = Maybe Text
a} :: Stack)
stack_rollbackConfiguration :: Lens.Lens' Stack (Prelude.Maybe RollbackConfiguration)
stack_rollbackConfiguration :: Lens' Stack (Maybe RollbackConfiguration)
stack_rollbackConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe RollbackConfiguration
rollbackConfiguration :: Maybe RollbackConfiguration
$sel:rollbackConfiguration:Stack' :: Stack -> Maybe RollbackConfiguration
rollbackConfiguration} -> Maybe RollbackConfiguration
rollbackConfiguration) (\s :: Stack
s@Stack' {} Maybe RollbackConfiguration
a -> Stack
s {$sel:rollbackConfiguration:Stack' :: Maybe RollbackConfiguration
rollbackConfiguration = Maybe RollbackConfiguration
a} :: Stack)
stack_rootId :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_rootId :: Lens' Stack (Maybe Text)
stack_rootId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
rootId :: Maybe Text
$sel:rootId:Stack' :: Stack -> Maybe Text
rootId} -> Maybe Text
rootId) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:rootId:Stack' :: Maybe Text
rootId = Maybe Text
a} :: Stack)
stack_stackId :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_stackId :: Lens' Stack (Maybe Text)
stack_stackId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
stackId :: Maybe Text
$sel:stackId:Stack' :: Stack -> Maybe Text
stackId} -> Maybe Text
stackId) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:stackId:Stack' :: Maybe Text
stackId = Maybe Text
a} :: Stack)
stack_stackStatusReason :: Lens.Lens' Stack (Prelude.Maybe Prelude.Text)
stack_stackStatusReason :: Lens' Stack (Maybe Text)
stack_stackStatusReason = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Text
stackStatusReason :: Maybe Text
$sel:stackStatusReason:Stack' :: Stack -> Maybe Text
stackStatusReason} -> Maybe Text
stackStatusReason) (\s :: Stack
s@Stack' {} Maybe Text
a -> Stack
s {$sel:stackStatusReason:Stack' :: Maybe Text
stackStatusReason = Maybe Text
a} :: Stack)
stack_tags :: Lens.Lens' Stack (Prelude.Maybe [Tag])
stack_tags :: Lens' Stack (Maybe [Tag])
stack_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe [Tag]
tags :: Maybe [Tag]
$sel:tags:Stack' :: Stack -> Maybe [Tag]
tags} -> Maybe [Tag]
tags) (\s :: Stack
s@Stack' {} Maybe [Tag]
a -> Stack
s {$sel:tags:Stack' :: Maybe [Tag]
tags = Maybe [Tag]
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
stack_timeoutInMinutes :: Lens.Lens' Stack (Prelude.Maybe Prelude.Natural)
stack_timeoutInMinutes :: Lens' Stack (Maybe Natural)
stack_timeoutInMinutes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Maybe Natural
timeoutInMinutes :: Maybe Natural
$sel:timeoutInMinutes:Stack' :: Stack -> Maybe Natural
timeoutInMinutes} -> Maybe Natural
timeoutInMinutes) (\s :: Stack
s@Stack' {} Maybe Natural
a -> Stack
s {$sel:timeoutInMinutes:Stack' :: Maybe Natural
timeoutInMinutes = Maybe Natural
a} :: Stack)
stack_stackName :: Lens.Lens' Stack Prelude.Text
stack_stackName :: Lens' Stack Text
stack_stackName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {Text
stackName :: Text
$sel:stackName:Stack' :: Stack -> Text
stackName} -> Text
stackName) (\s :: Stack
s@Stack' {} Text
a -> Stack
s {$sel:stackName:Stack' :: Text
stackName = Text
a} :: Stack)
stack_creationTime :: Lens.Lens' Stack Prelude.UTCTime
stack_creationTime :: Lens' Stack UTCTime
stack_creationTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {ISO8601
creationTime :: ISO8601
$sel:creationTime:Stack' :: Stack -> ISO8601
creationTime} -> ISO8601
creationTime) (\s :: Stack
s@Stack' {} ISO8601
a -> Stack
s {$sel:creationTime:Stack' :: ISO8601
creationTime = ISO8601
a} :: Stack) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
stack_stackStatus :: Lens.Lens' Stack StackStatus
stack_stackStatus :: Lens' Stack StackStatus
stack_stackStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Stack' {StackStatus
stackStatus :: StackStatus
$sel:stackStatus:Stack' :: Stack -> StackStatus
stackStatus} -> StackStatus
stackStatus) (\s :: Stack
s@Stack' {} StackStatus
a -> Stack
s {$sel:stackStatus:Stack' :: StackStatus
stackStatus = StackStatus
a} :: Stack)
instance Data.FromXML Stack where
parseXML :: [Node] -> Either String Stack
parseXML [Node]
x =
Maybe [Capability]
-> Maybe Text
-> Maybe ISO8601
-> Maybe Text
-> Maybe Bool
-> Maybe StackDriftInformation
-> Maybe Bool
-> Maybe ISO8601
-> Maybe [Text]
-> Maybe [Output]
-> Maybe [Parameter]
-> Maybe Text
-> Maybe Text
-> Maybe RollbackConfiguration
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe [Tag]
-> Maybe Natural
-> Text
-> ISO8601
-> StackStatus
-> Stack
Stack'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Capabilities"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ChangeSetId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"DeletionTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Description")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"DisableRollback")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"DriftInformation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"EnableTerminationProtection")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"LastUpdatedTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"NotificationARNs"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Outputs"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Parameters"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ParentId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"RoleARN")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"RollbackConfiguration")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"RootId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"StackId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"StackStatusReason")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Tags"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"TimeoutInMinutes")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String a
Data..@ Text
"StackName")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String a
Data..@ Text
"CreationTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String a
Data..@ Text
"StackStatus")
instance Prelude.Hashable Stack where
hashWithSalt :: Int -> Stack -> Int
hashWithSalt Int
_salt Stack' {Maybe Bool
Maybe Natural
Maybe [Text]
Maybe [Capability]
Maybe [Output]
Maybe [Parameter]
Maybe [Tag]
Maybe Text
Maybe ISO8601
Maybe RollbackConfiguration
Maybe StackDriftInformation
Text
ISO8601
StackStatus
stackStatus :: StackStatus
creationTime :: ISO8601
stackName :: Text
timeoutInMinutes :: Maybe Natural
tags :: Maybe [Tag]
stackStatusReason :: Maybe Text
stackId :: Maybe Text
rootId :: Maybe Text
rollbackConfiguration :: Maybe RollbackConfiguration
roleARN :: Maybe Text
parentId :: Maybe Text
parameters :: Maybe [Parameter]
outputs :: Maybe [Output]
notificationARNs :: Maybe [Text]
lastUpdatedTime :: Maybe ISO8601
enableTerminationProtection :: Maybe Bool
driftInformation :: Maybe StackDriftInformation
disableRollback :: Maybe Bool
description :: Maybe Text
deletionTime :: Maybe ISO8601
changeSetId :: Maybe Text
capabilities :: Maybe [Capability]
$sel:stackStatus:Stack' :: Stack -> StackStatus
$sel:creationTime:Stack' :: Stack -> ISO8601
$sel:stackName:Stack' :: Stack -> Text
$sel:timeoutInMinutes:Stack' :: Stack -> Maybe Natural
$sel:tags:Stack' :: Stack -> Maybe [Tag]
$sel:stackStatusReason:Stack' :: Stack -> Maybe Text
$sel:stackId:Stack' :: Stack -> Maybe Text
$sel:rootId:Stack' :: Stack -> Maybe Text
$sel:rollbackConfiguration:Stack' :: Stack -> Maybe RollbackConfiguration
$sel:roleARN:Stack' :: Stack -> Maybe Text
$sel:parentId:Stack' :: Stack -> Maybe Text
$sel:parameters:Stack' :: Stack -> Maybe [Parameter]
$sel:outputs:Stack' :: Stack -> Maybe [Output]
$sel:notificationARNs:Stack' :: Stack -> Maybe [Text]
$sel:lastUpdatedTime:Stack' :: Stack -> Maybe ISO8601
$sel:enableTerminationProtection:Stack' :: Stack -> Maybe Bool
$sel:driftInformation:Stack' :: Stack -> Maybe StackDriftInformation
$sel:disableRollback:Stack' :: Stack -> Maybe Bool
$sel:description:Stack' :: Stack -> Maybe Text
$sel:deletionTime:Stack' :: Stack -> Maybe ISO8601
$sel:changeSetId:Stack' :: Stack -> Maybe Text
$sel:capabilities:Stack' :: Stack -> Maybe [Capability]
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Capability]
capabilities
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
changeSetId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ISO8601
deletionTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
disableRollback
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe StackDriftInformation
driftInformation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
enableTerminationProtection
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ISO8601
lastUpdatedTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
notificationARNs
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Output]
outputs
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Parameter]
parameters
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
parentId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
roleARN
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RollbackConfiguration
rollbackConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
rootId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
stackId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
stackStatusReason
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Tag]
tags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
timeoutInMinutes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
stackName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ISO8601
creationTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` StackStatus
stackStatus
instance Prelude.NFData Stack where
rnf :: Stack -> ()
rnf Stack' {Maybe Bool
Maybe Natural
Maybe [Text]
Maybe [Capability]
Maybe [Output]
Maybe [Parameter]
Maybe [Tag]
Maybe Text
Maybe ISO8601
Maybe RollbackConfiguration
Maybe StackDriftInformation
Text
ISO8601
StackStatus
stackStatus :: StackStatus
creationTime :: ISO8601
stackName :: Text
timeoutInMinutes :: Maybe Natural
tags :: Maybe [Tag]
stackStatusReason :: Maybe Text
stackId :: Maybe Text
rootId :: Maybe Text
rollbackConfiguration :: Maybe RollbackConfiguration
roleARN :: Maybe Text
parentId :: Maybe Text
parameters :: Maybe [Parameter]
outputs :: Maybe [Output]
notificationARNs :: Maybe [Text]
lastUpdatedTime :: Maybe ISO8601
enableTerminationProtection :: Maybe Bool
driftInformation :: Maybe StackDriftInformation
disableRollback :: Maybe Bool
description :: Maybe Text
deletionTime :: Maybe ISO8601
changeSetId :: Maybe Text
capabilities :: Maybe [Capability]
$sel:stackStatus:Stack' :: Stack -> StackStatus
$sel:creationTime:Stack' :: Stack -> ISO8601
$sel:stackName:Stack' :: Stack -> Text
$sel:timeoutInMinutes:Stack' :: Stack -> Maybe Natural
$sel:tags:Stack' :: Stack -> Maybe [Tag]
$sel:stackStatusReason:Stack' :: Stack -> Maybe Text
$sel:stackId:Stack' :: Stack -> Maybe Text
$sel:rootId:Stack' :: Stack -> Maybe Text
$sel:rollbackConfiguration:Stack' :: Stack -> Maybe RollbackConfiguration
$sel:roleARN:Stack' :: Stack -> Maybe Text
$sel:parentId:Stack' :: Stack -> Maybe Text
$sel:parameters:Stack' :: Stack -> Maybe [Parameter]
$sel:outputs:Stack' :: Stack -> Maybe [Output]
$sel:notificationARNs:Stack' :: Stack -> Maybe [Text]
$sel:lastUpdatedTime:Stack' :: Stack -> Maybe ISO8601
$sel:enableTerminationProtection:Stack' :: Stack -> Maybe Bool
$sel:driftInformation:Stack' :: Stack -> Maybe StackDriftInformation
$sel:disableRollback:Stack' :: Stack -> Maybe Bool
$sel:description:Stack' :: Stack -> Maybe Text
$sel:deletionTime:Stack' :: Stack -> Maybe ISO8601
$sel:changeSetId:Stack' :: Stack -> Maybe Text
$sel:capabilities:Stack' :: Stack -> Maybe [Capability]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [Capability]
capabilities
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
changeSetId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
deletionTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
disableRollback
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe StackDriftInformation
driftInformation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
enableTerminationProtection
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
lastUpdatedTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
notificationARNs
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Output]
outputs
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Parameter]
parameters
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
parentId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
roleARN
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RollbackConfiguration
rollbackConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
rootId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
stackId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
stackStatusReason
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Tag]
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
timeoutInMinutes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
stackName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ISO8601
creationTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf StackStatus
stackStatus