module Network.AWS.Support.DescribeTrustedAdvisorChecks
(
DescribeTrustedAdvisorChecks
, describeTrustedAdvisorChecks
, dtacLanguage
, DescribeTrustedAdvisorChecksResponse
, describeTrustedAdvisorChecksResponse
, dtacrChecks
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.Support.Types
import qualified GHC.Exts
newtype DescribeTrustedAdvisorChecks = DescribeTrustedAdvisorChecks
{ _dtacLanguage :: Text
} deriving (Eq, Ord, Show, Monoid, IsString)
describeTrustedAdvisorChecks :: Text
-> DescribeTrustedAdvisorChecks
describeTrustedAdvisorChecks p1 = DescribeTrustedAdvisorChecks
{ _dtacLanguage = p1
}
dtacLanguage :: Lens' DescribeTrustedAdvisorChecks Text
dtacLanguage = lens _dtacLanguage (\s a -> s { _dtacLanguage = a })
newtype DescribeTrustedAdvisorChecksResponse = DescribeTrustedAdvisorChecksResponse
{ _dtacrChecks :: List "checks" TrustedAdvisorCheckDescription
} deriving (Eq, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeTrustedAdvisorChecksResponse where
type Item DescribeTrustedAdvisorChecksResponse = TrustedAdvisorCheckDescription
fromList = DescribeTrustedAdvisorChecksResponse . GHC.Exts.fromList
toList = GHC.Exts.toList . _dtacrChecks
describeTrustedAdvisorChecksResponse :: DescribeTrustedAdvisorChecksResponse
describeTrustedAdvisorChecksResponse = DescribeTrustedAdvisorChecksResponse
{ _dtacrChecks = mempty
}
dtacrChecks :: Lens' DescribeTrustedAdvisorChecksResponse [TrustedAdvisorCheckDescription]
dtacrChecks = lens _dtacrChecks (\s a -> s { _dtacrChecks = a }) . _List
instance ToPath DescribeTrustedAdvisorChecks where
toPath = const "/"
instance ToQuery DescribeTrustedAdvisorChecks where
toQuery = const mempty
instance ToHeaders DescribeTrustedAdvisorChecks
instance ToJSON DescribeTrustedAdvisorChecks where
toJSON DescribeTrustedAdvisorChecks{..} = object
[ "language" .= _dtacLanguage
]
instance AWSRequest DescribeTrustedAdvisorChecks where
type Sv DescribeTrustedAdvisorChecks = Support
type Rs DescribeTrustedAdvisorChecks = DescribeTrustedAdvisorChecksResponse
request = post "DescribeTrustedAdvisorChecks"
response = jsonResponse
instance FromJSON DescribeTrustedAdvisorChecksResponse where
parseJSON = withObject "DescribeTrustedAdvisorChecksResponse" $ \o -> DescribeTrustedAdvisorChecksResponse
<$> o .: "checks"