module Network.AWS.CognitoSync.ListDatasets
(
listDatasets
, ListDatasets
, ldNextToken
, ldMaxResults
, ldIdentityId
, ldIdentityPoolId
, listDatasetsResponse
, ListDatasetsResponse
, ldrsCount
, ldrsNextToken
, ldrsDatasets
, ldrsResponseStatus
) where
import Network.AWS.CognitoSync.Types
import Network.AWS.CognitoSync.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListDatasets = ListDatasets'
{ _ldNextToken :: !(Maybe Text)
, _ldMaxResults :: !(Maybe Int)
, _ldIdentityId :: !Text
, _ldIdentityPoolId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listDatasets
:: Text
-> Text
-> ListDatasets
listDatasets pIdentityId_ pIdentityPoolId_ =
ListDatasets'
{ _ldNextToken = Nothing
, _ldMaxResults = Nothing
, _ldIdentityId = pIdentityId_
, _ldIdentityPoolId = pIdentityPoolId_
}
ldNextToken :: Lens' ListDatasets (Maybe Text)
ldNextToken = lens _ldNextToken (\ s a -> s{_ldNextToken = a});
ldMaxResults :: Lens' ListDatasets (Maybe Int)
ldMaxResults = lens _ldMaxResults (\ s a -> s{_ldMaxResults = a});
ldIdentityId :: Lens' ListDatasets Text
ldIdentityId = lens _ldIdentityId (\ s a -> s{_ldIdentityId = a});
ldIdentityPoolId :: Lens' ListDatasets Text
ldIdentityPoolId = lens _ldIdentityPoolId (\ s a -> s{_ldIdentityPoolId = a});
instance AWSRequest ListDatasets where
type Rs ListDatasets = ListDatasetsResponse
request = get cognitoSync
response
= receiveJSON
(\ s h x ->
ListDatasetsResponse' <$>
(x .?> "Count") <*> (x .?> "NextToken") <*>
(x .?> "Datasets" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListDatasets
instance NFData ListDatasets
instance ToHeaders ListDatasets where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath ListDatasets where
toPath ListDatasets'{..}
= mconcat
["/identitypools/", toBS _ldIdentityPoolId,
"/identities/", toBS _ldIdentityId, "/datasets"]
instance ToQuery ListDatasets where
toQuery ListDatasets'{..}
= mconcat
["nextToken" =: _ldNextToken,
"maxResults" =: _ldMaxResults]
data ListDatasetsResponse = ListDatasetsResponse'
{ _ldrsCount :: !(Maybe Int)
, _ldrsNextToken :: !(Maybe Text)
, _ldrsDatasets :: !(Maybe [Dataset])
, _ldrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listDatasetsResponse
:: Int
-> ListDatasetsResponse
listDatasetsResponse pResponseStatus_ =
ListDatasetsResponse'
{ _ldrsCount = Nothing
, _ldrsNextToken = Nothing
, _ldrsDatasets = Nothing
, _ldrsResponseStatus = pResponseStatus_
}
ldrsCount :: Lens' ListDatasetsResponse (Maybe Int)
ldrsCount = lens _ldrsCount (\ s a -> s{_ldrsCount = a});
ldrsNextToken :: Lens' ListDatasetsResponse (Maybe Text)
ldrsNextToken = lens _ldrsNextToken (\ s a -> s{_ldrsNextToken = a});
ldrsDatasets :: Lens' ListDatasetsResponse [Dataset]
ldrsDatasets = lens _ldrsDatasets (\ s a -> s{_ldrsDatasets = a}) . _Default . _Coerce;
ldrsResponseStatus :: Lens' ListDatasetsResponse Int
ldrsResponseStatus = lens _ldrsResponseStatus (\ s a -> s{_ldrsResponseStatus = a});
instance NFData ListDatasetsResponse