{-# 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.DevOpsGuru.Types.ListEventsFilters where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.DevOpsGuru.Types.EventClass
import Amazonka.DevOpsGuru.Types.EventDataSource
import Amazonka.DevOpsGuru.Types.EventTimeRange
import Amazonka.DevOpsGuru.Types.ResourceCollection
import qualified Amazonka.Prelude as Prelude
data ListEventsFilters = ListEventsFilters'
{
ListEventsFilters -> Maybe EventDataSource
dataSource :: Prelude.Maybe EventDataSource,
ListEventsFilters -> Maybe EventClass
eventClass :: Prelude.Maybe EventClass,
ListEventsFilters -> Maybe Text
eventSource :: Prelude.Maybe Prelude.Text,
ListEventsFilters -> Maybe EventTimeRange
eventTimeRange :: Prelude.Maybe EventTimeRange,
ListEventsFilters -> Maybe Text
insightId :: Prelude.Maybe Prelude.Text,
ListEventsFilters -> Maybe ResourceCollection
resourceCollection :: Prelude.Maybe ResourceCollection
}
deriving (ListEventsFilters -> ListEventsFilters -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListEventsFilters -> ListEventsFilters -> Bool
$c/= :: ListEventsFilters -> ListEventsFilters -> Bool
== :: ListEventsFilters -> ListEventsFilters -> Bool
$c== :: ListEventsFilters -> ListEventsFilters -> Bool
Prelude.Eq, ReadPrec [ListEventsFilters]
ReadPrec ListEventsFilters
Int -> ReadS ListEventsFilters
ReadS [ListEventsFilters]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListEventsFilters]
$creadListPrec :: ReadPrec [ListEventsFilters]
readPrec :: ReadPrec ListEventsFilters
$creadPrec :: ReadPrec ListEventsFilters
readList :: ReadS [ListEventsFilters]
$creadList :: ReadS [ListEventsFilters]
readsPrec :: Int -> ReadS ListEventsFilters
$creadsPrec :: Int -> ReadS ListEventsFilters
Prelude.Read, Int -> ListEventsFilters -> ShowS
[ListEventsFilters] -> ShowS
ListEventsFilters -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListEventsFilters] -> ShowS
$cshowList :: [ListEventsFilters] -> ShowS
show :: ListEventsFilters -> String
$cshow :: ListEventsFilters -> String
showsPrec :: Int -> ListEventsFilters -> ShowS
$cshowsPrec :: Int -> ListEventsFilters -> ShowS
Prelude.Show, forall x. Rep ListEventsFilters x -> ListEventsFilters
forall x. ListEventsFilters -> Rep ListEventsFilters x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListEventsFilters x -> ListEventsFilters
$cfrom :: forall x. ListEventsFilters -> Rep ListEventsFilters x
Prelude.Generic)
newListEventsFilters ::
ListEventsFilters
newListEventsFilters :: ListEventsFilters
newListEventsFilters =
ListEventsFilters'
{ $sel:dataSource:ListEventsFilters' :: Maybe EventDataSource
dataSource = forall a. Maybe a
Prelude.Nothing,
$sel:eventClass:ListEventsFilters' :: Maybe EventClass
eventClass = forall a. Maybe a
Prelude.Nothing,
$sel:eventSource:ListEventsFilters' :: Maybe Text
eventSource = forall a. Maybe a
Prelude.Nothing,
$sel:eventTimeRange:ListEventsFilters' :: Maybe EventTimeRange
eventTimeRange = forall a. Maybe a
Prelude.Nothing,
$sel:insightId:ListEventsFilters' :: Maybe Text
insightId = forall a. Maybe a
Prelude.Nothing,
$sel:resourceCollection:ListEventsFilters' :: Maybe ResourceCollection
resourceCollection = forall a. Maybe a
Prelude.Nothing
}
listEventsFilters_dataSource :: Lens.Lens' ListEventsFilters (Prelude.Maybe EventDataSource)
listEventsFilters_dataSource :: Lens' ListEventsFilters (Maybe EventDataSource)
listEventsFilters_dataSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe EventDataSource
dataSource :: Maybe EventDataSource
$sel:dataSource:ListEventsFilters' :: ListEventsFilters -> Maybe EventDataSource
dataSource} -> Maybe EventDataSource
dataSource) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe EventDataSource
a -> ListEventsFilters
s {$sel:dataSource:ListEventsFilters' :: Maybe EventDataSource
dataSource = Maybe EventDataSource
a} :: ListEventsFilters)
listEventsFilters_eventClass :: Lens.Lens' ListEventsFilters (Prelude.Maybe EventClass)
listEventsFilters_eventClass :: Lens' ListEventsFilters (Maybe EventClass)
listEventsFilters_eventClass = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe EventClass
eventClass :: Maybe EventClass
$sel:eventClass:ListEventsFilters' :: ListEventsFilters -> Maybe EventClass
eventClass} -> Maybe EventClass
eventClass) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe EventClass
a -> ListEventsFilters
s {$sel:eventClass:ListEventsFilters' :: Maybe EventClass
eventClass = Maybe EventClass
a} :: ListEventsFilters)
listEventsFilters_eventSource :: Lens.Lens' ListEventsFilters (Prelude.Maybe Prelude.Text)
listEventsFilters_eventSource :: Lens' ListEventsFilters (Maybe Text)
listEventsFilters_eventSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe Text
eventSource :: Maybe Text
$sel:eventSource:ListEventsFilters' :: ListEventsFilters -> Maybe Text
eventSource} -> Maybe Text
eventSource) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe Text
a -> ListEventsFilters
s {$sel:eventSource:ListEventsFilters' :: Maybe Text
eventSource = Maybe Text
a} :: ListEventsFilters)
listEventsFilters_eventTimeRange :: Lens.Lens' ListEventsFilters (Prelude.Maybe EventTimeRange)
listEventsFilters_eventTimeRange :: Lens' ListEventsFilters (Maybe EventTimeRange)
listEventsFilters_eventTimeRange = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe EventTimeRange
eventTimeRange :: Maybe EventTimeRange
$sel:eventTimeRange:ListEventsFilters' :: ListEventsFilters -> Maybe EventTimeRange
eventTimeRange} -> Maybe EventTimeRange
eventTimeRange) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe EventTimeRange
a -> ListEventsFilters
s {$sel:eventTimeRange:ListEventsFilters' :: Maybe EventTimeRange
eventTimeRange = Maybe EventTimeRange
a} :: ListEventsFilters)
listEventsFilters_insightId :: Lens.Lens' ListEventsFilters (Prelude.Maybe Prelude.Text)
listEventsFilters_insightId :: Lens' ListEventsFilters (Maybe Text)
listEventsFilters_insightId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe Text
insightId :: Maybe Text
$sel:insightId:ListEventsFilters' :: ListEventsFilters -> Maybe Text
insightId} -> Maybe Text
insightId) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe Text
a -> ListEventsFilters
s {$sel:insightId:ListEventsFilters' :: Maybe Text
insightId = Maybe Text
a} :: ListEventsFilters)
listEventsFilters_resourceCollection :: Lens.Lens' ListEventsFilters (Prelude.Maybe ResourceCollection)
listEventsFilters_resourceCollection :: Lens' ListEventsFilters (Maybe ResourceCollection)
listEventsFilters_resourceCollection = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListEventsFilters' {Maybe ResourceCollection
resourceCollection :: Maybe ResourceCollection
$sel:resourceCollection:ListEventsFilters' :: ListEventsFilters -> Maybe ResourceCollection
resourceCollection} -> Maybe ResourceCollection
resourceCollection) (\s :: ListEventsFilters
s@ListEventsFilters' {} Maybe ResourceCollection
a -> ListEventsFilters
s {$sel:resourceCollection:ListEventsFilters' :: Maybe ResourceCollection
resourceCollection = Maybe ResourceCollection
a} :: ListEventsFilters)
instance Prelude.Hashable ListEventsFilters where
hashWithSalt :: Int -> ListEventsFilters -> Int
hashWithSalt Int
_salt ListEventsFilters' {Maybe Text
Maybe EventClass
Maybe EventDataSource
Maybe EventTimeRange
Maybe ResourceCollection
resourceCollection :: Maybe ResourceCollection
insightId :: Maybe Text
eventTimeRange :: Maybe EventTimeRange
eventSource :: Maybe Text
eventClass :: Maybe EventClass
dataSource :: Maybe EventDataSource
$sel:resourceCollection:ListEventsFilters' :: ListEventsFilters -> Maybe ResourceCollection
$sel:insightId:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventTimeRange:ListEventsFilters' :: ListEventsFilters -> Maybe EventTimeRange
$sel:eventSource:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventClass:ListEventsFilters' :: ListEventsFilters -> Maybe EventClass
$sel:dataSource:ListEventsFilters' :: ListEventsFilters -> Maybe EventDataSource
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EventDataSource
dataSource
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EventClass
eventClass
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
eventSource
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EventTimeRange
eventTimeRange
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
insightId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResourceCollection
resourceCollection
instance Prelude.NFData ListEventsFilters where
rnf :: ListEventsFilters -> ()
rnf ListEventsFilters' {Maybe Text
Maybe EventClass
Maybe EventDataSource
Maybe EventTimeRange
Maybe ResourceCollection
resourceCollection :: Maybe ResourceCollection
insightId :: Maybe Text
eventTimeRange :: Maybe EventTimeRange
eventSource :: Maybe Text
eventClass :: Maybe EventClass
dataSource :: Maybe EventDataSource
$sel:resourceCollection:ListEventsFilters' :: ListEventsFilters -> Maybe ResourceCollection
$sel:insightId:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventTimeRange:ListEventsFilters' :: ListEventsFilters -> Maybe EventTimeRange
$sel:eventSource:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventClass:ListEventsFilters' :: ListEventsFilters -> Maybe EventClass
$sel:dataSource:ListEventsFilters' :: ListEventsFilters -> Maybe EventDataSource
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe EventDataSource
dataSource
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EventClass
eventClass
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
eventSource
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EventTimeRange
eventTimeRange
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
insightId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResourceCollection
resourceCollection
instance Data.ToJSON ListEventsFilters where
toJSON :: ListEventsFilters -> Value
toJSON ListEventsFilters' {Maybe Text
Maybe EventClass
Maybe EventDataSource
Maybe EventTimeRange
Maybe ResourceCollection
resourceCollection :: Maybe ResourceCollection
insightId :: Maybe Text
eventTimeRange :: Maybe EventTimeRange
eventSource :: Maybe Text
eventClass :: Maybe EventClass
dataSource :: Maybe EventDataSource
$sel:resourceCollection:ListEventsFilters' :: ListEventsFilters -> Maybe ResourceCollection
$sel:insightId:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventTimeRange:ListEventsFilters' :: ListEventsFilters -> Maybe EventTimeRange
$sel:eventSource:ListEventsFilters' :: ListEventsFilters -> Maybe Text
$sel:eventClass:ListEventsFilters' :: ListEventsFilters -> Maybe EventClass
$sel:dataSource:ListEventsFilters' :: ListEventsFilters -> Maybe EventDataSource
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"DataSource" 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 EventDataSource
dataSource,
(Key
"EventClass" 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 EventClass
eventClass,
(Key
"EventSource" 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 Text
eventSource,
(Key
"EventTimeRange" 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 EventTimeRange
eventTimeRange,
(Key
"InsightId" 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 Text
insightId,
(Key
"ResourceCollection" 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 ResourceCollection
resourceCollection
]
)