module Stratosphere.ElasticBeanstalk.Application.ApplicationResourceLifecycleConfigProperty (
module Exports, ApplicationResourceLifecycleConfigProperty(..),
mkApplicationResourceLifecycleConfigProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.ElasticBeanstalk.Application.ApplicationVersionLifecycleConfigProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ApplicationResourceLifecycleConfigProperty
=
ApplicationResourceLifecycleConfigProperty {ApplicationResourceLifecycleConfigProperty -> ()
haddock_workaround_ :: (),
ApplicationResourceLifecycleConfigProperty -> Maybe (Value Text)
serviceRole :: (Prelude.Maybe (Value Prelude.Text)),
ApplicationResourceLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
versionLifecycleConfig :: (Prelude.Maybe ApplicationVersionLifecycleConfigProperty)}
deriving stock (ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool
(ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool)
-> (ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool)
-> Eq ApplicationResourceLifecycleConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool
== :: ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool
$c/= :: ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool
/= :: ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty -> Bool
Prelude.Eq, Int -> ApplicationResourceLifecycleConfigProperty -> ShowS
[ApplicationResourceLifecycleConfigProperty] -> ShowS
ApplicationResourceLifecycleConfigProperty -> String
(Int -> ApplicationResourceLifecycleConfigProperty -> ShowS)
-> (ApplicationResourceLifecycleConfigProperty -> String)
-> ([ApplicationResourceLifecycleConfigProperty] -> ShowS)
-> Show ApplicationResourceLifecycleConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ApplicationResourceLifecycleConfigProperty -> ShowS
showsPrec :: Int -> ApplicationResourceLifecycleConfigProperty -> ShowS
$cshow :: ApplicationResourceLifecycleConfigProperty -> String
show :: ApplicationResourceLifecycleConfigProperty -> String
$cshowList :: [ApplicationResourceLifecycleConfigProperty] -> ShowS
showList :: [ApplicationResourceLifecycleConfigProperty] -> ShowS
Prelude.Show)
mkApplicationResourceLifecycleConfigProperty ::
ApplicationResourceLifecycleConfigProperty
mkApplicationResourceLifecycleConfigProperty :: ApplicationResourceLifecycleConfigProperty
mkApplicationResourceLifecycleConfigProperty
= ApplicationResourceLifecycleConfigProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), serviceRole :: Maybe (Value Text)
serviceRole = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
versionLifecycleConfig = Maybe ApplicationVersionLifecycleConfigProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties ApplicationResourceLifecycleConfigProperty where
toResourceProperties :: ApplicationResourceLifecycleConfigProperty -> ResourceProperties
toResourceProperties
ApplicationResourceLifecycleConfigProperty {Maybe (Value Text)
Maybe ApplicationVersionLifecycleConfigProperty
()
haddock_workaround_ :: ApplicationResourceLifecycleConfigProperty -> ()
serviceRole :: ApplicationResourceLifecycleConfigProperty -> Maybe (Value Text)
versionLifecycleConfig :: ApplicationResourceLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ServiceRole" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
serviceRole,
Key -> ApplicationVersionLifecycleConfigProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"VersionLifecycleConfig"
(ApplicationVersionLifecycleConfigProperty -> (Key, Value))
-> Maybe ApplicationVersionLifecycleConfigProperty
-> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ApplicationVersionLifecycleConfigProperty
versionLifecycleConfig])}
instance JSON.ToJSON ApplicationResourceLifecycleConfigProperty where
toJSON :: ApplicationResourceLifecycleConfigProperty -> Value
toJSON ApplicationResourceLifecycleConfigProperty {Maybe (Value Text)
Maybe ApplicationVersionLifecycleConfigProperty
()
haddock_workaround_ :: ApplicationResourceLifecycleConfigProperty -> ()
serviceRole :: ApplicationResourceLifecycleConfigProperty -> Maybe (Value Text)
versionLifecycleConfig :: ApplicationResourceLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ServiceRole" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
serviceRole,
Key -> ApplicationVersionLifecycleConfigProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"VersionLifecycleConfig"
(ApplicationVersionLifecycleConfigProperty -> (Key, Value))
-> Maybe ApplicationVersionLifecycleConfigProperty
-> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ApplicationVersionLifecycleConfigProperty
versionLifecycleConfig]))
instance Property "ServiceRole" ApplicationResourceLifecycleConfigProperty where
type PropertyType "ServiceRole" ApplicationResourceLifecycleConfigProperty = Value Prelude.Text
set :: PropertyType
"ServiceRole" ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty
set PropertyType
"ServiceRole" ApplicationResourceLifecycleConfigProperty
newValue ApplicationResourceLifecycleConfigProperty {Maybe (Value Text)
Maybe ApplicationVersionLifecycleConfigProperty
()
haddock_workaround_ :: ApplicationResourceLifecycleConfigProperty -> ()
serviceRole :: ApplicationResourceLifecycleConfigProperty -> Maybe (Value Text)
versionLifecycleConfig :: ApplicationResourceLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
..}
= ApplicationResourceLifecycleConfigProperty
{serviceRole :: Maybe (Value Text)
serviceRole = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
"ServiceRole" ApplicationResourceLifecycleConfigProperty
Value Text
newValue, Maybe ApplicationVersionLifecycleConfigProperty
()
haddock_workaround_ :: ()
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
haddock_workaround_ :: ()
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
..}
instance Property "VersionLifecycleConfig" ApplicationResourceLifecycleConfigProperty where
type PropertyType "VersionLifecycleConfig" ApplicationResourceLifecycleConfigProperty = ApplicationVersionLifecycleConfigProperty
set :: PropertyType
"VersionLifecycleConfig" ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty
-> ApplicationResourceLifecycleConfigProperty
set PropertyType
"VersionLifecycleConfig" ApplicationResourceLifecycleConfigProperty
newValue ApplicationResourceLifecycleConfigProperty {Maybe (Value Text)
Maybe ApplicationVersionLifecycleConfigProperty
()
haddock_workaround_ :: ApplicationResourceLifecycleConfigProperty -> ()
serviceRole :: ApplicationResourceLifecycleConfigProperty -> Maybe (Value Text)
versionLifecycleConfig :: ApplicationResourceLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
..}
= ApplicationResourceLifecycleConfigProperty
{versionLifecycleConfig :: Maybe ApplicationVersionLifecycleConfigProperty
versionLifecycleConfig = ApplicationVersionLifecycleConfigProperty
-> Maybe ApplicationVersionLifecycleConfigProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
"VersionLifecycleConfig" ApplicationResourceLifecycleConfigProperty
ApplicationVersionLifecycleConfigProperty
newValue, Maybe (Value Text)
()
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
haddock_workaround_ :: ()
serviceRole :: Maybe (Value Text)
..}