{-# 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 #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Network.AWS.MediaConvert.ListQueues -- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Retrieve a JSON array of up to twenty of your queues. This will return the queues themselves, not just a list of them. To retrieve the next twenty queues, use the nextToken string returned with the array. module Network.AWS.MediaConvert.ListQueues ( -- * Creating a Request listQueues , ListQueues -- * Request Lenses , lqListBy , lqNextToken , lqOrder , lqMaxResults -- * Destructuring the Response , listQueuesResponse , ListQueuesResponse -- * Response Lenses , lqrsQueues , lqrsNextToken , lqrsResponseStatus ) where import Network.AWS.Lens import Network.AWS.MediaConvert.Types import Network.AWS.MediaConvert.Types.Product import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response -- | /See:/ 'listQueues' smart constructor. data ListQueues = ListQueues' { _lqListBy :: !(Maybe QueueListBy) , _lqNextToken :: !(Maybe Text) , _lqOrder :: !(Maybe Order) , _lqMaxResults :: !(Maybe Int) } deriving (Eq, Read, Show, Data, Typeable, Generic) -- | Creates a value of 'ListQueues' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'lqListBy' - Undocumented member. -- -- * 'lqNextToken' - Use this string, provided with the response to a previous request, to request the next batch of queues. -- -- * 'lqOrder' - Undocumented member. -- -- * 'lqMaxResults' - Optional. Number of queues, up to twenty, that will be returned at one time. listQueues :: ListQueues listQueues = ListQueues' { _lqListBy = Nothing , _lqNextToken = Nothing , _lqOrder = Nothing , _lqMaxResults = Nothing } -- | Undocumented member. lqListBy :: Lens' ListQueues (Maybe QueueListBy) lqListBy = lens _lqListBy (\ s a -> s{_lqListBy = a}) -- | Use this string, provided with the response to a previous request, to request the next batch of queues. lqNextToken :: Lens' ListQueues (Maybe Text) lqNextToken = lens _lqNextToken (\ s a -> s{_lqNextToken = a}) -- | Undocumented member. lqOrder :: Lens' ListQueues (Maybe Order) lqOrder = lens _lqOrder (\ s a -> s{_lqOrder = a}) -- | Optional. Number of queues, up to twenty, that will be returned at one time. lqMaxResults :: Lens' ListQueues (Maybe Int) lqMaxResults = lens _lqMaxResults (\ s a -> s{_lqMaxResults = a}) instance AWSRequest ListQueues where type Rs ListQueues = ListQueuesResponse request = get mediaConvert response = receiveJSON (\ s h x -> ListQueuesResponse' <$> (x .?> "queues" .!@ mempty) <*> (x .?> "nextToken") <*> (pure (fromEnum s))) instance Hashable ListQueues where instance NFData ListQueues where instance ToHeaders ListQueues where toHeaders = const (mconcat ["Content-Type" =# ("application/x-amz-json-1.1" :: ByteString)]) instance ToPath ListQueues where toPath = const "/2017-08-29/queues" instance ToQuery ListQueues where toQuery ListQueues'{..} = mconcat ["listBy" =: _lqListBy, "nextToken" =: _lqNextToken, "order" =: _lqOrder, "maxResults" =: _lqMaxResults] -- | /See:/ 'listQueuesResponse' smart constructor. data ListQueuesResponse = ListQueuesResponse' { _lqrsQueues :: !(Maybe [Queue]) , _lqrsNextToken :: !(Maybe Text) , _lqrsResponseStatus :: !Int } deriving (Eq, Read, Show, Data, Typeable, Generic) -- | Creates a value of 'ListQueuesResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'lqrsQueues' - List of queues -- -- * 'lqrsNextToken' - Use this string to request the next batch of queues. -- -- * 'lqrsResponseStatus' - -- | The response status code. listQueuesResponse :: Int -- ^ 'lqrsResponseStatus' -> ListQueuesResponse listQueuesResponse pResponseStatus_ = ListQueuesResponse' { _lqrsQueues = Nothing , _lqrsNextToken = Nothing , _lqrsResponseStatus = pResponseStatus_ } -- | List of queues lqrsQueues :: Lens' ListQueuesResponse [Queue] lqrsQueues = lens _lqrsQueues (\ s a -> s{_lqrsQueues = a}) . _Default . _Coerce -- | Use this string to request the next batch of queues. lqrsNextToken :: Lens' ListQueuesResponse (Maybe Text) lqrsNextToken = lens _lqrsNextToken (\ s a -> s{_lqrsNextToken = a}) -- | -- | The response status code. lqrsResponseStatus :: Lens' ListQueuesResponse Int lqrsResponseStatus = lens _lqrsResponseStatus (\ s a -> s{_lqrsResponseStatus = a}) instance NFData ListQueuesResponse where