{-# 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.CloudFormation.ListExports -- Copyright : (c) 2013-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Lists all exported output values in the account and region in which you call this action. Use this action to see the exported output values that you can import into other stacks. To import values, use the function. -- -- -- For more information, see . -- module Network.AWS.CloudFormation.ListExports ( -- * Creating a Request listExports , ListExports -- * Request Lenses , leNextToken -- * Destructuring the Response , listExportsResponse , ListExportsResponse -- * Response Lenses , lersNextToken , lersExports , lersResponseStatus ) where import Network.AWS.CloudFormation.Types import Network.AWS.CloudFormation.Types.Product import Network.AWS.Lens import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response -- | /See:/ 'listExports' smart constructor. newtype ListExports = ListExports' { _leNextToken :: Maybe Text } deriving (Eq,Read,Show,Data,Typeable,Generic) -- | Creates a value of 'ListExports' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'leNextToken' - A string (provided by the 'ListExports' response output) that identifies the next page of exported output values that you asked to retrieve. listExports :: ListExports listExports = ListExports' { _leNextToken = Nothing } -- | A string (provided by the 'ListExports' response output) that identifies the next page of exported output values that you asked to retrieve. leNextToken :: Lens' ListExports (Maybe Text) leNextToken = lens _leNextToken (\ s a -> s{_leNextToken = a}); instance AWSRequest ListExports where type Rs ListExports = ListExportsResponse request = postQuery cloudFormation response = receiveXMLWrapper "ListExportsResult" (\ s h x -> ListExportsResponse' <$> (x .@? "NextToken") <*> (x .@? "Exports" .!@ mempty >>= may (parseXMLList "member")) <*> (pure (fromEnum s))) instance Hashable ListExports instance NFData ListExports instance ToHeaders ListExports where toHeaders = const mempty instance ToPath ListExports where toPath = const "/" instance ToQuery ListExports where toQuery ListExports'{..} = mconcat ["Action" =: ("ListExports" :: ByteString), "Version" =: ("2010-05-15" :: ByteString), "NextToken" =: _leNextToken] -- | /See:/ 'listExportsResponse' smart constructor. data ListExportsResponse = ListExportsResponse' { _lersNextToken :: !(Maybe Text) , _lersExports :: !(Maybe [Export]) , _lersResponseStatus :: !Int } deriving (Eq,Read,Show,Data,Typeable,Generic) -- | Creates a value of 'ListExportsResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'lersNextToken' - If the output exceeds 100 exported output values, a string that identifies the next page of exports. If there is no additional page, this value is null. -- -- * 'lersExports' - The output for the 'ListExports' action. -- -- * 'lersResponseStatus' - -- | The response status code. listExportsResponse :: Int -- ^ 'lersResponseStatus' -> ListExportsResponse listExportsResponse pResponseStatus_ = ListExportsResponse' { _lersNextToken = Nothing , _lersExports = Nothing , _lersResponseStatus = pResponseStatus_ } -- | If the output exceeds 100 exported output values, a string that identifies the next page of exports. If there is no additional page, this value is null. lersNextToken :: Lens' ListExportsResponse (Maybe Text) lersNextToken = lens _lersNextToken (\ s a -> s{_lersNextToken = a}); -- | The output for the 'ListExports' action. lersExports :: Lens' ListExportsResponse [Export] lersExports = lens _lersExports (\ s a -> s{_lersExports = a}) . _Default . _Coerce; -- | -- | The response status code. lersResponseStatus :: Lens' ListExportsResponse Int lersResponseStatus = lens _lersResponseStatus (\ s a -> s{_lersResponseStatus = a}); instance NFData ListExportsResponse