{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.IoTAnalytics.GetDatasetContent
(
getDatasetContent
, GetDatasetContent
, gdcVersionId
, gdcDatasetName
, getDatasetContentResponse
, GetDatasetContentResponse
, gdcrsStatus
, gdcrsEntries
, gdcrsTimestamp
, gdcrsResponseStatus
) where
import Network.AWS.IoTAnalytics.Types
import Network.AWS.IoTAnalytics.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data GetDatasetContent = GetDatasetContent'
{ _gdcVersionId :: !(Maybe Text)
, _gdcDatasetName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getDatasetContent
:: Text
-> GetDatasetContent
getDatasetContent pDatasetName_ =
GetDatasetContent' {_gdcVersionId = Nothing, _gdcDatasetName = pDatasetName_}
gdcVersionId :: Lens' GetDatasetContent (Maybe Text)
gdcVersionId = lens _gdcVersionId (\ s a -> s{_gdcVersionId = a})
gdcDatasetName :: Lens' GetDatasetContent Text
gdcDatasetName = lens _gdcDatasetName (\ s a -> s{_gdcDatasetName = a})
instance AWSRequest GetDatasetContent where
type Rs GetDatasetContent = GetDatasetContentResponse
request = get ioTAnalytics
response
= receiveJSON
(\ s h x ->
GetDatasetContentResponse' <$>
(x .?> "status") <*> (x .?> "entries" .!@ mempty) <*>
(x .?> "timestamp")
<*> (pure (fromEnum s)))
instance Hashable GetDatasetContent where
instance NFData GetDatasetContent where
instance ToHeaders GetDatasetContent where
toHeaders = const mempty
instance ToPath GetDatasetContent where
toPath GetDatasetContent'{..}
= mconcat
["/datasets/", toBS _gdcDatasetName, "/content"]
instance ToQuery GetDatasetContent where
toQuery GetDatasetContent'{..}
= mconcat ["versionId" =: _gdcVersionId]
data GetDatasetContentResponse = GetDatasetContentResponse'
{ _gdcrsStatus :: !(Maybe DatasetContentStatus)
, _gdcrsEntries :: !(Maybe [DatasetEntry])
, _gdcrsTimestamp :: !(Maybe POSIX)
, _gdcrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getDatasetContentResponse
:: Int
-> GetDatasetContentResponse
getDatasetContentResponse pResponseStatus_ =
GetDatasetContentResponse'
{ _gdcrsStatus = Nothing
, _gdcrsEntries = Nothing
, _gdcrsTimestamp = Nothing
, _gdcrsResponseStatus = pResponseStatus_
}
gdcrsStatus :: Lens' GetDatasetContentResponse (Maybe DatasetContentStatus)
gdcrsStatus = lens _gdcrsStatus (\ s a -> s{_gdcrsStatus = a})
gdcrsEntries :: Lens' GetDatasetContentResponse [DatasetEntry]
gdcrsEntries = lens _gdcrsEntries (\ s a -> s{_gdcrsEntries = a}) . _Default . _Coerce
gdcrsTimestamp :: Lens' GetDatasetContentResponse (Maybe UTCTime)
gdcrsTimestamp = lens _gdcrsTimestamp (\ s a -> s{_gdcrsTimestamp = a}) . mapping _Time
gdcrsResponseStatus :: Lens' GetDatasetContentResponse Int
gdcrsResponseStatus = lens _gdcrsResponseStatus (\ s a -> s{_gdcrsResponseStatus = a})
instance NFData GetDatasetContentResponse where