{-# 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.Greengrass.ListCoreDefinitions
(
listCoreDefinitions
, ListCoreDefinitions
, lcdNextToken
, lcdMaxResults
, listCoreDefinitionsResponse
, ListCoreDefinitionsResponse
, lcdrsNextToken
, lcdrsDefinitions
, lcdrsResponseStatus
) where
import Network.AWS.Greengrass.Types
import Network.AWS.Greengrass.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListCoreDefinitions = ListCoreDefinitions'
{ _lcdNextToken :: !(Maybe Text)
, _lcdMaxResults :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listCoreDefinitions
:: ListCoreDefinitions
listCoreDefinitions =
ListCoreDefinitions' {_lcdNextToken = Nothing, _lcdMaxResults = Nothing}
lcdNextToken :: Lens' ListCoreDefinitions (Maybe Text)
lcdNextToken = lens _lcdNextToken (\ s a -> s{_lcdNextToken = a})
lcdMaxResults :: Lens' ListCoreDefinitions (Maybe Text)
lcdMaxResults = lens _lcdMaxResults (\ s a -> s{_lcdMaxResults = a})
instance AWSRequest ListCoreDefinitions where
type Rs ListCoreDefinitions =
ListCoreDefinitionsResponse
request = get greengrass
response
= receiveJSON
(\ s h x ->
ListCoreDefinitionsResponse' <$>
(x .?> "NextToken") <*>
(x .?> "Definitions" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListCoreDefinitions where
instance NFData ListCoreDefinitions where
instance ToHeaders ListCoreDefinitions where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath ListCoreDefinitions where
toPath = const "/greengrass/definition/cores"
instance ToQuery ListCoreDefinitions where
toQuery ListCoreDefinitions'{..}
= mconcat
["NextToken" =: _lcdNextToken,
"MaxResults" =: _lcdMaxResults]
data ListCoreDefinitionsResponse = ListCoreDefinitionsResponse'
{ _lcdrsNextToken :: !(Maybe Text)
, _lcdrsDefinitions :: !(Maybe [DefinitionInformation])
, _lcdrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listCoreDefinitionsResponse
:: Int
-> ListCoreDefinitionsResponse
listCoreDefinitionsResponse pResponseStatus_ =
ListCoreDefinitionsResponse'
{ _lcdrsNextToken = Nothing
, _lcdrsDefinitions = Nothing
, _lcdrsResponseStatus = pResponseStatus_
}
lcdrsNextToken :: Lens' ListCoreDefinitionsResponse (Maybe Text)
lcdrsNextToken = lens _lcdrsNextToken (\ s a -> s{_lcdrsNextToken = a})
lcdrsDefinitions :: Lens' ListCoreDefinitionsResponse [DefinitionInformation]
lcdrsDefinitions = lens _lcdrsDefinitions (\ s a -> s{_lcdrsDefinitions = a}) . _Default . _Coerce
lcdrsResponseStatus :: Lens' ListCoreDefinitionsResponse Int
lcdrsResponseStatus = lens _lcdrsResponseStatus (\ s a -> s{_lcdrsResponseStatus = a})
instance NFData ListCoreDefinitionsResponse where