{-# 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.Inspector2.Types.LambdaLayerAggregation where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Inspector2.Types.LambdaLayerSortBy
import Amazonka.Inspector2.Types.SortOrder
import Amazonka.Inspector2.Types.StringFilter
import qualified Amazonka.Prelude as Prelude
data LambdaLayerAggregation = LambdaLayerAggregation'
{
LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
functionNames :: Prelude.Maybe (Prelude.NonEmpty StringFilter),
LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
layerArns :: Prelude.Maybe (Prelude.NonEmpty StringFilter),
LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
resourceIds :: Prelude.Maybe (Prelude.NonEmpty StringFilter),
LambdaLayerAggregation -> Maybe LambdaLayerSortBy
sortBy :: Prelude.Maybe LambdaLayerSortBy,
LambdaLayerAggregation -> Maybe SortOrder
sortOrder :: Prelude.Maybe SortOrder
}
deriving (LambdaLayerAggregation -> LambdaLayerAggregation -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: LambdaLayerAggregation -> LambdaLayerAggregation -> Bool
$c/= :: LambdaLayerAggregation -> LambdaLayerAggregation -> Bool
== :: LambdaLayerAggregation -> LambdaLayerAggregation -> Bool
$c== :: LambdaLayerAggregation -> LambdaLayerAggregation -> Bool
Prelude.Eq, ReadPrec [LambdaLayerAggregation]
ReadPrec LambdaLayerAggregation
Int -> ReadS LambdaLayerAggregation
ReadS [LambdaLayerAggregation]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [LambdaLayerAggregation]
$creadListPrec :: ReadPrec [LambdaLayerAggregation]
readPrec :: ReadPrec LambdaLayerAggregation
$creadPrec :: ReadPrec LambdaLayerAggregation
readList :: ReadS [LambdaLayerAggregation]
$creadList :: ReadS [LambdaLayerAggregation]
readsPrec :: Int -> ReadS LambdaLayerAggregation
$creadsPrec :: Int -> ReadS LambdaLayerAggregation
Prelude.Read, Int -> LambdaLayerAggregation -> ShowS
[LambdaLayerAggregation] -> ShowS
LambdaLayerAggregation -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [LambdaLayerAggregation] -> ShowS
$cshowList :: [LambdaLayerAggregation] -> ShowS
show :: LambdaLayerAggregation -> String
$cshow :: LambdaLayerAggregation -> String
showsPrec :: Int -> LambdaLayerAggregation -> ShowS
$cshowsPrec :: Int -> LambdaLayerAggregation -> ShowS
Prelude.Show, forall x. Rep LambdaLayerAggregation x -> LambdaLayerAggregation
forall x. LambdaLayerAggregation -> Rep LambdaLayerAggregation x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep LambdaLayerAggregation x -> LambdaLayerAggregation
$cfrom :: forall x. LambdaLayerAggregation -> Rep LambdaLayerAggregation x
Prelude.Generic)
newLambdaLayerAggregation ::
LambdaLayerAggregation
newLambdaLayerAggregation :: LambdaLayerAggregation
newLambdaLayerAggregation =
LambdaLayerAggregation'
{ $sel:functionNames:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
functionNames =
forall a. Maybe a
Prelude.Nothing,
$sel:layerArns:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
layerArns = forall a. Maybe a
Prelude.Nothing,
$sel:resourceIds:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
resourceIds = forall a. Maybe a
Prelude.Nothing,
$sel:sortBy:LambdaLayerAggregation' :: Maybe LambdaLayerSortBy
sortBy = forall a. Maybe a
Prelude.Nothing,
$sel:sortOrder:LambdaLayerAggregation' :: Maybe SortOrder
sortOrder = forall a. Maybe a
Prelude.Nothing
}
lambdaLayerAggregation_functionNames :: Lens.Lens' LambdaLayerAggregation (Prelude.Maybe (Prelude.NonEmpty StringFilter))
lambdaLayerAggregation_functionNames :: Lens' LambdaLayerAggregation (Maybe (NonEmpty StringFilter))
lambdaLayerAggregation_functionNames = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
functionNames :: Maybe (NonEmpty StringFilter)
$sel:functionNames:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
functionNames} -> Maybe (NonEmpty StringFilter)
functionNames) (\s :: LambdaLayerAggregation
s@LambdaLayerAggregation' {} Maybe (NonEmpty StringFilter)
a -> LambdaLayerAggregation
s {$sel:functionNames:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
functionNames = Maybe (NonEmpty StringFilter)
a} :: LambdaLayerAggregation) 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
lambdaLayerAggregation_layerArns :: Lens.Lens' LambdaLayerAggregation (Prelude.Maybe (Prelude.NonEmpty StringFilter))
lambdaLayerAggregation_layerArns :: Lens' LambdaLayerAggregation (Maybe (NonEmpty StringFilter))
lambdaLayerAggregation_layerArns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
layerArns :: Maybe (NonEmpty StringFilter)
$sel:layerArns:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
layerArns} -> Maybe (NonEmpty StringFilter)
layerArns) (\s :: LambdaLayerAggregation
s@LambdaLayerAggregation' {} Maybe (NonEmpty StringFilter)
a -> LambdaLayerAggregation
s {$sel:layerArns:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
layerArns = Maybe (NonEmpty StringFilter)
a} :: LambdaLayerAggregation) 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
lambdaLayerAggregation_resourceIds :: Lens.Lens' LambdaLayerAggregation (Prelude.Maybe (Prelude.NonEmpty StringFilter))
lambdaLayerAggregation_resourceIds :: Lens' LambdaLayerAggregation (Maybe (NonEmpty StringFilter))
lambdaLayerAggregation_resourceIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
resourceIds :: Maybe (NonEmpty StringFilter)
$sel:resourceIds:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
resourceIds} -> Maybe (NonEmpty StringFilter)
resourceIds) (\s :: LambdaLayerAggregation
s@LambdaLayerAggregation' {} Maybe (NonEmpty StringFilter)
a -> LambdaLayerAggregation
s {$sel:resourceIds:LambdaLayerAggregation' :: Maybe (NonEmpty StringFilter)
resourceIds = Maybe (NonEmpty StringFilter)
a} :: LambdaLayerAggregation) 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
lambdaLayerAggregation_sortBy :: Lens.Lens' LambdaLayerAggregation (Prelude.Maybe LambdaLayerSortBy)
lambdaLayerAggregation_sortBy :: Lens' LambdaLayerAggregation (Maybe LambdaLayerSortBy)
lambdaLayerAggregation_sortBy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LambdaLayerAggregation' {Maybe LambdaLayerSortBy
sortBy :: Maybe LambdaLayerSortBy
$sel:sortBy:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe LambdaLayerSortBy
sortBy} -> Maybe LambdaLayerSortBy
sortBy) (\s :: LambdaLayerAggregation
s@LambdaLayerAggregation' {} Maybe LambdaLayerSortBy
a -> LambdaLayerAggregation
s {$sel:sortBy:LambdaLayerAggregation' :: Maybe LambdaLayerSortBy
sortBy = Maybe LambdaLayerSortBy
a} :: LambdaLayerAggregation)
lambdaLayerAggregation_sortOrder :: Lens.Lens' LambdaLayerAggregation (Prelude.Maybe SortOrder)
lambdaLayerAggregation_sortOrder :: Lens' LambdaLayerAggregation (Maybe SortOrder)
lambdaLayerAggregation_sortOrder = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LambdaLayerAggregation' {Maybe SortOrder
sortOrder :: Maybe SortOrder
$sel:sortOrder:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe SortOrder
sortOrder} -> Maybe SortOrder
sortOrder) (\s :: LambdaLayerAggregation
s@LambdaLayerAggregation' {} Maybe SortOrder
a -> LambdaLayerAggregation
s {$sel:sortOrder:LambdaLayerAggregation' :: Maybe SortOrder
sortOrder = Maybe SortOrder
a} :: LambdaLayerAggregation)
instance Prelude.Hashable LambdaLayerAggregation where
hashWithSalt :: Int -> LambdaLayerAggregation -> Int
hashWithSalt Int
_salt LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
Maybe LambdaLayerSortBy
Maybe SortOrder
sortOrder :: Maybe SortOrder
sortBy :: Maybe LambdaLayerSortBy
resourceIds :: Maybe (NonEmpty StringFilter)
layerArns :: Maybe (NonEmpty StringFilter)
functionNames :: Maybe (NonEmpty StringFilter)
$sel:sortOrder:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe SortOrder
$sel:sortBy:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe LambdaLayerSortBy
$sel:resourceIds:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:layerArns:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:functionNames:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty StringFilter)
functionNames
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty StringFilter)
layerArns
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty StringFilter)
resourceIds
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LambdaLayerSortBy
sortBy
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SortOrder
sortOrder
instance Prelude.NFData LambdaLayerAggregation where
rnf :: LambdaLayerAggregation -> ()
rnf LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
Maybe LambdaLayerSortBy
Maybe SortOrder
sortOrder :: Maybe SortOrder
sortBy :: Maybe LambdaLayerSortBy
resourceIds :: Maybe (NonEmpty StringFilter)
layerArns :: Maybe (NonEmpty StringFilter)
functionNames :: Maybe (NonEmpty StringFilter)
$sel:sortOrder:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe SortOrder
$sel:sortBy:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe LambdaLayerSortBy
$sel:resourceIds:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:layerArns:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:functionNames:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty StringFilter)
functionNames
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty StringFilter)
layerArns
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty StringFilter)
resourceIds
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LambdaLayerSortBy
sortBy
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SortOrder
sortOrder
instance Data.ToJSON LambdaLayerAggregation where
toJSON :: LambdaLayerAggregation -> Value
toJSON LambdaLayerAggregation' {Maybe (NonEmpty StringFilter)
Maybe LambdaLayerSortBy
Maybe SortOrder
sortOrder :: Maybe SortOrder
sortBy :: Maybe LambdaLayerSortBy
resourceIds :: Maybe (NonEmpty StringFilter)
layerArns :: Maybe (NonEmpty StringFilter)
functionNames :: Maybe (NonEmpty StringFilter)
$sel:sortOrder:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe SortOrder
$sel:sortBy:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe LambdaLayerSortBy
$sel:resourceIds:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:layerArns:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
$sel:functionNames:LambdaLayerAggregation' :: LambdaLayerAggregation -> Maybe (NonEmpty StringFilter)
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"functionNames" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (NonEmpty StringFilter)
functionNames,
(Key
"layerArns" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (NonEmpty StringFilter)
layerArns,
(Key
"resourceIds" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (NonEmpty StringFilter)
resourceIds,
(Key
"sortBy" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe LambdaLayerSortBy
sortBy,
(Key
"sortOrder" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SortOrder
sortOrder
]
)