{-# 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.Nimble.Types.StudioComponent where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import Amazonka.Nimble.Types.ScriptParameterKeyValue
import Amazonka.Nimble.Types.StudioComponentConfiguration
import Amazonka.Nimble.Types.StudioComponentInitializationScript
import Amazonka.Nimble.Types.StudioComponentState
import Amazonka.Nimble.Types.StudioComponentStatusCode
import Amazonka.Nimble.Types.StudioComponentSubtype
import Amazonka.Nimble.Types.StudioComponentType
import qualified Amazonka.Prelude as Prelude
data StudioComponent = StudioComponent'
{
StudioComponent -> Maybe [StudioComponentInitializationScript]
initializationScripts :: Prelude.Maybe [StudioComponentInitializationScript],
StudioComponent -> Maybe StudioComponentState
state :: Prelude.Maybe StudioComponentState,
StudioComponent -> Maybe Text
studioComponentId :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe POSIX
createdAt :: Prelude.Maybe Core.POSIX,
StudioComponent -> Maybe Text
createdBy :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe (NonEmpty Text)
ec2SecurityGroupIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),
StudioComponent -> Maybe Text
updatedBy :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe StudioComponentSubtype
subtype :: Prelude.Maybe StudioComponentSubtype,
StudioComponent -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe Text
statusMessage :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe [ScriptParameterKeyValue]
scriptParameters :: Prelude.Maybe [ScriptParameterKeyValue],
StudioComponent -> Maybe POSIX
updatedAt :: Prelude.Maybe Core.POSIX,
StudioComponent -> Maybe StudioComponentType
type' :: Prelude.Maybe StudioComponentType,
StudioComponent -> Maybe StudioComponentConfiguration
configuration :: Prelude.Maybe StudioComponentConfiguration,
StudioComponent -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
StudioComponent -> Maybe (HashMap Text Text)
tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
StudioComponent -> Maybe StudioComponentStatusCode
statusCode :: Prelude.Maybe StudioComponentStatusCode
}
deriving (StudioComponent -> StudioComponent -> Bool
(StudioComponent -> StudioComponent -> Bool)
-> (StudioComponent -> StudioComponent -> Bool)
-> Eq StudioComponent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StudioComponent -> StudioComponent -> Bool
$c/= :: StudioComponent -> StudioComponent -> Bool
== :: StudioComponent -> StudioComponent -> Bool
$c== :: StudioComponent -> StudioComponent -> Bool
Prelude.Eq, ReadPrec [StudioComponent]
ReadPrec StudioComponent
Int -> ReadS StudioComponent
ReadS [StudioComponent]
(Int -> ReadS StudioComponent)
-> ReadS [StudioComponent]
-> ReadPrec StudioComponent
-> ReadPrec [StudioComponent]
-> Read StudioComponent
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StudioComponent]
$creadListPrec :: ReadPrec [StudioComponent]
readPrec :: ReadPrec StudioComponent
$creadPrec :: ReadPrec StudioComponent
readList :: ReadS [StudioComponent]
$creadList :: ReadS [StudioComponent]
readsPrec :: Int -> ReadS StudioComponent
$creadsPrec :: Int -> ReadS StudioComponent
Prelude.Read, Int -> StudioComponent -> ShowS
[StudioComponent] -> ShowS
StudioComponent -> String
(Int -> StudioComponent -> ShowS)
-> (StudioComponent -> String)
-> ([StudioComponent] -> ShowS)
-> Show StudioComponent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StudioComponent] -> ShowS
$cshowList :: [StudioComponent] -> ShowS
show :: StudioComponent -> String
$cshow :: StudioComponent -> String
showsPrec :: Int -> StudioComponent -> ShowS
$cshowsPrec :: Int -> StudioComponent -> ShowS
Prelude.Show, (forall x. StudioComponent -> Rep StudioComponent x)
-> (forall x. Rep StudioComponent x -> StudioComponent)
-> Generic StudioComponent
forall x. Rep StudioComponent x -> StudioComponent
forall x. StudioComponent -> Rep StudioComponent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep StudioComponent x -> StudioComponent
$cfrom :: forall x. StudioComponent -> Rep StudioComponent x
Prelude.Generic)
newStudioComponent ::
StudioComponent
newStudioComponent :: StudioComponent
newStudioComponent =
StudioComponent' :: Maybe [StudioComponentInitializationScript]
-> Maybe StudioComponentState
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent
StudioComponent'
{ $sel:initializationScripts:StudioComponent' :: Maybe [StudioComponentInitializationScript]
initializationScripts =
Maybe [StudioComponentInitializationScript]
forall a. Maybe a
Prelude.Nothing,
$sel:state:StudioComponent' :: Maybe StudioComponentState
state = Maybe StudioComponentState
forall a. Maybe a
Prelude.Nothing,
$sel:studioComponentId:StudioComponent' :: Maybe Text
studioComponentId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:arn:StudioComponent' :: Maybe Text
arn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:createdAt:StudioComponent' :: Maybe POSIX
createdAt = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:createdBy:StudioComponent' :: Maybe Text
createdBy = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:ec2SecurityGroupIds:StudioComponent' :: Maybe (NonEmpty Text)
ec2SecurityGroupIds = Maybe (NonEmpty Text)
forall a. Maybe a
Prelude.Nothing,
$sel:updatedBy:StudioComponent' :: Maybe Text
updatedBy = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:subtype:StudioComponent' :: Maybe StudioComponentSubtype
subtype = Maybe StudioComponentSubtype
forall a. Maybe a
Prelude.Nothing,
$sel:name:StudioComponent' :: Maybe Text
name = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:statusMessage:StudioComponent' :: Maybe Text
statusMessage = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:scriptParameters:StudioComponent' :: Maybe [ScriptParameterKeyValue]
scriptParameters = Maybe [ScriptParameterKeyValue]
forall a. Maybe a
Prelude.Nothing,
$sel:updatedAt:StudioComponent' :: Maybe POSIX
updatedAt = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
$sel:type':StudioComponent' :: Maybe StudioComponentType
type' = Maybe StudioComponentType
forall a. Maybe a
Prelude.Nothing,
$sel:configuration:StudioComponent' :: Maybe StudioComponentConfiguration
configuration = Maybe StudioComponentConfiguration
forall a. Maybe a
Prelude.Nothing,
$sel:description:StudioComponent' :: Maybe Text
description = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:tags:StudioComponent' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
forall a. Maybe a
Prelude.Nothing,
$sel:statusCode:StudioComponent' :: Maybe StudioComponentStatusCode
statusCode = Maybe StudioComponentStatusCode
forall a. Maybe a
Prelude.Nothing
}
studioComponent_initializationScripts :: Lens.Lens' StudioComponent (Prelude.Maybe [StudioComponentInitializationScript])
studioComponent_initializationScripts :: (Maybe [StudioComponentInitializationScript]
-> f (Maybe [StudioComponentInitializationScript]))
-> StudioComponent -> f StudioComponent
studioComponent_initializationScripts = (StudioComponent -> Maybe [StudioComponentInitializationScript])
-> (StudioComponent
-> Maybe [StudioComponentInitializationScript] -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe [StudioComponentInitializationScript])
(Maybe [StudioComponentInitializationScript])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe [StudioComponentInitializationScript]
initializationScripts :: Maybe [StudioComponentInitializationScript]
$sel:initializationScripts:StudioComponent' :: StudioComponent -> Maybe [StudioComponentInitializationScript]
initializationScripts} -> Maybe [StudioComponentInitializationScript]
initializationScripts) (\s :: StudioComponent
s@StudioComponent' {} Maybe [StudioComponentInitializationScript]
a -> StudioComponent
s {$sel:initializationScripts:StudioComponent' :: Maybe [StudioComponentInitializationScript]
initializationScripts = Maybe [StudioComponentInitializationScript]
a} :: StudioComponent) ((Maybe [StudioComponentInitializationScript]
-> f (Maybe [StudioComponentInitializationScript]))
-> StudioComponent -> f StudioComponent)
-> ((Maybe [StudioComponentInitializationScript]
-> f (Maybe [StudioComponentInitializationScript]))
-> Maybe [StudioComponentInitializationScript]
-> f (Maybe [StudioComponentInitializationScript]))
-> (Maybe [StudioComponentInitializationScript]
-> f (Maybe [StudioComponentInitializationScript]))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
-> Iso
(Maybe [StudioComponentInitializationScript])
(Maybe [StudioComponentInitializationScript])
(Maybe [StudioComponentInitializationScript])
(Maybe [StudioComponentInitializationScript])
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 AnIso
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
[StudioComponentInitializationScript]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
studioComponent_state :: Lens.Lens' StudioComponent (Prelude.Maybe StudioComponentState)
studioComponent_state :: (Maybe StudioComponentState -> f (Maybe StudioComponentState))
-> StudioComponent -> f StudioComponent
studioComponent_state = (StudioComponent -> Maybe StudioComponentState)
-> (StudioComponent
-> Maybe StudioComponentState -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe StudioComponentState)
(Maybe StudioComponentState)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe StudioComponentState
state :: Maybe StudioComponentState
$sel:state:StudioComponent' :: StudioComponent -> Maybe StudioComponentState
state} -> Maybe StudioComponentState
state) (\s :: StudioComponent
s@StudioComponent' {} Maybe StudioComponentState
a -> StudioComponent
s {$sel:state:StudioComponent' :: Maybe StudioComponentState
state = Maybe StudioComponentState
a} :: StudioComponent)
studioComponent_studioComponentId :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_studioComponentId :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_studioComponentId = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
studioComponentId :: Maybe Text
$sel:studioComponentId:StudioComponent' :: StudioComponent -> Maybe Text
studioComponentId} -> Maybe Text
studioComponentId) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:studioComponentId:StudioComponent' :: Maybe Text
studioComponentId = Maybe Text
a} :: StudioComponent)
studioComponent_arn :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_arn :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_arn = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
arn :: Maybe Text
$sel:arn:StudioComponent' :: StudioComponent -> Maybe Text
arn} -> Maybe Text
arn) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:arn:StudioComponent' :: Maybe Text
arn = Maybe Text
a} :: StudioComponent)
studioComponent_createdAt :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.UTCTime)
studioComponent_createdAt :: (Maybe UTCTime -> f (Maybe UTCTime))
-> StudioComponent -> f StudioComponent
studioComponent_createdAt = (StudioComponent -> Maybe POSIX)
-> (StudioComponent -> Maybe POSIX -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe POSIX
createdAt :: Maybe POSIX
$sel:createdAt:StudioComponent' :: StudioComponent -> Maybe POSIX
createdAt} -> Maybe POSIX
createdAt) (\s :: StudioComponent
s@StudioComponent' {} Maybe POSIX
a -> StudioComponent
s {$sel:createdAt:StudioComponent' :: Maybe POSIX
createdAt = Maybe POSIX
a} :: StudioComponent) ((Maybe POSIX -> f (Maybe POSIX))
-> StudioComponent -> f StudioComponent)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
studioComponent_createdBy :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_createdBy :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_createdBy = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
createdBy :: Maybe Text
$sel:createdBy:StudioComponent' :: StudioComponent -> Maybe Text
createdBy} -> Maybe Text
createdBy) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:createdBy:StudioComponent' :: Maybe Text
createdBy = Maybe Text
a} :: StudioComponent)
studioComponent_ec2SecurityGroupIds :: Lens.Lens' StudioComponent (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))
studioComponent_ec2SecurityGroupIds :: (Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> StudioComponent -> f StudioComponent
studioComponent_ec2SecurityGroupIds = (StudioComponent -> Maybe (NonEmpty Text))
-> (StudioComponent -> Maybe (NonEmpty Text) -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe (NonEmpty Text))
(Maybe (NonEmpty Text))
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe (NonEmpty Text)
ec2SecurityGroupIds :: Maybe (NonEmpty Text)
$sel:ec2SecurityGroupIds:StudioComponent' :: StudioComponent -> Maybe (NonEmpty Text)
ec2SecurityGroupIds} -> Maybe (NonEmpty Text)
ec2SecurityGroupIds) (\s :: StudioComponent
s@StudioComponent' {} Maybe (NonEmpty Text)
a -> StudioComponent
s {$sel:ec2SecurityGroupIds:StudioComponent' :: Maybe (NonEmpty Text)
ec2SecurityGroupIds = Maybe (NonEmpty Text)
a} :: StudioComponent) ((Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> StudioComponent -> f StudioComponent)
-> ((Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> (Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
(NonEmpty Text) (NonEmpty Text) (NonEmpty Text) (NonEmpty Text)
-> Iso
(Maybe (NonEmpty Text))
(Maybe (NonEmpty Text))
(Maybe (NonEmpty Text))
(Maybe (NonEmpty Text))
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 AnIso
(NonEmpty Text) (NonEmpty Text) (NonEmpty Text) (NonEmpty Text)
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
studioComponent_updatedBy :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_updatedBy :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_updatedBy = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
updatedBy :: Maybe Text
$sel:updatedBy:StudioComponent' :: StudioComponent -> Maybe Text
updatedBy} -> Maybe Text
updatedBy) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:updatedBy:StudioComponent' :: Maybe Text
updatedBy = Maybe Text
a} :: StudioComponent)
studioComponent_subtype :: Lens.Lens' StudioComponent (Prelude.Maybe StudioComponentSubtype)
studioComponent_subtype :: (Maybe StudioComponentSubtype -> f (Maybe StudioComponentSubtype))
-> StudioComponent -> f StudioComponent
studioComponent_subtype = (StudioComponent -> Maybe StudioComponentSubtype)
-> (StudioComponent
-> Maybe StudioComponentSubtype -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe StudioComponentSubtype)
(Maybe StudioComponentSubtype)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe StudioComponentSubtype
subtype :: Maybe StudioComponentSubtype
$sel:subtype:StudioComponent' :: StudioComponent -> Maybe StudioComponentSubtype
subtype} -> Maybe StudioComponentSubtype
subtype) (\s :: StudioComponent
s@StudioComponent' {} Maybe StudioComponentSubtype
a -> StudioComponent
s {$sel:subtype:StudioComponent' :: Maybe StudioComponentSubtype
subtype = Maybe StudioComponentSubtype
a} :: StudioComponent)
studioComponent_name :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_name :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_name = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
name :: Maybe Text
$sel:name:StudioComponent' :: StudioComponent -> Maybe Text
name} -> Maybe Text
name) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:name:StudioComponent' :: Maybe Text
name = Maybe Text
a} :: StudioComponent)
studioComponent_statusMessage :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_statusMessage :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_statusMessage = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
statusMessage :: Maybe Text
$sel:statusMessage:StudioComponent' :: StudioComponent -> Maybe Text
statusMessage} -> Maybe Text
statusMessage) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:statusMessage:StudioComponent' :: Maybe Text
statusMessage = Maybe Text
a} :: StudioComponent)
studioComponent_scriptParameters :: Lens.Lens' StudioComponent (Prelude.Maybe [ScriptParameterKeyValue])
studioComponent_scriptParameters :: (Maybe [ScriptParameterKeyValue]
-> f (Maybe [ScriptParameterKeyValue]))
-> StudioComponent -> f StudioComponent
studioComponent_scriptParameters = (StudioComponent -> Maybe [ScriptParameterKeyValue])
-> (StudioComponent
-> Maybe [ScriptParameterKeyValue] -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe [ScriptParameterKeyValue])
(Maybe [ScriptParameterKeyValue])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe [ScriptParameterKeyValue]
scriptParameters :: Maybe [ScriptParameterKeyValue]
$sel:scriptParameters:StudioComponent' :: StudioComponent -> Maybe [ScriptParameterKeyValue]
scriptParameters} -> Maybe [ScriptParameterKeyValue]
scriptParameters) (\s :: StudioComponent
s@StudioComponent' {} Maybe [ScriptParameterKeyValue]
a -> StudioComponent
s {$sel:scriptParameters:StudioComponent' :: Maybe [ScriptParameterKeyValue]
scriptParameters = Maybe [ScriptParameterKeyValue]
a} :: StudioComponent) ((Maybe [ScriptParameterKeyValue]
-> f (Maybe [ScriptParameterKeyValue]))
-> StudioComponent -> f StudioComponent)
-> ((Maybe [ScriptParameterKeyValue]
-> f (Maybe [ScriptParameterKeyValue]))
-> Maybe [ScriptParameterKeyValue]
-> f (Maybe [ScriptParameterKeyValue]))
-> (Maybe [ScriptParameterKeyValue]
-> f (Maybe [ScriptParameterKeyValue]))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
-> Iso
(Maybe [ScriptParameterKeyValue])
(Maybe [ScriptParameterKeyValue])
(Maybe [ScriptParameterKeyValue])
(Maybe [ScriptParameterKeyValue])
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 AnIso
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
[ScriptParameterKeyValue]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
studioComponent_updatedAt :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.UTCTime)
studioComponent_updatedAt :: (Maybe UTCTime -> f (Maybe UTCTime))
-> StudioComponent -> f StudioComponent
studioComponent_updatedAt = (StudioComponent -> Maybe POSIX)
-> (StudioComponent -> Maybe POSIX -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe POSIX) (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe POSIX
updatedAt :: Maybe POSIX
$sel:updatedAt:StudioComponent' :: StudioComponent -> Maybe POSIX
updatedAt} -> Maybe POSIX
updatedAt) (\s :: StudioComponent
s@StudioComponent' {} Maybe POSIX
a -> StudioComponent
s {$sel:updatedAt:StudioComponent' :: Maybe POSIX
updatedAt = Maybe POSIX
a} :: StudioComponent) ((Maybe POSIX -> f (Maybe POSIX))
-> StudioComponent -> f StudioComponent)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
-> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
studioComponent_type :: Lens.Lens' StudioComponent (Prelude.Maybe StudioComponentType)
studioComponent_type :: (Maybe StudioComponentType -> f (Maybe StudioComponentType))
-> StudioComponent -> f StudioComponent
studioComponent_type = (StudioComponent -> Maybe StudioComponentType)
-> (StudioComponent
-> Maybe StudioComponentType -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe StudioComponentType)
(Maybe StudioComponentType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe StudioComponentType
type' :: Maybe StudioComponentType
$sel:type':StudioComponent' :: StudioComponent -> Maybe StudioComponentType
type'} -> Maybe StudioComponentType
type') (\s :: StudioComponent
s@StudioComponent' {} Maybe StudioComponentType
a -> StudioComponent
s {$sel:type':StudioComponent' :: Maybe StudioComponentType
type' = Maybe StudioComponentType
a} :: StudioComponent)
studioComponent_configuration :: Lens.Lens' StudioComponent (Prelude.Maybe StudioComponentConfiguration)
studioComponent_configuration :: (Maybe StudioComponentConfiguration
-> f (Maybe StudioComponentConfiguration))
-> StudioComponent -> f StudioComponent
studioComponent_configuration = (StudioComponent -> Maybe StudioComponentConfiguration)
-> (StudioComponent
-> Maybe StudioComponentConfiguration -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe StudioComponentConfiguration)
(Maybe StudioComponentConfiguration)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe StudioComponentConfiguration
configuration :: Maybe StudioComponentConfiguration
$sel:configuration:StudioComponent' :: StudioComponent -> Maybe StudioComponentConfiguration
configuration} -> Maybe StudioComponentConfiguration
configuration) (\s :: StudioComponent
s@StudioComponent' {} Maybe StudioComponentConfiguration
a -> StudioComponent
s {$sel:configuration:StudioComponent' :: Maybe StudioComponentConfiguration
configuration = Maybe StudioComponentConfiguration
a} :: StudioComponent)
studioComponent_description :: Lens.Lens' StudioComponent (Prelude.Maybe Prelude.Text)
studioComponent_description :: (Maybe Text -> f (Maybe Text))
-> StudioComponent -> f StudioComponent
studioComponent_description = (StudioComponent -> Maybe Text)
-> (StudioComponent -> Maybe Text -> StudioComponent)
-> Lens StudioComponent StudioComponent (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe Text
description :: Maybe Text
$sel:description:StudioComponent' :: StudioComponent -> Maybe Text
description} -> Maybe Text
description) (\s :: StudioComponent
s@StudioComponent' {} Maybe Text
a -> StudioComponent
s {$sel:description:StudioComponent' :: Maybe Text
description = Maybe Text
a} :: StudioComponent)
studioComponent_tags :: Lens.Lens' StudioComponent (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
studioComponent_tags :: (Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> StudioComponent -> f StudioComponent
studioComponent_tags = (StudioComponent -> Maybe (HashMap Text Text))
-> (StudioComponent
-> Maybe (HashMap Text Text) -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe (HashMap Text Text))
(Maybe (HashMap Text Text))
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe (HashMap Text Text)
tags :: Maybe (HashMap Text Text)
$sel:tags:StudioComponent' :: StudioComponent -> Maybe (HashMap Text Text)
tags} -> Maybe (HashMap Text Text)
tags) (\s :: StudioComponent
s@StudioComponent' {} Maybe (HashMap Text Text)
a -> StudioComponent
s {$sel:tags:StudioComponent' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
a} :: StudioComponent) ((Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> StudioComponent -> f StudioComponent)
-> ((Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> (Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> StudioComponent
-> f StudioComponent
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
(HashMap Text Text)
(HashMap Text Text)
(HashMap Text Text)
(HashMap Text Text)
-> Iso
(Maybe (HashMap Text Text))
(Maybe (HashMap Text Text))
(Maybe (HashMap Text Text))
(Maybe (HashMap Text Text))
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 AnIso
(HashMap Text Text)
(HashMap Text Text)
(HashMap Text Text)
(HashMap Text Text)
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
studioComponent_statusCode :: Lens.Lens' StudioComponent (Prelude.Maybe StudioComponentStatusCode)
studioComponent_statusCode :: (Maybe StudioComponentStatusCode
-> f (Maybe StudioComponentStatusCode))
-> StudioComponent -> f StudioComponent
studioComponent_statusCode = (StudioComponent -> Maybe StudioComponentStatusCode)
-> (StudioComponent
-> Maybe StudioComponentStatusCode -> StudioComponent)
-> Lens
StudioComponent
StudioComponent
(Maybe StudioComponentStatusCode)
(Maybe StudioComponentStatusCode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StudioComponent' {Maybe StudioComponentStatusCode
statusCode :: Maybe StudioComponentStatusCode
$sel:statusCode:StudioComponent' :: StudioComponent -> Maybe StudioComponentStatusCode
statusCode} -> Maybe StudioComponentStatusCode
statusCode) (\s :: StudioComponent
s@StudioComponent' {} Maybe StudioComponentStatusCode
a -> StudioComponent
s {$sel:statusCode:StudioComponent' :: Maybe StudioComponentStatusCode
statusCode = Maybe StudioComponentStatusCode
a} :: StudioComponent)
instance Core.FromJSON StudioComponent where
parseJSON :: Value -> Parser StudioComponent
parseJSON =
String
-> (Object -> Parser StudioComponent)
-> Value
-> Parser StudioComponent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"StudioComponent"
( \Object
x ->
Maybe [StudioComponentInitializationScript]
-> Maybe StudioComponentState
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent
StudioComponent'
(Maybe [StudioComponentInitializationScript]
-> Maybe StudioComponentState
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe [StudioComponentInitializationScript])
-> Parser
(Maybe StudioComponentState
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( Object
x Object
-> Text
-> Parser (Maybe (Maybe [StudioComponentInitializationScript]))
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"initializationScripts"
Parser (Maybe (Maybe [StudioComponentInitializationScript]))
-> Maybe [StudioComponentInitializationScript]
-> Parser (Maybe [StudioComponentInitializationScript])
forall a. Parser (Maybe a) -> a -> Parser a
Core..!= Maybe [StudioComponentInitializationScript]
forall a. Monoid a => a
Prelude.mempty
)
Parser
(Maybe StudioComponentState
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe StudioComponentState)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe StudioComponentState)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"state")
Parser
(Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"studioComponentId")
Parser
(Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"arn")
Parser
(Maybe POSIX
-> Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe POSIX)
-> Parser
(Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"createdAt")
Parser
(Maybe Text
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"createdBy")
Parser
(Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe (NonEmpty Text))
-> Parser
(Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe (NonEmpty Text))
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ec2SecurityGroupIds")
Parser
(Maybe Text
-> Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"updatedBy")
Parser
(Maybe StudioComponentSubtype
-> Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe StudioComponentSubtype)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe StudioComponentSubtype)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"subtype")
Parser
(Maybe Text
-> Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"name")
Parser
(Maybe Text
-> Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"statusMessage")
Parser
(Maybe [ScriptParameterKeyValue]
-> Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe [ScriptParameterKeyValue])
-> Parser
(Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object -> Text -> Parser (Maybe (Maybe [ScriptParameterKeyValue]))
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"scriptParameters"
Parser (Maybe (Maybe [ScriptParameterKeyValue]))
-> Maybe [ScriptParameterKeyValue]
-> Parser (Maybe [ScriptParameterKeyValue])
forall a. Parser (Maybe a) -> a -> Parser a
Core..!= Maybe [ScriptParameterKeyValue]
forall a. Monoid a => a
Prelude.mempty
)
Parser
(Maybe POSIX
-> Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe POSIX)
-> Parser
(Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"updatedAt")
Parser
(Maybe StudioComponentType
-> Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe StudioComponentType)
-> Parser
(Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe StudioComponentType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"type")
Parser
(Maybe StudioComponentConfiguration
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe StudioComponentConfiguration)
-> Parser
(Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe StudioComponentConfiguration)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"configuration")
Parser
(Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode
-> StudioComponent)
-> Parser (Maybe Text)
-> Parser
(Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode -> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"description")
Parser
(Maybe (HashMap Text Text)
-> Maybe StudioComponentStatusCode -> StudioComponent)
-> Parser (Maybe (HashMap Text Text))
-> Parser (Maybe StudioComponentStatusCode -> StudioComponent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe (Maybe (HashMap Text Text)))
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"tags" Parser (Maybe (Maybe (HashMap Text Text)))
-> Maybe (HashMap Text Text) -> Parser (Maybe (HashMap Text Text))
forall a. Parser (Maybe a) -> a -> Parser a
Core..!= Maybe (HashMap Text Text)
forall a. Monoid a => a
Prelude.mempty)
Parser (Maybe StudioComponentStatusCode -> StudioComponent)
-> Parser (Maybe StudioComponentStatusCode)
-> Parser StudioComponent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe StudioComponentStatusCode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"statusCode")
)
instance Prelude.Hashable StudioComponent
instance Prelude.NFData StudioComponent