{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.IoTAnalytics.GetDatasetContent
(
GetDatasetContent (..),
newGetDatasetContent,
getDatasetContent_versionId,
getDatasetContent_datasetName,
GetDatasetContentResponse (..),
newGetDatasetContentResponse,
getDatasetContentResponse_entries,
getDatasetContentResponse_status,
getDatasetContentResponse_timestamp,
getDatasetContentResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IoTAnalytics.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetDatasetContent = GetDatasetContent'
{
GetDatasetContent -> Maybe Text
versionId :: Prelude.Maybe Prelude.Text,
GetDatasetContent -> Text
datasetName :: Prelude.Text
}
deriving (GetDatasetContent -> GetDatasetContent -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetDatasetContent -> GetDatasetContent -> Bool
$c/= :: GetDatasetContent -> GetDatasetContent -> Bool
== :: GetDatasetContent -> GetDatasetContent -> Bool
$c== :: GetDatasetContent -> GetDatasetContent -> Bool
Prelude.Eq, ReadPrec [GetDatasetContent]
ReadPrec GetDatasetContent
Int -> ReadS GetDatasetContent
ReadS [GetDatasetContent]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetDatasetContent]
$creadListPrec :: ReadPrec [GetDatasetContent]
readPrec :: ReadPrec GetDatasetContent
$creadPrec :: ReadPrec GetDatasetContent
readList :: ReadS [GetDatasetContent]
$creadList :: ReadS [GetDatasetContent]
readsPrec :: Int -> ReadS GetDatasetContent
$creadsPrec :: Int -> ReadS GetDatasetContent
Prelude.Read, Int -> GetDatasetContent -> ShowS
[GetDatasetContent] -> ShowS
GetDatasetContent -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetDatasetContent] -> ShowS
$cshowList :: [GetDatasetContent] -> ShowS
show :: GetDatasetContent -> String
$cshow :: GetDatasetContent -> String
showsPrec :: Int -> GetDatasetContent -> ShowS
$cshowsPrec :: Int -> GetDatasetContent -> ShowS
Prelude.Show, forall x. Rep GetDatasetContent x -> GetDatasetContent
forall x. GetDatasetContent -> Rep GetDatasetContent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetDatasetContent x -> GetDatasetContent
$cfrom :: forall x. GetDatasetContent -> Rep GetDatasetContent x
Prelude.Generic)
newGetDatasetContent ::
Prelude.Text ->
GetDatasetContent
newGetDatasetContent :: Text -> GetDatasetContent
newGetDatasetContent Text
pDatasetName_ =
GetDatasetContent'
{ $sel:versionId:GetDatasetContent' :: Maybe Text
versionId = forall a. Maybe a
Prelude.Nothing,
$sel:datasetName:GetDatasetContent' :: Text
datasetName = Text
pDatasetName_
}
getDatasetContent_versionId :: Lens.Lens' GetDatasetContent (Prelude.Maybe Prelude.Text)
getDatasetContent_versionId :: Lens' GetDatasetContent (Maybe Text)
getDatasetContent_versionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContent' {Maybe Text
versionId :: Maybe Text
$sel:versionId:GetDatasetContent' :: GetDatasetContent -> Maybe Text
versionId} -> Maybe Text
versionId) (\s :: GetDatasetContent
s@GetDatasetContent' {} Maybe Text
a -> GetDatasetContent
s {$sel:versionId:GetDatasetContent' :: Maybe Text
versionId = Maybe Text
a} :: GetDatasetContent)
getDatasetContent_datasetName :: Lens.Lens' GetDatasetContent Prelude.Text
getDatasetContent_datasetName :: Lens' GetDatasetContent Text
getDatasetContent_datasetName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContent' {Text
datasetName :: Text
$sel:datasetName:GetDatasetContent' :: GetDatasetContent -> Text
datasetName} -> Text
datasetName) (\s :: GetDatasetContent
s@GetDatasetContent' {} Text
a -> GetDatasetContent
s {$sel:datasetName:GetDatasetContent' :: Text
datasetName = Text
a} :: GetDatasetContent)
instance Core.AWSRequest GetDatasetContent where
type
AWSResponse GetDatasetContent =
GetDatasetContentResponse
request :: (Service -> Service)
-> GetDatasetContent -> Request GetDatasetContent
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetDatasetContent
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetDatasetContent)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe [DatasetEntry]
-> Maybe DatasetContentStatus
-> Maybe POSIX
-> Int
-> GetDatasetContentResponse
GetDatasetContentResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"entries" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"status")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"timestamp")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable GetDatasetContent where
hashWithSalt :: Int -> GetDatasetContent -> Int
hashWithSalt Int
_salt GetDatasetContent' {Maybe Text
Text
datasetName :: Text
versionId :: Maybe Text
$sel:datasetName:GetDatasetContent' :: GetDatasetContent -> Text
$sel:versionId:GetDatasetContent' :: GetDatasetContent -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
versionId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
datasetName
instance Prelude.NFData GetDatasetContent where
rnf :: GetDatasetContent -> ()
rnf GetDatasetContent' {Maybe Text
Text
datasetName :: Text
versionId :: Maybe Text
$sel:datasetName:GetDatasetContent' :: GetDatasetContent -> Text
$sel:versionId:GetDatasetContent' :: GetDatasetContent -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
versionId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
datasetName
instance Data.ToHeaders GetDatasetContent where
toHeaders :: GetDatasetContent -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetDatasetContent where
toPath :: GetDatasetContent -> ByteString
toPath GetDatasetContent' {Maybe Text
Text
datasetName :: Text
versionId :: Maybe Text
$sel:datasetName:GetDatasetContent' :: GetDatasetContent -> Text
$sel:versionId:GetDatasetContent' :: GetDatasetContent -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/datasets/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
datasetName, ByteString
"/content"]
instance Data.ToQuery GetDatasetContent where
toQuery :: GetDatasetContent -> QueryString
toQuery GetDatasetContent' {Maybe Text
Text
datasetName :: Text
versionId :: Maybe Text
$sel:datasetName:GetDatasetContent' :: GetDatasetContent -> Text
$sel:versionId:GetDatasetContent' :: GetDatasetContent -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"versionId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
versionId]
data GetDatasetContentResponse = GetDatasetContentResponse'
{
GetDatasetContentResponse -> Maybe [DatasetEntry]
entries :: Prelude.Maybe [DatasetEntry],
GetDatasetContentResponse -> Maybe DatasetContentStatus
status :: Prelude.Maybe DatasetContentStatus,
GetDatasetContentResponse -> Maybe POSIX
timestamp :: Prelude.Maybe Data.POSIX,
GetDatasetContentResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetDatasetContentResponse -> GetDatasetContentResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetDatasetContentResponse -> GetDatasetContentResponse -> Bool
$c/= :: GetDatasetContentResponse -> GetDatasetContentResponse -> Bool
== :: GetDatasetContentResponse -> GetDatasetContentResponse -> Bool
$c== :: GetDatasetContentResponse -> GetDatasetContentResponse -> Bool
Prelude.Eq, ReadPrec [GetDatasetContentResponse]
ReadPrec GetDatasetContentResponse
Int -> ReadS GetDatasetContentResponse
ReadS [GetDatasetContentResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetDatasetContentResponse]
$creadListPrec :: ReadPrec [GetDatasetContentResponse]
readPrec :: ReadPrec GetDatasetContentResponse
$creadPrec :: ReadPrec GetDatasetContentResponse
readList :: ReadS [GetDatasetContentResponse]
$creadList :: ReadS [GetDatasetContentResponse]
readsPrec :: Int -> ReadS GetDatasetContentResponse
$creadsPrec :: Int -> ReadS GetDatasetContentResponse
Prelude.Read, Int -> GetDatasetContentResponse -> ShowS
[GetDatasetContentResponse] -> ShowS
GetDatasetContentResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetDatasetContentResponse] -> ShowS
$cshowList :: [GetDatasetContentResponse] -> ShowS
show :: GetDatasetContentResponse -> String
$cshow :: GetDatasetContentResponse -> String
showsPrec :: Int -> GetDatasetContentResponse -> ShowS
$cshowsPrec :: Int -> GetDatasetContentResponse -> ShowS
Prelude.Show, forall x.
Rep GetDatasetContentResponse x -> GetDatasetContentResponse
forall x.
GetDatasetContentResponse -> Rep GetDatasetContentResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetDatasetContentResponse x -> GetDatasetContentResponse
$cfrom :: forall x.
GetDatasetContentResponse -> Rep GetDatasetContentResponse x
Prelude.Generic)
newGetDatasetContentResponse ::
Prelude.Int ->
GetDatasetContentResponse
newGetDatasetContentResponse :: Int -> GetDatasetContentResponse
newGetDatasetContentResponse Int
pHttpStatus_ =
GetDatasetContentResponse'
{ $sel:entries:GetDatasetContentResponse' :: Maybe [DatasetEntry]
entries =
forall a. Maybe a
Prelude.Nothing,
$sel:status:GetDatasetContentResponse' :: Maybe DatasetContentStatus
status = forall a. Maybe a
Prelude.Nothing,
$sel:timestamp:GetDatasetContentResponse' :: Maybe POSIX
timestamp = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetDatasetContentResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getDatasetContentResponse_entries :: Lens.Lens' GetDatasetContentResponse (Prelude.Maybe [DatasetEntry])
getDatasetContentResponse_entries :: Lens' GetDatasetContentResponse (Maybe [DatasetEntry])
getDatasetContentResponse_entries = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContentResponse' {Maybe [DatasetEntry]
entries :: Maybe [DatasetEntry]
$sel:entries:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe [DatasetEntry]
entries} -> Maybe [DatasetEntry]
entries) (\s :: GetDatasetContentResponse
s@GetDatasetContentResponse' {} Maybe [DatasetEntry]
a -> GetDatasetContentResponse
s {$sel:entries:GetDatasetContentResponse' :: Maybe [DatasetEntry]
entries = Maybe [DatasetEntry]
a} :: GetDatasetContentResponse) 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
getDatasetContentResponse_status :: Lens.Lens' GetDatasetContentResponse (Prelude.Maybe DatasetContentStatus)
getDatasetContentResponse_status :: Lens' GetDatasetContentResponse (Maybe DatasetContentStatus)
getDatasetContentResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContentResponse' {Maybe DatasetContentStatus
status :: Maybe DatasetContentStatus
$sel:status:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe DatasetContentStatus
status} -> Maybe DatasetContentStatus
status) (\s :: GetDatasetContentResponse
s@GetDatasetContentResponse' {} Maybe DatasetContentStatus
a -> GetDatasetContentResponse
s {$sel:status:GetDatasetContentResponse' :: Maybe DatasetContentStatus
status = Maybe DatasetContentStatus
a} :: GetDatasetContentResponse)
getDatasetContentResponse_timestamp :: Lens.Lens' GetDatasetContentResponse (Prelude.Maybe Prelude.UTCTime)
getDatasetContentResponse_timestamp :: Lens' GetDatasetContentResponse (Maybe UTCTime)
getDatasetContentResponse_timestamp = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContentResponse' {Maybe POSIX
timestamp :: Maybe POSIX
$sel:timestamp:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe POSIX
timestamp} -> Maybe POSIX
timestamp) (\s :: GetDatasetContentResponse
s@GetDatasetContentResponse' {} Maybe POSIX
a -> GetDatasetContentResponse
s {$sel:timestamp:GetDatasetContentResponse' :: Maybe POSIX
timestamp = Maybe POSIX
a} :: GetDatasetContentResponse) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time
getDatasetContentResponse_httpStatus :: Lens.Lens' GetDatasetContentResponse Prelude.Int
getDatasetContentResponse_httpStatus :: Lens' GetDatasetContentResponse Int
getDatasetContentResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetDatasetContentResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetDatasetContentResponse' :: GetDatasetContentResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetDatasetContentResponse
s@GetDatasetContentResponse' {} Int
a -> GetDatasetContentResponse
s {$sel:httpStatus:GetDatasetContentResponse' :: Int
httpStatus = Int
a} :: GetDatasetContentResponse)
instance Prelude.NFData GetDatasetContentResponse where
rnf :: GetDatasetContentResponse -> ()
rnf GetDatasetContentResponse' {Int
Maybe [DatasetEntry]
Maybe POSIX
Maybe DatasetContentStatus
httpStatus :: Int
timestamp :: Maybe POSIX
status :: Maybe DatasetContentStatus
entries :: Maybe [DatasetEntry]
$sel:httpStatus:GetDatasetContentResponse' :: GetDatasetContentResponse -> Int
$sel:timestamp:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe POSIX
$sel:status:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe DatasetContentStatus
$sel:entries:GetDatasetContentResponse' :: GetDatasetContentResponse -> Maybe [DatasetEntry]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [DatasetEntry]
entries
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DatasetContentStatus
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
timestamp
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus