module Network.AWS.AppStream.ListAssociatedStacks
(
listAssociatedStacks
, ListAssociatedStacks
, lasNextToken
, lasFleetName
, listAssociatedStacksResponse
, ListAssociatedStacksResponse
, lasrsNextToken
, lasrsNames
, lasrsResponseStatus
) where
import Network.AWS.AppStream.Types
import Network.AWS.AppStream.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListAssociatedStacks = ListAssociatedStacks'
{ _lasNextToken :: !(Maybe Text)
, _lasFleetName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listAssociatedStacks
:: Text
-> ListAssociatedStacks
listAssociatedStacks pFleetName_ =
ListAssociatedStacks' {_lasNextToken = Nothing, _lasFleetName = pFleetName_}
lasNextToken :: Lens' ListAssociatedStacks (Maybe Text)
lasNextToken = lens _lasNextToken (\ s a -> s{_lasNextToken = a});
lasFleetName :: Lens' ListAssociatedStacks Text
lasFleetName = lens _lasFleetName (\ s a -> s{_lasFleetName = a});
instance AWSRequest ListAssociatedStacks where
type Rs ListAssociatedStacks =
ListAssociatedStacksResponse
request = postJSON appStream
response
= receiveJSON
(\ s h x ->
ListAssociatedStacksResponse' <$>
(x .?> "NextToken") <*> (x .?> "Names" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListAssociatedStacks where
instance NFData ListAssociatedStacks where
instance ToHeaders ListAssociatedStacks where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("PhotonAdminProxyService.ListAssociatedStacks" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListAssociatedStacks where
toJSON ListAssociatedStacks'{..}
= object
(catMaybes
[("NextToken" .=) <$> _lasNextToken,
Just ("FleetName" .= _lasFleetName)])
instance ToPath ListAssociatedStacks where
toPath = const "/"
instance ToQuery ListAssociatedStacks where
toQuery = const mempty
data ListAssociatedStacksResponse = ListAssociatedStacksResponse'
{ _lasrsNextToken :: !(Maybe Text)
, _lasrsNames :: !(Maybe [Text])
, _lasrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listAssociatedStacksResponse
:: Int
-> ListAssociatedStacksResponse
listAssociatedStacksResponse pResponseStatus_ =
ListAssociatedStacksResponse'
{ _lasrsNextToken = Nothing
, _lasrsNames = Nothing
, _lasrsResponseStatus = pResponseStatus_
}
lasrsNextToken :: Lens' ListAssociatedStacksResponse (Maybe Text)
lasrsNextToken = lens _lasrsNextToken (\ s a -> s{_lasrsNextToken = a});
lasrsNames :: Lens' ListAssociatedStacksResponse [Text]
lasrsNames = lens _lasrsNames (\ s a -> s{_lasrsNames = a}) . _Default . _Coerce;
lasrsResponseStatus :: Lens' ListAssociatedStacksResponse Int
lasrsResponseStatus = lens _lasrsResponseStatus (\ s a -> s{_lasrsResponseStatus = a});
instance NFData ListAssociatedStacksResponse where