{-# 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.OpsWorks.DescribeDeployments
(
describeDeployments
, DescribeDeployments
, ddAppId
, ddDeploymentIds
, ddStackId
, describeDeploymentsResponse
, DescribeDeploymentsResponse
, ddrsDeployments
, ddrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.OpsWorks.Types
import Network.AWS.OpsWorks.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeDeployments = DescribeDeployments'
{ _ddAppId :: !(Maybe Text)
, _ddDeploymentIds :: !(Maybe [Text])
, _ddStackId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDeployments
:: DescribeDeployments
describeDeployments =
DescribeDeployments'
{ _ddAppId = Nothing
, _ddDeploymentIds = Nothing
, _ddStackId = Nothing
}
ddAppId :: Lens' DescribeDeployments (Maybe Text)
ddAppId = lens _ddAppId (\ s a -> s{_ddAppId = a});
ddDeploymentIds :: Lens' DescribeDeployments [Text]
ddDeploymentIds = lens _ddDeploymentIds (\ s a -> s{_ddDeploymentIds = a}) . _Default . _Coerce;
ddStackId :: Lens' DescribeDeployments (Maybe Text)
ddStackId = lens _ddStackId (\ s a -> s{_ddStackId = a});
instance AWSRequest DescribeDeployments where
type Rs DescribeDeployments =
DescribeDeploymentsResponse
request = postJSON opsWorks
response
= receiveJSON
(\ s h x ->
DescribeDeploymentsResponse' <$>
(x .?> "Deployments" .!@ mempty) <*>
(pure (fromEnum s)))
instance Hashable DescribeDeployments
instance NFData DescribeDeployments
instance ToHeaders DescribeDeployments where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("OpsWorks_20130218.DescribeDeployments" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeDeployments where
toJSON DescribeDeployments'{..}
= object
(catMaybes
[("AppId" .=) <$> _ddAppId,
("DeploymentIds" .=) <$> _ddDeploymentIds,
("StackId" .=) <$> _ddStackId])
instance ToPath DescribeDeployments where
toPath = const "/"
instance ToQuery DescribeDeployments where
toQuery = const mempty
data DescribeDeploymentsResponse = DescribeDeploymentsResponse'
{ _ddrsDeployments :: !(Maybe [Deployment])
, _ddrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeDeploymentsResponse
:: Int
-> DescribeDeploymentsResponse
describeDeploymentsResponse pResponseStatus_ =
DescribeDeploymentsResponse'
{ _ddrsDeployments = Nothing
, _ddrsResponseStatus = pResponseStatus_
}
ddrsDeployments :: Lens' DescribeDeploymentsResponse [Deployment]
ddrsDeployments = lens _ddrsDeployments (\ s a -> s{_ddrsDeployments = a}) . _Default . _Coerce;
ddrsResponseStatus :: Lens' DescribeDeploymentsResponse Int
ddrsResponseStatus = lens _ddrsResponseStatus (\ s a -> s{_ddrsResponseStatus = a});
instance NFData DescribeDeploymentsResponse