{-# 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.DataPipeline.DescribePipelines
(
describePipelines
, DescribePipelines
, dpPipelineIds
, describePipelinesResponse
, DescribePipelinesResponse
, dprsResponseStatus
, dprsPipelineDescriptionList
) where
import Network.AWS.DataPipeline.Types
import Network.AWS.DataPipeline.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DescribePipelines = DescribePipelines'
{ _dpPipelineIds :: [Text]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describePipelines
:: DescribePipelines
describePipelines =
DescribePipelines'
{ _dpPipelineIds = mempty
}
dpPipelineIds :: Lens' DescribePipelines [Text]
dpPipelineIds = lens _dpPipelineIds (\ s a -> s{_dpPipelineIds = a}) . _Coerce;
instance AWSRequest DescribePipelines where
type Rs DescribePipelines = DescribePipelinesResponse
request = postJSON dataPipeline
response
= receiveJSON
(\ s h x ->
DescribePipelinesResponse' <$>
(pure (fromEnum s)) <*>
(x .?> "pipelineDescriptionList" .!@ mempty))
instance Hashable DescribePipelines
instance NFData DescribePipelines
instance ToHeaders DescribePipelines where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("DataPipeline.DescribePipelines" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribePipelines where
toJSON DescribePipelines'{..}
= object
(catMaybes [Just ("pipelineIds" .= _dpPipelineIds)])
instance ToPath DescribePipelines where
toPath = const "/"
instance ToQuery DescribePipelines where
toQuery = const mempty
data DescribePipelinesResponse = DescribePipelinesResponse'
{ _dprsResponseStatus :: !Int
, _dprsPipelineDescriptionList :: ![PipelineDescription]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describePipelinesResponse
:: Int
-> DescribePipelinesResponse
describePipelinesResponse pResponseStatus_ =
DescribePipelinesResponse'
{ _dprsResponseStatus = pResponseStatus_
, _dprsPipelineDescriptionList = mempty
}
dprsResponseStatus :: Lens' DescribePipelinesResponse Int
dprsResponseStatus = lens _dprsResponseStatus (\ s a -> s{_dprsResponseStatus = a});
dprsPipelineDescriptionList :: Lens' DescribePipelinesResponse [PipelineDescription]
dprsPipelineDescriptionList = lens _dprsPipelineDescriptionList (\ s a -> s{_dprsPipelineDescriptionList = a}) . _Coerce;
instance NFData DescribePipelinesResponse