{-# 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.S3.Types.SelectObjectContentEventStream where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.S3.Internal
import Amazonka.S3.Types.ContinuationEvent
import Amazonka.S3.Types.EndEvent
import Amazonka.S3.Types.ProgressEvent
import Amazonka.S3.Types.RecordsEvent
import Amazonka.S3.Types.StatsEvent
data SelectObjectContentEventStream = SelectObjectContentEventStream'
{
SelectObjectContentEventStream -> Maybe ContinuationEvent
cont :: Prelude.Maybe ContinuationEvent,
SelectObjectContentEventStream -> Maybe EndEvent
end :: Prelude.Maybe EndEvent,
SelectObjectContentEventStream -> Maybe ProgressEvent
progress :: Prelude.Maybe ProgressEvent,
SelectObjectContentEventStream -> Maybe RecordsEvent
records :: Prelude.Maybe RecordsEvent,
SelectObjectContentEventStream -> Maybe StatsEvent
stats :: Prelude.Maybe StatsEvent
}
deriving (SelectObjectContentEventStream
-> SelectObjectContentEventStream -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SelectObjectContentEventStream
-> SelectObjectContentEventStream -> Bool
$c/= :: SelectObjectContentEventStream
-> SelectObjectContentEventStream -> Bool
== :: SelectObjectContentEventStream
-> SelectObjectContentEventStream -> Bool
$c== :: SelectObjectContentEventStream
-> SelectObjectContentEventStream -> Bool
Prelude.Eq, ReadPrec [SelectObjectContentEventStream]
ReadPrec SelectObjectContentEventStream
Int -> ReadS SelectObjectContentEventStream
ReadS [SelectObjectContentEventStream]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SelectObjectContentEventStream]
$creadListPrec :: ReadPrec [SelectObjectContentEventStream]
readPrec :: ReadPrec SelectObjectContentEventStream
$creadPrec :: ReadPrec SelectObjectContentEventStream
readList :: ReadS [SelectObjectContentEventStream]
$creadList :: ReadS [SelectObjectContentEventStream]
readsPrec :: Int -> ReadS SelectObjectContentEventStream
$creadsPrec :: Int -> ReadS SelectObjectContentEventStream
Prelude.Read, Int -> SelectObjectContentEventStream -> ShowS
[SelectObjectContentEventStream] -> ShowS
SelectObjectContentEventStream -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SelectObjectContentEventStream] -> ShowS
$cshowList :: [SelectObjectContentEventStream] -> ShowS
show :: SelectObjectContentEventStream -> String
$cshow :: SelectObjectContentEventStream -> String
showsPrec :: Int -> SelectObjectContentEventStream -> ShowS
$cshowsPrec :: Int -> SelectObjectContentEventStream -> ShowS
Prelude.Show, forall x.
Rep SelectObjectContentEventStream x
-> SelectObjectContentEventStream
forall x.
SelectObjectContentEventStream
-> Rep SelectObjectContentEventStream x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SelectObjectContentEventStream x
-> SelectObjectContentEventStream
$cfrom :: forall x.
SelectObjectContentEventStream
-> Rep SelectObjectContentEventStream x
Prelude.Generic)
newSelectObjectContentEventStream ::
SelectObjectContentEventStream
newSelectObjectContentEventStream :: SelectObjectContentEventStream
newSelectObjectContentEventStream =
SelectObjectContentEventStream'
{ $sel:cont:SelectObjectContentEventStream' :: Maybe ContinuationEvent
cont =
forall a. Maybe a
Prelude.Nothing,
$sel:end:SelectObjectContentEventStream' :: Maybe EndEvent
end = forall a. Maybe a
Prelude.Nothing,
$sel:progress:SelectObjectContentEventStream' :: Maybe ProgressEvent
progress = forall a. Maybe a
Prelude.Nothing,
$sel:records:SelectObjectContentEventStream' :: Maybe RecordsEvent
records = forall a. Maybe a
Prelude.Nothing,
$sel:stats:SelectObjectContentEventStream' :: Maybe StatsEvent
stats = forall a. Maybe a
Prelude.Nothing
}
selectObjectContentEventStream_cont :: Lens.Lens' SelectObjectContentEventStream (Prelude.Maybe ContinuationEvent)
selectObjectContentEventStream_cont :: Lens' SelectObjectContentEventStream (Maybe ContinuationEvent)
selectObjectContentEventStream_cont = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SelectObjectContentEventStream' {Maybe ContinuationEvent
cont :: Maybe ContinuationEvent
$sel:cont:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ContinuationEvent
cont} -> Maybe ContinuationEvent
cont) (\s :: SelectObjectContentEventStream
s@SelectObjectContentEventStream' {} Maybe ContinuationEvent
a -> SelectObjectContentEventStream
s {$sel:cont:SelectObjectContentEventStream' :: Maybe ContinuationEvent
cont = Maybe ContinuationEvent
a} :: SelectObjectContentEventStream)
selectObjectContentEventStream_end :: Lens.Lens' SelectObjectContentEventStream (Prelude.Maybe EndEvent)
selectObjectContentEventStream_end :: Lens' SelectObjectContentEventStream (Maybe EndEvent)
selectObjectContentEventStream_end = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SelectObjectContentEventStream' {Maybe EndEvent
end :: Maybe EndEvent
$sel:end:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe EndEvent
end} -> Maybe EndEvent
end) (\s :: SelectObjectContentEventStream
s@SelectObjectContentEventStream' {} Maybe EndEvent
a -> SelectObjectContentEventStream
s {$sel:end:SelectObjectContentEventStream' :: Maybe EndEvent
end = Maybe EndEvent
a} :: SelectObjectContentEventStream)
selectObjectContentEventStream_progress :: Lens.Lens' SelectObjectContentEventStream (Prelude.Maybe ProgressEvent)
selectObjectContentEventStream_progress :: Lens' SelectObjectContentEventStream (Maybe ProgressEvent)
selectObjectContentEventStream_progress = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SelectObjectContentEventStream' {Maybe ProgressEvent
progress :: Maybe ProgressEvent
$sel:progress:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ProgressEvent
progress} -> Maybe ProgressEvent
progress) (\s :: SelectObjectContentEventStream
s@SelectObjectContentEventStream' {} Maybe ProgressEvent
a -> SelectObjectContentEventStream
s {$sel:progress:SelectObjectContentEventStream' :: Maybe ProgressEvent
progress = Maybe ProgressEvent
a} :: SelectObjectContentEventStream)
selectObjectContentEventStream_records :: Lens.Lens' SelectObjectContentEventStream (Prelude.Maybe RecordsEvent)
selectObjectContentEventStream_records :: Lens' SelectObjectContentEventStream (Maybe RecordsEvent)
selectObjectContentEventStream_records = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SelectObjectContentEventStream' {Maybe RecordsEvent
records :: Maybe RecordsEvent
$sel:records:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe RecordsEvent
records} -> Maybe RecordsEvent
records) (\s :: SelectObjectContentEventStream
s@SelectObjectContentEventStream' {} Maybe RecordsEvent
a -> SelectObjectContentEventStream
s {$sel:records:SelectObjectContentEventStream' :: Maybe RecordsEvent
records = Maybe RecordsEvent
a} :: SelectObjectContentEventStream)
selectObjectContentEventStream_stats :: Lens.Lens' SelectObjectContentEventStream (Prelude.Maybe StatsEvent)
selectObjectContentEventStream_stats :: Lens' SelectObjectContentEventStream (Maybe StatsEvent)
selectObjectContentEventStream_stats = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SelectObjectContentEventStream' {Maybe StatsEvent
stats :: Maybe StatsEvent
$sel:stats:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe StatsEvent
stats} -> Maybe StatsEvent
stats) (\s :: SelectObjectContentEventStream
s@SelectObjectContentEventStream' {} Maybe StatsEvent
a -> SelectObjectContentEventStream
s {$sel:stats:SelectObjectContentEventStream' :: Maybe StatsEvent
stats = Maybe StatsEvent
a} :: SelectObjectContentEventStream)
instance Data.FromXML SelectObjectContentEventStream where
parseXML :: [Node] -> Either String SelectObjectContentEventStream
parseXML [Node]
x =
Maybe ContinuationEvent
-> Maybe EndEvent
-> Maybe ProgressEvent
-> Maybe RecordsEvent
-> Maybe StatsEvent
-> SelectObjectContentEventStream
SelectObjectContentEventStream'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Cont")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"End")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Progress")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Records")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Stats")
instance
Prelude.Hashable
SelectObjectContentEventStream
where
hashWithSalt :: Int -> SelectObjectContentEventStream -> Int
hashWithSalt
Int
_salt
SelectObjectContentEventStream' {Maybe ContinuationEvent
Maybe EndEvent
Maybe ProgressEvent
Maybe RecordsEvent
Maybe StatsEvent
stats :: Maybe StatsEvent
records :: Maybe RecordsEvent
progress :: Maybe ProgressEvent
end :: Maybe EndEvent
cont :: Maybe ContinuationEvent
$sel:stats:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe StatsEvent
$sel:records:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe RecordsEvent
$sel:progress:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ProgressEvent
$sel:end:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe EndEvent
$sel:cont:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ContinuationEvent
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ContinuationEvent
cont
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EndEvent
end
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ProgressEvent
progress
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RecordsEvent
records
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe StatsEvent
stats
instance
Prelude.NFData
SelectObjectContentEventStream
where
rnf :: SelectObjectContentEventStream -> ()
rnf SelectObjectContentEventStream' {Maybe ContinuationEvent
Maybe EndEvent
Maybe ProgressEvent
Maybe RecordsEvent
Maybe StatsEvent
stats :: Maybe StatsEvent
records :: Maybe RecordsEvent
progress :: Maybe ProgressEvent
end :: Maybe EndEvent
cont :: Maybe ContinuationEvent
$sel:stats:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe StatsEvent
$sel:records:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe RecordsEvent
$sel:progress:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ProgressEvent
$sel:end:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe EndEvent
$sel:cont:SelectObjectContentEventStream' :: SelectObjectContentEventStream -> Maybe ContinuationEvent
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ContinuationEvent
cont
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EndEvent
end
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ProgressEvent
progress
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RecordsEvent
records
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe StatsEvent
stats