{-# 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.CodePipeline.ListActionTypes
(
listActionTypes
, ListActionTypes
, latActionOwnerFilter
, latNextToken
, listActionTypesResponse
, ListActionTypesResponse
, latrsNextToken
, latrsResponseStatus
, latrsActionTypes
) where
import Network.AWS.CodePipeline.Types
import Network.AWS.CodePipeline.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListActionTypes = ListActionTypes'
{ _latActionOwnerFilter :: !(Maybe ActionOwner)
, _latNextToken :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listActionTypes
:: ListActionTypes
listActionTypes =
ListActionTypes' {_latActionOwnerFilter = Nothing, _latNextToken = Nothing}
latActionOwnerFilter :: Lens' ListActionTypes (Maybe ActionOwner)
latActionOwnerFilter = lens _latActionOwnerFilter (\ s a -> s{_latActionOwnerFilter = a})
latNextToken :: Lens' ListActionTypes (Maybe Text)
latNextToken = lens _latNextToken (\ s a -> s{_latNextToken = a})
instance AWSRequest ListActionTypes where
type Rs ListActionTypes = ListActionTypesResponse
request = postJSON codePipeline
response
= receiveJSON
(\ s h x ->
ListActionTypesResponse' <$>
(x .?> "nextToken") <*> (pure (fromEnum s)) <*>
(x .?> "actionTypes" .!@ mempty))
instance Hashable ListActionTypes where
instance NFData ListActionTypes where
instance ToHeaders ListActionTypes where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("CodePipeline_20150709.ListActionTypes" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListActionTypes where
toJSON ListActionTypes'{..}
= object
(catMaybes
[("actionOwnerFilter" .=) <$> _latActionOwnerFilter,
("nextToken" .=) <$> _latNextToken])
instance ToPath ListActionTypes where
toPath = const "/"
instance ToQuery ListActionTypes where
toQuery = const mempty
data ListActionTypesResponse = ListActionTypesResponse'
{ _latrsNextToken :: !(Maybe Text)
, _latrsResponseStatus :: !Int
, _latrsActionTypes :: ![ActionType]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listActionTypesResponse
:: Int
-> ListActionTypesResponse
listActionTypesResponse pResponseStatus_ =
ListActionTypesResponse'
{ _latrsNextToken = Nothing
, _latrsResponseStatus = pResponseStatus_
, _latrsActionTypes = mempty
}
latrsNextToken :: Lens' ListActionTypesResponse (Maybe Text)
latrsNextToken = lens _latrsNextToken (\ s a -> s{_latrsNextToken = a})
latrsResponseStatus :: Lens' ListActionTypesResponse Int
latrsResponseStatus = lens _latrsResponseStatus (\ s a -> s{_latrsResponseStatus = a})
latrsActionTypes :: Lens' ListActionTypesResponse [ActionType]
latrsActionTypes = lens _latrsActionTypes (\ s a -> s{_latrsActionTypes = a}) . _Coerce
instance NFData ListActionTypesResponse where