{-# 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.SecurityHub.Types.AwsEcsClusterConfigurationExecuteCommandConfigurationDetails where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import Amazonka.SecurityHub.Types.AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
data AwsEcsClusterConfigurationExecuteCommandConfigurationDetails = AwsEcsClusterConfigurationExecuteCommandConfigurationDetails'
{
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration :: Prelude.Maybe AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails,
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
logging :: Prelude.Maybe Prelude.Text
}
deriving (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool
(AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool)
-> (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool)
-> Eq AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool
$c/= :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool
== :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool
$c== :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Bool
Prelude.Eq, ReadPrec
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
ReadPrec
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
Int
-> ReadS
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
ReadS
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
(Int
-> ReadS
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> ReadS
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> ReadPrec
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> ReadPrec
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> Read
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
$creadListPrec :: ReadPrec
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
readPrec :: ReadPrec
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
$creadPrec :: ReadPrec
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
readList :: ReadS
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
$creadList :: ReadS
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
readsPrec :: Int
-> ReadS
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
$creadsPrec :: Int
-> ReadS
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
Prelude.Read, Int
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> ShowS
[AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> ShowS
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> String
(Int
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> ShowS)
-> (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> String)
-> ([AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> ShowS)
-> Show
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> ShowS
$cshowList :: [AwsEcsClusterConfigurationExecuteCommandConfigurationDetails]
-> ShowS
show :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> String
$cshow :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> String
showsPrec :: Int
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> ShowS
$cshowsPrec :: Int
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> ShowS
Prelude.Show, (forall x.
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Rep
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x)
-> (forall x.
Rep AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Generic
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall x.
Rep AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall x.
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Rep
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
$cfrom :: forall x.
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Rep
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails x
Prelude.Generic)
newAwsEcsClusterConfigurationExecuteCommandConfigurationDetails ::
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
newAwsEcsClusterConfigurationExecuteCommandConfigurationDetails :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
newAwsEcsClusterConfigurationExecuteCommandConfigurationDetails =
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Maybe Text
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails'
{ $sel:logConfiguration:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration =
Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
forall a. Maybe a
Prelude.Nothing,
$sel:kmsKeyId:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe Text
kmsKeyId =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:logging:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe Text
logging =
Maybe Text
forall a. Maybe a
Prelude.Nothing
}
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logConfiguration :: Lens.Lens' AwsEcsClusterConfigurationExecuteCommandConfigurationDetails (Prelude.Maybe AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logConfiguration :: (Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> f (Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails))
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> f AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logConfiguration = (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
-> (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Lens
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
(Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
(Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration :: Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
$sel:logConfiguration:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration} -> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration) (\s :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s@AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {} Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
a -> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s {$sel:logConfiguration:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration = Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
a} :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_kmsKeyId :: Lens.Lens' AwsEcsClusterConfigurationExecuteCommandConfigurationDetails (Prelude.Maybe Prelude.Text)
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_kmsKeyId :: (Maybe Text -> f (Maybe Text))
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> f AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_kmsKeyId = (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text)
-> (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Lens
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s@AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {} Maybe Text
a -> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s {$sel:kmsKeyId:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe Text
kmsKeyId = Maybe Text
a} :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logging :: Lens.Lens' AwsEcsClusterConfigurationExecuteCommandConfigurationDetails (Prelude.Maybe Prelude.Text)
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logging :: (Maybe Text -> f (Maybe Text))
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> f AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
awsEcsClusterConfigurationExecuteCommandConfigurationDetails_logging = (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text)
-> (AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Lens
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {Maybe Text
logging :: Maybe Text
$sel:logging:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
logging} -> Maybe Text
logging) (\s :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s@AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {} Maybe Text
a -> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
s {$sel:logging:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: Maybe Text
logging = Maybe Text
a} :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
instance
Core.FromJSON
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
where
parseJSON :: Value
-> Parser
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
parseJSON =
String
-> (Object
-> Parser
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Value
-> Parser
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"AwsEcsClusterConfigurationExecuteCommandConfigurationDetails"
( \Object
x ->
Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Maybe Text
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails'
(Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Maybe Text
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Parser
(Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
-> Parser
(Maybe Text
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object
-> Text
-> Parser
(Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"LogConfiguration")
Parser
(Maybe Text
-> Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
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
"KmsKeyId")
Parser
(Maybe Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationDetails)
-> Parser (Maybe Text)
-> Parser
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
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
"Logging")
)
instance
Prelude.Hashable
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
instance
Prelude.NFData
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
instance
Core.ToJSON
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
where
toJSON :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Value
toJSON
AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' {Maybe Text
Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logging :: Maybe Text
kmsKeyId :: Maybe Text
logConfiguration :: Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
$sel:logging:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
$sel:kmsKeyId:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe Text
$sel:logConfiguration:AwsEcsClusterConfigurationExecuteCommandConfigurationDetails' :: AwsEcsClusterConfigurationExecuteCommandConfigurationDetails
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Text
"LogConfiguration" Text
-> AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Pair)
-> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
-> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe
AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails
logConfiguration,
(Text
"KmsKeyId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
kmsKeyId,
(Text
"Logging" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
logging
]
)