module Network.AWS.CodeDeploy.ListApplicationRevisions
(
listApplicationRevisions
, ListApplicationRevisions
, larS3KeyPrefix
, larDeployed
, larSortOrder
, larNextToken
, larS3Bucket
, larSortBy
, larApplicationName
, listApplicationRevisionsResponse
, ListApplicationRevisionsResponse
, larrsNextToken
, larrsRevisions
, larrsResponseStatus
) where
import Network.AWS.CodeDeploy.Types
import Network.AWS.CodeDeploy.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ListApplicationRevisions = ListApplicationRevisions'
{ _larS3KeyPrefix :: !(Maybe Text)
, _larDeployed :: !(Maybe ListStateFilterAction)
, _larSortOrder :: !(Maybe SortOrder)
, _larNextToken :: !(Maybe Text)
, _larS3Bucket :: !(Maybe Text)
, _larSortBy :: !(Maybe ApplicationRevisionSortBy)
, _larApplicationName :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listApplicationRevisions
:: Text
-> ListApplicationRevisions
listApplicationRevisions pApplicationName_ =
ListApplicationRevisions'
{ _larS3KeyPrefix = Nothing
, _larDeployed = Nothing
, _larSortOrder = Nothing
, _larNextToken = Nothing
, _larS3Bucket = Nothing
, _larSortBy = Nothing
, _larApplicationName = pApplicationName_
}
larS3KeyPrefix :: Lens' ListApplicationRevisions (Maybe Text)
larS3KeyPrefix = lens _larS3KeyPrefix (\ s a -> s{_larS3KeyPrefix = a});
larDeployed :: Lens' ListApplicationRevisions (Maybe ListStateFilterAction)
larDeployed = lens _larDeployed (\ s a -> s{_larDeployed = a});
larSortOrder :: Lens' ListApplicationRevisions (Maybe SortOrder)
larSortOrder = lens _larSortOrder (\ s a -> s{_larSortOrder = a});
larNextToken :: Lens' ListApplicationRevisions (Maybe Text)
larNextToken = lens _larNextToken (\ s a -> s{_larNextToken = a});
larS3Bucket :: Lens' ListApplicationRevisions (Maybe Text)
larS3Bucket = lens _larS3Bucket (\ s a -> s{_larS3Bucket = a});
larSortBy :: Lens' ListApplicationRevisions (Maybe ApplicationRevisionSortBy)
larSortBy = lens _larSortBy (\ s a -> s{_larSortBy = a});
larApplicationName :: Lens' ListApplicationRevisions Text
larApplicationName = lens _larApplicationName (\ s a -> s{_larApplicationName = a});
instance AWSRequest ListApplicationRevisions where
type Rs ListApplicationRevisions =
ListApplicationRevisionsResponse
request = postJSON codeDeploy
response
= receiveJSON
(\ s h x ->
ListApplicationRevisionsResponse' <$>
(x .?> "nextToken") <*>
(x .?> "revisions" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable ListApplicationRevisions
instance ToHeaders ListApplicationRevisions where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("CodeDeploy_20141006.ListApplicationRevisions" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListApplicationRevisions where
toJSON ListApplicationRevisions'{..}
= object
(catMaybes
[("s3KeyPrefix" .=) <$> _larS3KeyPrefix,
("deployed" .=) <$> _larDeployed,
("sortOrder" .=) <$> _larSortOrder,
("nextToken" .=) <$> _larNextToken,
("s3Bucket" .=) <$> _larS3Bucket,
("sortBy" .=) <$> _larSortBy,
Just ("applicationName" .= _larApplicationName)])
instance ToPath ListApplicationRevisions where
toPath = const "/"
instance ToQuery ListApplicationRevisions where
toQuery = const mempty
data ListApplicationRevisionsResponse = ListApplicationRevisionsResponse'
{ _larrsNextToken :: !(Maybe Text)
, _larrsRevisions :: !(Maybe [RevisionLocation])
, _larrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
listApplicationRevisionsResponse
:: Int
-> ListApplicationRevisionsResponse
listApplicationRevisionsResponse pResponseStatus_ =
ListApplicationRevisionsResponse'
{ _larrsNextToken = Nothing
, _larrsRevisions = Nothing
, _larrsResponseStatus = pResponseStatus_
}
larrsNextToken :: Lens' ListApplicationRevisionsResponse (Maybe Text)
larrsNextToken = lens _larrsNextToken (\ s a -> s{_larrsNextToken = a});
larrsRevisions :: Lens' ListApplicationRevisionsResponse [RevisionLocation]
larrsRevisions = lens _larrsRevisions (\ s a -> s{_larrsRevisions = a}) . _Default . _Coerce;
larrsResponseStatus :: Lens' ListApplicationRevisionsResponse Int
larrsResponseStatus = lens _larrsResponseStatus (\ s a -> s{_larrsResponseStatus = a});