module Network.AWS.CodeDeploy.BatchGetApplications
(
BatchGetApplications
, batchGetApplications
, bgaApplicationNames
, BatchGetApplicationsResponse
, batchGetApplicationsResponse
, bgarApplicationsInfo
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.CodeDeploy.Types
import qualified GHC.Exts
newtype BatchGetApplications = BatchGetApplications
{ _bgaApplicationNames :: List "applicationNames" Text
} deriving (Eq, Ord, Read, Show, Monoid, Semigroup)
instance GHC.Exts.IsList BatchGetApplications where
type Item BatchGetApplications = Text
fromList = BatchGetApplications . GHC.Exts.fromList
toList = GHC.Exts.toList . _bgaApplicationNames
batchGetApplications :: BatchGetApplications
batchGetApplications = BatchGetApplications
{ _bgaApplicationNames = mempty
}
bgaApplicationNames :: Lens' BatchGetApplications [Text]
bgaApplicationNames =
lens _bgaApplicationNames (\s a -> s { _bgaApplicationNames = a })
. _List
newtype BatchGetApplicationsResponse = BatchGetApplicationsResponse
{ _bgarApplicationsInfo :: List "applicationsInfo" ApplicationInfo
} deriving (Eq, Read, Show, Monoid, Semigroup)
instance GHC.Exts.IsList BatchGetApplicationsResponse where
type Item BatchGetApplicationsResponse = ApplicationInfo
fromList = BatchGetApplicationsResponse . GHC.Exts.fromList
toList = GHC.Exts.toList . _bgarApplicationsInfo
batchGetApplicationsResponse :: BatchGetApplicationsResponse
batchGetApplicationsResponse = BatchGetApplicationsResponse
{ _bgarApplicationsInfo = mempty
}
bgarApplicationsInfo :: Lens' BatchGetApplicationsResponse [ApplicationInfo]
bgarApplicationsInfo =
lens _bgarApplicationsInfo (\s a -> s { _bgarApplicationsInfo = a })
. _List
instance ToPath BatchGetApplications where
toPath = const "/"
instance ToQuery BatchGetApplications where
toQuery = const mempty
instance ToHeaders BatchGetApplications
instance ToJSON BatchGetApplications where
toJSON BatchGetApplications{..} = object
[ "applicationNames" .= _bgaApplicationNames
]
instance AWSRequest BatchGetApplications where
type Sv BatchGetApplications = CodeDeploy
type Rs BatchGetApplications = BatchGetApplicationsResponse
request = post "BatchGetApplications"
response = jsonResponse
instance FromJSON BatchGetApplicationsResponse where
parseJSON = withObject "BatchGetApplicationsResponse" $ \o -> BatchGetApplicationsResponse
<$> o .:? "applicationsInfo" .!= mempty