{-# 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.ListDatasets
(
listDatasets
, ListDatasets
, lNextToken
, lMaxResults
, listDatasetsResponse
, ListDatasetsResponse
, lrsNextToken
, lrsDatasetSummaries
, lrsResponseStatus
) 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 ListDatasets = ListDatasets'
{ _lNextToken :: !(Maybe Text)
, _lMaxResults :: !(Maybe Nat)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listDatasets
:: ListDatasets
listDatasets = ListDatasets' {_lNextToken = Nothing, _lMaxResults = Nothing}
lNextToken :: Lens' ListDatasets (Maybe Text)
lNextToken = lens _lNextToken (\ s a -> s{_lNextToken = a})
lMaxResults :: Lens' ListDatasets (Maybe Natural)
lMaxResults = lens _lMaxResults (\ s a -> s{_lMaxResults = a}) . mapping _Nat
instance AWSRequest ListDatasets where
type Rs ListDatasets = ListDatasetsResponse
request = get ioTAnalytics
response
= receiveJSON
(\ s h x ->
ListDatasetsResponse' <$>
(x .?> "nextToken") <*>
(x .?> "datasetSummaries" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListDatasets where
instance NFData ListDatasets where
instance ToHeaders ListDatasets where
toHeaders = const mempty
instance ToPath ListDatasets where
toPath = const "/datasets"
instance ToQuery ListDatasets where
toQuery ListDatasets'{..}
= mconcat
["nextToken" =: _lNextToken,
"maxResults" =: _lMaxResults]
data ListDatasetsResponse = ListDatasetsResponse'
{ _lrsNextToken :: !(Maybe Text)
, _lrsDatasetSummaries :: !(Maybe [DatasetSummary])
, _lrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listDatasetsResponse
:: Int
-> ListDatasetsResponse
listDatasetsResponse pResponseStatus_ =
ListDatasetsResponse'
{ _lrsNextToken = Nothing
, _lrsDatasetSummaries = Nothing
, _lrsResponseStatus = pResponseStatus_
}
lrsNextToken :: Lens' ListDatasetsResponse (Maybe Text)
lrsNextToken = lens _lrsNextToken (\ s a -> s{_lrsNextToken = a})
lrsDatasetSummaries :: Lens' ListDatasetsResponse [DatasetSummary]
lrsDatasetSummaries = lens _lrsDatasetSummaries (\ s a -> s{_lrsDatasetSummaries = a}) . _Default . _Coerce
lrsResponseStatus :: Lens' ListDatasetsResponse Int
lrsResponseStatus = lens _lrsResponseStatus (\ s a -> s{_lrsResponseStatus = a})
instance NFData ListDatasetsResponse where