packages feed

amazonka-support 0.3.6 → 1.0.0

raw patch · 25 files changed

+3893/−2766 lines, 25 filesdep +amazonka-supportdep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok

version bump matches the API change (PVP)

Dependencies added: amazonka-support, amazonka-test, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers

Dependency ranges changed: amazonka-core, base

API changes (from Hackage documentation)

- Network.AWS.Support.AddAttachmentsToSet: aatsrAttachmentSetId :: Lens' AddAttachmentsToSetResponse (Maybe Text)
- Network.AWS.Support.AddAttachmentsToSet: aatsrExpiryTime :: Lens' AddAttachmentsToSetResponse (Maybe Text)
- Network.AWS.Support.AddAttachmentsToSet: instance FromJSON AddAttachmentsToSetResponse
- Network.AWS.Support.AddAttachmentsToSet: instance Ord AddAttachmentsToSetResponse
- Network.AWS.Support.AddCommunicationToCase: actcrResult :: Lens' AddCommunicationToCaseResponse (Maybe Bool)
- Network.AWS.Support.AddCommunicationToCase: instance FromJSON AddCommunicationToCaseResponse
- Network.AWS.Support.AddCommunicationToCase: instance Ord AddCommunicationToCase
- Network.AWS.Support.AddCommunicationToCase: instance Ord AddCommunicationToCaseResponse
- Network.AWS.Support.CreateCase: ccrCaseId :: Lens' CreateCaseResponse (Maybe Text)
- Network.AWS.Support.CreateCase: instance FromJSON CreateCaseResponse
- Network.AWS.Support.CreateCase: instance Monoid CreateCaseResponse
- Network.AWS.Support.CreateCase: instance Ord CreateCase
- Network.AWS.Support.CreateCase: instance Ord CreateCaseResponse
- Network.AWS.Support.DescribeAttachment: darAttachment :: Lens' DescribeAttachmentResponse (Maybe Attachment)
- Network.AWS.Support.DescribeAttachment: instance FromJSON DescribeAttachmentResponse
- Network.AWS.Support.DescribeAttachment: instance IsString DescribeAttachment
- Network.AWS.Support.DescribeAttachment: instance Monoid DescribeAttachment
- Network.AWS.Support.DescribeAttachment: instance Ord DescribeAttachment
- Network.AWS.Support.DescribeCases: dcr1Cases :: Lens' DescribeCasesResponse [CaseDetails]
- Network.AWS.Support.DescribeCases: dcr1NextToken :: Lens' DescribeCasesResponse (Maybe Text)
- Network.AWS.Support.DescribeCases: instance FromJSON DescribeCasesResponse
- Network.AWS.Support.DescribeCases: instance Ord DescribeCases
- Network.AWS.Support.DescribeCommunications: dc1AfterTime :: Lens' DescribeCommunications (Maybe Text)
- Network.AWS.Support.DescribeCommunications: dc1BeforeTime :: Lens' DescribeCommunications (Maybe Text)
- Network.AWS.Support.DescribeCommunications: dc1CaseId :: Lens' DescribeCommunications Text
- Network.AWS.Support.DescribeCommunications: dc1MaxResults :: Lens' DescribeCommunications (Maybe Natural)
- Network.AWS.Support.DescribeCommunications: dc1NextToken :: Lens' DescribeCommunications (Maybe Text)
- Network.AWS.Support.DescribeCommunications: dcrCommunications :: Lens' DescribeCommunicationsResponse [Communication]
- Network.AWS.Support.DescribeCommunications: dcrNextToken :: Lens' DescribeCommunicationsResponse (Maybe Text)
- Network.AWS.Support.DescribeCommunications: instance FromJSON DescribeCommunicationsResponse
- Network.AWS.Support.DescribeCommunications: instance Ord DescribeCommunications
- Network.AWS.Support.DescribeServices: dsrServices :: Lens' DescribeServicesResponse [SupportService]
- Network.AWS.Support.DescribeServices: instance FromJSON DescribeServicesResponse
- Network.AWS.Support.DescribeServices: instance IsList DescribeServicesResponse
- Network.AWS.Support.DescribeServices: instance Monoid DescribeServicesResponse
- Network.AWS.Support.DescribeServices: instance Ord DescribeServices
- Network.AWS.Support.DescribeServices: instance Semigroup DescribeServicesResponse
- Network.AWS.Support.DescribeSeverityLevels: dslrSeverityLevels :: Lens' DescribeSeverityLevelsResponse [SeverityLevel]
- Network.AWS.Support.DescribeSeverityLevels: instance FromJSON DescribeSeverityLevelsResponse
- Network.AWS.Support.DescribeSeverityLevels: instance IsList DescribeSeverityLevelsResponse
- Network.AWS.Support.DescribeSeverityLevels: instance Monoid DescribeSeverityLevels
- Network.AWS.Support.DescribeSeverityLevels: instance Monoid DescribeSeverityLevelsResponse
- Network.AWS.Support.DescribeSeverityLevels: instance Ord DescribeSeverityLevels
- Network.AWS.Support.DescribeSeverityLevels: instance Semigroup DescribeSeverityLevelsResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: dtacrsrStatuses :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse [TrustedAdvisorCheckRefreshStatus]
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance FromJSON DescribeTrustedAdvisorCheckRefreshStatusesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance IsList DescribeTrustedAdvisorCheckRefreshStatuses
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance IsList DescribeTrustedAdvisorCheckRefreshStatusesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Monoid DescribeTrustedAdvisorCheckRefreshStatuses
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Monoid DescribeTrustedAdvisorCheckRefreshStatusesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Ord DescribeTrustedAdvisorCheckRefreshStatuses
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Semigroup DescribeTrustedAdvisorCheckRefreshStatuses
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Semigroup DescribeTrustedAdvisorCheckRefreshStatusesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckResult: dtacrrResult :: Lens' DescribeTrustedAdvisorCheckResultResponse (Maybe TrustedAdvisorCheckResult)
- Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance FromJSON DescribeTrustedAdvisorCheckResultResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Ord DescribeTrustedAdvisorCheckResult
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: dtacsrSummaries :: Lens' DescribeTrustedAdvisorCheckSummariesResponse [TrustedAdvisorCheckSummary]
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance FromJSON DescribeTrustedAdvisorCheckSummariesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance IsList DescribeTrustedAdvisorCheckSummaries
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance IsList DescribeTrustedAdvisorCheckSummariesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Monoid DescribeTrustedAdvisorCheckSummaries
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Monoid DescribeTrustedAdvisorCheckSummariesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Ord DescribeTrustedAdvisorCheckSummaries
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Semigroup DescribeTrustedAdvisorCheckSummaries
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Semigroup DescribeTrustedAdvisorCheckSummariesResponse
- Network.AWS.Support.DescribeTrustedAdvisorChecks: dtacrChecks :: Lens' DescribeTrustedAdvisorChecksResponse [TrustedAdvisorCheckDescription]
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance FromJSON DescribeTrustedAdvisorChecksResponse
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance IsList DescribeTrustedAdvisorChecksResponse
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance IsString DescribeTrustedAdvisorChecks
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Monoid DescribeTrustedAdvisorChecks
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Monoid DescribeTrustedAdvisorChecksResponse
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Ord DescribeTrustedAdvisorChecks
- Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Semigroup DescribeTrustedAdvisorChecksResponse
- Network.AWS.Support.RefreshTrustedAdvisorCheck: instance FromJSON RefreshTrustedAdvisorCheckResponse
- Network.AWS.Support.RefreshTrustedAdvisorCheck: instance IsString RefreshTrustedAdvisorCheck
- Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Monoid RefreshTrustedAdvisorCheck
- Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Ord RefreshTrustedAdvisorCheck
- Network.AWS.Support.RefreshTrustedAdvisorCheck: rtacrStatus :: Lens' RefreshTrustedAdvisorCheckResponse TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.ResolveCase: instance FromJSON ResolveCaseResponse
- Network.AWS.Support.ResolveCase: instance Monoid ResolveCase
- Network.AWS.Support.ResolveCase: instance Ord ResolveCase
- Network.AWS.Support.ResolveCase: instance Ord ResolveCaseResponse
- Network.AWS.Support.ResolveCase: rcrFinalCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)
- Network.AWS.Support.ResolveCase: rcrInitialCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)
- Network.AWS.Support.Types: data JSONError :: *
- Network.AWS.Support.Types: instance Eq Attachment
- Network.AWS.Support.Types: instance Eq AttachmentDetails
- Network.AWS.Support.Types: instance Eq CaseDetails
- Network.AWS.Support.Types: instance Eq Category
- Network.AWS.Support.Types: instance Eq Communication
- Network.AWS.Support.Types: instance Eq RecentCaseCommunications
- Network.AWS.Support.Types: instance Eq SeverityLevel
- Network.AWS.Support.Types: instance Eq SupportService
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCategorySpecificSummary
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCheckResult
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCheckSummary
- Network.AWS.Support.Types: instance Eq TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance Eq TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance Eq TrustedAdvisorResourcesSummary
- Network.AWS.Support.Types: instance FromJSON Attachment
- Network.AWS.Support.Types: instance FromJSON AttachmentDetails
- Network.AWS.Support.Types: instance FromJSON CaseDetails
- Network.AWS.Support.Types: instance FromJSON Category
- Network.AWS.Support.Types: instance FromJSON Communication
- Network.AWS.Support.Types: instance FromJSON RecentCaseCommunications
- Network.AWS.Support.Types: instance FromJSON SeverityLevel
- Network.AWS.Support.Types: instance FromJSON SupportService
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCategorySpecificSummary
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCheckResult
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCheckSummary
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance FromJSON TrustedAdvisorResourcesSummary
- Network.AWS.Support.Types: instance Ord AttachmentDetails
- Network.AWS.Support.Types: instance Ord Category
- Network.AWS.Support.Types: instance Ord SeverityLevel
- Network.AWS.Support.Types: instance Ord TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance Ord TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance Ord TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance Ord TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance Ord TrustedAdvisorResourcesSummary
- Network.AWS.Support.Types: instance Read Attachment
- Network.AWS.Support.Types: instance Read AttachmentDetails
- Network.AWS.Support.Types: instance Read CaseDetails
- Network.AWS.Support.Types: instance Read Category
- Network.AWS.Support.Types: instance Read Communication
- Network.AWS.Support.Types: instance Read RecentCaseCommunications
- Network.AWS.Support.Types: instance Read SeverityLevel
- Network.AWS.Support.Types: instance Read SupportService
- Network.AWS.Support.Types: instance Read TrustedAdvisorCategorySpecificSummary
- Network.AWS.Support.Types: instance Read TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance Read TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance Read TrustedAdvisorCheckResult
- Network.AWS.Support.Types: instance Read TrustedAdvisorCheckSummary
- Network.AWS.Support.Types: instance Read TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance Read TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance Read TrustedAdvisorResourcesSummary
- Network.AWS.Support.Types: instance Show Attachment
- Network.AWS.Support.Types: instance Show AttachmentDetails
- Network.AWS.Support.Types: instance Show CaseDetails
- Network.AWS.Support.Types: instance Show Category
- Network.AWS.Support.Types: instance Show Communication
- Network.AWS.Support.Types: instance Show RecentCaseCommunications
- Network.AWS.Support.Types: instance Show SeverityLevel
- Network.AWS.Support.Types: instance Show SupportService
- Network.AWS.Support.Types: instance Show TrustedAdvisorCategorySpecificSummary
- Network.AWS.Support.Types: instance Show TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance Show TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance Show TrustedAdvisorCheckResult
- Network.AWS.Support.Types: instance Show TrustedAdvisorCheckSummary
- Network.AWS.Support.Types: instance Show TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance Show TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance Show TrustedAdvisorResourcesSummary
- Network.AWS.Support.Types: instance ToJSON Attachment
- Network.AWS.Support.Types: instance ToJSON AttachmentDetails
- Network.AWS.Support.Types: instance ToJSON CaseDetails
- Network.AWS.Support.Types: instance ToJSON Category
- Network.AWS.Support.Types: instance ToJSON Communication
- Network.AWS.Support.Types: instance ToJSON RecentCaseCommunications
- Network.AWS.Support.Types: instance ToJSON SeverityLevel
- Network.AWS.Support.Types: instance ToJSON SupportService
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCategorySpecificSummary
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCheckDescription
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCheckRefreshStatus
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCheckResult
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCheckSummary
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorCostOptimizingSummary
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorResourceDetail
- Network.AWS.Support.Types: instance ToJSON TrustedAdvisorResourcesSummary
+ Network.AWS.Support: _AttachmentIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _AttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _AttachmentSetExpired :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _AttachmentSetIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _AttachmentSetSizeLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _CaseCreationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _CaseIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _DescribeAttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: _InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support: aData :: Lens' Attachment (Maybe ByteString)
+ Network.AWS.Support: aFileName :: Lens' Attachment (Maybe Text)
+ Network.AWS.Support: adAttachmentId :: Lens' AttachmentDetails (Maybe Text)
+ Network.AWS.Support: adFileName :: Lens' AttachmentDetails (Maybe Text)
+ Network.AWS.Support: attachment :: Attachment
+ Network.AWS.Support: attachmentDetails :: AttachmentDetails
+ Network.AWS.Support: cAttachmentSet :: Lens' Communication [AttachmentDetails]
+ Network.AWS.Support: cBody :: Lens' Communication (Maybe Text)
+ Network.AWS.Support: cCaseId :: Lens' Communication (Maybe Text)
+ Network.AWS.Support: cCode :: Lens' Category (Maybe Text)
+ Network.AWS.Support: cName :: Lens' Category (Maybe Text)
+ Network.AWS.Support: cSubmittedBy :: Lens' Communication (Maybe Text)
+ Network.AWS.Support: cTimeCreated :: Lens' Communication (Maybe Text)
+ Network.AWS.Support: caseDetails :: CaseDetails
+ Network.AWS.Support: category :: Category
+ Network.AWS.Support: cdCaseId :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdCategoryCode :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdCcEmailAddresses :: Lens' CaseDetails [Text]
+ Network.AWS.Support: cdDisplayId :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdLanguage :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdRecentCommunications :: Lens' CaseDetails (Maybe RecentCaseCommunications)
+ Network.AWS.Support: cdServiceCode :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdSeverityCode :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdStatus :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdSubject :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdSubmittedBy :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: cdTimeCreated :: Lens' CaseDetails (Maybe Text)
+ Network.AWS.Support: communication :: Communication
+ Network.AWS.Support: data Attachment
+ Network.AWS.Support: data AttachmentDetails
+ Network.AWS.Support: data CaseDetails
+ Network.AWS.Support: data Category
+ Network.AWS.Support: data Communication
+ Network.AWS.Support: data RecentCaseCommunications
+ Network.AWS.Support: data SeverityLevel
+ Network.AWS.Support: data Support
+ Network.AWS.Support: data SupportService
+ Network.AWS.Support: data TrustedAdvisorCategorySpecificSummary
+ Network.AWS.Support: data TrustedAdvisorCheckDescription
+ Network.AWS.Support: data TrustedAdvisorCheckRefreshStatus
+ Network.AWS.Support: data TrustedAdvisorCheckResult
+ Network.AWS.Support: data TrustedAdvisorCheckSummary
+ Network.AWS.Support: data TrustedAdvisorCostOptimizingSummary
+ Network.AWS.Support: data TrustedAdvisorResourceDetail
+ Network.AWS.Support: data TrustedAdvisorResourcesSummary
+ Network.AWS.Support: rccCommunications :: Lens' RecentCaseCommunications [Communication]
+ Network.AWS.Support: rccNextToken :: Lens' RecentCaseCommunications (Maybe Text)
+ Network.AWS.Support: recentCaseCommunications :: RecentCaseCommunications
+ Network.AWS.Support: severityLevel :: SeverityLevel
+ Network.AWS.Support: slCode :: Lens' SeverityLevel (Maybe Text)
+ Network.AWS.Support: slName :: Lens' SeverityLevel (Maybe Text)
+ Network.AWS.Support: ssCategories :: Lens' SupportService [Category]
+ Network.AWS.Support: ssCode :: Lens' SupportService (Maybe Text)
+ Network.AWS.Support: ssName :: Lens' SupportService (Maybe Text)
+ Network.AWS.Support: supportService :: SupportService
+ Network.AWS.Support: tacdCategory :: Lens' TrustedAdvisorCheckDescription Text
+ Network.AWS.Support: tacdDescription :: Lens' TrustedAdvisorCheckDescription Text
+ Network.AWS.Support: tacdId :: Lens' TrustedAdvisorCheckDescription Text
+ Network.AWS.Support: tacdMetadata :: Lens' TrustedAdvisorCheckDescription [Text]
+ Network.AWS.Support: tacdName :: Lens' TrustedAdvisorCheckDescription Text
+ Network.AWS.Support: tacosEstimatedMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double
+ Network.AWS.Support: tacosEstimatedPercentMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double
+ Network.AWS.Support: tacrCategorySpecificSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorCategorySpecificSummary
+ Network.AWS.Support: tacrCheckId :: Lens' TrustedAdvisorCheckResult Text
+ Network.AWS.Support: tacrFlaggedResources :: Lens' TrustedAdvisorCheckResult [TrustedAdvisorResourceDetail]
+ Network.AWS.Support: tacrResourcesSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorResourcesSummary
+ Network.AWS.Support: tacrStatus :: Lens' TrustedAdvisorCheckResult Text
+ Network.AWS.Support: tacrTimestamp :: Lens' TrustedAdvisorCheckResult Text
+ Network.AWS.Support: tacrsCheckId :: Lens' TrustedAdvisorCheckRefreshStatus Text
+ Network.AWS.Support: tacrsMillisUntilNextRefreshable :: Lens' TrustedAdvisorCheckRefreshStatus Integer
+ Network.AWS.Support: tacrsStatus :: Lens' TrustedAdvisorCheckRefreshStatus Text
+ Network.AWS.Support: tacsCategorySpecificSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorCategorySpecificSummary
+ Network.AWS.Support: tacsCheckId :: Lens' TrustedAdvisorCheckSummary Text
+ Network.AWS.Support: tacsHasFlaggedResources :: Lens' TrustedAdvisorCheckSummary (Maybe Bool)
+ Network.AWS.Support: tacsResourcesSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorResourcesSummary
+ Network.AWS.Support: tacsStatus :: Lens' TrustedAdvisorCheckSummary Text
+ Network.AWS.Support: tacsTimestamp :: Lens' TrustedAdvisorCheckSummary Text
+ Network.AWS.Support: tacssCostOptimizing :: Lens' TrustedAdvisorCategorySpecificSummary (Maybe TrustedAdvisorCostOptimizingSummary)
+ Network.AWS.Support: tardIsSuppressed :: Lens' TrustedAdvisorResourceDetail (Maybe Bool)
+ Network.AWS.Support: tardMetadata :: Lens' TrustedAdvisorResourceDetail [Text]
+ Network.AWS.Support: tardRegion :: Lens' TrustedAdvisorResourceDetail Text
+ Network.AWS.Support: tardResourceId :: Lens' TrustedAdvisorResourceDetail Text
+ Network.AWS.Support: tardStatus :: Lens' TrustedAdvisorResourceDetail Text
+ Network.AWS.Support: tarsResourcesFlagged :: Lens' TrustedAdvisorResourcesSummary Integer
+ Network.AWS.Support: tarsResourcesIgnored :: Lens' TrustedAdvisorResourcesSummary Integer
+ Network.AWS.Support: tarsResourcesProcessed :: Lens' TrustedAdvisorResourcesSummary Integer
+ Network.AWS.Support: tarsResourcesSuppressed :: Lens' TrustedAdvisorResourcesSummary Integer
+ Network.AWS.Support: trustedAdvisorCategorySpecificSummary :: TrustedAdvisorCategorySpecificSummary
+ Network.AWS.Support: trustedAdvisorCheckDescription :: Text -> Text -> Text -> Text -> TrustedAdvisorCheckDescription
+ Network.AWS.Support: trustedAdvisorCheckRefreshStatus :: Text -> Text -> Integer -> TrustedAdvisorCheckRefreshStatus
+ Network.AWS.Support: trustedAdvisorCheckResult :: Text -> Text -> Text -> TrustedAdvisorResourcesSummary -> TrustedAdvisorCategorySpecificSummary -> TrustedAdvisorCheckResult
+ Network.AWS.Support: trustedAdvisorCheckSummary :: Text -> Text -> Text -> TrustedAdvisorResourcesSummary -> TrustedAdvisorCategorySpecificSummary -> TrustedAdvisorCheckSummary
+ Network.AWS.Support: trustedAdvisorCostOptimizingSummary :: Double -> Double -> TrustedAdvisorCostOptimizingSummary
+ Network.AWS.Support: trustedAdvisorResourceDetail :: Text -> Text -> Text -> TrustedAdvisorResourceDetail
+ Network.AWS.Support: trustedAdvisorResourcesSummary :: Integer -> Integer -> Integer -> Integer -> TrustedAdvisorResourcesSummary
+ Network.AWS.Support.AddAttachmentsToSet: aatsrsAttachmentSetId :: Lens' AddAttachmentsToSetResponse (Maybe Text)
+ Network.AWS.Support.AddAttachmentsToSet: aatsrsExpiryTime :: Lens' AddAttachmentsToSetResponse (Maybe Text)
+ Network.AWS.Support.AddAttachmentsToSet: aatsrsStatus :: Lens' AddAttachmentsToSetResponse Int
+ Network.AWS.Support.AddAttachmentsToSet: instance Constructor C1_0AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Constructor C1_0AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Data AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Data AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Datatype D1AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Datatype D1AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Generic AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Generic AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Selector S1_0_0AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Selector S1_0_0AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Selector S1_0_1AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Selector S1_0_1AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Selector S1_0_2AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: instance Typeable AddAttachmentsToSet
+ Network.AWS.Support.AddAttachmentsToSet: instance Typeable AddAttachmentsToSetResponse
+ Network.AWS.Support.AddCommunicationToCase: actcrsResult :: Lens' AddCommunicationToCaseResponse (Maybe Bool)
+ Network.AWS.Support.AddCommunicationToCase: actcrsStatus :: Lens' AddCommunicationToCaseResponse Int
+ Network.AWS.Support.AddCommunicationToCase: instance Constructor C1_0AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Constructor C1_0AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Data AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Data AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Datatype D1AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Datatype D1AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Generic AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Generic AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_0AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_0AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_1AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_1AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_2AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Selector S1_0_3AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Typeable AddCommunicationToCase
+ Network.AWS.Support.AddCommunicationToCase: instance Typeable AddCommunicationToCaseResponse
+ Network.AWS.Support.CreateCase: ccrsCaseId :: Lens' CreateCaseResponse (Maybe Text)
+ Network.AWS.Support.CreateCase: ccrsStatus :: Lens' CreateCaseResponse Int
+ Network.AWS.Support.CreateCase: instance Constructor C1_0CreateCase
+ Network.AWS.Support.CreateCase: instance Constructor C1_0CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Data CreateCase
+ Network.AWS.Support.CreateCase: instance Data CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Datatype D1CreateCase
+ Network.AWS.Support.CreateCase: instance Datatype D1CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Generic CreateCase
+ Network.AWS.Support.CreateCase: instance Generic CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Selector S1_0_0CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_0CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Selector S1_0_1CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_1CreateCaseResponse
+ Network.AWS.Support.CreateCase: instance Selector S1_0_2CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_3CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_4CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_5CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_6CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_7CreateCase
+ Network.AWS.Support.CreateCase: instance Selector S1_0_8CreateCase
+ Network.AWS.Support.CreateCase: instance Typeable CreateCase
+ Network.AWS.Support.CreateCase: instance Typeable CreateCaseResponse
+ Network.AWS.Support.DescribeAttachment: darsAttachment :: Lens' DescribeAttachmentResponse (Maybe Attachment)
+ Network.AWS.Support.DescribeAttachment: darsStatus :: Lens' DescribeAttachmentResponse Int
+ Network.AWS.Support.DescribeAttachment: instance Constructor C1_0DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Constructor C1_0DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Data DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Data DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Datatype D1DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Datatype D1DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Generic DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Generic DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Selector S1_0_0DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Selector S1_0_0DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Selector S1_0_1DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: instance Typeable DescribeAttachment
+ Network.AWS.Support.DescribeAttachment: instance Typeable DescribeAttachmentResponse
+ Network.AWS.Support.DescribeCases: drsCases :: Lens' DescribeCasesResponse [CaseDetails]
+ Network.AWS.Support.DescribeCases: drsNextToken :: Lens' DescribeCasesResponse (Maybe Text)
+ Network.AWS.Support.DescribeCases: drsStatus :: Lens' DescribeCasesResponse Int
+ Network.AWS.Support.DescribeCases: instance Constructor C1_0DescribeCases
+ Network.AWS.Support.DescribeCases: instance Constructor C1_0DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Data DescribeCases
+ Network.AWS.Support.DescribeCases: instance Data DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Datatype D1DescribeCases
+ Network.AWS.Support.DescribeCases: instance Datatype D1DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Generic DescribeCases
+ Network.AWS.Support.DescribeCases: instance Generic DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_0DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_0DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_1DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_1DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_2DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_2DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_3DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_4DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_5DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_6DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_7DescribeCases
+ Network.AWS.Support.DescribeCases: instance Selector S1_0_8DescribeCases
+ Network.AWS.Support.DescribeCases: instance Typeable DescribeCases
+ Network.AWS.Support.DescribeCases: instance Typeable DescribeCasesResponse
+ Network.AWS.Support.DescribeCommunications: dAfterTime :: Lens' DescribeCommunications (Maybe Text)
+ Network.AWS.Support.DescribeCommunications: dBeforeTime :: Lens' DescribeCommunications (Maybe Text)
+ Network.AWS.Support.DescribeCommunications: dCaseId :: Lens' DescribeCommunications Text
+ Network.AWS.Support.DescribeCommunications: dMaxResults :: Lens' DescribeCommunications (Maybe Natural)
+ Network.AWS.Support.DescribeCommunications: dNextToken :: Lens' DescribeCommunications (Maybe Text)
+ Network.AWS.Support.DescribeCommunications: dcrsCommunications :: Lens' DescribeCommunicationsResponse [Communication]
+ Network.AWS.Support.DescribeCommunications: dcrsNextToken :: Lens' DescribeCommunicationsResponse (Maybe Text)
+ Network.AWS.Support.DescribeCommunications: dcrsStatus :: Lens' DescribeCommunicationsResponse Int
+ Network.AWS.Support.DescribeCommunications: instance Constructor C1_0DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Constructor C1_0DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Data DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Data DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Datatype D1DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Datatype D1DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Generic DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Generic DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_0DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_0DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_1DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_1DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_2DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_2DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_3DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Selector S1_0_4DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Typeable DescribeCommunications
+ Network.AWS.Support.DescribeCommunications: instance Typeable DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeServices: dsrsServices :: Lens' DescribeServicesResponse [SupportService]
+ Network.AWS.Support.DescribeServices: dsrsStatus :: Lens' DescribeServicesResponse Int
+ Network.AWS.Support.DescribeServices: instance Constructor C1_0DescribeServices
+ Network.AWS.Support.DescribeServices: instance Constructor C1_0DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Data DescribeServices
+ Network.AWS.Support.DescribeServices: instance Data DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Datatype D1DescribeServices
+ Network.AWS.Support.DescribeServices: instance Datatype D1DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Generic DescribeServices
+ Network.AWS.Support.DescribeServices: instance Generic DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Selector S1_0_0DescribeServices
+ Network.AWS.Support.DescribeServices: instance Selector S1_0_0DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Selector S1_0_1DescribeServices
+ Network.AWS.Support.DescribeServices: instance Selector S1_0_1DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: instance Typeable DescribeServices
+ Network.AWS.Support.DescribeServices: instance Typeable DescribeServicesResponse
+ Network.AWS.Support.DescribeSeverityLevels: dslrsSeverityLevels :: Lens' DescribeSeverityLevelsResponse [SeverityLevel]
+ Network.AWS.Support.DescribeSeverityLevels: dslrsStatus :: Lens' DescribeSeverityLevelsResponse Int
+ Network.AWS.Support.DescribeSeverityLevels: instance Constructor C1_0DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Constructor C1_0DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Data DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Data DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Datatype D1DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Datatype D1DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Generic DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Generic DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Selector S1_0_0DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Selector S1_0_0DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Selector S1_0_1DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: instance Typeable DescribeSeverityLevels
+ Network.AWS.Support.DescribeSeverityLevels: instance Typeable DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: dtacrsrsStatus :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse Int
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: dtacrsrsStatuses :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse [TrustedAdvisorCheckRefreshStatus]
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Constructor C1_0DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Constructor C1_0DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Data DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Data DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Datatype D1DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Datatype D1DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Generic DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Generic DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Selector S1_0_0DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Selector S1_0_0DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Selector S1_0_1DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Typeable DescribeTrustedAdvisorCheckRefreshStatuses
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: instance Typeable DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: dtacrrsResult :: Lens' DescribeTrustedAdvisorCheckResultResponse (Maybe TrustedAdvisorCheckResult)
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: dtacrrsStatus :: Lens' DescribeTrustedAdvisorCheckResultResponse Int
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Constructor C1_0DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Constructor C1_0DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Data DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Data DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Datatype D1DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Datatype D1DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Generic DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Generic DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Selector S1_0_0DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Selector S1_0_0DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Selector S1_0_1DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Selector S1_0_1DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Typeable DescribeTrustedAdvisorCheckResult
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: instance Typeable DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: dtacsrsStatus :: Lens' DescribeTrustedAdvisorCheckSummariesResponse Int
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: dtacsrsSummaries :: Lens' DescribeTrustedAdvisorCheckSummariesResponse [TrustedAdvisorCheckSummary]
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Constructor C1_0DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Constructor C1_0DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Data DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Data DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Datatype D1DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Datatype D1DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Generic DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Generic DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Selector S1_0_0DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Selector S1_0_0DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Selector S1_0_1DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Typeable DescribeTrustedAdvisorCheckSummaries
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: instance Typeable DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: dtacrsChecks :: Lens' DescribeTrustedAdvisorChecksResponse [TrustedAdvisorCheckDescription]
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: dtacrsStatus :: Lens' DescribeTrustedAdvisorChecksResponse Int
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Constructor C1_0DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Constructor C1_0DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Data DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Data DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Datatype D1DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Datatype D1DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Generic DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Generic DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Selector S1_0_0DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Selector S1_0_0DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Selector S1_0_1DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Typeable DescribeTrustedAdvisorChecks
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: instance Typeable DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Constructor C1_0RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Constructor C1_0RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Data RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Data RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Datatype D1RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Datatype D1RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Generic RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Generic RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Selector S1_0_0RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Selector S1_0_0RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Typeable RefreshTrustedAdvisorCheck
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: instance Typeable RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: rtacrsStatus :: Lens' RefreshTrustedAdvisorCheckResponse Int
+ Network.AWS.Support.ResolveCase: instance Constructor C1_0ResolveCase
+ Network.AWS.Support.ResolveCase: instance Constructor C1_0ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Data ResolveCase
+ Network.AWS.Support.ResolveCase: instance Data ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Datatype D1ResolveCase
+ Network.AWS.Support.ResolveCase: instance Datatype D1ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Generic ResolveCase
+ Network.AWS.Support.ResolveCase: instance Generic ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Selector S1_0_0ResolveCase
+ Network.AWS.Support.ResolveCase: instance Selector S1_0_0ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Selector S1_0_1ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Selector S1_0_2ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: instance Typeable ResolveCase
+ Network.AWS.Support.ResolveCase: instance Typeable ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: rcrsFinalCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)
+ Network.AWS.Support.ResolveCase: rcrsInitialCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)
+ Network.AWS.Support.ResolveCase: rcrsStatus :: Lens' ResolveCaseResponse Int
+ Network.AWS.Support.Types: _AttachmentIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _AttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _AttachmentSetExpired :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _AttachmentSetIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _AttachmentSetSizeLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _CaseCreationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _CaseIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _DescribeAttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Support.Types: _InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.Support.AddAttachmentsToSet: addAttachmentsToSetResponse :: AddAttachmentsToSetResponse
+ Network.AWS.Support.AddAttachmentsToSet: addAttachmentsToSetResponse :: Int -> AddAttachmentsToSetResponse
- Network.AWS.Support.AddCommunicationToCase: addCommunicationToCaseResponse :: AddCommunicationToCaseResponse
+ Network.AWS.Support.AddCommunicationToCase: addCommunicationToCaseResponse :: Int -> AddCommunicationToCaseResponse
- Network.AWS.Support.CreateCase: createCaseResponse :: CreateCaseResponse
+ Network.AWS.Support.CreateCase: createCaseResponse :: Int -> CreateCaseResponse
- Network.AWS.Support.DescribeAttachment: describeAttachmentResponse :: DescribeAttachmentResponse
+ Network.AWS.Support.DescribeAttachment: describeAttachmentResponse :: Int -> DescribeAttachmentResponse
- Network.AWS.Support.DescribeCases: describeCasesResponse :: DescribeCasesResponse
+ Network.AWS.Support.DescribeCases: describeCasesResponse :: Int -> DescribeCasesResponse
- Network.AWS.Support.DescribeCommunications: describeCommunicationsResponse :: DescribeCommunicationsResponse
+ Network.AWS.Support.DescribeCommunications: describeCommunicationsResponse :: Int -> DescribeCommunicationsResponse
- Network.AWS.Support.DescribeServices: describeServicesResponse :: DescribeServicesResponse
+ Network.AWS.Support.DescribeServices: describeServicesResponse :: Int -> DescribeServicesResponse
- Network.AWS.Support.DescribeSeverityLevels: describeSeverityLevelsResponse :: DescribeSeverityLevelsResponse
+ Network.AWS.Support.DescribeSeverityLevels: describeSeverityLevelsResponse :: Int -> DescribeSeverityLevelsResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: describeTrustedAdvisorCheckRefreshStatusesResponse :: DescribeTrustedAdvisorCheckRefreshStatusesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses: describeTrustedAdvisorCheckRefreshStatusesResponse :: Int -> DescribeTrustedAdvisorCheckRefreshStatusesResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckResult: describeTrustedAdvisorCheckResultResponse :: DescribeTrustedAdvisorCheckResultResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckResult: describeTrustedAdvisorCheckResultResponse :: Int -> DescribeTrustedAdvisorCheckResultResponse
- Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: describeTrustedAdvisorCheckSummariesResponse :: DescribeTrustedAdvisorCheckSummariesResponse
+ Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries: describeTrustedAdvisorCheckSummariesResponse :: Int -> DescribeTrustedAdvisorCheckSummariesResponse
- Network.AWS.Support.DescribeTrustedAdvisorChecks: describeTrustedAdvisorChecksResponse :: DescribeTrustedAdvisorChecksResponse
+ Network.AWS.Support.DescribeTrustedAdvisorChecks: describeTrustedAdvisorChecksResponse :: Int -> DescribeTrustedAdvisorChecksResponse
- Network.AWS.Support.RefreshTrustedAdvisorCheck: refreshTrustedAdvisorCheckResponse :: TrustedAdvisorCheckRefreshStatus -> RefreshTrustedAdvisorCheckResponse
+ Network.AWS.Support.RefreshTrustedAdvisorCheck: refreshTrustedAdvisorCheckResponse :: Int -> RefreshTrustedAdvisorCheckResponse
- Network.AWS.Support.ResolveCase: resolveCaseResponse :: ResolveCaseResponse
+ Network.AWS.Support.ResolveCase: resolveCaseResponse :: Int -> ResolveCaseResponse
- Network.AWS.Support.Types: aData :: Lens' Attachment (Maybe Base64)
+ Network.AWS.Support.Types: aData :: Lens' Attachment (Maybe ByteString)

Files

README.md view
@@ -1,26 +1,83 @@ # Amazon Support SDK -> _Warning:_ This is an experimental preview release which is still under heavy development and not intended for public consumption, _caveat emptor_!-+* [Version](#version) * [Description](#description) * [Contribute](#contribute) * [Licence](#licence) ++## Version++`1.0.0`++ ## Description -AWS Support is a one-on-one, fast-response support channel that is staffed-with experienced support personnel. The service helps customers get the most-from the products and features provided by Amazon Web Services. There are-four levels, or tiers, of AWS Support: Basic, Developer, Business, and-Enterprise. The Basic tier is free of charge and offers support for account-and billing questions and service limit increases. The other tiers offer an-unlimited number of technical support cases with pay-by-the-month pricing and-no long-term contracts, providing developers and businesses flexibility to-choose the level of support that meets their needs.+AWS Support +The AWS Support API reference is intended for programmers who need+detailed information about the AWS Support operations and data types.+This service enables you to manage your AWS Support cases+programmatically. It uses HTTP methods that return results in JSON+format.++The AWS Support service also exposes a set of+<https://aws.amazon.com/premiumsupport/trustedadvisor/ Trusted Advisor>+features. You can retrieve a list of checks and their descriptions, get+check results, specify checks to refresh, and get the refresh status of+checks.++The following list describes the AWS Support case management operations:++-   __Service names, issue categories, and available severity levels.__+    The DescribeServices and DescribeSeverityLevels operations return+    AWS service names, service codes, service categories, and problem+    severity levels. You use these values when you call the CreateCase+    operation.+-   __Case creation, case details, and case resolution.__ The+    CreateCase, DescribeCases, DescribeAttachment, and ResolveCase+    operations create AWS Support cases, retrieve information about+    cases, and resolve cases.+-   __Case communication.__ The DescribeCommunications,+    AddCommunicationToCase, and AddAttachmentsToSet operations retrieve+    and add communications and attachments to AWS Support cases.++The following list describes the operations available from the AWS+Support service for Trusted Advisor:++-   DescribeTrustedAdvisorChecks returns the list of checks that run+    against your AWS resources.+-   Using the @CheckId@ for a specific check returned by+    DescribeTrustedAdvisorChecks, you can call+    DescribeTrustedAdvisorCheckResult to obtain the results for the+    check you specified.+-   DescribeTrustedAdvisorCheckSummaries returns summarized results for+    one or more Trusted Advisor checks.+-   RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a+    specified check.+-   DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh+    status of one or more checks.++For authentication of requests, AWS Support uses+<http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4 Signing Process>.++See+<http://docs.aws.amazon.com/awssupport/latest/user/Welcome.html About the AWS Support API>+in the /AWS Support User Guide/ for information about how to use this+service to create and manage your support cases, and how to call Trusted+Advisor for results of checks on your resources.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-support) and the [AWS API Reference](http://docs.aws.amazon.com/awssupport/latest/APIReference/Welcome.html). +The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).  ## Contribute 
amazonka-support.cabal view
@@ -1,33 +1,85 @@ name:                  amazonka-support-version:               0.3.6+version:               1.0.0 synopsis:              Amazon Support SDK. homepage:              https://github.com/brendanhay/amazonka license:               OtherLicense license-file:          LICENSE author:                Brendan Hay maintainer:            Brendan Hay <brendan.g.hay@gmail.com>-copyright:             Copyright (c) 2013-2014 Brendan Hay+copyright:             Copyright (c) 2013-2015 Brendan Hay category:              Network, AWS, Cloud, Distributed Computing build-type:            Simple extra-source-files:    README.md cabal-version:         >= 1.10  description:-    AWS Support is a one-on-one, fast-response support channel that is staffed-    with experienced support personnel. The service helps customers get the most-    from the products and features provided by Amazon Web Services. There are-    four levels, or tiers, of AWS Support: Basic, Developer, Business, and-    Enterprise. The Basic tier is free of charge and offers support for account-    and billing questions and service limit increases. The other tiers offer an-    unlimited number of technical support cases with pay-by-the-month pricing and-    no long-term contracts, providing developers and businesses flexibility to-    choose the level of support that meets their needs.+    AWS Support +    The AWS Support API reference is intended for programmers who need+    detailed information about the AWS Support operations and data types.+    This service enables you to manage your AWS Support cases+    programmatically. It uses HTTP methods that return results in JSON+    format.++    The AWS Support service also exposes a set of+    <https://aws.amazon.com/premiumsupport/trustedadvisor/ Trusted Advisor>+    features. You can retrieve a list of checks and their descriptions, get+    check results, specify checks to refresh, and get the refresh status of+    checks.++    The following list describes the AWS Support case management operations:++    -   __Service names, issue categories, and available severity levels.__+        The DescribeServices and DescribeSeverityLevels operations return+        AWS service names, service codes, service categories, and problem+        severity levels. You use these values when you call the CreateCase+        operation.+    -   __Case creation, case details, and case resolution.__ The+        CreateCase, DescribeCases, DescribeAttachment, and ResolveCase+        operations create AWS Support cases, retrieve information about+        cases, and resolve cases.+    -   __Case communication.__ The DescribeCommunications,+        AddCommunicationToCase, and AddAttachmentsToSet operations retrieve+        and add communications and attachments to AWS Support cases.++    The following list describes the operations available from the AWS+    Support service for Trusted Advisor:++    -   DescribeTrustedAdvisorChecks returns the list of checks that run+        against your AWS resources.+    -   Using the @CheckId@ for a specific check returned by+        DescribeTrustedAdvisorChecks, you can call+        DescribeTrustedAdvisorCheckResult to obtain the results for the+        check you specified.+    -   DescribeTrustedAdvisorCheckSummaries returns summarized results for+        one or more Trusted Advisor checks.+    -   RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a+        specified check.+    -   DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh+        status of one or more checks.++    For authentication of requests, AWS Support uses+    <http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4 Signing Process>.++    See+    <http://docs.aws.amazon.com/awssupport/latest/user/Welcome.html About the AWS Support API>+    in the /AWS Support User Guide/ for information about how to use this+    service to create and manage your support cases, and how to call Trusted+    Advisor for results of checks on your resources.     .-    /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/Welcome.html AWS API Reference>+    The types from this library are intended to be used with+    <http://hackage.haskell.org/package/amazonka amazonka>, which provides+    mechanisms for specifying AuthN/AuthZ information and sending requests.     .-    /Warning:/ This is an experimental preview release which is still under-    heavy development and not intended for public consumption, caveat emptor!+    Use of lenses is required for constructing and manipulating types.+    This is due to the amount of nesting of AWS types and transparency regarding+    de/serialisation into more palatable Haskell values.+    The provided lenses should be compatible with any of the major lens libraries+    such as <http://hackage.haskell.org/package/lens lens> or+    <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+    .+    See "Network.AWS.Support" and the <http://docs.aws.amazon.com/awssupport/latest/APIReference/Welcome.html AWS API Reference>+    to get started.  source-repository head     type:     git@@ -56,9 +108,40 @@         , Network.AWS.Support.RefreshTrustedAdvisorCheck         , Network.AWS.Support.ResolveCase         , Network.AWS.Support.Types+        , Network.AWS.Support.Waiters      other-modules:+          Network.AWS.Support.Types.Product+        , Network.AWS.Support.Types.Sum      build-depends:-          amazonka-core == 0.3.6.*+          amazonka-core == 1.0.0.*         , base          >= 4.7     && < 5++test-suite amazonka-support-test+    type:              exitcode-stdio-1.0+    default-language:  Haskell2010+    hs-source-dirs:    test+    main-is:           Main.hs++    ghc-options:       -Wall -threaded++    -- This is not comprehensive if modules have manually been added.+    -- It exists to ensure cabal 'somewhat' detects test module changes.+    other-modules:+          Test.AWS.Support+        , Test.AWS.Gen.Support+        , Test.AWS.Support.Internal++    build-depends:+          amazonka-core == 1.0.0+        , amazonka-test == 1.0.0+        , amazonka-support == 1.0.0+        , base+        , bytestring+        , lens+        , tasty+        , tasty-hunit+        , text+        , time+        , unordered-containers
gen/Network/AWS/Support.hs view
@@ -1,54 +1,326 @@+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | AWS Support is a one-on-one, fast-response support channel that is staffed--- with experienced support personnel. The service helps customers get the most--- from the products and features provided by Amazon Web Services. There are--- four levels, or tiers, of AWS Support: Basic, Developer, Business, and--- Enterprise. The Basic tier is free of charge and offers support for account--- and billing questions and service limit increases. The other tiers offer an--- unlimited number of technical support cases with pay-by-the-month pricing and--- no long-term contracts, providing developers and businesses flexibility to--- choose the level of support that meets their needs.+-- AWS Support+--+-- The AWS Support API reference is intended for programmers who need+-- detailed information about the AWS Support operations and data types.+-- This service enables you to manage your AWS Support cases+-- programmatically. It uses HTTP methods that return results in JSON+-- format.+--+-- The AWS Support service also exposes a set of+-- <https://aws.amazon.com/premiumsupport/trustedadvisor/ Trusted Advisor>+-- features. You can retrieve a list of checks and their descriptions, get+-- check results, specify checks to refresh, and get the refresh status of+-- checks.+--+-- The following list describes the AWS Support case management operations:+--+-- -   __Service names, issue categories, and available severity levels.__+--     The DescribeServices and DescribeSeverityLevels operations return+--     AWS service names, service codes, service categories, and problem+--     severity levels. You use these values when you call the CreateCase+--     operation.+-- -   __Case creation, case details, and case resolution.__ The+--     CreateCase, DescribeCases, DescribeAttachment, and ResolveCase+--     operations create AWS Support cases, retrieve information about+--     cases, and resolve cases.+-- -   __Case communication.__ The DescribeCommunications,+--     AddCommunicationToCase, and AddAttachmentsToSet operations retrieve+--     and add communications and attachments to AWS Support cases.+--+-- The following list describes the operations available from the AWS+-- Support service for Trusted Advisor:+--+-- -   DescribeTrustedAdvisorChecks returns the list of checks that run+--     against your AWS resources.+-- -   Using the 'CheckId' for a specific check returned by+--     DescribeTrustedAdvisorChecks, you can call+--     DescribeTrustedAdvisorCheckResult to obtain the results for the+--     check you specified.+-- -   DescribeTrustedAdvisorCheckSummaries returns summarized results for+--     one or more Trusted Advisor checks.+-- -   RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a+--     specified check.+-- -   DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh+--     status of one or more checks.+--+-- For authentication of requests, AWS Support uses+-- <http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4 Signing Process>.+--+-- See+-- <http://docs.aws.amazon.com/awssupport/latest/user/Welcome.html About the AWS Support API>+-- in the /AWS Support User Guide/ for information about how to use this+-- service to create and manage your support cases, and how to call Trusted+-- Advisor for results of checks on your resources.+--+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.Support-    ( module Network.AWS.Support.AddAttachmentsToSet-    , module Network.AWS.Support.AddCommunicationToCase-    , module Network.AWS.Support.CreateCase-    , module Network.AWS.Support.DescribeAttachment+    (+    -- * Service+      Support++    -- * Errors+    -- $errors++    -- ** AttachmentSetExpired+    , _AttachmentSetExpired++    -- ** AttachmentLimitExceeded+    , _AttachmentLimitExceeded++    -- ** DescribeAttachmentLimitExceeded+    , _DescribeAttachmentLimitExceeded++    -- ** CaseIdNotFound+    , _CaseIdNotFound++    -- ** AttachmentSetIdNotFound+    , _AttachmentSetIdNotFound++    -- ** AttachmentSetSizeLimitExceeded+    , _AttachmentSetSizeLimitExceeded++    -- ** AttachmentIdNotFound+    , _AttachmentIdNotFound++    -- ** InternalServerError+    , _InternalServerError++    -- ** CaseCreationLimitExceeded+    , _CaseCreationLimitExceeded++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** RefreshTrustedAdvisorCheck+    , module Network.AWS.Support.RefreshTrustedAdvisorCheck++    -- ** DescribeCases (Paginated)     , module Network.AWS.Support.DescribeCases-    , module Network.AWS.Support.DescribeCommunications-    , module Network.AWS.Support.DescribeServices-    , module Network.AWS.Support.DescribeSeverityLevels++    -- ** DescribeTrustedAdvisorCheckRefreshStatuses     , module Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses-    , module Network.AWS.Support.DescribeTrustedAdvisorCheckResult++    -- ** CreateCase+    , module Network.AWS.Support.CreateCase++    -- ** DescribeTrustedAdvisorCheckSummaries     , module Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries-    , module Network.AWS.Support.DescribeTrustedAdvisorChecks-    , module Network.AWS.Support.RefreshTrustedAdvisorCheck++    -- ** ResolveCase     , module Network.AWS.Support.ResolveCase-    , module Network.AWS.Support.Types++    -- ** DescribeSeverityLevels+    , module Network.AWS.Support.DescribeSeverityLevels++    -- ** DescribeTrustedAdvisorChecks+    , module Network.AWS.Support.DescribeTrustedAdvisorChecks++    -- ** DescribeAttachment+    , module Network.AWS.Support.DescribeAttachment++    -- ** AddAttachmentsToSet+    , module Network.AWS.Support.AddAttachmentsToSet++    -- ** DescribeTrustedAdvisorCheckResult+    , module Network.AWS.Support.DescribeTrustedAdvisorCheckResult++    -- ** DescribeServices+    , module Network.AWS.Support.DescribeServices++    -- ** DescribeCommunications (Paginated)+    , module Network.AWS.Support.DescribeCommunications++    -- ** AddCommunicationToCase+    , module Network.AWS.Support.AddCommunicationToCase++    -- * Types++    -- ** Attachment+    , Attachment+    , attachment+    , aData+    , aFileName++    -- ** AttachmentDetails+    , AttachmentDetails+    , attachmentDetails+    , adAttachmentId+    , adFileName++    -- ** CaseDetails+    , CaseDetails+    , caseDetails+    , cdSubject+    , cdStatus+    , cdRecentCommunications+    , cdSeverityCode+    , cdCaseId+    , cdCcEmailAddresses+    , cdDisplayId+    , cdSubmittedBy+    , cdLanguage+    , cdCategoryCode+    , cdTimeCreated+    , cdServiceCode++    -- ** Category+    , Category+    , category+    , cName+    , cCode++    -- ** Communication+    , Communication+    , communication+    , cBody+    , cCaseId+    , cSubmittedBy+    , cTimeCreated+    , cAttachmentSet++    -- ** RecentCaseCommunications+    , RecentCaseCommunications+    , recentCaseCommunications+    , rccNextToken+    , rccCommunications++    -- ** SeverityLevel+    , SeverityLevel+    , severityLevel+    , slName+    , slCode++    -- ** SupportService+    , SupportService+    , supportService+    , ssCategories+    , ssName+    , ssCode++    -- ** TrustedAdvisorCategorySpecificSummary+    , TrustedAdvisorCategorySpecificSummary+    , trustedAdvisorCategorySpecificSummary+    , tacssCostOptimizing++    -- ** TrustedAdvisorCheckDescription+    , TrustedAdvisorCheckDescription+    , trustedAdvisorCheckDescription+    , tacdId+    , tacdName+    , tacdDescription+    , tacdCategory+    , tacdMetadata++    -- ** TrustedAdvisorCheckRefreshStatus+    , TrustedAdvisorCheckRefreshStatus+    , trustedAdvisorCheckRefreshStatus+    , tacrsCheckId+    , tacrsStatus+    , tacrsMillisUntilNextRefreshable++    -- ** TrustedAdvisorCheckResult+    , TrustedAdvisorCheckResult+    , trustedAdvisorCheckResult+    , tacrCheckId+    , tacrTimestamp+    , tacrStatus+    , tacrResourcesSummary+    , tacrCategorySpecificSummary+    , tacrFlaggedResources++    -- ** TrustedAdvisorCheckSummary+    , TrustedAdvisorCheckSummary+    , trustedAdvisorCheckSummary+    , tacsHasFlaggedResources+    , tacsCheckId+    , tacsTimestamp+    , tacsStatus+    , tacsResourcesSummary+    , tacsCategorySpecificSummary++    -- ** TrustedAdvisorCostOptimizingSummary+    , TrustedAdvisorCostOptimizingSummary+    , trustedAdvisorCostOptimizingSummary+    , tacosEstimatedMonthlySavings+    , tacosEstimatedPercentMonthlySavings++    -- ** TrustedAdvisorResourceDetail+    , TrustedAdvisorResourceDetail+    , trustedAdvisorResourceDetail+    , tardIsSuppressed+    , tardStatus+    , tardRegion+    , tardResourceId+    , tardMetadata++    -- ** TrustedAdvisorResourcesSummary+    , TrustedAdvisorResourcesSummary+    , trustedAdvisorResourcesSummary+    , tarsResourcesProcessed+    , tarsResourcesFlagged+    , tarsResourcesIgnored+    , tarsResourcesSuppressed     ) where -import Network.AWS.Support.AddAttachmentsToSet-import Network.AWS.Support.AddCommunicationToCase-import Network.AWS.Support.CreateCase-import Network.AWS.Support.DescribeAttachment-import Network.AWS.Support.DescribeCases-import Network.AWS.Support.DescribeCommunications-import Network.AWS.Support.DescribeServices-import Network.AWS.Support.DescribeSeverityLevels-import Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses-import Network.AWS.Support.DescribeTrustedAdvisorCheckResult-import Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries-import Network.AWS.Support.DescribeTrustedAdvisorChecks-import Network.AWS.Support.RefreshTrustedAdvisorCheck-import Network.AWS.Support.ResolveCase-import Network.AWS.Support.Types+import           Network.AWS.Support.AddAttachmentsToSet+import           Network.AWS.Support.AddCommunicationToCase+import           Network.AWS.Support.CreateCase+import           Network.AWS.Support.DescribeAttachment+import           Network.AWS.Support.DescribeCases+import           Network.AWS.Support.DescribeCommunications+import           Network.AWS.Support.DescribeServices+import           Network.AWS.Support.DescribeSeverityLevels+import           Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses+import           Network.AWS.Support.DescribeTrustedAdvisorCheckResult+import           Network.AWS.Support.DescribeTrustedAdvisorChecks+import           Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries+import           Network.AWS.Support.RefreshTrustedAdvisorCheck+import           Network.AWS.Support.ResolveCase+import           Network.AWS.Support.Types+import           Network.AWS.Support.Waiters++{- $errors+Error matchers are designed for use with the functions provided by+<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+This allows catching (and rethrowing) service specific errors returned+by 'Support'.+-}++{- $operations+Some AWS operations return results that are incomplete and require subsequent+requests in order to obtain the entire result set. The process of sending+subsequent requests to continue where a previous request left off is called+pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+1000 objects at a time, and you must send subsequent requests with the+appropriate Marker in order to retrieve the next page of results.++Operations that have an 'AWSPager' instance can transparently perform subsequent+requests, correctly setting Markers and other request facets to iterate through+the entire result set of a truncated API operation. Operations which support+this have an additional note in the documentation.++Many operations have the ability to filter results on the server side. See the+individual operation parameters for details.+-}++{- $waiters+Waiters poll by repeatedly sending a request until some remote success condition+configured by the 'Wait' specification is fulfilled. The 'Wait' specification+determines how many attempts should be made, in addition to delay and retry strategies.+-}
gen/Network/AWS/Support/AddAttachmentsToSet.hs view
@@ -1,149 +1,167 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.AddAttachmentsToSet--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Adds one or more attachments to an attachment set. If an 'AttachmentSetId' is--- not specified, a new attachment set is created, and the ID of the set is--- returned in the response. If an 'AttachmentSetId' is specified, the attachments--- are added to the specified set, if it exists.+-- Adds one or more attachments to an attachment set. If an+-- 'AttachmentSetId' is not specified, a new attachment set is created, and+-- the ID of the set is returned in the response. If an 'AttachmentSetId'+-- is specified, the attachments are added to the specified set, if it+-- exists. ----- An attachment set is a temporary container for attachments that are to be--- added to a case or case communication. The set is available for one hour--- after it is created; the 'ExpiryTime' returned in the response indicates when--- the set expires. The maximum number of attachments in a set is 3, and the--- maximum size of any attachment in the set is 5 MB.+-- An attachment set is a temporary container for attachments that are to+-- be added to a case or case communication. The set is available for one+-- hour after it is created; the 'ExpiryTime' returned in the response+-- indicates when the set expires. The maximum number of attachments in a+-- set is 3, and the maximum size of any attachment in the set is 5 MB. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_AddAttachmentsToSet.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_AddAttachmentsToSet.html AWS API Reference> for AddAttachmentsToSet. module Network.AWS.Support.AddAttachmentsToSet     (-    -- * Request-      AddAttachmentsToSet-    -- ** Request constructor-    , addAttachmentsToSet-    -- ** Request lenses+    -- * Creating a Request+      addAttachmentsToSet+    , AddAttachmentsToSet+    -- * Request Lenses     , aatsAttachmentSetId     , aatsAttachments -    -- * Response-    , AddAttachmentsToSetResponse-    -- ** Response constructor+    -- * Destructuring the Response     , addAttachmentsToSetResponse-    -- ** Response lenses-    , aatsrAttachmentSetId-    , aatsrExpiryTime+    , AddAttachmentsToSetResponse+    -- * Response Lenses+    , aatsrsExpiryTime+    , aatsrsAttachmentSetId+    , aatsrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data AddAttachmentsToSet = AddAttachmentsToSet-    { _aatsAttachmentSetId :: Maybe Text-    , _aatsAttachments     :: List "attachments" Attachment-    } deriving (Eq, Read, Show)+-- | /See:/ 'addAttachmentsToSet' smart constructor.+data AddAttachmentsToSet = AddAttachmentsToSet'+    { _aatsAttachmentSetId :: !(Maybe Text)+    , _aatsAttachments     :: ![Attachment]+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'AddAttachmentsToSet' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'AddAttachmentsToSet' with the minimum fields required to make a request. ----- * 'aatsAttachmentSetId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'aatsAttachments' @::@ ['Attachment']+-- * 'aatsAttachmentSetId' ---addAttachmentsToSet :: AddAttachmentsToSet-addAttachmentsToSet = AddAttachmentsToSet+-- * 'aatsAttachments'+addAttachmentsToSet+    :: AddAttachmentsToSet+addAttachmentsToSet =+    AddAttachmentsToSet'     { _aatsAttachmentSetId = Nothing-    , _aatsAttachments     = mempty+    , _aatsAttachments = mempty     } --- | The ID of the attachment set. If an 'AttachmentSetId' is not specified, a new--- attachment set is created, and the ID of the set is returned in the response.--- If an 'AttachmentSetId' is specified, the attachments are added to the--- specified set, if it exists.+-- | The ID of the attachment set. If an 'AttachmentSetId' is not specified,+-- a new attachment set is created, and the ID of the set is returned in+-- the response. If an 'AttachmentSetId' is specified, the attachments are+-- added to the specified set, if it exists. aatsAttachmentSetId :: Lens' AddAttachmentsToSet (Maybe Text)-aatsAttachmentSetId =-    lens _aatsAttachmentSetId (\s a -> s { _aatsAttachmentSetId = a })+aatsAttachmentSetId = lens _aatsAttachmentSetId (\ s a -> s{_aatsAttachmentSetId = a}); --- | One or more attachments to add to the set. The limit is 3 attachments per--- set, and the size limit is 5 MB per attachment.+-- | One or more attachments to add to the set. The limit is 3 attachments+-- per set, and the size limit is 5 MB per attachment. aatsAttachments :: Lens' AddAttachmentsToSet [Attachment]-aatsAttachments = lens _aatsAttachments (\s a -> s { _aatsAttachments = a }) . _List--data AddAttachmentsToSetResponse = AddAttachmentsToSetResponse-    { _aatsrAttachmentSetId :: Maybe Text-    , _aatsrExpiryTime      :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+aatsAttachments = lens _aatsAttachments (\ s a -> s{_aatsAttachments = a}) . _Coerce; --- | 'AddAttachmentsToSetResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'aatsrAttachmentSetId' @::@ 'Maybe' 'Text'------ * 'aatsrExpiryTime' @::@ 'Maybe' 'Text'----addAttachmentsToSetResponse :: AddAttachmentsToSetResponse-addAttachmentsToSetResponse = AddAttachmentsToSetResponse-    { _aatsrAttachmentSetId = Nothing-    , _aatsrExpiryTime      = Nothing-    }+instance AWSRequest AddAttachmentsToSet where+        type Sv AddAttachmentsToSet = Support+        type Rs AddAttachmentsToSet =+             AddAttachmentsToSetResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 AddAttachmentsToSetResponse' <$>+                   (x .?> "expiryTime") <*> (x .?> "attachmentSetId")+                     <*> (pure (fromEnum s))) --- | The ID of the attachment set. If an 'AttachmentSetId' was not specified, a new--- attachment set is created, and the ID of the set is returned in the response.--- If an 'AttachmentSetId' was specified, the attachments are added to the--- specified set, if it exists.-aatsrAttachmentSetId :: Lens' AddAttachmentsToSetResponse (Maybe Text)-aatsrAttachmentSetId =-    lens _aatsrAttachmentSetId (\s a -> s { _aatsrAttachmentSetId = a })+instance ToHeaders AddAttachmentsToSet where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.AddAttachmentsToSet" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The time and date when the attachment set expires.-aatsrExpiryTime :: Lens' AddAttachmentsToSetResponse (Maybe Text)-aatsrExpiryTime = lens _aatsrExpiryTime (\s a -> s { _aatsrExpiryTime = a })+instance ToJSON AddAttachmentsToSet where+        toJSON AddAttachmentsToSet'{..}+          = object+              ["attachmentSetId" .= _aatsAttachmentSetId,+               "attachments" .= _aatsAttachments]  instance ToPath AddAttachmentsToSet where-    toPath = const "/"+        toPath = const "/"  instance ToQuery AddAttachmentsToSet where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders AddAttachmentsToSet+-- | The ID and expiry time of the attachment set returned by the+-- AddAttachmentsToSet operation.+--+-- /See:/ 'addAttachmentsToSetResponse' smart constructor.+data AddAttachmentsToSetResponse = AddAttachmentsToSetResponse'+    { _aatsrsExpiryTime      :: !(Maybe Text)+    , _aatsrsAttachmentSetId :: !(Maybe Text)+    , _aatsrsStatus          :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON AddAttachmentsToSet where-    toJSON AddAttachmentsToSet{..} = object-        [ "attachmentSetId" .= _aatsAttachmentSetId-        , "attachments"     .= _aatsAttachments-        ]+-- | Creates a value of 'AddAttachmentsToSetResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aatsrsExpiryTime'+--+-- * 'aatsrsAttachmentSetId'+--+-- * 'aatsrsStatus'+addAttachmentsToSetResponse+    :: Int -- ^ 'aatsrsStatus'+    -> AddAttachmentsToSetResponse+addAttachmentsToSetResponse pStatus_ =+    AddAttachmentsToSetResponse'+    { _aatsrsExpiryTime = Nothing+    , _aatsrsAttachmentSetId = Nothing+    , _aatsrsStatus = pStatus_+    } -instance AWSRequest AddAttachmentsToSet where-    type Sv AddAttachmentsToSet = Support-    type Rs AddAttachmentsToSet = AddAttachmentsToSetResponse+-- | The time and date when the attachment set expires.+aatsrsExpiryTime :: Lens' AddAttachmentsToSetResponse (Maybe Text)+aatsrsExpiryTime = lens _aatsrsExpiryTime (\ s a -> s{_aatsrsExpiryTime = a}); -    request  = post "AddAttachmentsToSet"-    response = jsonResponse+-- | The ID of the attachment set. If an 'AttachmentSetId' was not specified,+-- a new attachment set is created, and the ID of the set is returned in+-- the response. If an 'AttachmentSetId' was specified, the attachments are+-- added to the specified set, if it exists.+aatsrsAttachmentSetId :: Lens' AddAttachmentsToSetResponse (Maybe Text)+aatsrsAttachmentSetId = lens _aatsrsAttachmentSetId (\ s a -> s{_aatsrsAttachmentSetId = a}); -instance FromJSON AddAttachmentsToSetResponse where-    parseJSON = withObject "AddAttachmentsToSetResponse" $ \o -> AddAttachmentsToSetResponse-        <$> o .:? "attachmentSetId"-        <*> o .:? "expiryTime"+-- | The response status code.+aatsrsStatus :: Lens' AddAttachmentsToSetResponse Int+aatsrsStatus = lens _aatsrsStatus (\ s a -> s{_aatsrsStatus = a});
gen/Network/AWS/Support/AddCommunicationToCase.hs view
@@ -1,155 +1,175 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.AddCommunicationToCase--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Adds additional customer communication to an AWS Support case. You use the 'CaseId' value to identify the case to add communication to. You can list a set of--- email addresses to copy on the communication using the 'CcEmailAddresses'--- value. The 'CommunicationBody' value contains the text of the communication.+-- Adds additional customer communication to an AWS Support case. You use+-- the 'CaseId' value to identify the case to add communication to. You can+-- list a set of email addresses to copy on the communication using the+-- 'CcEmailAddresses' value. The 'CommunicationBody' value contains the+-- text of the communication. -- -- The response indicates the success or failure of the request. ----- This operation implements a subset of the features of the AWS Support Center.+-- This operation implements a subset of the features of the AWS Support+-- Center. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_AddCommunicationToCase.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_AddCommunicationToCase.html AWS API Reference> for AddCommunicationToCase. module Network.AWS.Support.AddCommunicationToCase     (-    -- * Request-      AddCommunicationToCase-    -- ** Request constructor-    , addCommunicationToCase-    -- ** Request lenses-    , actcAttachmentSetId+    -- * Creating a Request+      addCommunicationToCase+    , AddCommunicationToCase+    -- * Request Lenses     , actcCaseId     , actcCcEmailAddresses+    , actcAttachmentSetId     , actcCommunicationBody -    -- * Response-    , AddCommunicationToCaseResponse-    -- ** Response constructor+    -- * Destructuring the Response     , addCommunicationToCaseResponse-    -- ** Response lenses-    , actcrResult+    , AddCommunicationToCaseResponse+    -- * Response Lenses+    , actcrsResult+    , actcrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts--data AddCommunicationToCase = AddCommunicationToCase-    { _actcAttachmentSetId   :: Maybe Text-    , _actcCaseId            :: Maybe Text-    , _actcCcEmailAddresses  :: List "ccEmailAddresses" Text-    , _actcCommunicationBody :: Text-    } deriving (Eq, Ord, Read, Show)+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product --- | 'AddCommunicationToCase' constructor.+-- | To be written. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'addCommunicationToCase' smart constructor.+data AddCommunicationToCase = AddCommunicationToCase'+    { _actcCaseId            :: !(Maybe Text)+    , _actcCcEmailAddresses  :: !(Maybe [Text])+    , _actcAttachmentSetId   :: !(Maybe Text)+    , _actcCommunicationBody :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AddCommunicationToCase' with the minimum fields required to make a request. ----- * 'actcAttachmentSetId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'actcCaseId' @::@ 'Maybe' 'Text'+-- * 'actcCaseId' ----- * 'actcCcEmailAddresses' @::@ ['Text']+-- * 'actcCcEmailAddresses' ----- * 'actcCommunicationBody' @::@ 'Text'+-- * 'actcAttachmentSetId' ---addCommunicationToCase :: Text -- ^ 'actcCommunicationBody'-                       -> AddCommunicationToCase-addCommunicationToCase p1 = AddCommunicationToCase-    { _actcCommunicationBody = p1-    , _actcCaseId            = Nothing-    , _actcCcEmailAddresses  = mempty-    , _actcAttachmentSetId   = Nothing+-- * 'actcCommunicationBody'+addCommunicationToCase+    :: Text -- ^ 'actcCommunicationBody'+    -> AddCommunicationToCase+addCommunicationToCase pCommunicationBody_ =+    AddCommunicationToCase'+    { _actcCaseId = Nothing+    , _actcCcEmailAddresses = Nothing+    , _actcAttachmentSetId = Nothing+    , _actcCommunicationBody = pCommunicationBody_     } --- | The ID of a set of one or more attachments for the communication to add to--- the case. Create the set by calling 'AddAttachmentsToSet'-actcAttachmentSetId :: Lens' AddCommunicationToCase (Maybe Text)-actcAttachmentSetId =-    lens _actcAttachmentSetId (\s a -> s { _actcAttachmentSetId = a })---- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/+-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/ actcCaseId :: Lens' AddCommunicationToCase (Maybe Text)-actcCaseId = lens _actcCaseId (\s a -> s { _actcCaseId = a })+actcCaseId = lens _actcCaseId (\ s a -> s{_actcCaseId = a}); --- | The email addresses in the CC line of an email to be added to the support--- case.+-- | The email addresses in the CC line of an email to be added to the+-- support case. actcCcEmailAddresses :: Lens' AddCommunicationToCase [Text]-actcCcEmailAddresses =-    lens _actcCcEmailAddresses (\s a -> s { _actcCcEmailAddresses = a })-        . _List+actcCcEmailAddresses = lens _actcCcEmailAddresses (\ s a -> s{_actcCcEmailAddresses = a}) . _Default . _Coerce; +-- | The ID of a set of one or more attachments for the communication to add+-- to the case. Create the set by calling AddAttachmentsToSet+actcAttachmentSetId :: Lens' AddCommunicationToCase (Maybe Text)+actcAttachmentSetId = lens _actcAttachmentSetId (\ s a -> s{_actcAttachmentSetId = a});+ -- | The body of an email communication to add to the support case. actcCommunicationBody :: Lens' AddCommunicationToCase Text-actcCommunicationBody =-    lens _actcCommunicationBody (\s a -> s { _actcCommunicationBody = a })+actcCommunicationBody = lens _actcCommunicationBody (\ s a -> s{_actcCommunicationBody = a}); -newtype AddCommunicationToCaseResponse = AddCommunicationToCaseResponse-    { _actcrResult :: Maybe Bool-    } deriving (Eq, Ord, Read, Show)+instance AWSRequest AddCommunicationToCase where+        type Sv AddCommunicationToCase = Support+        type Rs AddCommunicationToCase =+             AddCommunicationToCaseResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 AddCommunicationToCaseResponse' <$>+                   (x .?> "result") <*> (pure (fromEnum s))) --- | 'AddCommunicationToCaseResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'actcrResult' @::@ 'Maybe' 'Bool'----addCommunicationToCaseResponse :: AddCommunicationToCaseResponse-addCommunicationToCaseResponse = AddCommunicationToCaseResponse-    { _actcrResult = Nothing-    }+instance ToHeaders AddCommunicationToCase where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.AddCommunicationToCase" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | True if 'AddCommunicationToCase' succeeds. Otherwise, returns an error.-actcrResult :: Lens' AddCommunicationToCaseResponse (Maybe Bool)-actcrResult = lens _actcrResult (\s a -> s { _actcrResult = a })+instance ToJSON AddCommunicationToCase where+        toJSON AddCommunicationToCase'{..}+          = object+              ["caseId" .= _actcCaseId,+               "ccEmailAddresses" .= _actcCcEmailAddresses,+               "attachmentSetId" .= _actcAttachmentSetId,+               "communicationBody" .= _actcCommunicationBody]  instance ToPath AddCommunicationToCase where-    toPath = const "/"+        toPath = const "/"  instance ToQuery AddCommunicationToCase where-    toQuery = const mempty--instance ToHeaders AddCommunicationToCase+        toQuery = const mempty -instance ToJSON AddCommunicationToCase where-    toJSON AddCommunicationToCase{..} = object-        [ "caseId"            .= _actcCaseId-        , "communicationBody" .= _actcCommunicationBody-        , "ccEmailAddresses"  .= _actcCcEmailAddresses-        , "attachmentSetId"   .= _actcAttachmentSetId-        ]+-- | The result of the AddCommunicationToCase operation.+--+-- /See:/ 'addCommunicationToCaseResponse' smart constructor.+data AddCommunicationToCaseResponse = AddCommunicationToCaseResponse'+    { _actcrsResult :: !(Maybe Bool)+    , _actcrsStatus :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest AddCommunicationToCase where-    type Sv AddCommunicationToCase = Support-    type Rs AddCommunicationToCase = AddCommunicationToCaseResponse+-- | Creates a value of 'AddCommunicationToCaseResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'actcrsResult'+--+-- * 'actcrsStatus'+addCommunicationToCaseResponse+    :: Int -- ^ 'actcrsStatus'+    -> AddCommunicationToCaseResponse+addCommunicationToCaseResponse pStatus_ =+    AddCommunicationToCaseResponse'+    { _actcrsResult = Nothing+    , _actcrsStatus = pStatus_+    } -    request  = post "AddCommunicationToCase"-    response = jsonResponse+-- | True if AddCommunicationToCase succeeds. Otherwise, returns an error.+actcrsResult :: Lens' AddCommunicationToCaseResponse (Maybe Bool)+actcrsResult = lens _actcrsResult (\ s a -> s{_actcrsResult = a}); -instance FromJSON AddCommunicationToCaseResponse where-    parseJSON = withObject "AddCommunicationToCaseResponse" $ \o -> AddCommunicationToCaseResponse-        <$> o .:? "result"+-- | The response status code.+actcrsStatus :: Lens' AddCommunicationToCaseResponse Int+actcrsStatus = lens _actcrsStatus (\ s a -> s{_actcrsStatus = a});
gen/Network/AWS/Support/CreateCase.hs view
@@ -1,235 +1,267 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.CreateCase--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates a new case in the AWS Support Center. This operation is modeled on--- the behavior of the AWS Support Center <https://console.aws.amazon.com/support/home#/case/create Create Case> page. Its parameters--- require you to specify the following information:+-- Creates a new case in the AWS Support Center. This operation is modeled+-- on the behavior of the AWS Support Center+-- <https://console.aws.amazon.com/support/home#/case/create Create Case>+-- page. Its parameters require you to specify the following information: ----- IssueType. The type of issue for the case. You can specify either--- "customer-service" or "technical." If you do not indicate a value, the--- default is "technical."   ServiceCode. The code for an AWS service. You--- obtain the 'ServiceCode' by calling 'DescribeServices'.   CategoryCode. The--- category for the service defined for the 'ServiceCode' value. You also obtain--- the category code for a service by calling 'DescribeServices'. Each AWS service--- defines its own set of category codes.   SeverityCode. A value that indicates--- the urgency of the case, which in turn determines the response time according--- to your service level agreement with AWS Support. You obtain the SeverityCode--- by calling 'DescribeSeverityLevels'.  Subject. The Subject field on the AWS--- Support Center <https://console.aws.amazon.com/support/home#/case/create Create Case> page.  CommunicationBody. The Description field on--- the AWS Support Center <https://console.aws.amazon.com/support/home#/case/create Create Case> page.  AttachmentSetId. The ID of a set of--- attachments that has been created by using 'AddAttachmentsToSet'.  Language.--- The human language in which AWS Support handles the case. English and--- Japanese are currently supported.  CcEmailAddresses. The AWS Support Center CC--- field on the <https://console.aws.amazon.com/support/home#/case/create Create Case> page. You can list email addresses to be copied on--- any correspondence about the case. The account that opens the case is already--- identified by passing the AWS Credentials in the HTTP POST method or in a--- method or function call from one of the programming languages supported by an <http://aws.amazon.com/tools/ AWS SDK>.   To add additional communication or attachments to an existing--- case, use 'AddCommunicationToCase'.+-- 1.  __IssueType.__ The type of issue for the case. You can specify+--     either \"customer-service\" or \"technical.\" If you do not indicate+--     a value, the default is \"technical.\"+-- 2.  __ServiceCode.__ The code for an AWS service. You obtain the+--     'ServiceCode' by calling DescribeServices.+-- 3.  __CategoryCode.__ The category for the service defined for the+--     'ServiceCode' value. You also obtain the category code for a service+--     by calling DescribeServices. Each AWS service defines its own set of+--     category codes.+-- 4.  __SeverityCode.__ A value that indicates the urgency of the case,+--     which in turn determines the response time according to your service+--     level agreement with AWS Support. You obtain the SeverityCode by+--     calling DescribeSeverityLevels.+-- 5.  __Subject.__ The __Subject__ field on the AWS Support Center+--     <https://console.aws.amazon.com/support/home#/case/create Create Case>+--     page.+-- 6.  __CommunicationBody.__ The __Description__ field on the AWS Support+--     Center+--     <https://console.aws.amazon.com/support/home#/case/create Create Case>+--     page.+-- 7.  __AttachmentSetId.__ The ID of a set of attachments that has been+--     created by using AddAttachmentsToSet.+-- 8.  __Language.__ The human language in which AWS Support handles the+--     case. English and Japanese are currently supported.+-- 9.  __CcEmailAddresses.__ The AWS Support Center __CC__ field on the+--     <https://console.aws.amazon.com/support/home#/case/create Create Case>+--     page. You can list email addresses to be copied on any+--     correspondence about the case. The account that opens the case is+--     already identified by passing the AWS Credentials in the HTTP POST+--     method or in a method or function call from one of the programming+--     languages supported by an <http://aws.amazon.com/tools/ AWS SDK>. ----- A successful 'CreateCase' request returns an AWS Support case number. Case--- numbers are used by the 'DescribeCases' operation to retrieve existing AWS+-- To add additional communication or attachments to an existing case, use+-- AddCommunicationToCase.+--+-- A successful CreateCase request returns an AWS Support case number. Case+-- numbers are used by the DescribeCases operation to retrieve existing AWS -- Support cases. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_CreateCase.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_CreateCase.html AWS API Reference> for CreateCase. module Network.AWS.Support.CreateCase     (-    -- * Request-      CreateCase-    -- ** Request constructor-    , createCase-    -- ** Request lenses-    , ccAttachmentSetId-    , ccCategoryCode-    , ccCcEmailAddresses-    , ccCommunicationBody+    -- * Creating a Request+      createCase+    , CreateCase+    -- * Request Lenses+    , ccSeverityCode     , ccIssueType+    , ccCcEmailAddresses     , ccLanguage+    , ccCategoryCode     , ccServiceCode-    , ccSeverityCode+    , ccAttachmentSetId     , ccSubject+    , ccCommunicationBody -    -- * Response-    , CreateCaseResponse-    -- ** Response constructor+    -- * Destructuring the Response     , createCaseResponse-    -- ** Response lenses-    , ccrCaseId+    , CreateCaseResponse+    -- * Response Lenses+    , ccrsCaseId+    , ccrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data CreateCase = CreateCase-    { _ccAttachmentSetId   :: Maybe Text-    , _ccCategoryCode      :: Maybe Text-    , _ccCcEmailAddresses  :: List "ccEmailAddresses" Text-    , _ccCommunicationBody :: Text-    , _ccIssueType         :: Maybe Text-    , _ccLanguage          :: Maybe Text-    , _ccServiceCode       :: Maybe Text-    , _ccSeverityCode      :: Maybe Text-    , _ccSubject           :: Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'createCase' smart constructor.+data CreateCase = CreateCase'+    { _ccSeverityCode      :: !(Maybe Text)+    , _ccIssueType         :: !(Maybe Text)+    , _ccCcEmailAddresses  :: !(Maybe [Text])+    , _ccLanguage          :: !(Maybe Text)+    , _ccCategoryCode      :: !(Maybe Text)+    , _ccServiceCode       :: !(Maybe Text)+    , _ccAttachmentSetId   :: !(Maybe Text)+    , _ccSubject           :: !Text+    , _ccCommunicationBody :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateCase' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateCase' with the minimum fields required to make a request. ----- * 'ccAttachmentSetId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'ccCategoryCode' @::@ 'Maybe' 'Text'+-- * 'ccSeverityCode' ----- * 'ccCcEmailAddresses' @::@ ['Text']+-- * 'ccIssueType' ----- * 'ccCommunicationBody' @::@ 'Text'+-- * 'ccCcEmailAddresses' ----- * 'ccIssueType' @::@ 'Maybe' 'Text'+-- * 'ccLanguage' ----- * 'ccLanguage' @::@ 'Maybe' 'Text'+-- * 'ccCategoryCode' ----- * 'ccServiceCode' @::@ 'Maybe' 'Text'+-- * 'ccServiceCode' ----- * 'ccSeverityCode' @::@ 'Maybe' 'Text'+-- * 'ccAttachmentSetId' ----- * 'ccSubject' @::@ 'Text'+-- * 'ccSubject' ---createCase :: Text -- ^ 'ccSubject'-           -> Text -- ^ 'ccCommunicationBody'-           -> CreateCase-createCase p1 p2 = CreateCase-    { _ccSubject           = p1-    , _ccCommunicationBody = p2-    , _ccServiceCode       = Nothing-    , _ccSeverityCode      = Nothing-    , _ccCategoryCode      = Nothing-    , _ccCcEmailAddresses  = mempty-    , _ccLanguage          = Nothing-    , _ccIssueType         = Nothing-    , _ccAttachmentSetId   = Nothing+-- * 'ccCommunicationBody'+createCase+    :: Text -- ^ 'ccSubject'+    -> Text -- ^ 'ccCommunicationBody'+    -> CreateCase+createCase pSubject_ pCommunicationBody_ =+    CreateCase'+    { _ccSeverityCode = Nothing+    , _ccIssueType = Nothing+    , _ccCcEmailAddresses = Nothing+    , _ccLanguage = Nothing+    , _ccCategoryCode = Nothing+    , _ccServiceCode = Nothing+    , _ccAttachmentSetId = Nothing+    , _ccSubject = pSubject_+    , _ccCommunicationBody = pCommunicationBody_     } --- | The ID of a set of one or more attachments for the case. Create the set by--- using 'AddAttachmentsToSet'.-ccAttachmentSetId :: Lens' CreateCase (Maybe Text)-ccAttachmentSetId =-    lens _ccAttachmentSetId (\s a -> s { _ccAttachmentSetId = a })+-- | The code for the severity level returned by the call to+-- DescribeSeverityLevels.+--+-- The availability of severity levels depends on each customer\'s support+-- subscription. In other words, your subscription may not necessarily+-- require the urgent level of response time.+ccSeverityCode :: Lens' CreateCase (Maybe Text)+ccSeverityCode = lens _ccSeverityCode (\ s a -> s{_ccSeverityCode = a}); --- | The category of problem for the AWS Support case.-ccCategoryCode :: Lens' CreateCase (Maybe Text)-ccCategoryCode = lens _ccCategoryCode (\s a -> s { _ccCategoryCode = a })+-- | The type of issue for the case. You can specify either+-- \"customer-service\" or \"technical.\" If you do not indicate a value,+-- the default is \"technical.\"+ccIssueType :: Lens' CreateCase (Maybe Text)+ccIssueType = lens _ccIssueType (\ s a -> s{_ccIssueType = a}); --- | A list of email addresses that AWS Support copies on case correspondence.+-- | A list of email addresses that AWS Support copies on case+-- correspondence. ccCcEmailAddresses :: Lens' CreateCase [Text]-ccCcEmailAddresses =-    lens _ccCcEmailAddresses (\s a -> s { _ccCcEmailAddresses = a })-        . _List---- | The communication body text when you create an AWS Support case by calling 'CreateCase'.-ccCommunicationBody :: Lens' CreateCase Text-ccCommunicationBody =-    lens _ccCommunicationBody (\s a -> s { _ccCommunicationBody = a })---- | The type of issue for the case. You can specify either "customer-service" or--- "technical." If you do not indicate a value, the default is "technical."-ccIssueType :: Lens' CreateCase (Maybe Text)-ccIssueType = lens _ccIssueType (\s a -> s { _ccIssueType = a })+ccCcEmailAddresses = lens _ccCcEmailAddresses (\ s a -> s{_ccCcEmailAddresses = a}) . _Default . _Coerce;  -- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them. ccLanguage :: Lens' CreateCase (Maybe Text)-ccLanguage = lens _ccLanguage (\s a -> s { _ccLanguage = a })+ccLanguage = lens _ccLanguage (\ s a -> s{_ccLanguage = a}); --- | The code for the AWS service returned by the call to 'DescribeServices'.+-- | The category of problem for the AWS Support case.+ccCategoryCode :: Lens' CreateCase (Maybe Text)+ccCategoryCode = lens _ccCategoryCode (\ s a -> s{_ccCategoryCode = a});++-- | The code for the AWS service returned by the call to DescribeServices. ccServiceCode :: Lens' CreateCase (Maybe Text)-ccServiceCode = lens _ccServiceCode (\s a -> s { _ccServiceCode = a })+ccServiceCode = lens _ccServiceCode (\ s a -> s{_ccServiceCode = a}); --- | The code for the severity level returned by the call to 'DescribeSeverityLevels'--- .------ The availability of severity levels depends on each customer's support--- subscription. In other words, your subscription may not necessarily require--- the urgent level of response time.----ccSeverityCode :: Lens' CreateCase (Maybe Text)-ccSeverityCode = lens _ccSeverityCode (\s a -> s { _ccSeverityCode = a })+-- | The ID of a set of one or more attachments for the case. Create the set+-- by using AddAttachmentsToSet.+ccAttachmentSetId :: Lens' CreateCase (Maybe Text)+ccAttachmentSetId = lens _ccAttachmentSetId (\ s a -> s{_ccAttachmentSetId = a});  -- | The title of the AWS Support case. ccSubject :: Lens' CreateCase Text-ccSubject = lens _ccSubject (\s a -> s { _ccSubject = a })+ccSubject = lens _ccSubject (\ s a -> s{_ccSubject = a}); -newtype CreateCaseResponse = CreateCaseResponse-    { _ccrCaseId :: Maybe Text-    } deriving (Eq, Ord, Read, Show, Monoid)+-- | The communication body text when you create an AWS Support case by+-- calling CreateCase.+ccCommunicationBody :: Lens' CreateCase Text+ccCommunicationBody = lens _ccCommunicationBody (\ s a -> s{_ccCommunicationBody = a}); --- | 'CreateCaseResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ccrCaseId' @::@ 'Maybe' 'Text'----createCaseResponse :: CreateCaseResponse-createCaseResponse = CreateCaseResponse-    { _ccrCaseId = Nothing-    }+instance AWSRequest CreateCase where+        type Sv CreateCase = Support+        type Rs CreateCase = CreateCaseResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 CreateCaseResponse' <$>+                   (x .?> "caseId") <*> (pure (fromEnum s))) --- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/-ccrCaseId :: Lens' CreateCaseResponse (Maybe Text)-ccrCaseId = lens _ccrCaseId (\s a -> s { _ccrCaseId = a })+instance ToHeaders CreateCase where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.CreateCase" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) +instance ToJSON CreateCase where+        toJSON CreateCase'{..}+          = object+              ["severityCode" .= _ccSeverityCode,+               "issueType" .= _ccIssueType,+               "ccEmailAddresses" .= _ccCcEmailAddresses,+               "language" .= _ccLanguage,+               "categoryCode" .= _ccCategoryCode,+               "serviceCode" .= _ccServiceCode,+               "attachmentSetId" .= _ccAttachmentSetId,+               "subject" .= _ccSubject,+               "communicationBody" .= _ccCommunicationBody]+ instance ToPath CreateCase where-    toPath = const "/"+        toPath = const "/"  instance ToQuery CreateCase where-    toQuery = const mempty--instance ToHeaders CreateCase+        toQuery = const mempty -instance ToJSON CreateCase where-    toJSON CreateCase{..} = object-        [ "subject"           .= _ccSubject-        , "serviceCode"       .= _ccServiceCode-        , "severityCode"      .= _ccSeverityCode-        , "categoryCode"      .= _ccCategoryCode-        , "communicationBody" .= _ccCommunicationBody-        , "ccEmailAddresses"  .= _ccCcEmailAddresses-        , "language"          .= _ccLanguage-        , "issueType"         .= _ccIssueType-        , "attachmentSetId"   .= _ccAttachmentSetId-        ]+-- | The AWS Support case ID returned by a successful completion of the+-- CreateCase operation.+--+-- /See:/ 'createCaseResponse' smart constructor.+data CreateCaseResponse = CreateCaseResponse'+    { _ccrsCaseId :: !(Maybe Text)+    , _ccrsStatus :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateCase where-    type Sv CreateCase = Support-    type Rs CreateCase = CreateCaseResponse+-- | Creates a value of 'CreateCaseResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccrsCaseId'+--+-- * 'ccrsStatus'+createCaseResponse+    :: Int -- ^ 'ccrsStatus'+    -> CreateCaseResponse+createCaseResponse pStatus_ =+    CreateCaseResponse'+    { _ccrsCaseId = Nothing+    , _ccrsStatus = pStatus_+    } -    request  = post "CreateCase"-    response = jsonResponse+-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/+ccrsCaseId :: Lens' CreateCaseResponse (Maybe Text)+ccrsCaseId = lens _ccrsCaseId (\ s a -> s{_ccrsCaseId = a}); -instance FromJSON CreateCaseResponse where-    parseJSON = withObject "CreateCaseResponse" $ \o -> CreateCaseResponse-        <$> o .:? "caseId"+-- | The response status code.+ccrsStatus :: Lens' CreateCaseResponse Int+ccrsStatus = lens _ccrsStatus (\ s a -> s{_ccrsStatus = a});
gen/Network/AWS/Support/DescribeAttachment.hs view
@@ -1,115 +1,135 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeAttachment--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the attachment that has the specified ID. Attachment IDs are--- generated by the case management system when you add an attachment to a case--- or case communication. Attachment IDs are returned in the 'AttachmentDetails'--- objects that are returned by the 'DescribeCommunications' operation.+-- Returns the attachment that has the specified ID. Attachment IDs are+-- generated by the case management system when you add an attachment to a+-- case or case communication. Attachment IDs are returned in the+-- AttachmentDetails objects that are returned by the+-- DescribeCommunications operation. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeAttachment.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeAttachment.html AWS API Reference> for DescribeAttachment. module Network.AWS.Support.DescribeAttachment     (-    -- * Request-      DescribeAttachment-    -- ** Request constructor-    , describeAttachment-    -- ** Request lenses+    -- * Creating a Request+      describeAttachment+    , DescribeAttachment+    -- * Request Lenses     , daAttachmentId -    -- * Response-    , DescribeAttachmentResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeAttachmentResponse-    -- ** Response lenses-    , darAttachment+    , DescribeAttachmentResponse+    -- * Response Lenses+    , darsAttachment+    , darsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -newtype DescribeAttachment = DescribeAttachment+-- | /See:/ 'describeAttachment' smart constructor.+newtype DescribeAttachment = DescribeAttachment'     { _daAttachmentId :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAttachment' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeAttachment' with the minimum fields required to make a request. ----- * 'daAttachmentId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---describeAttachment :: Text -- ^ 'daAttachmentId'-                   -> DescribeAttachment-describeAttachment p1 = DescribeAttachment-    { _daAttachmentId = p1+-- * 'daAttachmentId'+describeAttachment+    :: Text -- ^ 'daAttachmentId'+    -> DescribeAttachment+describeAttachment pAttachmentId_ =+    DescribeAttachment'+    { _daAttachmentId = pAttachmentId_     } --- | The ID of the attachment to return. Attachment IDs are returned by the 'DescribeCommunications' operation.+-- | The ID of the attachment to return. Attachment IDs are returned by the+-- DescribeCommunications operation. daAttachmentId :: Lens' DescribeAttachment Text-daAttachmentId = lens _daAttachmentId (\s a -> s { _daAttachmentId = a })+daAttachmentId = lens _daAttachmentId (\ s a -> s{_daAttachmentId = a}); -newtype DescribeAttachmentResponse = DescribeAttachmentResponse-    { _darAttachment :: Maybe Attachment-    } deriving (Eq, Read, Show)+instance AWSRequest DescribeAttachment where+        type Sv DescribeAttachment = Support+        type Rs DescribeAttachment =+             DescribeAttachmentResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeAttachmentResponse' <$>+                   (x .?> "attachment") <*> (pure (fromEnum s))) --- | 'DescribeAttachmentResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'darAttachment' @::@ 'Maybe' 'Attachment'----describeAttachmentResponse :: DescribeAttachmentResponse-describeAttachmentResponse = DescribeAttachmentResponse-    { _darAttachment = Nothing-    }+instance ToHeaders DescribeAttachment where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeAttachment" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The attachment content and file name.-darAttachment :: Lens' DescribeAttachmentResponse (Maybe Attachment)-darAttachment = lens _darAttachment (\s a -> s { _darAttachment = a })+instance ToJSON DescribeAttachment where+        toJSON DescribeAttachment'{..}+          = object ["attachmentId" .= _daAttachmentId]  instance ToPath DescribeAttachment where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeAttachment where-    toQuery = const mempty--instance ToHeaders DescribeAttachment+        toQuery = const mempty -instance ToJSON DescribeAttachment where-    toJSON DescribeAttachment{..} = object-        [ "attachmentId" .= _daAttachmentId-        ]+-- | The content and file name of the attachment returned by the+-- DescribeAttachment operation.+--+-- /See:/ 'describeAttachmentResponse' smart constructor.+data DescribeAttachmentResponse = DescribeAttachmentResponse'+    { _darsAttachment :: !(Maybe Attachment)+    , _darsStatus     :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeAttachment where-    type Sv DescribeAttachment = Support-    type Rs DescribeAttachment = DescribeAttachmentResponse+-- | Creates a value of 'DescribeAttachmentResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'darsAttachment'+--+-- * 'darsStatus'+describeAttachmentResponse+    :: Int -- ^ 'darsStatus'+    -> DescribeAttachmentResponse+describeAttachmentResponse pStatus_ =+    DescribeAttachmentResponse'+    { _darsAttachment = Nothing+    , _darsStatus = pStatus_+    } -    request  = post "DescribeAttachment"-    response = jsonResponse+-- | The attachment content and file name.+darsAttachment :: Lens' DescribeAttachmentResponse (Maybe Attachment)+darsAttachment = lens _darsAttachment (\ s a -> s{_darsAttachment = a}); -instance FromJSON DescribeAttachmentResponse where-    parseJSON = withObject "DescribeAttachmentResponse" $ \o -> DescribeAttachmentResponse-        <$> o .:? "attachment"+-- | The response status code.+darsStatus :: Lens' DescribeAttachmentResponse Int+darsStatus = lens _darsStatus (\ s a -> s{_darsStatus = a});
gen/Network/AWS/Support/DescribeCases.hs view
@@ -1,227 +1,251 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeCases--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list of cases that you specify by passing one or more case IDs. In--- addition, you can filter the cases by date by setting values for the 'AfterTime'--- and 'BeforeTime' request parameters. You can set values for the 'IncludeResolvedCases' and 'IncludeCommunications' request parameters to control how much information--- is returned.+-- Returns a list of cases that you specify by passing one or more case+-- IDs. In addition, you can filter the cases by date by setting values for+-- the 'AfterTime' and 'BeforeTime' request parameters. You can set values+-- for the 'IncludeResolvedCases' and 'IncludeCommunications' request+-- parameters to control how much information is returned. ----- Case data is available for 12 months after creation. If a case was created--- more than 12 months ago, a request for data might cause an error.+-- Case data is available for 12 months after creation. If a case was+-- created more than 12 months ago, a request for data might cause an+-- error. -- -- The response returns the following in JSON format: ----- One or more 'CaseDetails' data types.  One or more 'NextToken' values, which--- specify where to paginate the returned records represented by the 'CaseDetails'--- objects.+-- 1.  One or more CaseDetails data types.+-- 2.  One or more 'NextToken' values, which specify where to paginate the+--     returned records represented by the 'CaseDetails' objects. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeCases.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeCases.html AWS API Reference> for DescribeCases.+--+-- This operation returns paginated results. module Network.AWS.Support.DescribeCases     (-    -- * Request-      DescribeCases-    -- ** Request constructor-    , describeCases-    -- ** Request lenses+    -- * Creating a Request+      describeCases+    , DescribeCases+    -- * Request Lenses+    , dcIncludeResolvedCases+    , dcCaseIdList     , dcAfterTime+    , dcNextToken     , dcBeforeTime-    , dcCaseIdList-    , dcDisplayId     , dcIncludeCommunications-    , dcIncludeResolvedCases+    , dcDisplayId     , dcLanguage     , dcMaxResults-    , dcNextToken -    -- * Response-    , DescribeCasesResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeCasesResponse-    -- ** Response lenses-    , dcr1Cases-    , dcr1NextToken+    , DescribeCasesResponse+    -- * Response Lenses+    , drsCases+    , drsNextToken+    , drsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Pager+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data DescribeCases = DescribeCases-    { _dcAfterTime             :: Maybe Text-    , _dcBeforeTime            :: Maybe Text-    , _dcCaseIdList            :: List "caseIdList" Text-    , _dcDisplayId             :: Maybe Text-    , _dcIncludeCommunications :: Maybe Bool-    , _dcIncludeResolvedCases  :: Maybe Bool-    , _dcLanguage              :: Maybe Text-    , _dcMaxResults            :: Maybe Nat-    , _dcNextToken             :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeCases' smart constructor.+data DescribeCases = DescribeCases'+    { _dcIncludeResolvedCases  :: !(Maybe Bool)+    , _dcCaseIdList            :: !(Maybe [Text])+    , _dcAfterTime             :: !(Maybe Text)+    , _dcNextToken             :: !(Maybe Text)+    , _dcBeforeTime            :: !(Maybe Text)+    , _dcIncludeCommunications :: !(Maybe Bool)+    , _dcDisplayId             :: !(Maybe Text)+    , _dcLanguage              :: !(Maybe Text)+    , _dcMaxResults            :: !(Maybe Nat)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeCases' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeCases' with the minimum fields required to make a request. ----- * 'dcAfterTime' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcBeforeTime' @::@ 'Maybe' 'Text'+-- * 'dcIncludeResolvedCases' ----- * 'dcCaseIdList' @::@ ['Text']+-- * 'dcCaseIdList' ----- * 'dcDisplayId' @::@ 'Maybe' 'Text'+-- * 'dcAfterTime' ----- * 'dcIncludeCommunications' @::@ 'Maybe' 'Bool'+-- * 'dcNextToken' ----- * 'dcIncludeResolvedCases' @::@ 'Maybe' 'Bool'+-- * 'dcBeforeTime' ----- * 'dcLanguage' @::@ 'Maybe' 'Text'+-- * 'dcIncludeCommunications' ----- * 'dcMaxResults' @::@ 'Maybe' 'Natural'+-- * 'dcDisplayId' ----- * 'dcNextToken' @::@ 'Maybe' 'Text'+-- * 'dcLanguage' ---describeCases :: DescribeCases-describeCases = DescribeCases-    { _dcCaseIdList            = mempty-    , _dcDisplayId             = Nothing-    , _dcAfterTime             = Nothing-    , _dcBeforeTime            = Nothing-    , _dcIncludeResolvedCases  = Nothing-    , _dcNextToken             = Nothing-    , _dcMaxResults            = Nothing-    , _dcLanguage              = Nothing+-- * 'dcMaxResults'+describeCases+    :: DescribeCases+describeCases =+    DescribeCases'+    { _dcIncludeResolvedCases = Nothing+    , _dcCaseIdList = Nothing+    , _dcAfterTime = Nothing+    , _dcNextToken = Nothing+    , _dcBeforeTime = Nothing     , _dcIncludeCommunications = Nothing+    , _dcDisplayId = Nothing+    , _dcLanguage = Nothing+    , _dcMaxResults = Nothing     } --- | The start date for a filtered date search on support case communications.--- Case communications are available for 12 months after creation.-dcAfterTime :: Lens' DescribeCases (Maybe Text)-dcAfterTime = lens _dcAfterTime (\s a -> s { _dcAfterTime = a })---- | The end date for a filtered date search on support case communications. Case--- communications are available for 12 months after creation.-dcBeforeTime :: Lens' DescribeCases (Maybe Text)-dcBeforeTime = lens _dcBeforeTime (\s a -> s { _dcBeforeTime = a })+-- | Specifies whether resolved support cases should be included in the+-- DescribeCases results. The default is /false/.+dcIncludeResolvedCases :: Lens' DescribeCases (Maybe Bool)+dcIncludeResolvedCases = lens _dcIncludeResolvedCases (\ s a -> s{_dcIncludeResolvedCases = a});  -- | A list of ID numbers of the support cases you want returned. The maximum -- number of cases is 100. dcCaseIdList :: Lens' DescribeCases [Text]-dcCaseIdList = lens _dcCaseIdList (\s a -> s { _dcCaseIdList = a }) . _List+dcCaseIdList = lens _dcCaseIdList (\ s a -> s{_dcCaseIdList = a}) . _Default . _Coerce; --- | The ID displayed for a case in the AWS Support Center user interface.-dcDisplayId :: Lens' DescribeCases (Maybe Text)-dcDisplayId = lens _dcDisplayId (\s a -> s { _dcDisplayId = a })+-- | The start date for a filtered date search on support case+-- communications. Case communications are available for 12 months after+-- creation.+dcAfterTime :: Lens' DescribeCases (Maybe Text)+dcAfterTime = lens _dcAfterTime (\ s a -> s{_dcAfterTime = a}); --- | Specifies whether communications should be included in the 'DescribeCases'+-- | A resumption point for pagination.+dcNextToken :: Lens' DescribeCases (Maybe Text)+dcNextToken = lens _dcNextToken (\ s a -> s{_dcNextToken = a});++-- | The end date for a filtered date search on support case communications.+-- Case communications are available for 12 months after creation.+dcBeforeTime :: Lens' DescribeCases (Maybe Text)+dcBeforeTime = lens _dcBeforeTime (\ s a -> s{_dcBeforeTime = a});++-- | Specifies whether communications should be included in the DescribeCases -- results. The default is /true/. dcIncludeCommunications :: Lens' DescribeCases (Maybe Bool)-dcIncludeCommunications =-    lens _dcIncludeCommunications (\s a -> s { _dcIncludeCommunications = a })+dcIncludeCommunications = lens _dcIncludeCommunications (\ s a -> s{_dcIncludeCommunications = a}); --- | Specifies whether resolved support cases should be included in the 'DescribeCases' results. The default is /false/.-dcIncludeResolvedCases :: Lens' DescribeCases (Maybe Bool)-dcIncludeResolvedCases =-    lens _dcIncludeResolvedCases (\s a -> s { _dcIncludeResolvedCases = a })+-- | The ID displayed for a case in the AWS Support Center user interface.+dcDisplayId :: Lens' DescribeCases (Maybe Text)+dcDisplayId = lens _dcDisplayId (\ s a -> s{_dcDisplayId = a});  -- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them. dcLanguage :: Lens' DescribeCases (Maybe Text)-dcLanguage = lens _dcLanguage (\s a -> s { _dcLanguage = a })+dcLanguage = lens _dcLanguage (\ s a -> s{_dcLanguage = a});  -- | The maximum number of results to return before paginating. dcMaxResults :: Lens' DescribeCases (Maybe Natural)-dcMaxResults = lens _dcMaxResults (\s a -> s { _dcMaxResults = a }) . mapping _Nat---- | A resumption point for pagination.-dcNextToken :: Lens' DescribeCases (Maybe Text)-dcNextToken = lens _dcNextToken (\s a -> s { _dcNextToken = a })+dcMaxResults = lens _dcMaxResults (\ s a -> s{_dcMaxResults = a}) . mapping _Nat; -data DescribeCasesResponse = DescribeCasesResponse-    { _dcr1Cases     :: List "cases" CaseDetails-    , _dcr1NextToken :: Maybe Text-    } deriving (Eq, Read, Show)+instance AWSPager DescribeCases where+        page rq rs+          | stop (rs ^. drsNextToken) = Nothing+          | stop (rs ^. drsCases) = Nothing+          | otherwise =+            Just $ rq & dcNextToken .~ rs ^. drsNextToken --- | 'DescribeCasesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcr1Cases' @::@ ['CaseDetails']------ * 'dcr1NextToken' @::@ 'Maybe' 'Text'----describeCasesResponse :: DescribeCasesResponse-describeCasesResponse = DescribeCasesResponse-    { _dcr1Cases     = mempty-    , _dcr1NextToken = Nothing-    }+instance AWSRequest DescribeCases where+        type Sv DescribeCases = Support+        type Rs DescribeCases = DescribeCasesResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeCasesResponse' <$>+                   (x .?> "cases" .!@ mempty) <*> (x .?> "nextToken")+                     <*> (pure (fromEnum s))) --- | The details for the cases that match the request.-dcr1Cases :: Lens' DescribeCasesResponse [CaseDetails]-dcr1Cases = lens _dcr1Cases (\s a -> s { _dcr1Cases = a }) . _List+instance ToHeaders DescribeCases where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeCases" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | A resumption point for pagination.-dcr1NextToken :: Lens' DescribeCasesResponse (Maybe Text)-dcr1NextToken = lens _dcr1NextToken (\s a -> s { _dcr1NextToken = a })+instance ToJSON DescribeCases where+        toJSON DescribeCases'{..}+          = object+              ["includeResolvedCases" .= _dcIncludeResolvedCases,+               "caseIdList" .= _dcCaseIdList,+               "afterTime" .= _dcAfterTime,+               "nextToken" .= _dcNextToken,+               "beforeTime" .= _dcBeforeTime,+               "includeCommunications" .= _dcIncludeCommunications,+               "displayId" .= _dcDisplayId,+               "language" .= _dcLanguage,+               "maxResults" .= _dcMaxResults]  instance ToPath DescribeCases where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeCases where-    toQuery = const mempty--instance ToHeaders DescribeCases+        toQuery = const mempty -instance ToJSON DescribeCases where-    toJSON DescribeCases{..} = object-        [ "caseIdList"            .= _dcCaseIdList-        , "displayId"             .= _dcDisplayId-        , "afterTime"             .= _dcAfterTime-        , "beforeTime"            .= _dcBeforeTime-        , "includeResolvedCases"  .= _dcIncludeResolvedCases-        , "nextToken"             .= _dcNextToken-        , "maxResults"            .= _dcMaxResults-        , "language"              .= _dcLanguage-        , "includeCommunications" .= _dcIncludeCommunications-        ]+-- | Returns an array of CaseDetails objects and a 'NextToken' that defines a+-- point for pagination in the result set.+--+-- /See:/ 'describeCasesResponse' smart constructor.+data DescribeCasesResponse = DescribeCasesResponse'+    { _drsCases     :: !(Maybe [CaseDetails])+    , _drsNextToken :: !(Maybe Text)+    , _drsStatus    :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCases where-    type Sv DescribeCases = Support-    type Rs DescribeCases = DescribeCasesResponse+-- | Creates a value of 'DescribeCasesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drsCases'+--+-- * 'drsNextToken'+--+-- * 'drsStatus'+describeCasesResponse+    :: Int -- ^ 'drsStatus'+    -> DescribeCasesResponse+describeCasesResponse pStatus_ =+    DescribeCasesResponse'+    { _drsCases = Nothing+    , _drsNextToken = Nothing+    , _drsStatus = pStatus_+    } -    request  = post "DescribeCases"-    response = jsonResponse+-- | The details for the cases that match the request.+drsCases :: Lens' DescribeCasesResponse [CaseDetails]+drsCases = lens _drsCases (\ s a -> s{_drsCases = a}) . _Default . _Coerce; -instance FromJSON DescribeCasesResponse where-    parseJSON = withObject "DescribeCasesResponse" $ \o -> DescribeCasesResponse-        <$> o .:? "cases" .!= mempty-        <*> o .:? "nextToken"+-- | A resumption point for pagination.+drsNextToken :: Lens' DescribeCasesResponse (Maybe Text)+drsNextToken = lens _drsNextToken (\ s a -> s{_drsNextToken = a}); -instance AWSPager DescribeCases where-    page rq rs-        | stop (rs ^. dcr1NextToken) = Nothing-        | otherwise = (\x -> rq & dcNextToken ?~ x)-            <$> (rs ^. dcr1NextToken)+-- | The response status code.+drsStatus :: Lens' DescribeCasesResponse Int+drsStatus = lens _drsStatus (\ s a -> s{_drsStatus = a});
gen/Network/AWS/Support/DescribeCommunications.hs view
@@ -1,183 +1,207 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeCommunications--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns communications (and attachments) for one or more support cases. You--- can use the 'AfterTime' and 'BeforeTime' parameters to filter by date. You can--- use the 'CaseId' parameter to restrict the results to a particular case.+-- Returns communications (and attachments) for one or more support cases.+-- You can use the 'AfterTime' and 'BeforeTime' parameters to filter by+-- date. You can use the 'CaseId' parameter to restrict the results to a+-- particular case. ----- Case data is available for 12 months after creation. If a case was created--- more than 12 months ago, a request for data might cause an error.+-- Case data is available for 12 months after creation. If a case was+-- created more than 12 months ago, a request for data might cause an+-- error. -- -- You can use the 'MaxResults' and 'NextToken' parameters to control the--- pagination of the result set. Set 'MaxResults' to the number of cases you want--- displayed on each page, and use 'NextToken' to specify the resumption of--- pagination.+-- pagination of the result set. Set 'MaxResults' to the number of cases+-- you want displayed on each page, and use 'NextToken' to specify the+-- resumption of pagination. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeCommunications.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeCommunications.html AWS API Reference> for DescribeCommunications.+--+-- This operation returns paginated results. module Network.AWS.Support.DescribeCommunications     (-    -- * Request-      DescribeCommunications-    -- ** Request constructor-    , describeCommunications-    -- ** Request lenses-    , dc1AfterTime-    , dc1BeforeTime-    , dc1CaseId-    , dc1MaxResults-    , dc1NextToken+    -- * Creating a Request+      describeCommunications+    , DescribeCommunications+    -- * Request Lenses+    , dAfterTime+    , dNextToken+    , dBeforeTime+    , dMaxResults+    , dCaseId -    -- * Response-    , DescribeCommunicationsResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeCommunicationsResponse-    -- ** Response lenses-    , dcrCommunications-    , dcrNextToken+    , DescribeCommunicationsResponse+    -- * Response Lenses+    , dcrsNextToken+    , dcrsCommunications+    , dcrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Pager+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data DescribeCommunications = DescribeCommunications-    { _dc1AfterTime  :: Maybe Text-    , _dc1BeforeTime :: Maybe Text-    , _dc1CaseId     :: Text-    , _dc1MaxResults :: Maybe Nat-    , _dc1NextToken  :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeCommunications' smart constructor.+data DescribeCommunications = DescribeCommunications'+    { _dAfterTime  :: !(Maybe Text)+    , _dNextToken  :: !(Maybe Text)+    , _dBeforeTime :: !(Maybe Text)+    , _dMaxResults :: !(Maybe Nat)+    , _dCaseId     :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeCommunications' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeCommunications' with the minimum fields required to make a request. ----- * 'dc1AfterTime' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dc1BeforeTime' @::@ 'Maybe' 'Text'+-- * 'dAfterTime' ----- * 'dc1CaseId' @::@ 'Text'+-- * 'dNextToken' ----- * 'dc1MaxResults' @::@ 'Maybe' 'Natural'+-- * 'dBeforeTime' ----- * 'dc1NextToken' @::@ 'Maybe' 'Text'+-- * 'dMaxResults' ---describeCommunications :: Text -- ^ 'dc1CaseId'-                       -> DescribeCommunications-describeCommunications p1 = DescribeCommunications-    { _dc1CaseId     = p1-    , _dc1BeforeTime = Nothing-    , _dc1AfterTime  = Nothing-    , _dc1NextToken  = Nothing-    , _dc1MaxResults = Nothing+-- * 'dCaseId'+describeCommunications+    :: Text -- ^ 'dCaseId'+    -> DescribeCommunications+describeCommunications pCaseId_ =+    DescribeCommunications'+    { _dAfterTime = Nothing+    , _dNextToken = Nothing+    , _dBeforeTime = Nothing+    , _dMaxResults = Nothing+    , _dCaseId = pCaseId_     } --- | The start date for a filtered date search on support case communications.--- Case communications are available for 12 months after creation.-dc1AfterTime :: Lens' DescribeCommunications (Maybe Text)-dc1AfterTime = lens _dc1AfterTime (\s a -> s { _dc1AfterTime = a })+-- | The start date for a filtered date search on support case+-- communications. Case communications are available for 12 months after+-- creation.+dAfterTime :: Lens' DescribeCommunications (Maybe Text)+dAfterTime = lens _dAfterTime (\ s a -> s{_dAfterTime = a}); --- | The end date for a filtered date search on support case communications. Case--- communications are available for 12 months after creation.-dc1BeforeTime :: Lens' DescribeCommunications (Maybe Text)-dc1BeforeTime = lens _dc1BeforeTime (\s a -> s { _dc1BeforeTime = a })+-- | A resumption point for pagination.+dNextToken :: Lens' DescribeCommunications (Maybe Text)+dNextToken = lens _dNextToken (\ s a -> s{_dNextToken = a}); --- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/-dc1CaseId :: Lens' DescribeCommunications Text-dc1CaseId = lens _dc1CaseId (\s a -> s { _dc1CaseId = a })+-- | The end date for a filtered date search on support case communications.+-- Case communications are available for 12 months after creation.+dBeforeTime :: Lens' DescribeCommunications (Maybe Text)+dBeforeTime = lens _dBeforeTime (\ s a -> s{_dBeforeTime = a});  -- | The maximum number of results to return before paginating.-dc1MaxResults :: Lens' DescribeCommunications (Maybe Natural)-dc1MaxResults = lens _dc1MaxResults (\s a -> s { _dc1MaxResults = a }) . mapping _Nat+dMaxResults :: Lens' DescribeCommunications (Maybe Natural)+dMaxResults = lens _dMaxResults (\ s a -> s{_dMaxResults = a}) . mapping _Nat; --- | A resumption point for pagination.-dc1NextToken :: Lens' DescribeCommunications (Maybe Text)-dc1NextToken = lens _dc1NextToken (\s a -> s { _dc1NextToken = a })+-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/+dCaseId :: Lens' DescribeCommunications Text+dCaseId = lens _dCaseId (\ s a -> s{_dCaseId = a}); -data DescribeCommunicationsResponse = DescribeCommunicationsResponse-    { _dcrCommunications :: List "communications" Communication-    , _dcrNextToken      :: Maybe Text-    } deriving (Eq, Read, Show)+instance AWSPager DescribeCommunications where+        page rq rs+          | stop (rs ^. dcrsNextToken) = Nothing+          | stop (rs ^. dcrsCommunications) = Nothing+          | otherwise =+            Just $ rq & dNextToken .~ rs ^. dcrsNextToken --- | 'DescribeCommunicationsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcrCommunications' @::@ ['Communication']------ * 'dcrNextToken' @::@ 'Maybe' 'Text'----describeCommunicationsResponse :: DescribeCommunicationsResponse-describeCommunicationsResponse = DescribeCommunicationsResponse-    { _dcrCommunications = mempty-    , _dcrNextToken      = Nothing-    }+instance AWSRequest DescribeCommunications where+        type Sv DescribeCommunications = Support+        type Rs DescribeCommunications =+             DescribeCommunicationsResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeCommunicationsResponse' <$>+                   (x .?> "nextToken") <*>+                     (x .?> "communications" .!@ mempty)+                     <*> (pure (fromEnum s))) --- | The communications for the case.-dcrCommunications :: Lens' DescribeCommunicationsResponse [Communication]-dcrCommunications =-    lens _dcrCommunications (\s a -> s { _dcrCommunications = a })-        . _List+instance ToHeaders DescribeCommunications where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeCommunications" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | A resumption point for pagination.-dcrNextToken :: Lens' DescribeCommunicationsResponse (Maybe Text)-dcrNextToken = lens _dcrNextToken (\s a -> s { _dcrNextToken = a })+instance ToJSON DescribeCommunications where+        toJSON DescribeCommunications'{..}+          = object+              ["afterTime" .= _dAfterTime,+               "nextToken" .= _dNextToken,+               "beforeTime" .= _dBeforeTime,+               "maxResults" .= _dMaxResults, "caseId" .= _dCaseId]  instance ToPath DescribeCommunications where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeCommunications where-    toQuery = const mempty--instance ToHeaders DescribeCommunications+        toQuery = const mempty -instance ToJSON DescribeCommunications where-    toJSON DescribeCommunications{..} = object-        [ "caseId"     .= _dc1CaseId-        , "beforeTime" .= _dc1BeforeTime-        , "afterTime"  .= _dc1AfterTime-        , "nextToken"  .= _dc1NextToken-        , "maxResults" .= _dc1MaxResults-        ]+-- | The communications returned by the DescribeCommunications operation.+--+-- /See:/ 'describeCommunicationsResponse' smart constructor.+data DescribeCommunicationsResponse = DescribeCommunicationsResponse'+    { _dcrsNextToken      :: !(Maybe Text)+    , _dcrsCommunications :: !(Maybe [Communication])+    , _dcrsStatus         :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCommunications where-    type Sv DescribeCommunications = Support-    type Rs DescribeCommunications = DescribeCommunicationsResponse+-- | Creates a value of 'DescribeCommunicationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcrsNextToken'+--+-- * 'dcrsCommunications'+--+-- * 'dcrsStatus'+describeCommunicationsResponse+    :: Int -- ^ 'dcrsStatus'+    -> DescribeCommunicationsResponse+describeCommunicationsResponse pStatus_ =+    DescribeCommunicationsResponse'+    { _dcrsNextToken = Nothing+    , _dcrsCommunications = Nothing+    , _dcrsStatus = pStatus_+    } -    request  = post "DescribeCommunications"-    response = jsonResponse+-- | A resumption point for pagination.+dcrsNextToken :: Lens' DescribeCommunicationsResponse (Maybe Text)+dcrsNextToken = lens _dcrsNextToken (\ s a -> s{_dcrsNextToken = a}); -instance FromJSON DescribeCommunicationsResponse where-    parseJSON = withObject "DescribeCommunicationsResponse" $ \o -> DescribeCommunicationsResponse-        <$> o .:? "communications" .!= mempty-        <*> o .:? "nextToken"+-- | The communications for the case.+dcrsCommunications :: Lens' DescribeCommunicationsResponse [Communication]+dcrsCommunications = lens _dcrsCommunications (\ s a -> s{_dcrsCommunications = a}) . _Default . _Coerce; -instance AWSPager DescribeCommunications where-    page rq rs-        | stop (rs ^. dcrNextToken) = Nothing-        | otherwise = (\x -> rq & dc1NextToken ?~ x)-            <$> (rs ^. dcrNextToken)+-- | The response status code.+dcrsStatus :: Lens' DescribeCommunicationsResponse Int+dcrsStatus = lens _dcrsStatus (\ s a -> s{_dcrsStatus = a});
gen/Network/AWS/Support/DescribeServices.hs view
@@ -1,139 +1,155 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeServices--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the current list of AWS services and a list of service categories--- that applies to each one. You then use service names and categories in your 'CreateCase' requests. Each AWS service has its own set of categories.+-- Returns the current list of AWS services and a list of service+-- categories that applies to each one. You then use service names and+-- categories in your CreateCase requests. Each AWS service has its own set+-- of categories. -- -- The service codes and category codes correspond to the values that are--- displayed in the Service and Category drop-down lists on the AWS Support--- Center <https://console.aws.amazon.com/support/home#/case/create Create Case> page. The values in those fields, however, do not--- necessarily match the service codes and categories returned by the 'DescribeServices' request. Always use the service codes and categories obtained--- programmatically. This practice ensures that you always have the most recent--- set of service and category codes.+-- displayed in the __Service__ and __Category__ drop-down lists on the AWS+-- Support Center+-- <https://console.aws.amazon.com/support/home#/case/create Create Case>+-- page. The values in those fields, however, do not necessarily match the+-- service codes and categories returned by the 'DescribeServices' request.+-- Always use the service codes and categories obtained programmatically.+-- This practice ensures that you always have the most recent set of+-- service and category codes. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeServices.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeServices.html AWS API Reference> for DescribeServices. module Network.AWS.Support.DescribeServices     (-    -- * Request-      DescribeServices-    -- ** Request constructor-    , describeServices-    -- ** Request lenses-    , dsLanguage+    -- * Creating a Request+      describeServices+    , DescribeServices+    -- * Request Lenses     , dsServiceCodeList+    , dsLanguage -    -- * Response-    , DescribeServicesResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeServicesResponse-    -- ** Response lenses-    , dsrServices+    , DescribeServicesResponse+    -- * Response Lenses+    , dsrsServices+    , dsrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data DescribeServices = DescribeServices-    { _dsLanguage        :: Maybe Text-    , _dsServiceCodeList :: List "serviceCodeList" Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeServices' smart constructor.+data DescribeServices = DescribeServices'+    { _dsServiceCodeList :: !(Maybe [Text])+    , _dsLanguage        :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeServices' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeServices' with the minimum fields required to make a request. ----- * 'dsLanguage' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsServiceCodeList' @::@ ['Text']+-- * 'dsServiceCodeList' ---describeServices :: DescribeServices-describeServices = DescribeServices-    { _dsServiceCodeList = mempty-    , _dsLanguage        = Nothing+-- * 'dsLanguage'+describeServices+    :: DescribeServices+describeServices =+    DescribeServices'+    { _dsServiceCodeList = Nothing+    , _dsLanguage = Nothing     } --- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.-dsLanguage :: Lens' DescribeServices (Maybe Text)-dsLanguage = lens _dsLanguage (\s a -> s { _dsLanguage = a })- -- | A JSON-formatted list of service codes available for AWS services. dsServiceCodeList :: Lens' DescribeServices [Text]-dsServiceCodeList =-    lens _dsServiceCodeList (\s a -> s { _dsServiceCodeList = a })-        . _List--newtype DescribeServicesResponse = DescribeServicesResponse-    { _dsrServices :: List "services" SupportService-    } deriving (Eq, Read, Show, Monoid, Semigroup)+dsServiceCodeList = lens _dsServiceCodeList (\ s a -> s{_dsServiceCodeList = a}) . _Default . _Coerce; -instance GHC.Exts.IsList DescribeServicesResponse where-    type Item DescribeServicesResponse = SupportService+-- | The ISO 639-1 code for the language in which AWS provides support. AWS+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them.+dsLanguage :: Lens' DescribeServices (Maybe Text)+dsLanguage = lens _dsLanguage (\ s a -> s{_dsLanguage = a}); -    fromList = DescribeServicesResponse . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dsrServices+instance AWSRequest DescribeServices where+        type Sv DescribeServices = Support+        type Rs DescribeServices = DescribeServicesResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeServicesResponse' <$>+                   (x .?> "services" .!@ mempty) <*>+                     (pure (fromEnum s))) --- | 'DescribeServicesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dsrServices' @::@ ['SupportService']----describeServicesResponse :: DescribeServicesResponse-describeServicesResponse = DescribeServicesResponse-    { _dsrServices = mempty-    }+instance ToHeaders DescribeServices where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeServices" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | A JSON-formatted list of AWS services.-dsrServices :: Lens' DescribeServicesResponse [SupportService]-dsrServices = lens _dsrServices (\s a -> s { _dsrServices = a }) . _List+instance ToJSON DescribeServices where+        toJSON DescribeServices'{..}+          = object+              ["serviceCodeList" .= _dsServiceCodeList,+               "language" .= _dsLanguage]  instance ToPath DescribeServices where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeServices where-    toQuery = const mempty--instance ToHeaders DescribeServices+        toQuery = const mempty -instance ToJSON DescribeServices where-    toJSON DescribeServices{..} = object-        [ "serviceCodeList" .= _dsServiceCodeList-        , "language"        .= _dsLanguage-        ]+-- | The list of AWS services returned by the DescribeServices operation.+--+-- /See:/ 'describeServicesResponse' smart constructor.+data DescribeServicesResponse = DescribeServicesResponse'+    { _dsrsServices :: !(Maybe [SupportService])+    , _dsrsStatus   :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeServices where-    type Sv DescribeServices = Support-    type Rs DescribeServices = DescribeServicesResponse+-- | Creates a value of 'DescribeServicesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsrsServices'+--+-- * 'dsrsStatus'+describeServicesResponse+    :: Int -- ^ 'dsrsStatus'+    -> DescribeServicesResponse+describeServicesResponse pStatus_ =+    DescribeServicesResponse'+    { _dsrsServices = Nothing+    , _dsrsStatus = pStatus_+    } -    request  = post "DescribeServices"-    response = jsonResponse+-- | A JSON-formatted list of AWS services.+dsrsServices :: Lens' DescribeServicesResponse [SupportService]+dsrsServices = lens _dsrsServices (\ s a -> s{_dsrsServices = a}) . _Default . _Coerce; -instance FromJSON DescribeServicesResponse where-    parseJSON = withObject "DescribeServicesResponse" $ \o -> DescribeServicesResponse-        <$> o .:? "services" .!= mempty+-- | The response status code.+dsrsStatus :: Lens' DescribeServicesResponse Int+dsrsStatus = lens _dsrsStatus (\ s a -> s{_dsrsStatus = a});
gen/Network/AWS/Support/DescribeSeverityLevels.hs view
@@ -1,124 +1,136 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeSeverityLevels--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the list of severity levels that you can assign to an AWS Support--- case. The severity level for a case is also a field in the 'CaseDetails' data--- type included in any 'CreateCase' request.+-- Returns the list of severity levels that you can assign to an AWS+-- Support case. The severity level for a case is also a field in the+-- CaseDetails data type included in any CreateCase request. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeSeverityLevels.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeSeverityLevels.html AWS API Reference> for DescribeSeverityLevels. module Network.AWS.Support.DescribeSeverityLevels     (-    -- * Request-      DescribeSeverityLevels-    -- ** Request constructor-    , describeSeverityLevels-    -- ** Request lenses+    -- * Creating a Request+      describeSeverityLevels+    , DescribeSeverityLevels+    -- * Request Lenses     , dslLanguage -    -- * Response-    , DescribeSeverityLevelsResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeSeverityLevelsResponse-    -- ** Response lenses-    , dslrSeverityLevels+    , DescribeSeverityLevelsResponse+    -- * Response Lenses+    , dslrsSeverityLevels+    , dslrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -newtype DescribeSeverityLevels = DescribeSeverityLevels+-- | /See:/ 'describeSeverityLevels' smart constructor.+newtype DescribeSeverityLevels = DescribeSeverityLevels'     { _dslLanguage :: Maybe Text-    } deriving (Eq, Ord, Read, Show, Monoid)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeSeverityLevels' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeSeverityLevels' with the minimum fields required to make a request. ----- * 'dslLanguage' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ---describeSeverityLevels :: DescribeSeverityLevels-describeSeverityLevels = DescribeSeverityLevels+-- * 'dslLanguage'+describeSeverityLevels+    :: DescribeSeverityLevels+describeSeverityLevels =+    DescribeSeverityLevels'     { _dslLanguage = Nothing     }  -- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them. dslLanguage :: Lens' DescribeSeverityLevels (Maybe Text)-dslLanguage = lens _dslLanguage (\s a -> s { _dslLanguage = a })--newtype DescribeSeverityLevelsResponse = DescribeSeverityLevelsResponse-    { _dslrSeverityLevels :: List "severityLevels" SeverityLevel-    } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DescribeSeverityLevelsResponse where-    type Item DescribeSeverityLevelsResponse = SeverityLevel+dslLanguage = lens _dslLanguage (\ s a -> s{_dslLanguage = a}); -    fromList = DescribeSeverityLevelsResponse . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dslrSeverityLevels+instance AWSRequest DescribeSeverityLevels where+        type Sv DescribeSeverityLevels = Support+        type Rs DescribeSeverityLevels =+             DescribeSeverityLevelsResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeSeverityLevelsResponse' <$>+                   (x .?> "severityLevels" .!@ mempty) <*>+                     (pure (fromEnum s))) --- | 'DescribeSeverityLevelsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dslrSeverityLevels' @::@ ['SeverityLevel']----describeSeverityLevelsResponse :: DescribeSeverityLevelsResponse-describeSeverityLevelsResponse = DescribeSeverityLevelsResponse-    { _dslrSeverityLevels = mempty-    }+instance ToHeaders DescribeSeverityLevels where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeSeverityLevels" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The available severity levels for the support case. Available severity levels--- are defined by your service level agreement with AWS.-dslrSeverityLevels :: Lens' DescribeSeverityLevelsResponse [SeverityLevel]-dslrSeverityLevels =-    lens _dslrSeverityLevels (\s a -> s { _dslrSeverityLevels = a })-        . _List+instance ToJSON DescribeSeverityLevels where+        toJSON DescribeSeverityLevels'{..}+          = object ["language" .= _dslLanguage]  instance ToPath DescribeSeverityLevels where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeSeverityLevels where-    toQuery = const mempty--instance ToHeaders DescribeSeverityLevels+        toQuery = const mempty -instance ToJSON DescribeSeverityLevels where-    toJSON DescribeSeverityLevels{..} = object-        [ "language" .= _dslLanguage-        ]+-- | The list of severity levels returned by the DescribeSeverityLevels+-- operation.+--+-- /See:/ 'describeSeverityLevelsResponse' smart constructor.+data DescribeSeverityLevelsResponse = DescribeSeverityLevelsResponse'+    { _dslrsSeverityLevels :: !(Maybe [SeverityLevel])+    , _dslrsStatus         :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeSeverityLevels where-    type Sv DescribeSeverityLevels = Support-    type Rs DescribeSeverityLevels = DescribeSeverityLevelsResponse+-- | Creates a value of 'DescribeSeverityLevelsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dslrsSeverityLevels'+--+-- * 'dslrsStatus'+describeSeverityLevelsResponse+    :: Int -- ^ 'dslrsStatus'+    -> DescribeSeverityLevelsResponse+describeSeverityLevelsResponse pStatus_ =+    DescribeSeverityLevelsResponse'+    { _dslrsSeverityLevels = Nothing+    , _dslrsStatus = pStatus_+    } -    request  = post "DescribeSeverityLevels"-    response = jsonResponse+-- | The available severity levels for the support case. Available severity+-- levels are defined by your service level agreement with AWS.+dslrsSeverityLevels :: Lens' DescribeSeverityLevelsResponse [SeverityLevel]+dslrsSeverityLevels = lens _dslrsSeverityLevels (\ s a -> s{_dslrsSeverityLevels = a}) . _Default . _Coerce; -instance FromJSON DescribeSeverityLevelsResponse where-    parseJSON = withObject "DescribeSeverityLevelsResponse" $ \o -> DescribeSeverityLevelsResponse-        <$> o .:? "severityLevels" .!= mempty+-- | The response status code.+dslrsStatus :: Lens' DescribeSeverityLevelsResponse Int+dslrsStatus = lens _dslrsStatus (\ s a -> s{_dslrsStatus = a});
gen/Network/AWS/Support/DescribeTrustedAdvisorCheckRefreshStatuses.hs view
@@ -1,124 +1,140 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the refresh status of the Trusted Advisor checks that have the--- specified check IDs. Check IDs can be obtained by calling 'DescribeTrustedAdvisorChecks'.+-- Returns the refresh status of the Trusted Advisor checks that have the+-- specified check IDs. Check IDs can be obtained by calling+-- DescribeTrustedAdvisorChecks. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckRefreshStatuses.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckRefreshStatuses.html AWS API Reference> for DescribeTrustedAdvisorCheckRefreshStatuses. module Network.AWS.Support.DescribeTrustedAdvisorCheckRefreshStatuses     (-    -- * Request-      DescribeTrustedAdvisorCheckRefreshStatuses-    -- ** Request constructor-    , describeTrustedAdvisorCheckRefreshStatuses-    -- ** Request lenses+    -- * Creating a Request+      describeTrustedAdvisorCheckRefreshStatuses+    , DescribeTrustedAdvisorCheckRefreshStatuses+    -- * Request Lenses     , dtacrsCheckIds -    -- * Response-    , DescribeTrustedAdvisorCheckRefreshStatusesResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeTrustedAdvisorCheckRefreshStatusesResponse-    -- ** Response lenses-    , dtacrsrStatuses+    , DescribeTrustedAdvisorCheckRefreshStatusesResponse+    -- * Response Lenses+    , dtacrsrsStatus+    , dtacrsrsStatuses     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts--newtype DescribeTrustedAdvisorCheckRefreshStatuses = DescribeTrustedAdvisorCheckRefreshStatuses-    { _dtacrsCheckIds :: List "checkIds" Text-    } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DescribeTrustedAdvisorCheckRefreshStatuses where-    type Item DescribeTrustedAdvisorCheckRefreshStatuses = Text+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -    fromList = DescribeTrustedAdvisorCheckRefreshStatuses . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dtacrsCheckIds+-- | /See:/ 'describeTrustedAdvisorCheckRefreshStatuses' smart constructor.+newtype DescribeTrustedAdvisorCheckRefreshStatuses = DescribeTrustedAdvisorCheckRefreshStatuses'+    { _dtacrsCheckIds :: [Text]+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTrustedAdvisorCheckRefreshStatuses' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeTrustedAdvisorCheckRefreshStatuses' with the minimum fields required to make a request. ----- * 'dtacrsCheckIds' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---describeTrustedAdvisorCheckRefreshStatuses :: DescribeTrustedAdvisorCheckRefreshStatuses-describeTrustedAdvisorCheckRefreshStatuses = DescribeTrustedAdvisorCheckRefreshStatuses+-- * 'dtacrsCheckIds'+describeTrustedAdvisorCheckRefreshStatuses+    :: DescribeTrustedAdvisorCheckRefreshStatuses+describeTrustedAdvisorCheckRefreshStatuses =+    DescribeTrustedAdvisorCheckRefreshStatuses'     { _dtacrsCheckIds = mempty     }  -- | The IDs of the Trusted Advisor checks. dtacrsCheckIds :: Lens' DescribeTrustedAdvisorCheckRefreshStatuses [Text]-dtacrsCheckIds = lens _dtacrsCheckIds (\s a -> s { _dtacrsCheckIds = a }) . _List+dtacrsCheckIds = lens _dtacrsCheckIds (\ s a -> s{_dtacrsCheckIds = a}) . _Coerce; -newtype DescribeTrustedAdvisorCheckRefreshStatusesResponse = DescribeTrustedAdvisorCheckRefreshStatusesResponse-    { _dtacrsrStatuses :: List "statuses" TrustedAdvisorCheckRefreshStatus-    } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest+         DescribeTrustedAdvisorCheckRefreshStatuses where+        type Sv DescribeTrustedAdvisorCheckRefreshStatuses =+             Support+        type Rs DescribeTrustedAdvisorCheckRefreshStatuses =+             DescribeTrustedAdvisorCheckRefreshStatusesResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeTrustedAdvisorCheckRefreshStatusesResponse'+                   <$>+                   (pure (fromEnum s)) <*>+                     (x .?> "statuses" .!@ mempty)) -instance GHC.Exts.IsList DescribeTrustedAdvisorCheckRefreshStatusesResponse where-    type Item DescribeTrustedAdvisorCheckRefreshStatusesResponse = TrustedAdvisorCheckRefreshStatus+instance ToHeaders+         DescribeTrustedAdvisorCheckRefreshStatuses where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeTrustedAdvisorCheckRefreshStatuses"+                       :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) -    fromList = DescribeTrustedAdvisorCheckRefreshStatusesResponse . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dtacrsrStatuses+instance ToJSON+         DescribeTrustedAdvisorCheckRefreshStatuses where+        toJSON+          DescribeTrustedAdvisorCheckRefreshStatuses'{..}+          = object ["checkIds" .= _dtacrsCheckIds] --- | 'DescribeTrustedAdvisorCheckRefreshStatusesResponse' constructor.+instance ToPath+         DescribeTrustedAdvisorCheckRefreshStatuses where+        toPath = const "/"++instance ToQuery+         DescribeTrustedAdvisorCheckRefreshStatuses where+        toQuery = const mempty++-- | The statuses of the Trusted Advisor checks returned by the+-- DescribeTrustedAdvisorCheckRefreshStatuses operation. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeTrustedAdvisorCheckRefreshStatusesResponse' smart constructor.+data DescribeTrustedAdvisorCheckRefreshStatusesResponse = DescribeTrustedAdvisorCheckRefreshStatusesResponse'+    { _dtacrsrsStatus   :: !Int+    , _dtacrsrsStatuses :: ![TrustedAdvisorCheckRefreshStatus]+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeTrustedAdvisorCheckRefreshStatusesResponse' with the minimum fields required to make a request. ----- * 'dtacrsrStatuses' @::@ ['TrustedAdvisorCheckRefreshStatus']+-- Use one of the following lenses to modify other fields as desired: ---describeTrustedAdvisorCheckRefreshStatusesResponse :: DescribeTrustedAdvisorCheckRefreshStatusesResponse-describeTrustedAdvisorCheckRefreshStatusesResponse = DescribeTrustedAdvisorCheckRefreshStatusesResponse-    { _dtacrsrStatuses = mempty+-- * 'dtacrsrsStatus'+--+-- * 'dtacrsrsStatuses'+describeTrustedAdvisorCheckRefreshStatusesResponse+    :: Int -- ^ 'dtacrsrsStatus'+    -> DescribeTrustedAdvisorCheckRefreshStatusesResponse+describeTrustedAdvisorCheckRefreshStatusesResponse pStatus_ =+    DescribeTrustedAdvisorCheckRefreshStatusesResponse'+    { _dtacrsrsStatus = pStatus_+    , _dtacrsrsStatuses = mempty     } --- | The refresh status of the specified Trusted Advisor checks.-dtacrsrStatuses :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse [TrustedAdvisorCheckRefreshStatus]-dtacrsrStatuses = lens _dtacrsrStatuses (\s a -> s { _dtacrsrStatuses = a }) . _List--instance ToPath DescribeTrustedAdvisorCheckRefreshStatuses where-    toPath = const "/"--instance ToQuery DescribeTrustedAdvisorCheckRefreshStatuses where-    toQuery = const mempty--instance ToHeaders DescribeTrustedAdvisorCheckRefreshStatuses--instance ToJSON DescribeTrustedAdvisorCheckRefreshStatuses where-    toJSON DescribeTrustedAdvisorCheckRefreshStatuses{..} = object-        [ "checkIds" .= _dtacrsCheckIds-        ]--instance AWSRequest DescribeTrustedAdvisorCheckRefreshStatuses where-    type Sv DescribeTrustedAdvisorCheckRefreshStatuses = Support-    type Rs DescribeTrustedAdvisorCheckRefreshStatuses = DescribeTrustedAdvisorCheckRefreshStatusesResponse--    request  = post "DescribeTrustedAdvisorCheckRefreshStatuses"-    response = jsonResponse+-- | The response status code.+dtacrsrsStatus :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse Int+dtacrsrsStatus = lens _dtacrsrsStatus (\ s a -> s{_dtacrsrsStatus = a}); -instance FromJSON DescribeTrustedAdvisorCheckRefreshStatusesResponse where-    parseJSON = withObject "DescribeTrustedAdvisorCheckRefreshStatusesResponse" $ \o -> DescribeTrustedAdvisorCheckRefreshStatusesResponse-        <$> o .:? "statuses" .!= mempty+-- | The refresh status of the specified Trusted Advisor checks.+dtacrsrsStatuses :: Lens' DescribeTrustedAdvisorCheckRefreshStatusesResponse [TrustedAdvisorCheckRefreshStatus]+dtacrsrsStatuses = lens _dtacrsrsStatuses (\ s a -> s{_dtacrsrsStatuses = a}) . _Coerce;
gen/Network/AWS/Support/DescribeTrustedAdvisorCheckResult.hs view
@@ -1,134 +1,165 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeTrustedAdvisorCheckResult--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the results of the Trusted Advisor check that has the specified check--- ID. Check IDs can be obtained by calling 'DescribeTrustedAdvisorChecks'.+-- Returns the results of the Trusted Advisor check that has the specified+-- check ID. Check IDs can be obtained by calling+-- DescribeTrustedAdvisorChecks. ----- The response contains a 'TrustedAdvisorCheckResult' object, which contains+-- The response contains a TrustedAdvisorCheckResult object, which contains -- these three objects: ----- 'TrustedAdvisorCategorySpecificSummary' 'TrustedAdvisorResourceDetail' 'TrustedAdvisorResourcesSummary'  In addition, the response contains these fields:+-- -   TrustedAdvisorCategorySpecificSummary+-- -   TrustedAdvisorResourceDetail+-- -   TrustedAdvisorResourcesSummary ----- Status. The alert status of the check: "ok" (green), "warning" (yellow),--- "error" (red), or "not_available".  Timestamp. The time of the last refresh--- of the check.  CheckId. The unique identifier for the check.+-- In addition, the response contains these fields: ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckResult.html>+-- -   __Status.__ The alert status of the check: \"ok\" (green),+--     \"warning\" (yellow), \"error\" (red), or \"not_available\".+-- -   __Timestamp.__ The time of the last refresh of the check.+-- -   __CheckId.__ The unique identifier for the check.+--+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckResult.html AWS API Reference> for DescribeTrustedAdvisorCheckResult. module Network.AWS.Support.DescribeTrustedAdvisorCheckResult     (-    -- * Request-      DescribeTrustedAdvisorCheckResult-    -- ** Request constructor-    , describeTrustedAdvisorCheckResult-    -- ** Request lenses-    , dtacrCheckId+    -- * Creating a Request+      describeTrustedAdvisorCheckResult+    , DescribeTrustedAdvisorCheckResult+    -- * Request Lenses     , dtacrLanguage+    , dtacrCheckId -    -- * Response-    , DescribeTrustedAdvisorCheckResultResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeTrustedAdvisorCheckResultResponse-    -- ** Response lenses-    , dtacrrResult+    , DescribeTrustedAdvisorCheckResultResponse+    -- * Response Lenses+    , dtacrrsResult+    , dtacrrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -data DescribeTrustedAdvisorCheckResult = DescribeTrustedAdvisorCheckResult-    { _dtacrCheckId  :: Text-    , _dtacrLanguage :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeTrustedAdvisorCheckResult' smart constructor.+data DescribeTrustedAdvisorCheckResult = DescribeTrustedAdvisorCheckResult'+    { _dtacrLanguage :: !(Maybe Text)+    , _dtacrCheckId  :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTrustedAdvisorCheckResult' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeTrustedAdvisorCheckResult' with the minimum fields required to make a request. ----- * 'dtacrCheckId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dtacrLanguage' @::@ 'Maybe' 'Text'+-- * 'dtacrLanguage' ---describeTrustedAdvisorCheckResult :: Text -- ^ 'dtacrCheckId'-                                  -> DescribeTrustedAdvisorCheckResult-describeTrustedAdvisorCheckResult p1 = DescribeTrustedAdvisorCheckResult-    { _dtacrCheckId  = p1-    , _dtacrLanguage = Nothing+-- * 'dtacrCheckId'+describeTrustedAdvisorCheckResult+    :: Text -- ^ 'dtacrCheckId'+    -> DescribeTrustedAdvisorCheckResult+describeTrustedAdvisorCheckResult pCheckId_ =+    DescribeTrustedAdvisorCheckResult'+    { _dtacrLanguage = Nothing+    , _dtacrCheckId = pCheckId_     } --- | The unique identifier for the Trusted Advisor check.-dtacrCheckId :: Lens' DescribeTrustedAdvisorCheckResult Text-dtacrCheckId = lens _dtacrCheckId (\s a -> s { _dtacrCheckId = a })- -- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them. dtacrLanguage :: Lens' DescribeTrustedAdvisorCheckResult (Maybe Text)-dtacrLanguage = lens _dtacrLanguage (\s a -> s { _dtacrLanguage = a })+dtacrLanguage = lens _dtacrLanguage (\ s a -> s{_dtacrLanguage = a}); -newtype DescribeTrustedAdvisorCheckResultResponse = DescribeTrustedAdvisorCheckResultResponse-    { _dtacrrResult :: Maybe TrustedAdvisorCheckResult-    } deriving (Eq, Read, Show)+-- | The unique identifier for the Trusted Advisor check.+dtacrCheckId :: Lens' DescribeTrustedAdvisorCheckResult Text+dtacrCheckId = lens _dtacrCheckId (\ s a -> s{_dtacrCheckId = a}); --- | 'DescribeTrustedAdvisorCheckResultResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dtacrrResult' @::@ 'Maybe' 'TrustedAdvisorCheckResult'----describeTrustedAdvisorCheckResultResponse :: DescribeTrustedAdvisorCheckResultResponse-describeTrustedAdvisorCheckResultResponse = DescribeTrustedAdvisorCheckResultResponse-    { _dtacrrResult = Nothing-    }+instance AWSRequest DescribeTrustedAdvisorCheckResult+         where+        type Sv DescribeTrustedAdvisorCheckResult = Support+        type Rs DescribeTrustedAdvisorCheckResult =+             DescribeTrustedAdvisorCheckResultResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeTrustedAdvisorCheckResultResponse' <$>+                   (x .?> "result") <*> (pure (fromEnum s))) --- | The detailed results of the Trusted Advisor check.-dtacrrResult :: Lens' DescribeTrustedAdvisorCheckResultResponse (Maybe TrustedAdvisorCheckResult)-dtacrrResult = lens _dtacrrResult (\s a -> s { _dtacrrResult = a })+instance ToHeaders DescribeTrustedAdvisorCheckResult+         where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeTrustedAdvisorCheckResult"+                       :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) -instance ToPath DescribeTrustedAdvisorCheckResult where-    toPath = const "/"+instance ToJSON DescribeTrustedAdvisorCheckResult+         where+        toJSON DescribeTrustedAdvisorCheckResult'{..}+          = object+              ["language" .= _dtacrLanguage,+               "checkId" .= _dtacrCheckId] -instance ToQuery DescribeTrustedAdvisorCheckResult where-    toQuery = const mempty+instance ToPath DescribeTrustedAdvisorCheckResult+         where+        toPath = const "/" -instance ToHeaders DescribeTrustedAdvisorCheckResult+instance ToQuery DescribeTrustedAdvisorCheckResult+         where+        toQuery = const mempty -instance ToJSON DescribeTrustedAdvisorCheckResult where-    toJSON DescribeTrustedAdvisorCheckResult{..} = object-        [ "checkId"  .= _dtacrCheckId-        , "language" .= _dtacrLanguage-        ]+-- | The result of the Trusted Advisor check returned by the+-- DescribeTrustedAdvisorCheckResult operation.+--+-- /See:/ 'describeTrustedAdvisorCheckResultResponse' smart constructor.+data DescribeTrustedAdvisorCheckResultResponse = DescribeTrustedAdvisorCheckResultResponse'+    { _dtacrrsResult :: !(Maybe TrustedAdvisorCheckResult)+    , _dtacrrsStatus :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeTrustedAdvisorCheckResult where-    type Sv DescribeTrustedAdvisorCheckResult = Support-    type Rs DescribeTrustedAdvisorCheckResult = DescribeTrustedAdvisorCheckResultResponse+-- | Creates a value of 'DescribeTrustedAdvisorCheckResultResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtacrrsResult'+--+-- * 'dtacrrsStatus'+describeTrustedAdvisorCheckResultResponse+    :: Int -- ^ 'dtacrrsStatus'+    -> DescribeTrustedAdvisorCheckResultResponse+describeTrustedAdvisorCheckResultResponse pStatus_ =+    DescribeTrustedAdvisorCheckResultResponse'+    { _dtacrrsResult = Nothing+    , _dtacrrsStatus = pStatus_+    } -    request  = post "DescribeTrustedAdvisorCheckResult"-    response = jsonResponse+-- | The detailed results of the Trusted Advisor check.+dtacrrsResult :: Lens' DescribeTrustedAdvisorCheckResultResponse (Maybe TrustedAdvisorCheckResult)+dtacrrsResult = lens _dtacrrsResult (\ s a -> s{_dtacrrsResult = a}); -instance FromJSON DescribeTrustedAdvisorCheckResultResponse where-    parseJSON = withObject "DescribeTrustedAdvisorCheckResultResponse" $ \o -> DescribeTrustedAdvisorCheckResultResponse-        <$> o .:? "result"+-- | The response status code.+dtacrrsStatus :: Lens' DescribeTrustedAdvisorCheckResultResponse Int+dtacrrsStatus = lens _dtacrrsStatus (\ s a -> s{_dtacrrsStatus = a});
gen/Network/AWS/Support/DescribeTrustedAdvisorCheckSummaries.hs view
@@ -1,126 +1,140 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the summaries of the results of the Trusted Advisor checks that have--- the specified check IDs. Check IDs can be obtained by calling 'DescribeTrustedAdvisorChecks'.+-- Returns the summaries of the results of the Trusted Advisor checks that+-- have the specified check IDs. Check IDs can be obtained by calling+-- DescribeTrustedAdvisorChecks. ----- The response contains an array of 'TrustedAdvisorCheckSummary' objects.+-- The response contains an array of TrustedAdvisorCheckSummary objects. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckSummaries.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorCheckSummaries.html AWS API Reference> for DescribeTrustedAdvisorCheckSummaries. module Network.AWS.Support.DescribeTrustedAdvisorCheckSummaries     (-    -- * Request-      DescribeTrustedAdvisorCheckSummaries-    -- ** Request constructor-    , describeTrustedAdvisorCheckSummaries-    -- ** Request lenses+    -- * Creating a Request+      describeTrustedAdvisorCheckSummaries+    , DescribeTrustedAdvisorCheckSummaries+    -- * Request Lenses     , dtacsCheckIds -    -- * Response-    , DescribeTrustedAdvisorCheckSummariesResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeTrustedAdvisorCheckSummariesResponse-    -- ** Response lenses-    , dtacsrSummaries+    , DescribeTrustedAdvisorCheckSummariesResponse+    -- * Response Lenses+    , dtacsrsStatus+    , dtacsrsSummaries     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts--newtype DescribeTrustedAdvisorCheckSummaries = DescribeTrustedAdvisorCheckSummaries-    { _dtacsCheckIds :: List "checkIds" Text-    } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DescribeTrustedAdvisorCheckSummaries where-    type Item DescribeTrustedAdvisorCheckSummaries = Text+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -    fromList = DescribeTrustedAdvisorCheckSummaries . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dtacsCheckIds+-- | /See:/ 'describeTrustedAdvisorCheckSummaries' smart constructor.+newtype DescribeTrustedAdvisorCheckSummaries = DescribeTrustedAdvisorCheckSummaries'+    { _dtacsCheckIds :: [Text]+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTrustedAdvisorCheckSummaries' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeTrustedAdvisorCheckSummaries' with the minimum fields required to make a request. ----- * 'dtacsCheckIds' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---describeTrustedAdvisorCheckSummaries :: DescribeTrustedAdvisorCheckSummaries-describeTrustedAdvisorCheckSummaries = DescribeTrustedAdvisorCheckSummaries+-- * 'dtacsCheckIds'+describeTrustedAdvisorCheckSummaries+    :: DescribeTrustedAdvisorCheckSummaries+describeTrustedAdvisorCheckSummaries =+    DescribeTrustedAdvisorCheckSummaries'     { _dtacsCheckIds = mempty     }  -- | The IDs of the Trusted Advisor checks. dtacsCheckIds :: Lens' DescribeTrustedAdvisorCheckSummaries [Text]-dtacsCheckIds = lens _dtacsCheckIds (\s a -> s { _dtacsCheckIds = a }) . _List+dtacsCheckIds = lens _dtacsCheckIds (\ s a -> s{_dtacsCheckIds = a}) . _Coerce; -newtype DescribeTrustedAdvisorCheckSummariesResponse = DescribeTrustedAdvisorCheckSummariesResponse-    { _dtacsrSummaries :: List "summaries" TrustedAdvisorCheckSummary-    } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest+         DescribeTrustedAdvisorCheckSummaries where+        type Sv DescribeTrustedAdvisorCheckSummaries =+             Support+        type Rs DescribeTrustedAdvisorCheckSummaries =+             DescribeTrustedAdvisorCheckSummariesResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeTrustedAdvisorCheckSummariesResponse' <$>+                   (pure (fromEnum s)) <*>+                     (x .?> "summaries" .!@ mempty)) -instance GHC.Exts.IsList DescribeTrustedAdvisorCheckSummariesResponse where-    type Item DescribeTrustedAdvisorCheckSummariesResponse = TrustedAdvisorCheckSummary+instance ToHeaders+         DescribeTrustedAdvisorCheckSummaries where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeTrustedAdvisorCheckSummaries"+                       :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) -    fromList = DescribeTrustedAdvisorCheckSummariesResponse . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dtacsrSummaries+instance ToJSON DescribeTrustedAdvisorCheckSummaries+         where+        toJSON DescribeTrustedAdvisorCheckSummaries'{..}+          = object ["checkIds" .= _dtacsCheckIds] --- | 'DescribeTrustedAdvisorCheckSummariesResponse' constructor.+instance ToPath DescribeTrustedAdvisorCheckSummaries+         where+        toPath = const "/"++instance ToQuery DescribeTrustedAdvisorCheckSummaries+         where+        toQuery = const mempty++-- | The summaries of the Trusted Advisor checks returned by the+-- DescribeTrustedAdvisorCheckSummaries operation. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeTrustedAdvisorCheckSummariesResponse' smart constructor.+data DescribeTrustedAdvisorCheckSummariesResponse = DescribeTrustedAdvisorCheckSummariesResponse'+    { _dtacsrsStatus    :: !Int+    , _dtacsrsSummaries :: ![TrustedAdvisorCheckSummary]+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeTrustedAdvisorCheckSummariesResponse' with the minimum fields required to make a request. ----- * 'dtacsrSummaries' @::@ ['TrustedAdvisorCheckSummary']+-- Use one of the following lenses to modify other fields as desired: ---describeTrustedAdvisorCheckSummariesResponse :: DescribeTrustedAdvisorCheckSummariesResponse-describeTrustedAdvisorCheckSummariesResponse = DescribeTrustedAdvisorCheckSummariesResponse-    { _dtacsrSummaries = mempty+-- * 'dtacsrsStatus'+--+-- * 'dtacsrsSummaries'+describeTrustedAdvisorCheckSummariesResponse+    :: Int -- ^ 'dtacsrsStatus'+    -> DescribeTrustedAdvisorCheckSummariesResponse+describeTrustedAdvisorCheckSummariesResponse pStatus_ =+    DescribeTrustedAdvisorCheckSummariesResponse'+    { _dtacsrsStatus = pStatus_+    , _dtacsrsSummaries = mempty     } --- | The summary information for the requested Trusted Advisor checks.-dtacsrSummaries :: Lens' DescribeTrustedAdvisorCheckSummariesResponse [TrustedAdvisorCheckSummary]-dtacsrSummaries = lens _dtacsrSummaries (\s a -> s { _dtacsrSummaries = a }) . _List--instance ToPath DescribeTrustedAdvisorCheckSummaries where-    toPath = const "/"--instance ToQuery DescribeTrustedAdvisorCheckSummaries where-    toQuery = const mempty--instance ToHeaders DescribeTrustedAdvisorCheckSummaries--instance ToJSON DescribeTrustedAdvisorCheckSummaries where-    toJSON DescribeTrustedAdvisorCheckSummaries{..} = object-        [ "checkIds" .= _dtacsCheckIds-        ]--instance AWSRequest DescribeTrustedAdvisorCheckSummaries where-    type Sv DescribeTrustedAdvisorCheckSummaries = Support-    type Rs DescribeTrustedAdvisorCheckSummaries = DescribeTrustedAdvisorCheckSummariesResponse--    request  = post "DescribeTrustedAdvisorCheckSummaries"-    response = jsonResponse+-- | The response status code.+dtacsrsStatus :: Lens' DescribeTrustedAdvisorCheckSummariesResponse Int+dtacsrsStatus = lens _dtacsrsStatus (\ s a -> s{_dtacsrsStatus = a}); -instance FromJSON DescribeTrustedAdvisorCheckSummariesResponse where-    parseJSON = withObject "DescribeTrustedAdvisorCheckSummariesResponse" $ \o -> DescribeTrustedAdvisorCheckSummariesResponse-        <$> o .:? "summaries" .!= mempty+-- | The summary information for the requested Trusted Advisor checks.+dtacsrsSummaries :: Lens' DescribeTrustedAdvisorCheckSummariesResponse [TrustedAdvisorCheckSummary]+dtacsrsSummaries = lens _dtacsrsSummaries (\ s a -> s{_dtacsrsSummaries = a}) . _Coerce;
gen/Network/AWS/Support/DescribeTrustedAdvisorChecks.hs view
@@ -1,123 +1,138 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.DescribeTrustedAdvisorChecks--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns information about all available Trusted Advisor checks, including--- name, ID, category, description, and metadata. You must specify a language--- code; English ("en") and Japanese ("ja") are currently supported. The--- response contains a 'TrustedAdvisorCheckDescription' for each check.+-- Returns information about all available Trusted Advisor checks,+-- including name, ID, category, description, and metadata. You must+-- specify a language code; English (\"en\") and Japanese (\"ja\") are+-- currently supported. The response contains a+-- TrustedAdvisorCheckDescription for each check. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorChecks.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_DescribeTrustedAdvisorChecks.html AWS API Reference> for DescribeTrustedAdvisorChecks. module Network.AWS.Support.DescribeTrustedAdvisorChecks     (-    -- * Request-      DescribeTrustedAdvisorChecks-    -- ** Request constructor-    , describeTrustedAdvisorChecks-    -- ** Request lenses+    -- * Creating a Request+      describeTrustedAdvisorChecks+    , DescribeTrustedAdvisorChecks+    -- * Request Lenses     , dtacLanguage -    -- * Response-    , DescribeTrustedAdvisorChecksResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeTrustedAdvisorChecksResponse-    -- ** Response lenses-    , dtacrChecks+    , DescribeTrustedAdvisorChecksResponse+    -- * Response Lenses+    , dtacrsStatus+    , dtacrsChecks     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -newtype DescribeTrustedAdvisorChecks = DescribeTrustedAdvisorChecks+-- | /See:/ 'describeTrustedAdvisorChecks' smart constructor.+newtype DescribeTrustedAdvisorChecks = DescribeTrustedAdvisorChecks'     { _dtacLanguage :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTrustedAdvisorChecks' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeTrustedAdvisorChecks' with the minimum fields required to make a request. ----- * 'dtacLanguage' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---describeTrustedAdvisorChecks :: Text -- ^ 'dtacLanguage'-                             -> DescribeTrustedAdvisorChecks-describeTrustedAdvisorChecks p1 = DescribeTrustedAdvisorChecks-    { _dtacLanguage = p1+-- * 'dtacLanguage'+describeTrustedAdvisorChecks+    :: Text -- ^ 'dtacLanguage'+    -> DescribeTrustedAdvisorChecks+describeTrustedAdvisorChecks pLanguage_ =+    DescribeTrustedAdvisorChecks'+    { _dtacLanguage = pLanguage_     }  -- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them. dtacLanguage :: Lens' DescribeTrustedAdvisorChecks Text-dtacLanguage = lens _dtacLanguage (\s a -> s { _dtacLanguage = a })--newtype DescribeTrustedAdvisorChecksResponse = DescribeTrustedAdvisorChecksResponse-    { _dtacrChecks :: List "checks" TrustedAdvisorCheckDescription-    } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DescribeTrustedAdvisorChecksResponse where-    type Item DescribeTrustedAdvisorChecksResponse = TrustedAdvisorCheckDescription+dtacLanguage = lens _dtacLanguage (\ s a -> s{_dtacLanguage = a}); -    fromList = DescribeTrustedAdvisorChecksResponse . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _dtacrChecks+instance AWSRequest DescribeTrustedAdvisorChecks+         where+        type Sv DescribeTrustedAdvisorChecks = Support+        type Rs DescribeTrustedAdvisorChecks =+             DescribeTrustedAdvisorChecksResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeTrustedAdvisorChecksResponse' <$>+                   (pure (fromEnum s)) <*> (x .?> "checks" .!@ mempty)) --- | 'DescribeTrustedAdvisorChecksResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dtacrChecks' @::@ ['TrustedAdvisorCheckDescription']----describeTrustedAdvisorChecksResponse :: DescribeTrustedAdvisorChecksResponse-describeTrustedAdvisorChecksResponse = DescribeTrustedAdvisorChecksResponse-    { _dtacrChecks = mempty-    }+instance ToHeaders DescribeTrustedAdvisorChecks where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.DescribeTrustedAdvisorChecks"+                       :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | Information about all available Trusted Advisor checks.-dtacrChecks :: Lens' DescribeTrustedAdvisorChecksResponse [TrustedAdvisorCheckDescription]-dtacrChecks = lens _dtacrChecks (\s a -> s { _dtacrChecks = a }) . _List+instance ToJSON DescribeTrustedAdvisorChecks where+        toJSON DescribeTrustedAdvisorChecks'{..}+          = object ["language" .= _dtacLanguage]  instance ToPath DescribeTrustedAdvisorChecks where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeTrustedAdvisorChecks where-    toQuery = const mempty--instance ToHeaders DescribeTrustedAdvisorChecks+        toQuery = const mempty -instance ToJSON DescribeTrustedAdvisorChecks where-    toJSON DescribeTrustedAdvisorChecks{..} = object-        [ "language" .= _dtacLanguage-        ]+-- | Information about the Trusted Advisor checks returned by the+-- DescribeTrustedAdvisorChecks operation.+--+-- /See:/ 'describeTrustedAdvisorChecksResponse' smart constructor.+data DescribeTrustedAdvisorChecksResponse = DescribeTrustedAdvisorChecksResponse'+    { _dtacrsStatus :: !Int+    , _dtacrsChecks :: ![TrustedAdvisorCheckDescription]+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeTrustedAdvisorChecks where-    type Sv DescribeTrustedAdvisorChecks = Support-    type Rs DescribeTrustedAdvisorChecks = DescribeTrustedAdvisorChecksResponse+-- | Creates a value of 'DescribeTrustedAdvisorChecksResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtacrsStatus'+--+-- * 'dtacrsChecks'+describeTrustedAdvisorChecksResponse+    :: Int -- ^ 'dtacrsStatus'+    -> DescribeTrustedAdvisorChecksResponse+describeTrustedAdvisorChecksResponse pStatus_ =+    DescribeTrustedAdvisorChecksResponse'+    { _dtacrsStatus = pStatus_+    , _dtacrsChecks = mempty+    } -    request  = post "DescribeTrustedAdvisorChecks"-    response = jsonResponse+-- | The response status code.+dtacrsStatus :: Lens' DescribeTrustedAdvisorChecksResponse Int+dtacrsStatus = lens _dtacrsStatus (\ s a -> s{_dtacrsStatus = a}); -instance FromJSON DescribeTrustedAdvisorChecksResponse where-    parseJSON = withObject "DescribeTrustedAdvisorChecksResponse" $ \o -> DescribeTrustedAdvisorChecksResponse-        <$> o .:? "checks" .!= mempty+-- | Information about all available Trusted Advisor checks.+dtacrsChecks :: Lens' DescribeTrustedAdvisorChecksResponse [TrustedAdvisorCheckDescription]+dtacrsChecks = lens _dtacrsChecks (\ s a -> s{_dtacrsChecks = a}) . _Coerce;
gen/Network/AWS/Support/RefreshTrustedAdvisorCheck.hs view
@@ -1,123 +1,131 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.RefreshTrustedAdvisorCheck--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Requests a refresh of the Trusted Advisor check that has the specified check--- ID. Check IDs can be obtained by calling 'DescribeTrustedAdvisorChecks'.+-- Requests a refresh of the Trusted Advisor check that has the specified+-- check ID. Check IDs can be obtained by calling+-- DescribeTrustedAdvisorChecks. ----- The response contains a 'TrustedAdvisorCheckRefreshStatus' object, which+-- The response contains a TrustedAdvisorCheckRefreshStatus object, which -- contains these fields: ----- Status. The refresh status of the check: "none", "enqueued", "processing",--- "success", or "abandoned".  MillisUntilNextRefreshable. The amount of time,--- in milliseconds, until the check is eligible for refresh.  CheckId. The--- unique identifier for the check.+-- -   __Status.__ The refresh status of the check: \"none\", \"enqueued\",+--     \"processing\", \"success\", or \"abandoned\".+-- -   __MillisUntilNextRefreshable.__ The amount of time, in milliseconds,+--     until the check is eligible for refresh.+-- -   __CheckId.__ The unique identifier for the check. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_RefreshTrustedAdvisorCheck.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_RefreshTrustedAdvisorCheck.html AWS API Reference> for RefreshTrustedAdvisorCheck. module Network.AWS.Support.RefreshTrustedAdvisorCheck     (-    -- * Request-      RefreshTrustedAdvisorCheck-    -- ** Request constructor-    , refreshTrustedAdvisorCheck-    -- ** Request lenses+    -- * Creating a Request+      refreshTrustedAdvisorCheck+    , RefreshTrustedAdvisorCheck+    -- * Request Lenses     , rtacCheckId -    -- * Response-    , RefreshTrustedAdvisorCheckResponse-    -- ** Response constructor+    -- * Destructuring the Response     , refreshTrustedAdvisorCheckResponse-    -- ** Response lenses-    , rtacrStatus+    , RefreshTrustedAdvisorCheckResponse+    -- * Response Lenses+    , rtacrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -newtype RefreshTrustedAdvisorCheck = RefreshTrustedAdvisorCheck+-- | /See:/ 'refreshTrustedAdvisorCheck' smart constructor.+newtype RefreshTrustedAdvisorCheck = RefreshTrustedAdvisorCheck'     { _rtacCheckId :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'RefreshTrustedAdvisorCheck' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'RefreshTrustedAdvisorCheck' with the minimum fields required to make a request. ----- * 'rtacCheckId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---refreshTrustedAdvisorCheck :: Text -- ^ 'rtacCheckId'-                           -> RefreshTrustedAdvisorCheck-refreshTrustedAdvisorCheck p1 = RefreshTrustedAdvisorCheck-    { _rtacCheckId = p1+-- * 'rtacCheckId'+refreshTrustedAdvisorCheck+    :: Text -- ^ 'rtacCheckId'+    -> RefreshTrustedAdvisorCheck+refreshTrustedAdvisorCheck pCheckId_ =+    RefreshTrustedAdvisorCheck'+    { _rtacCheckId = pCheckId_     }  -- | The unique identifier for the Trusted Advisor check. rtacCheckId :: Lens' RefreshTrustedAdvisorCheck Text-rtacCheckId = lens _rtacCheckId (\s a -> s { _rtacCheckId = a })+rtacCheckId = lens _rtacCheckId (\ s a -> s{_rtacCheckId = a}); -newtype RefreshTrustedAdvisorCheckResponse = RefreshTrustedAdvisorCheckResponse-    { _rtacrStatus :: TrustedAdvisorCheckRefreshStatus-    } deriving (Eq, Read, Show)+instance AWSRequest RefreshTrustedAdvisorCheck where+        type Sv RefreshTrustedAdvisorCheck = Support+        type Rs RefreshTrustedAdvisorCheck =+             RefreshTrustedAdvisorCheckResponse+        request = postJSON+        response+          = receiveEmpty+              (\ s h x ->+                 RefreshTrustedAdvisorCheckResponse' <$>+                   (pure (fromEnum s))) --- | 'RefreshTrustedAdvisorCheckResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rtacrStatus' @::@ 'TrustedAdvisorCheckRefreshStatus'----refreshTrustedAdvisorCheckResponse :: TrustedAdvisorCheckRefreshStatus -- ^ 'rtacrStatus'-                                   -> RefreshTrustedAdvisorCheckResponse-refreshTrustedAdvisorCheckResponse p1 = RefreshTrustedAdvisorCheckResponse-    { _rtacrStatus = p1-    }+instance ToHeaders RefreshTrustedAdvisorCheck where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.RefreshTrustedAdvisorCheck" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The current refresh status for a check, including the amount of time until--- the check is eligible for refresh.-rtacrStatus :: Lens' RefreshTrustedAdvisorCheckResponse TrustedAdvisorCheckRefreshStatus-rtacrStatus = lens _rtacrStatus (\s a -> s { _rtacrStatus = a })+instance ToJSON RefreshTrustedAdvisorCheck where+        toJSON RefreshTrustedAdvisorCheck'{..}+          = object ["checkId" .= _rtacCheckId]  instance ToPath RefreshTrustedAdvisorCheck where-    toPath = const "/"+        toPath = const "/"  instance ToQuery RefreshTrustedAdvisorCheck where-    toQuery = const mempty--instance ToHeaders RefreshTrustedAdvisorCheck--instance ToJSON RefreshTrustedAdvisorCheck where-    toJSON RefreshTrustedAdvisorCheck{..} = object-        [ "checkId" .= _rtacCheckId-        ]+        toQuery = const mempty -instance AWSRequest RefreshTrustedAdvisorCheck where-    type Sv RefreshTrustedAdvisorCheck = Support-    type Rs RefreshTrustedAdvisorCheck = RefreshTrustedAdvisorCheckResponse+-- | The current refresh status of a Trusted Advisor check.+--+-- /See:/ 'refreshTrustedAdvisorCheckResponse' smart constructor.+newtype RefreshTrustedAdvisorCheckResponse = RefreshTrustedAdvisorCheckResponse'+    { _rtacrsStatus :: Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -    request  = post "RefreshTrustedAdvisorCheck"-    response = jsonResponse+-- | Creates a value of 'RefreshTrustedAdvisorCheckResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rtacrsStatus'+refreshTrustedAdvisorCheckResponse+    :: Int -- ^ 'rtacrsStatus'+    -> RefreshTrustedAdvisorCheckResponse+refreshTrustedAdvisorCheckResponse pStatus_ =+    RefreshTrustedAdvisorCheckResponse'+    { _rtacrsStatus = pStatus_+    } -instance FromJSON RefreshTrustedAdvisorCheckResponse where-    parseJSON = withObject "RefreshTrustedAdvisorCheckResponse" $ \o -> RefreshTrustedAdvisorCheckResponse-        <$> o .:  "status"+-- | The response status code.+rtacrsStatus :: Lens' RefreshTrustedAdvisorCheckResponse Int+rtacrsStatus = lens _rtacrsStatus (\ s a -> s{_rtacrsStatus = a});
gen/Network/AWS/Support/ResolveCase.hs view
@@ -1,125 +1,140 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}+{-# 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 #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module      : Network.AWS.Support.ResolveCase--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0. -- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental+-- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Takes a 'CaseId' and returns the initial state of the case along with the state--- of the case after the call to 'ResolveCase' completed.+-- Takes a 'CaseId' and returns the initial state of the case along with+-- the state of the case after the call to ResolveCase completed. ----- <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_ResolveCase.html>+-- /See:/ <http://docs.aws.amazon.com/awssupport/latest/APIReference/API_ResolveCase.html AWS API Reference> for ResolveCase. module Network.AWS.Support.ResolveCase     (-    -- * Request-      ResolveCase-    -- ** Request constructor-    , resolveCase-    -- ** Request lenses+    -- * Creating a Request+      resolveCase+    , ResolveCase+    -- * Request Lenses     , rcCaseId -    -- * Response-    , ResolveCaseResponse-    -- ** Response constructor+    -- * Destructuring the Response     , resolveCaseResponse-    -- ** Response lenses-    , rcrFinalCaseStatus-    , rcrInitialCaseStatus+    , ResolveCaseResponse+    -- * Response Lenses+    , rcrsInitialCaseStatus+    , rcrsFinalCaseStatus+    , rcrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.Support.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.Support.Types+import           Network.AWS.Support.Types.Product -newtype ResolveCase = ResolveCase+-- | /See:/ 'resolveCase' smart constructor.+newtype ResolveCase = ResolveCase'     { _rcCaseId :: Maybe Text-    } deriving (Eq, Ord, Read, Show, Monoid)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ResolveCase' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ResolveCase' with the minimum fields required to make a request. ----- * 'rcCaseId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ---resolveCase :: ResolveCase-resolveCase = ResolveCase+-- * 'rcCaseId'+resolveCase+    :: ResolveCase+resolveCase =+    ResolveCase'     { _rcCaseId = Nothing     } --- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/+-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/ rcCaseId :: Lens' ResolveCase (Maybe Text)-rcCaseId = lens _rcCaseId (\s a -> s { _rcCaseId = a })--data ResolveCaseResponse = ResolveCaseResponse-    { _rcrFinalCaseStatus   :: Maybe Text-    , _rcrInitialCaseStatus :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+rcCaseId = lens _rcCaseId (\ s a -> s{_rcCaseId = a}); --- | 'ResolveCaseResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcrFinalCaseStatus' @::@ 'Maybe' 'Text'------ * 'rcrInitialCaseStatus' @::@ 'Maybe' 'Text'----resolveCaseResponse :: ResolveCaseResponse-resolveCaseResponse = ResolveCaseResponse-    { _rcrInitialCaseStatus = Nothing-    , _rcrFinalCaseStatus   = Nothing-    }+instance AWSRequest ResolveCase where+        type Sv ResolveCase = Support+        type Rs ResolveCase = ResolveCaseResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 ResolveCaseResponse' <$>+                   (x .?> "initialCaseStatus") <*>+                     (x .?> "finalCaseStatus")+                     <*> (pure (fromEnum s))) --- | The status of the case after the 'ResolveCase' request was processed.-rcrFinalCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)-rcrFinalCaseStatus =-    lens _rcrFinalCaseStatus (\s a -> s { _rcrFinalCaseStatus = a })+instance ToHeaders ResolveCase where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AWSSupport_20130415.ResolveCase" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The status of the case when the 'ResolveCase' request was sent.-rcrInitialCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)-rcrInitialCaseStatus =-    lens _rcrInitialCaseStatus (\s a -> s { _rcrInitialCaseStatus = a })+instance ToJSON ResolveCase where+        toJSON ResolveCase'{..}+          = object ["caseId" .= _rcCaseId]  instance ToPath ResolveCase where-    toPath = const "/"+        toPath = const "/"  instance ToQuery ResolveCase where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders ResolveCase+-- | The status of the case returned by the ResolveCase operation.+--+-- /See:/ 'resolveCaseResponse' smart constructor.+data ResolveCaseResponse = ResolveCaseResponse'+    { _rcrsInitialCaseStatus :: !(Maybe Text)+    , _rcrsFinalCaseStatus   :: !(Maybe Text)+    , _rcrsStatus            :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON ResolveCase where-    toJSON ResolveCase{..} = object-        [ "caseId" .= _rcCaseId-        ]+-- | Creates a value of 'ResolveCaseResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcrsInitialCaseStatus'+--+-- * 'rcrsFinalCaseStatus'+--+-- * 'rcrsStatus'+resolveCaseResponse+    :: Int -- ^ 'rcrsStatus'+    -> ResolveCaseResponse+resolveCaseResponse pStatus_ =+    ResolveCaseResponse'+    { _rcrsInitialCaseStatus = Nothing+    , _rcrsFinalCaseStatus = Nothing+    , _rcrsStatus = pStatus_+    } -instance AWSRequest ResolveCase where-    type Sv ResolveCase = Support-    type Rs ResolveCase = ResolveCaseResponse+-- | The status of the case when the ResolveCase request was sent.+rcrsInitialCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)+rcrsInitialCaseStatus = lens _rcrsInitialCaseStatus (\ s a -> s{_rcrsInitialCaseStatus = a}); -    request  = post "ResolveCase"-    response = jsonResponse+-- | The status of the case after the ResolveCase request was processed.+rcrsFinalCaseStatus :: Lens' ResolveCaseResponse (Maybe Text)+rcrsFinalCaseStatus = lens _rcrsFinalCaseStatus (\ s a -> s{_rcrsFinalCaseStatus = a}); -instance FromJSON ResolveCaseResponse where-    parseJSON = withObject "ResolveCaseResponse" $ \o -> ResolveCaseResponse-        <$> o .:? "finalCaseStatus"-        <*> o .:? "initialCaseStatus"+-- | The response status code.+rcrsStatus :: Lens' ResolveCaseResponse Int+rcrsStatus = lens _rcrsStatus (\ s a -> s{_rcrsStatus = a});
gen/Network/AWS/Support/Types.hs view
@@ -1,1193 +1,237 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}-{-# LANGUAGE ViewPatterns                #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Module      : Network.AWS.Support.Types--- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License     : This Source Code Form is subject to the terms of---               the Mozilla Public License, v. 2.0.---               A copy of the MPL can be found in the LICENSE file or---               you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : experimental--- Portability : non-portable (GHC extensions)------ Derived from AWS service descriptions, licensed under Apache 2.0.--module Network.AWS.Support.Types-    (-    -- * Service-      Support-    -- ** Error-    , JSONError--    -- * TrustedAdvisorResourcesSummary-    , TrustedAdvisorResourcesSummary-    , trustedAdvisorResourcesSummary-    , tarsResourcesFlagged-    , tarsResourcesIgnored-    , tarsResourcesProcessed-    , tarsResourcesSuppressed--    -- * TrustedAdvisorCategorySpecificSummary-    , TrustedAdvisorCategorySpecificSummary-    , trustedAdvisorCategorySpecificSummary-    , tacssCostOptimizing--    -- * Communication-    , Communication-    , communication-    , cAttachmentSet-    , cBody-    , cCaseId-    , cSubmittedBy-    , cTimeCreated--    -- * Category-    , Category-    , category-    , cCode-    , cName--    -- * TrustedAdvisorCheckSummary-    , TrustedAdvisorCheckSummary-    , trustedAdvisorCheckSummary-    , tacsCategorySpecificSummary-    , tacsCheckId-    , tacsHasFlaggedResources-    , tacsResourcesSummary-    , tacsStatus-    , tacsTimestamp--    -- * AttachmentDetails-    , AttachmentDetails-    , attachmentDetails-    , adAttachmentId-    , adFileName--    -- * TrustedAdvisorCheckResult-    , TrustedAdvisorCheckResult-    , trustedAdvisorCheckResult-    , tacrCategorySpecificSummary-    , tacrCheckId-    , tacrFlaggedResources-    , tacrResourcesSummary-    , tacrStatus-    , tacrTimestamp--    -- * TrustedAdvisorCheckDescription-    , TrustedAdvisorCheckDescription-    , trustedAdvisorCheckDescription-    , tacdCategory-    , tacdDescription-    , tacdId-    , tacdMetadata-    , tacdName--    -- * Attachment-    , Attachment-    , attachment-    , aData-    , aFileName--    -- * RecentCaseCommunications-    , RecentCaseCommunications-    , recentCaseCommunications-    , rccCommunications-    , rccNextToken--    -- * SupportService-    , SupportService-    , supportService-    , ssCategories-    , ssCode-    , ssName--    -- * TrustedAdvisorResourceDetail-    , TrustedAdvisorResourceDetail-    , trustedAdvisorResourceDetail-    , tardIsSuppressed-    , tardMetadata-    , tardRegion-    , tardResourceId-    , tardStatus--    -- * TrustedAdvisorCostOptimizingSummary-    , TrustedAdvisorCostOptimizingSummary-    , trustedAdvisorCostOptimizingSummary-    , tacosEstimatedMonthlySavings-    , tacosEstimatedPercentMonthlySavings--    -- * SeverityLevel-    , SeverityLevel-    , severityLevel-    , slCode-    , slName--    -- * CaseDetails-    , CaseDetails-    , caseDetails-    , cdCaseId-    , cdCategoryCode-    , cdCcEmailAddresses-    , cdDisplayId-    , cdLanguage-    , cdRecentCommunications-    , cdServiceCode-    , cdSeverityCode-    , cdStatus-    , cdSubject-    , cdSubmittedBy-    , cdTimeCreated--    -- * TrustedAdvisorCheckRefreshStatus-    , TrustedAdvisorCheckRefreshStatus-    , trustedAdvisorCheckRefreshStatus-    , tacrsCheckId-    , tacrsMillisUntilNextRefreshable-    , tacrsStatus-    ) where--import Network.AWS.Prelude-import Network.AWS.Signing-import qualified GHC.Exts---- | Version @2013-04-15@ of the Amazon Support service.-data Support--instance AWSService Support where-    type Sg Support = V4-    type Er Support = JSONError--    service = service'-      where-        service' :: Service Support-        service' = Service-            { _svcAbbrev       = "Support"-            , _svcPrefix       = "support"-            , _svcVersion      = "2013-04-15"-            , _svcTargetPrefix = Just "AWSSupport_20130415"-            , _svcJSONVersion  = Just "1.1"-            , _svcHandle       = handle-            , _svcRetry        = retry-            }--        handle :: Status-               -> Maybe (LazyByteString -> ServiceError JSONError)-        handle = jsonError statusSuccess service'--        retry :: Retry Support-        retry = Exponential-            { _retryBase     = 0.05-            , _retryGrowth   = 2-            , _retryAttempts = 5-            , _retryCheck    = check-            }--        check :: Status-              -> JSONError-              -> Bool-        check (statusCode -> s) (awsErrorCode -> e)-            | s == 500  = True -- General Server Error-            | s == 509  = True -- Limit Exceeded-            | s == 503  = True -- Service Unavailable-            | otherwise = False--data TrustedAdvisorResourcesSummary = TrustedAdvisorResourcesSummary-    { _tarsResourcesFlagged    :: Integer-    , _tarsResourcesIgnored    :: Integer-    , _tarsResourcesProcessed  :: Integer-    , _tarsResourcesSuppressed :: Integer-    } deriving (Eq, Ord, Read, Show)---- | 'TrustedAdvisorResourcesSummary' constructor.------ The fields accessible through corresponding lenses are:------ * 'tarsResourcesFlagged' @::@ 'Integer'------ * 'tarsResourcesIgnored' @::@ 'Integer'------ * 'tarsResourcesProcessed' @::@ 'Integer'------ * 'tarsResourcesSuppressed' @::@ 'Integer'----trustedAdvisorResourcesSummary :: Integer -- ^ 'tarsResourcesProcessed'-                               -> Integer -- ^ 'tarsResourcesFlagged'-                               -> Integer -- ^ 'tarsResourcesIgnored'-                               -> Integer -- ^ 'tarsResourcesSuppressed'-                               -> TrustedAdvisorResourcesSummary-trustedAdvisorResourcesSummary p1 p2 p3 p4 = TrustedAdvisorResourcesSummary-    { _tarsResourcesProcessed  = p1-    , _tarsResourcesFlagged    = p2-    , _tarsResourcesIgnored    = p3-    , _tarsResourcesSuppressed = p4-    }---- | The number of AWS resources that were flagged (listed) by the Trusted Advisor--- check.-tarsResourcesFlagged :: Lens' TrustedAdvisorResourcesSummary Integer-tarsResourcesFlagged =-    lens _tarsResourcesFlagged (\s a -> s { _tarsResourcesFlagged = a })---- | The number of AWS resources ignored by Trusted Advisor because information--- was unavailable.-tarsResourcesIgnored :: Lens' TrustedAdvisorResourcesSummary Integer-tarsResourcesIgnored =-    lens _tarsResourcesIgnored (\s a -> s { _tarsResourcesIgnored = a })---- | The number of AWS resources that were analyzed by the Trusted Advisor check.-tarsResourcesProcessed :: Lens' TrustedAdvisorResourcesSummary Integer-tarsResourcesProcessed =-    lens _tarsResourcesProcessed (\s a -> s { _tarsResourcesProcessed = a })---- | The number of AWS resources ignored by Trusted Advisor because they were--- marked as suppressed by the user.-tarsResourcesSuppressed :: Lens' TrustedAdvisorResourcesSummary Integer-tarsResourcesSuppressed =-    lens _tarsResourcesSuppressed (\s a -> s { _tarsResourcesSuppressed = a })--instance FromJSON TrustedAdvisorResourcesSummary where-    parseJSON = withObject "TrustedAdvisorResourcesSummary" $ \o -> TrustedAdvisorResourcesSummary-        <$> o .:  "resourcesFlagged"-        <*> o .:  "resourcesIgnored"-        <*> o .:  "resourcesProcessed"-        <*> o .:  "resourcesSuppressed"--instance ToJSON TrustedAdvisorResourcesSummary where-    toJSON TrustedAdvisorResourcesSummary{..} = object-        [ "resourcesProcessed"  .= _tarsResourcesProcessed-        , "resourcesFlagged"    .= _tarsResourcesFlagged-        , "resourcesIgnored"    .= _tarsResourcesIgnored-        , "resourcesSuppressed" .= _tarsResourcesSuppressed-        ]--newtype TrustedAdvisorCategorySpecificSummary = TrustedAdvisorCategorySpecificSummary-    { _tacssCostOptimizing :: Maybe TrustedAdvisorCostOptimizingSummary-    } deriving (Eq, Read, Show)---- | 'TrustedAdvisorCategorySpecificSummary' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacssCostOptimizing' @::@ 'Maybe' 'TrustedAdvisorCostOptimizingSummary'----trustedAdvisorCategorySpecificSummary :: TrustedAdvisorCategorySpecificSummary-trustedAdvisorCategorySpecificSummary = TrustedAdvisorCategorySpecificSummary-    { _tacssCostOptimizing = Nothing-    }---- | The summary information about cost savings for a Trusted Advisor check that--- is in the Cost Optimizing category.-tacssCostOptimizing :: Lens' TrustedAdvisorCategorySpecificSummary (Maybe TrustedAdvisorCostOptimizingSummary)-tacssCostOptimizing =-    lens _tacssCostOptimizing (\s a -> s { _tacssCostOptimizing = a })--instance FromJSON TrustedAdvisorCategorySpecificSummary where-    parseJSON = withObject "TrustedAdvisorCategorySpecificSummary" $ \o -> TrustedAdvisorCategorySpecificSummary-        <$> o .:? "costOptimizing"--instance ToJSON TrustedAdvisorCategorySpecificSummary where-    toJSON TrustedAdvisorCategorySpecificSummary{..} = object-        [ "costOptimizing" .= _tacssCostOptimizing-        ]--data Communication = Communication-    { _cAttachmentSet :: List "attachmentSet" AttachmentDetails-    , _cBody          :: Maybe Text-    , _cCaseId        :: Maybe Text-    , _cSubmittedBy   :: Maybe Text-    , _cTimeCreated   :: Maybe Text-    } deriving (Eq, Read, Show)---- | 'Communication' constructor.------ The fields accessible through corresponding lenses are:------ * 'cAttachmentSet' @::@ ['AttachmentDetails']------ * 'cBody' @::@ 'Maybe' 'Text'------ * 'cCaseId' @::@ 'Maybe' 'Text'------ * 'cSubmittedBy' @::@ 'Maybe' 'Text'------ * 'cTimeCreated' @::@ 'Maybe' 'Text'----communication :: Communication-communication = Communication-    { _cCaseId        = Nothing-    , _cBody          = Nothing-    , _cSubmittedBy   = Nothing-    , _cTimeCreated   = Nothing-    , _cAttachmentSet = mempty-    }---- | Information about the attachments to the case communication.-cAttachmentSet :: Lens' Communication [AttachmentDetails]-cAttachmentSet = lens _cAttachmentSet (\s a -> s { _cAttachmentSet = a }) . _List---- | The text of the communication between the customer and AWS Support.-cBody :: Lens' Communication (Maybe Text)-cBody = lens _cBody (\s a -> s { _cBody = a })---- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/-cCaseId :: Lens' Communication (Maybe Text)-cCaseId = lens _cCaseId (\s a -> s { _cCaseId = a })---- | The email address of the account that submitted the AWS Support case.-cSubmittedBy :: Lens' Communication (Maybe Text)-cSubmittedBy = lens _cSubmittedBy (\s a -> s { _cSubmittedBy = a })---- | The time the communication was created.-cTimeCreated :: Lens' Communication (Maybe Text)-cTimeCreated = lens _cTimeCreated (\s a -> s { _cTimeCreated = a })--instance FromJSON Communication where-    parseJSON = withObject "Communication" $ \o -> Communication-        <$> o .:? "attachmentSet" .!= mempty-        <*> o .:? "body"-        <*> o .:? "caseId"-        <*> o .:? "submittedBy"-        <*> o .:? "timeCreated"--instance ToJSON Communication where-    toJSON Communication{..} = object-        [ "caseId"        .= _cCaseId-        , "body"          .= _cBody-        , "submittedBy"   .= _cSubmittedBy-        , "timeCreated"   .= _cTimeCreated-        , "attachmentSet" .= _cAttachmentSet-        ]--data Category = Category-    { _cCode :: Maybe Text-    , _cName :: Maybe Text-    } deriving (Eq, Ord, Read, Show)---- | 'Category' constructor.------ The fields accessible through corresponding lenses are:------ * 'cCode' @::@ 'Maybe' 'Text'------ * 'cName' @::@ 'Maybe' 'Text'----category :: Category-category = Category-    { _cCode = Nothing-    , _cName = Nothing-    }---- | The category code for the support case.-cCode :: Lens' Category (Maybe Text)-cCode = lens _cCode (\s a -> s { _cCode = a })---- | The category name for the support case.-cName :: Lens' Category (Maybe Text)-cName = lens _cName (\s a -> s { _cName = a })--instance FromJSON Category where-    parseJSON = withObject "Category" $ \o -> Category-        <$> o .:? "code"-        <*> o .:? "name"--instance ToJSON Category where-    toJSON Category{..} = object-        [ "code" .= _cCode-        , "name" .= _cName-        ]--data TrustedAdvisorCheckSummary = TrustedAdvisorCheckSummary-    { _tacsCategorySpecificSummary :: TrustedAdvisorCategorySpecificSummary-    , _tacsCheckId                 :: Text-    , _tacsHasFlaggedResources     :: Maybe Bool-    , _tacsResourcesSummary        :: TrustedAdvisorResourcesSummary-    , _tacsStatus                  :: Text-    , _tacsTimestamp               :: Text-    } deriving (Eq, Read, Show)---- | 'TrustedAdvisorCheckSummary' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacsCategorySpecificSummary' @::@ 'TrustedAdvisorCategorySpecificSummary'------ * 'tacsCheckId' @::@ 'Text'------ * 'tacsHasFlaggedResources' @::@ 'Maybe' 'Bool'------ * 'tacsResourcesSummary' @::@ 'TrustedAdvisorResourcesSummary'------ * 'tacsStatus' @::@ 'Text'------ * 'tacsTimestamp' @::@ 'Text'----trustedAdvisorCheckSummary :: Text -- ^ 'tacsCheckId'-                           -> Text -- ^ 'tacsTimestamp'-                           -> Text -- ^ 'tacsStatus'-                           -> TrustedAdvisorResourcesSummary -- ^ 'tacsResourcesSummary'-                           -> TrustedAdvisorCategorySpecificSummary -- ^ 'tacsCategorySpecificSummary'-                           -> TrustedAdvisorCheckSummary-trustedAdvisorCheckSummary p1 p2 p3 p4 p5 = TrustedAdvisorCheckSummary-    { _tacsCheckId                 = p1-    , _tacsTimestamp               = p2-    , _tacsStatus                  = p3-    , _tacsResourcesSummary        = p4-    , _tacsCategorySpecificSummary = p5-    , _tacsHasFlaggedResources     = Nothing-    }---- | Summary information that relates to the category of the check. Cost--- Optimizing is the only category that is currently supported.-tacsCategorySpecificSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorCategorySpecificSummary-tacsCategorySpecificSummary =-    lens _tacsCategorySpecificSummary-        (\s a -> s { _tacsCategorySpecificSummary = a })---- | The unique identifier for the Trusted Advisor check.-tacsCheckId :: Lens' TrustedAdvisorCheckSummary Text-tacsCheckId = lens _tacsCheckId (\s a -> s { _tacsCheckId = a })---- | Specifies whether the Trusted Advisor check has flagged resources.-tacsHasFlaggedResources :: Lens' TrustedAdvisorCheckSummary (Maybe Bool)-tacsHasFlaggedResources =-    lens _tacsHasFlaggedResources (\s a -> s { _tacsHasFlaggedResources = a })--tacsResourcesSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorResourcesSummary-tacsResourcesSummary =-    lens _tacsResourcesSummary (\s a -> s { _tacsResourcesSummary = a })---- | The alert status of the check: "ok" (green), "warning" (yellow), "error"--- (red), or "not_available".-tacsStatus :: Lens' TrustedAdvisorCheckSummary Text-tacsStatus = lens _tacsStatus (\s a -> s { _tacsStatus = a })---- | The time of the last refresh of the check.-tacsTimestamp :: Lens' TrustedAdvisorCheckSummary Text-tacsTimestamp = lens _tacsTimestamp (\s a -> s { _tacsTimestamp = a })--instance FromJSON TrustedAdvisorCheckSummary where-    parseJSON = withObject "TrustedAdvisorCheckSummary" $ \o -> TrustedAdvisorCheckSummary-        <$> o .:  "categorySpecificSummary"-        <*> o .:  "checkId"-        <*> o .:? "hasFlaggedResources"-        <*> o .:  "resourcesSummary"-        <*> o .:  "status"-        <*> o .:  "timestamp"--instance ToJSON TrustedAdvisorCheckSummary where-    toJSON TrustedAdvisorCheckSummary{..} = object-        [ "checkId"                 .= _tacsCheckId-        , "timestamp"               .= _tacsTimestamp-        , "status"                  .= _tacsStatus-        , "hasFlaggedResources"     .= _tacsHasFlaggedResources-        , "resourcesSummary"        .= _tacsResourcesSummary-        , "categorySpecificSummary" .= _tacsCategorySpecificSummary-        ]--data AttachmentDetails = AttachmentDetails-    { _adAttachmentId :: Maybe Text-    , _adFileName     :: Maybe Text-    } deriving (Eq, Ord, Read, Show)---- | 'AttachmentDetails' constructor.------ The fields accessible through corresponding lenses are:------ * 'adAttachmentId' @::@ 'Maybe' 'Text'------ * 'adFileName' @::@ 'Maybe' 'Text'----attachmentDetails :: AttachmentDetails-attachmentDetails = AttachmentDetails-    { _adAttachmentId = Nothing-    , _adFileName     = Nothing-    }---- | The ID of the attachment.-adAttachmentId :: Lens' AttachmentDetails (Maybe Text)-adAttachmentId = lens _adAttachmentId (\s a -> s { _adAttachmentId = a })---- | The file name of the attachment.-adFileName :: Lens' AttachmentDetails (Maybe Text)-adFileName = lens _adFileName (\s a -> s { _adFileName = a })--instance FromJSON AttachmentDetails where-    parseJSON = withObject "AttachmentDetails" $ \o -> AttachmentDetails-        <$> o .:? "attachmentId"-        <*> o .:? "fileName"--instance ToJSON AttachmentDetails where-    toJSON AttachmentDetails{..} = object-        [ "attachmentId" .= _adAttachmentId-        , "fileName"     .= _adFileName-        ]--data TrustedAdvisorCheckResult = TrustedAdvisorCheckResult-    { _tacrCategorySpecificSummary :: TrustedAdvisorCategorySpecificSummary-    , _tacrCheckId                 :: Text-    , _tacrFlaggedResources        :: List "flaggedResources" TrustedAdvisorResourceDetail-    , _tacrResourcesSummary        :: TrustedAdvisorResourcesSummary-    , _tacrStatus                  :: Text-    , _tacrTimestamp               :: Text-    } deriving (Eq, Read, Show)---- | 'TrustedAdvisorCheckResult' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacrCategorySpecificSummary' @::@ 'TrustedAdvisorCategorySpecificSummary'------ * 'tacrCheckId' @::@ 'Text'------ * 'tacrFlaggedResources' @::@ ['TrustedAdvisorResourceDetail']------ * 'tacrResourcesSummary' @::@ 'TrustedAdvisorResourcesSummary'------ * 'tacrStatus' @::@ 'Text'------ * 'tacrTimestamp' @::@ 'Text'----trustedAdvisorCheckResult :: Text -- ^ 'tacrCheckId'-                          -> Text -- ^ 'tacrTimestamp'-                          -> Text -- ^ 'tacrStatus'-                          -> TrustedAdvisorResourcesSummary -- ^ 'tacrResourcesSummary'-                          -> TrustedAdvisorCategorySpecificSummary -- ^ 'tacrCategorySpecificSummary'-                          -> TrustedAdvisorCheckResult-trustedAdvisorCheckResult p1 p2 p3 p4 p5 = TrustedAdvisorCheckResult-    { _tacrCheckId                 = p1-    , _tacrTimestamp               = p2-    , _tacrStatus                  = p3-    , _tacrResourcesSummary        = p4-    , _tacrCategorySpecificSummary = p5-    , _tacrFlaggedResources        = mempty-    }---- | Summary information that relates to the category of the check. Cost--- Optimizing is the only category that is currently supported.-tacrCategorySpecificSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorCategorySpecificSummary-tacrCategorySpecificSummary =-    lens _tacrCategorySpecificSummary-        (\s a -> s { _tacrCategorySpecificSummary = a })---- | The unique identifier for the Trusted Advisor check.-tacrCheckId :: Lens' TrustedAdvisorCheckResult Text-tacrCheckId = lens _tacrCheckId (\s a -> s { _tacrCheckId = a })---- | The details about each resource listed in the check result.-tacrFlaggedResources :: Lens' TrustedAdvisorCheckResult [TrustedAdvisorResourceDetail]-tacrFlaggedResources =-    lens _tacrFlaggedResources (\s a -> s { _tacrFlaggedResources = a })-        . _List--tacrResourcesSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorResourcesSummary-tacrResourcesSummary =-    lens _tacrResourcesSummary (\s a -> s { _tacrResourcesSummary = a })---- | The alert status of the check: "ok" (green), "warning" (yellow), "error"--- (red), or "not_available".-tacrStatus :: Lens' TrustedAdvisorCheckResult Text-tacrStatus = lens _tacrStatus (\s a -> s { _tacrStatus = a })---- | The time of the last refresh of the check.-tacrTimestamp :: Lens' TrustedAdvisorCheckResult Text-tacrTimestamp = lens _tacrTimestamp (\s a -> s { _tacrTimestamp = a })--instance FromJSON TrustedAdvisorCheckResult where-    parseJSON = withObject "TrustedAdvisorCheckResult" $ \o -> TrustedAdvisorCheckResult-        <$> o .:  "categorySpecificSummary"-        <*> o .:  "checkId"-        <*> o .:? "flaggedResources" .!= mempty-        <*> o .:  "resourcesSummary"-        <*> o .:  "status"-        <*> o .:  "timestamp"--instance ToJSON TrustedAdvisorCheckResult where-    toJSON TrustedAdvisorCheckResult{..} = object-        [ "checkId"                 .= _tacrCheckId-        , "timestamp"               .= _tacrTimestamp-        , "status"                  .= _tacrStatus-        , "resourcesSummary"        .= _tacrResourcesSummary-        , "categorySpecificSummary" .= _tacrCategorySpecificSummary-        , "flaggedResources"        .= _tacrFlaggedResources-        ]--data TrustedAdvisorCheckDescription = TrustedAdvisorCheckDescription-    { _tacdCategory    :: Text-    , _tacdDescription :: Text-    , _tacdId          :: Text-    , _tacdMetadata    :: List "metadata" Text-    , _tacdName        :: Text-    } deriving (Eq, Ord, Read, Show)---- | 'TrustedAdvisorCheckDescription' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacdCategory' @::@ 'Text'------ * 'tacdDescription' @::@ 'Text'------ * 'tacdId' @::@ 'Text'------ * 'tacdMetadata' @::@ ['Text']------ * 'tacdName' @::@ 'Text'----trustedAdvisorCheckDescription :: Text -- ^ 'tacdId'-                               -> Text -- ^ 'tacdName'-                               -> Text -- ^ 'tacdDescription'-                               -> Text -- ^ 'tacdCategory'-                               -> TrustedAdvisorCheckDescription-trustedAdvisorCheckDescription p1 p2 p3 p4 = TrustedAdvisorCheckDescription-    { _tacdId          = p1-    , _tacdName        = p2-    , _tacdDescription = p3-    , _tacdCategory    = p4-    , _tacdMetadata    = mempty-    }---- | The category of the Trusted Advisor check.-tacdCategory :: Lens' TrustedAdvisorCheckDescription Text-tacdCategory = lens _tacdCategory (\s a -> s { _tacdCategory = a })---- | The description of the Trusted Advisor check, which includes the alert--- criteria and recommended actions (contains HTML markup).-tacdDescription :: Lens' TrustedAdvisorCheckDescription Text-tacdDescription = lens _tacdDescription (\s a -> s { _tacdDescription = a })---- | The unique identifier for the Trusted Advisor check.-tacdId :: Lens' TrustedAdvisorCheckDescription Text-tacdId = lens _tacdId (\s a -> s { _tacdId = a })---- | The column headings for the data returned by the Trusted Advisor check. The--- order of the headings corresponds to the order of the data in the Metadata--- element of the 'TrustedAdvisorResourceDetail' for the check. Metadata contains--- all the data that is shown in the Excel download, even in those cases where--- the UI shows just summary data.-tacdMetadata :: Lens' TrustedAdvisorCheckDescription [Text]-tacdMetadata = lens _tacdMetadata (\s a -> s { _tacdMetadata = a }) . _List---- | The display name for the Trusted Advisor check.-tacdName :: Lens' TrustedAdvisorCheckDescription Text-tacdName = lens _tacdName (\s a -> s { _tacdName = a })--instance FromJSON TrustedAdvisorCheckDescription where-    parseJSON = withObject "TrustedAdvisorCheckDescription" $ \o -> TrustedAdvisorCheckDescription-        <$> o .:  "category"-        <*> o .:  "description"-        <*> o .:  "id"-        <*> o .:? "metadata" .!= mempty-        <*> o .:  "name"--instance ToJSON TrustedAdvisorCheckDescription where-    toJSON TrustedAdvisorCheckDescription{..} = object-        [ "id"          .= _tacdId-        , "name"        .= _tacdName-        , "description" .= _tacdDescription-        , "category"    .= _tacdCategory-        , "metadata"    .= _tacdMetadata-        ]--data Attachment = Attachment-    { _aData     :: Maybe Base64-    , _aFileName :: Maybe Text-    } deriving (Eq, Read, Show)---- | 'Attachment' constructor.------ The fields accessible through corresponding lenses are:------ * 'aData' @::@ 'Maybe' 'Base64'------ * 'aFileName' @::@ 'Maybe' 'Text'----attachment :: Attachment-attachment = Attachment-    { _aFileName = Nothing-    , _aData     = Nothing-    }---- | The content of the attachment file.-aData :: Lens' Attachment (Maybe Base64)-aData = lens _aData (\s a -> s { _aData = a })---- | The name of the attachment file.-aFileName :: Lens' Attachment (Maybe Text)-aFileName = lens _aFileName (\s a -> s { _aFileName = a })--instance FromJSON Attachment where-    parseJSON = withObject "Attachment" $ \o -> Attachment-        <$> o .:? "data"-        <*> o .:? "fileName"--instance ToJSON Attachment where-    toJSON Attachment{..} = object-        [ "fileName" .= _aFileName-        , "data"     .= _aData-        ]--data RecentCaseCommunications = RecentCaseCommunications-    { _rccCommunications :: List "communications" Communication-    , _rccNextToken      :: Maybe Text-    } deriving (Eq, Read, Show)---- | 'RecentCaseCommunications' constructor.------ The fields accessible through corresponding lenses are:------ * 'rccCommunications' @::@ ['Communication']------ * 'rccNextToken' @::@ 'Maybe' 'Text'----recentCaseCommunications :: RecentCaseCommunications-recentCaseCommunications = RecentCaseCommunications-    { _rccCommunications = mempty-    , _rccNextToken      = Nothing-    }---- | The five most recent communications associated with the case.-rccCommunications :: Lens' RecentCaseCommunications [Communication]-rccCommunications =-    lens _rccCommunications (\s a -> s { _rccCommunications = a })-        . _List---- | A resumption point for pagination.-rccNextToken :: Lens' RecentCaseCommunications (Maybe Text)-rccNextToken = lens _rccNextToken (\s a -> s { _rccNextToken = a })--instance FromJSON RecentCaseCommunications where-    parseJSON = withObject "RecentCaseCommunications" $ \o -> RecentCaseCommunications-        <$> o .:? "communications" .!= mempty-        <*> o .:? "nextToken"--instance ToJSON RecentCaseCommunications where-    toJSON RecentCaseCommunications{..} = object-        [ "communications" .= _rccCommunications-        , "nextToken"      .= _rccNextToken-        ]--data SupportService = SupportService-    { _ssCategories :: List "categories" Category-    , _ssCode       :: Maybe Text-    , _ssName       :: Maybe Text-    } deriving (Eq, Read, Show)---- | 'SupportService' constructor.------ The fields accessible through corresponding lenses are:------ * 'ssCategories' @::@ ['Category']------ * 'ssCode' @::@ 'Maybe' 'Text'------ * 'ssName' @::@ 'Maybe' 'Text'----supportService :: SupportService-supportService = SupportService-    { _ssCode       = Nothing-    , _ssName       = Nothing-    , _ssCategories = mempty-    }---- | A list of categories that describe the type of support issue a case--- describes. Categories consist of a category name and a category code.--- Category names and codes are passed to AWS Support when you call 'CreateCase'.-ssCategories :: Lens' SupportService [Category]-ssCategories = lens _ssCategories (\s a -> s { _ssCategories = a }) . _List---- | The code for an AWS service returned by the 'DescribeServices' response. The 'Name' element contains the corresponding friendly name.-ssCode :: Lens' SupportService (Maybe Text)-ssCode = lens _ssCode (\s a -> s { _ssCode = a })---- | The friendly name for an AWS service. The 'Code' element contains the--- corresponding code.-ssName :: Lens' SupportService (Maybe Text)-ssName = lens _ssName (\s a -> s { _ssName = a })--instance FromJSON SupportService where-    parseJSON = withObject "SupportService" $ \o -> SupportService-        <$> o .:? "categories" .!= mempty-        <*> o .:? "code"-        <*> o .:? "name"--instance ToJSON SupportService where-    toJSON SupportService{..} = object-        [ "code"       .= _ssCode-        , "name"       .= _ssName-        , "categories" .= _ssCategories-        ]--data TrustedAdvisorResourceDetail = TrustedAdvisorResourceDetail-    { _tardIsSuppressed :: Maybe Bool-    , _tardMetadata     :: List "metadata" Text-    , _tardRegion       :: Text-    , _tardResourceId   :: Text-    , _tardStatus       :: Text-    } deriving (Eq, Ord, Read, Show)---- | 'TrustedAdvisorResourceDetail' constructor.------ The fields accessible through corresponding lenses are:------ * 'tardIsSuppressed' @::@ 'Maybe' 'Bool'------ * 'tardMetadata' @::@ ['Text']------ * 'tardRegion' @::@ 'Text'------ * 'tardResourceId' @::@ 'Text'------ * 'tardStatus' @::@ 'Text'----trustedAdvisorResourceDetail :: Text -- ^ 'tardStatus'-                             -> Text -- ^ 'tardRegion'-                             -> Text -- ^ 'tardResourceId'-                             -> TrustedAdvisorResourceDetail-trustedAdvisorResourceDetail p1 p2 p3 = TrustedAdvisorResourceDetail-    { _tardStatus       = p1-    , _tardRegion       = p2-    , _tardResourceId   = p3-    , _tardIsSuppressed = Nothing-    , _tardMetadata     = mempty-    }---- | Specifies whether the AWS resource was ignored by Trusted Advisor because it--- was marked as suppressed by the user.-tardIsSuppressed :: Lens' TrustedAdvisorResourceDetail (Maybe Bool)-tardIsSuppressed = lens _tardIsSuppressed (\s a -> s { _tardIsSuppressed = a })---- | Additional information about the identified resource. The exact metadata and--- its order can be obtained by inspecting the 'TrustedAdvisorCheckDescription'--- object returned by the call to 'DescribeTrustedAdvisorChecks'. Metadata--- contains all the data that is shown in the Excel download, even in those--- cases where the UI shows just summary data.-tardMetadata :: Lens' TrustedAdvisorResourceDetail [Text]-tardMetadata = lens _tardMetadata (\s a -> s { _tardMetadata = a }) . _List---- | The AWS region in which the identified resource is located.-tardRegion :: Lens' TrustedAdvisorResourceDetail Text-tardRegion = lens _tardRegion (\s a -> s { _tardRegion = a })---- | The unique identifier for the identified resource.-tardResourceId :: Lens' TrustedAdvisorResourceDetail Text-tardResourceId = lens _tardResourceId (\s a -> s { _tardResourceId = a })---- | The status code for the resource identified in the Trusted Advisor check.-tardStatus :: Lens' TrustedAdvisorResourceDetail Text-tardStatus = lens _tardStatus (\s a -> s { _tardStatus = a })--instance FromJSON TrustedAdvisorResourceDetail where-    parseJSON = withObject "TrustedAdvisorResourceDetail" $ \o -> TrustedAdvisorResourceDetail-        <$> o .:? "isSuppressed"-        <*> o .:? "metadata" .!= mempty-        <*> o .:  "region"-        <*> o .:  "resourceId"-        <*> o .:  "status"--instance ToJSON TrustedAdvisorResourceDetail where-    toJSON TrustedAdvisorResourceDetail{..} = object-        [ "status"       .= _tardStatus-        , "region"       .= _tardRegion-        , "resourceId"   .= _tardResourceId-        , "isSuppressed" .= _tardIsSuppressed-        , "metadata"     .= _tardMetadata-        ]--data TrustedAdvisorCostOptimizingSummary = TrustedAdvisorCostOptimizingSummary-    { _tacosEstimatedMonthlySavings        :: Double-    , _tacosEstimatedPercentMonthlySavings :: Double-    } deriving (Eq, Ord, Read, Show)---- | 'TrustedAdvisorCostOptimizingSummary' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacosEstimatedMonthlySavings' @::@ 'Double'------ * 'tacosEstimatedPercentMonthlySavings' @::@ 'Double'----trustedAdvisorCostOptimizingSummary :: Double -- ^ 'tacosEstimatedMonthlySavings'-                                    -> Double -- ^ 'tacosEstimatedPercentMonthlySavings'-                                    -> TrustedAdvisorCostOptimizingSummary-trustedAdvisorCostOptimizingSummary p1 p2 = TrustedAdvisorCostOptimizingSummary-    { _tacosEstimatedMonthlySavings        = p1-    , _tacosEstimatedPercentMonthlySavings = p2-    }---- | The estimated monthly savings that might be realized if the recommended--- actions are taken.-tacosEstimatedMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double-tacosEstimatedMonthlySavings =-    lens _tacosEstimatedMonthlySavings-        (\s a -> s { _tacosEstimatedMonthlySavings = a })---- | The estimated percentage of savings that might be realized if the recommended--- actions are taken.-tacosEstimatedPercentMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double-tacosEstimatedPercentMonthlySavings =-    lens _tacosEstimatedPercentMonthlySavings-        (\s a -> s { _tacosEstimatedPercentMonthlySavings = a })--instance FromJSON TrustedAdvisorCostOptimizingSummary where-    parseJSON = withObject "TrustedAdvisorCostOptimizingSummary" $ \o -> TrustedAdvisorCostOptimizingSummary-        <$> o .:  "estimatedMonthlySavings"-        <*> o .:  "estimatedPercentMonthlySavings"--instance ToJSON TrustedAdvisorCostOptimizingSummary where-    toJSON TrustedAdvisorCostOptimizingSummary{..} = object-        [ "estimatedMonthlySavings"        .= _tacosEstimatedMonthlySavings-        , "estimatedPercentMonthlySavings" .= _tacosEstimatedPercentMonthlySavings-        ]--data SeverityLevel = SeverityLevel-    { _slCode :: Maybe Text-    , _slName :: Maybe Text-    } deriving (Eq, Ord, Read, Show)---- | 'SeverityLevel' constructor.------ The fields accessible through corresponding lenses are:------ * 'slCode' @::@ 'Maybe' 'Text'------ * 'slName' @::@ 'Maybe' 'Text'----severityLevel :: SeverityLevel-severityLevel = SeverityLevel-    { _slCode = Nothing-    , _slName = Nothing-    }---- | One of four values: "low," "medium," "high," and "urgent". These values--- correspond to response times returned to the caller in 'SeverityLevel.name'.-slCode :: Lens' SeverityLevel (Maybe Text)-slCode = lens _slCode (\s a -> s { _slCode = a })---- | The name of the severity level that corresponds to the severity level code.-slName :: Lens' SeverityLevel (Maybe Text)-slName = lens _slName (\s a -> s { _slName = a })--instance FromJSON SeverityLevel where-    parseJSON = withObject "SeverityLevel" $ \o -> SeverityLevel-        <$> o .:? "code"-        <*> o .:? "name"--instance ToJSON SeverityLevel where-    toJSON SeverityLevel{..} = object-        [ "code" .= _slCode-        , "name" .= _slName-        ]--data CaseDetails = CaseDetails-    { _cdCaseId               :: Maybe Text-    , _cdCategoryCode         :: Maybe Text-    , _cdCcEmailAddresses     :: List "ccEmailAddresses" Text-    , _cdDisplayId            :: Maybe Text-    , _cdLanguage             :: Maybe Text-    , _cdRecentCommunications :: Maybe RecentCaseCommunications-    , _cdServiceCode          :: Maybe Text-    , _cdSeverityCode         :: Maybe Text-    , _cdStatus               :: Maybe Text-    , _cdSubject              :: Maybe Text-    , _cdSubmittedBy          :: Maybe Text-    , _cdTimeCreated          :: Maybe Text-    } deriving (Eq, Read, Show)---- | 'CaseDetails' constructor.------ The fields accessible through corresponding lenses are:------ * 'cdCaseId' @::@ 'Maybe' 'Text'------ * 'cdCategoryCode' @::@ 'Maybe' 'Text'------ * 'cdCcEmailAddresses' @::@ ['Text']------ * 'cdDisplayId' @::@ 'Maybe' 'Text'------ * 'cdLanguage' @::@ 'Maybe' 'Text'------ * 'cdRecentCommunications' @::@ 'Maybe' 'RecentCaseCommunications'------ * 'cdServiceCode' @::@ 'Maybe' 'Text'------ * 'cdSeverityCode' @::@ 'Maybe' 'Text'------ * 'cdStatus' @::@ 'Maybe' 'Text'------ * 'cdSubject' @::@ 'Maybe' 'Text'------ * 'cdSubmittedBy' @::@ 'Maybe' 'Text'------ * 'cdTimeCreated' @::@ 'Maybe' 'Text'----caseDetails :: CaseDetails-caseDetails = CaseDetails-    { _cdCaseId               = Nothing-    , _cdDisplayId            = Nothing-    , _cdSubject              = Nothing-    , _cdStatus               = Nothing-    , _cdServiceCode          = Nothing-    , _cdCategoryCode         = Nothing-    , _cdSeverityCode         = Nothing-    , _cdSubmittedBy          = Nothing-    , _cdTimeCreated          = Nothing-    , _cdRecentCommunications = Nothing-    , _cdCcEmailAddresses     = mempty-    , _cdLanguage             = Nothing-    }---- | The AWS Support case ID requested or returned in the call. The case ID is an--- alphanumeric string formatted as shown in this example: case-/12345678910-2013-c4c1d2bf33c5cf47/-cdCaseId :: Lens' CaseDetails (Maybe Text)-cdCaseId = lens _cdCaseId (\s a -> s { _cdCaseId = a })---- | The category of problem for the AWS Support case.-cdCategoryCode :: Lens' CaseDetails (Maybe Text)-cdCategoryCode = lens _cdCategoryCode (\s a -> s { _cdCategoryCode = a })---- | The email addresses that receive copies of communication about the case.-cdCcEmailAddresses :: Lens' CaseDetails [Text]-cdCcEmailAddresses =-    lens _cdCcEmailAddresses (\s a -> s { _cdCcEmailAddresses = a })-        . _List---- | The ID displayed for the case in the AWS Support Center. This is a numeric--- string.-cdDisplayId :: Lens' CaseDetails (Maybe Text)-cdDisplayId = lens _cdDisplayId (\s a -> s { _cdDisplayId = a })---- | The ISO 639-1 code for the language in which AWS provides support. AWS--- Support currently supports English ("en") and Japanese ("ja"). Language--- parameters must be passed explicitly for operations that take them.-cdLanguage :: Lens' CaseDetails (Maybe Text)-cdLanguage = lens _cdLanguage (\s a -> s { _cdLanguage = a })---- | The five most recent communications between you and AWS Support Center,--- including the IDs of any attachments to the communications. Also includes a 'nextToken' that you can use to retrieve earlier communications.-cdRecentCommunications :: Lens' CaseDetails (Maybe RecentCaseCommunications)-cdRecentCommunications =-    lens _cdRecentCommunications (\s a -> s { _cdRecentCommunications = a })---- | The code for the AWS service returned by the call to 'DescribeServices'.-cdServiceCode :: Lens' CaseDetails (Maybe Text)-cdServiceCode = lens _cdServiceCode (\s a -> s { _cdServiceCode = a })---- | The code for the severity level returned by the call to 'DescribeSeverityLevels'--- .-cdSeverityCode :: Lens' CaseDetails (Maybe Text)-cdSeverityCode = lens _cdSeverityCode (\s a -> s { _cdSeverityCode = a })---- | The status of the case.-cdStatus :: Lens' CaseDetails (Maybe Text)-cdStatus = lens _cdStatus (\s a -> s { _cdStatus = a })---- | The subject line for the case in the AWS Support Center.-cdSubject :: Lens' CaseDetails (Maybe Text)-cdSubject = lens _cdSubject (\s a -> s { _cdSubject = a })---- | The email address of the account that submitted the case.-cdSubmittedBy :: Lens' CaseDetails (Maybe Text)-cdSubmittedBy = lens _cdSubmittedBy (\s a -> s { _cdSubmittedBy = a })---- | The time that the case was case created in the AWS Support Center.-cdTimeCreated :: Lens' CaseDetails (Maybe Text)-cdTimeCreated = lens _cdTimeCreated (\s a -> s { _cdTimeCreated = a })--instance FromJSON CaseDetails where-    parseJSON = withObject "CaseDetails" $ \o -> CaseDetails-        <$> o .:? "caseId"-        <*> o .:? "categoryCode"-        <*> o .:? "ccEmailAddresses" .!= mempty-        <*> o .:? "displayId"-        <*> o .:? "language"-        <*> o .:? "recentCommunications"-        <*> o .:? "serviceCode"-        <*> o .:? "severityCode"-        <*> o .:? "status"-        <*> o .:? "subject"-        <*> o .:? "submittedBy"-        <*> o .:? "timeCreated"--instance ToJSON CaseDetails where-    toJSON CaseDetails{..} = object-        [ "caseId"               .= _cdCaseId-        , "displayId"            .= _cdDisplayId-        , "subject"              .= _cdSubject-        , "status"               .= _cdStatus-        , "serviceCode"          .= _cdServiceCode-        , "categoryCode"         .= _cdCategoryCode-        , "severityCode"         .= _cdSeverityCode-        , "submittedBy"          .= _cdSubmittedBy-        , "timeCreated"          .= _cdTimeCreated-        , "recentCommunications" .= _cdRecentCommunications-        , "ccEmailAddresses"     .= _cdCcEmailAddresses-        , "language"             .= _cdLanguage-        ]--data TrustedAdvisorCheckRefreshStatus = TrustedAdvisorCheckRefreshStatus-    { _tacrsCheckId                    :: Text-    , _tacrsMillisUntilNextRefreshable :: Integer-    , _tacrsStatus                     :: Text-    } deriving (Eq, Ord, Read, Show)---- | 'TrustedAdvisorCheckRefreshStatus' constructor.------ The fields accessible through corresponding lenses are:------ * 'tacrsCheckId' @::@ 'Text'------ * 'tacrsMillisUntilNextRefreshable' @::@ 'Integer'------ * 'tacrsStatus' @::@ 'Text'----trustedAdvisorCheckRefreshStatus :: Text -- ^ 'tacrsCheckId'-                                 -> Text -- ^ 'tacrsStatus'-                                 -> Integer -- ^ 'tacrsMillisUntilNextRefreshable'-                                 -> TrustedAdvisorCheckRefreshStatus-trustedAdvisorCheckRefreshStatus p1 p2 p3 = TrustedAdvisorCheckRefreshStatus-    { _tacrsCheckId                    = p1-    , _tacrsStatus                     = p2-    , _tacrsMillisUntilNextRefreshable = p3-    }---- | The unique identifier for the Trusted Advisor check.-tacrsCheckId :: Lens' TrustedAdvisorCheckRefreshStatus Text-tacrsCheckId = lens _tacrsCheckId (\s a -> s { _tacrsCheckId = a })---- | The amount of time, in milliseconds, until the Trusted Advisor check is--- eligible for refresh.-tacrsMillisUntilNextRefreshable :: Lens' TrustedAdvisorCheckRefreshStatus Integer-tacrsMillisUntilNextRefreshable =-    lens _tacrsMillisUntilNextRefreshable-        (\s a -> s { _tacrsMillisUntilNextRefreshable = a })---- | The status of the Trusted Advisor check for which a refresh has been--- requested: "none", "enqueued", "processing", "success", or "abandoned".-tacrsStatus :: Lens' TrustedAdvisorCheckRefreshStatus Text-tacrsStatus = lens _tacrsStatus (\s a -> s { _tacrsStatus = a })--instance FromJSON TrustedAdvisorCheckRefreshStatus where-    parseJSON = withObject "TrustedAdvisorCheckRefreshStatus" $ \o -> TrustedAdvisorCheckRefreshStatus-        <$> o .:  "checkId"-        <*> o .:  "millisUntilNextRefreshable"-        <*> o .:  "status"--instance ToJSON TrustedAdvisorCheckRefreshStatus where-    toJSON TrustedAdvisorCheckRefreshStatus{..} = object-        [ "checkId"                    .= _tacrsCheckId-        , "status"                     .= _tacrsStatus-        , "millisUntilNextRefreshable" .= _tacrsMillisUntilNextRefreshable-        ]+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies      #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Network.AWS.Support.Types+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.Support.Types+    (+    -- * Service+      Support++    -- * Errors+    , _AttachmentSetExpired+    , _AttachmentLimitExceeded+    , _DescribeAttachmentLimitExceeded+    , _CaseIdNotFound+    , _AttachmentSetIdNotFound+    , _AttachmentSetSizeLimitExceeded+    , _AttachmentIdNotFound+    , _InternalServerError+    , _CaseCreationLimitExceeded++    -- * Attachment+    , Attachment+    , attachment+    , aData+    , aFileName++    -- * AttachmentDetails+    , AttachmentDetails+    , attachmentDetails+    , adAttachmentId+    , adFileName++    -- * CaseDetails+    , CaseDetails+    , caseDetails+    , cdSubject+    , cdStatus+    , cdRecentCommunications+    , cdSeverityCode+    , cdCaseId+    , cdCcEmailAddresses+    , cdDisplayId+    , cdSubmittedBy+    , cdLanguage+    , cdCategoryCode+    , cdTimeCreated+    , cdServiceCode++    -- * Category+    , Category+    , category+    , cName+    , cCode++    -- * Communication+    , Communication+    , communication+    , cBody+    , cCaseId+    , cSubmittedBy+    , cTimeCreated+    , cAttachmentSet++    -- * RecentCaseCommunications+    , RecentCaseCommunications+    , recentCaseCommunications+    , rccNextToken+    , rccCommunications++    -- * SeverityLevel+    , SeverityLevel+    , severityLevel+    , slName+    , slCode++    -- * SupportService+    , SupportService+    , supportService+    , ssCategories+    , ssName+    , ssCode++    -- * TrustedAdvisorCategorySpecificSummary+    , TrustedAdvisorCategorySpecificSummary+    , trustedAdvisorCategorySpecificSummary+    , tacssCostOptimizing++    -- * TrustedAdvisorCheckDescription+    , TrustedAdvisorCheckDescription+    , trustedAdvisorCheckDescription+    , tacdId+    , tacdName+    , tacdDescription+    , tacdCategory+    , tacdMetadata++    -- * TrustedAdvisorCheckRefreshStatus+    , TrustedAdvisorCheckRefreshStatus+    , trustedAdvisorCheckRefreshStatus+    , tacrsCheckId+    , tacrsStatus+    , tacrsMillisUntilNextRefreshable++    -- * TrustedAdvisorCheckResult+    , TrustedAdvisorCheckResult+    , trustedAdvisorCheckResult+    , tacrCheckId+    , tacrTimestamp+    , tacrStatus+    , tacrResourcesSummary+    , tacrCategorySpecificSummary+    , tacrFlaggedResources++    -- * TrustedAdvisorCheckSummary+    , TrustedAdvisorCheckSummary+    , trustedAdvisorCheckSummary+    , tacsHasFlaggedResources+    , tacsCheckId+    , tacsTimestamp+    , tacsStatus+    , tacsResourcesSummary+    , tacsCategorySpecificSummary++    -- * TrustedAdvisorCostOptimizingSummary+    , TrustedAdvisorCostOptimizingSummary+    , trustedAdvisorCostOptimizingSummary+    , tacosEstimatedMonthlySavings+    , tacosEstimatedPercentMonthlySavings++    -- * TrustedAdvisorResourceDetail+    , TrustedAdvisorResourceDetail+    , trustedAdvisorResourceDetail+    , tardIsSuppressed+    , tardStatus+    , tardRegion+    , tardResourceId+    , tardMetadata++    -- * TrustedAdvisorResourcesSummary+    , TrustedAdvisorResourcesSummary+    , trustedAdvisorResourcesSummary+    , tarsResourcesProcessed+    , tarsResourcesFlagged+    , tarsResourcesIgnored+    , tarsResourcesSuppressed+    ) where++import           Network.AWS.Prelude+import           Network.AWS.Sign.V4+import           Network.AWS.Support.Types.Product+import           Network.AWS.Support.Types.Sum++-- | Version @2013-04-15@ of the Amazon Support SDK.+data Support++instance AWSService Support where+    type Sg Support = V4+    service = const svc+      where+        svc =+            Service+            { _svcAbbrev = "Support"+            , _svcPrefix = "support"+            , _svcVersion = "2013-04-15"+            , _svcEndpoint = defaultEndpoint svc+            , _svcTimeout = Just 70+            , _svcStatus = statusSuccess+            , _svcError = parseJSONError+            , _svcRetry = retry+            }+        retry =+            Exponential+            { _retryBase = 5.0e-2+            , _retryGrowth = 2+            , _retryAttempts = 5+            , _retryCheck = check+            }+        check e+          | has (hasCode "ThrottlingException" . hasStatus 400) e =+              Just "throttling_exception"+          | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+          | has (hasStatus 503) e = Just "service_unavailable"+          | has (hasStatus 500) e = Just "general_server_error"+          | has (hasStatus 509) e = Just "limit_exceeded"+          | otherwise = Nothing++-- | The expiration time of the attachment set has passed. The set expires 1+-- hour after it is created.+_AttachmentSetExpired :: AsError a => Getting (First ServiceError) a ServiceError+_AttachmentSetExpired = _ServiceError . hasCode "AttachmentSetExpired"++-- | The limit for the number of attachment sets created in a short period of+-- time has been exceeded.+_AttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_AttachmentLimitExceeded = _ServiceError . hasCode "AttachmentLimitExceeded"++-- | The limit for the number of DescribeAttachment requests in a short+-- period of time has been exceeded.+_DescribeAttachmentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_DescribeAttachmentLimitExceeded =+    _ServiceError . hasCode "DescribeAttachmentLimitExceeded"++-- | The requested 'CaseId' could not be located.+_CaseIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError+_CaseIdNotFound = _ServiceError . hasCode "CaseIdNotFound"++-- | An attachment set with the specified ID could not be found.+_AttachmentSetIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError+_AttachmentSetIdNotFound = _ServiceError . hasCode "AttachmentSetIdNotFound"++-- | A limit for the size of an attachment set has been exceeded. The limits+-- are 3 attachments and 5 MB per attachment.+_AttachmentSetSizeLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_AttachmentSetSizeLimitExceeded =+    _ServiceError . hasCode "AttachmentSetSizeLimitExceeded"++-- | An attachment with the specified ID could not be found.+_AttachmentIdNotFound :: AsError a => Getting (First ServiceError) a ServiceError+_AttachmentIdNotFound = _ServiceError . hasCode "AttachmentIdNotFound"++-- | An internal server error occurred.+_InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError+_InternalServerError = _ServiceError . hasCode "InternalServerError"++-- | The case creation limit for the account has been exceeded.+_CaseCreationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_CaseCreationLimitExceeded =+    _ServiceError . hasCode "CaseCreationLimitExceeded"
+ gen/Network/AWS/Support/Types/Product.hs view
@@ -0,0 +1,1026 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Network.AWS.Support.Types.Product+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.Support.Types.Product where++import           Network.AWS.Prelude+import           Network.AWS.Support.Types.Sum++-- | An attachment to a case communication. The attachment consists of the+-- file name and the content of the file.+--+-- /See:/ 'attachment' smart constructor.+data Attachment = Attachment'+    { _aData     :: !(Maybe Base64)+    , _aFileName :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Attachment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aData'+--+-- * 'aFileName'+attachment+    :: Attachment+attachment =+    Attachment'+    { _aData = Nothing+    , _aFileName = Nothing+    }++-- | The content of the attachment file.+aData :: Lens' Attachment (Maybe ByteString)+aData = lens _aData (\ s a -> s{_aData = a}) . mapping _Base64;++-- | The name of the attachment file.+aFileName :: Lens' Attachment (Maybe Text)+aFileName = lens _aFileName (\ s a -> s{_aFileName = a});++instance FromJSON Attachment where+        parseJSON+          = withObject "Attachment"+              (\ x ->+                 Attachment' <$>+                   (x .:? "data") <*> (x .:? "fileName"))++instance ToJSON Attachment where+        toJSON Attachment'{..}+          = object ["data" .= _aData, "fileName" .= _aFileName]++-- | The file name and ID of an attachment to a case communication. You can+-- use the ID to retrieve the attachment with the DescribeAttachment+-- operation.+--+-- /See:/ 'attachmentDetails' smart constructor.+data AttachmentDetails = AttachmentDetails'+    { _adAttachmentId :: !(Maybe Text)+    , _adFileName     :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AttachmentDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adAttachmentId'+--+-- * 'adFileName'+attachmentDetails+    :: AttachmentDetails+attachmentDetails =+    AttachmentDetails'+    { _adAttachmentId = Nothing+    , _adFileName = Nothing+    }++-- | The ID of the attachment.+adAttachmentId :: Lens' AttachmentDetails (Maybe Text)+adAttachmentId = lens _adAttachmentId (\ s a -> s{_adAttachmentId = a});++-- | The file name of the attachment.+adFileName :: Lens' AttachmentDetails (Maybe Text)+adFileName = lens _adFileName (\ s a -> s{_adFileName = a});++instance FromJSON AttachmentDetails where+        parseJSON+          = withObject "AttachmentDetails"+              (\ x ->+                 AttachmentDetails' <$>+                   (x .:? "attachmentId") <*> (x .:? "fileName"))++-- | A JSON-formatted object that contains the metadata for a support case.+-- It is contained the response from a DescribeCases request.+-- __CaseDetails__ contains the following fields:+--+-- 1.  __CaseID.__ The AWS Support case ID requested or returned in the+--     call. The case ID is an alphanumeric string formatted as shown in+--     this example: case-/12345678910-2013-c4c1d2bf33c5cf47/.+-- 2.  __CategoryCode.__ The category of problem for the AWS Support case.+--     Corresponds to the CategoryCode values returned by a call to+--     DescribeServices.+-- 3.  __DisplayId.__ The identifier for the case on pages in the AWS+--     Support Center.+-- 4.  __Language.__ The ISO 639-1 code for the language in which AWS+--     provides support. AWS Support currently supports English (\"en\")+--     and Japanese (\"ja\"). Language parameters must be passed explicitly+--     for operations that take them.+-- 5.  __RecentCommunications.__ One or more Communication objects. Fields+--     of these objects are 'Attachments', 'Body', 'CaseId', 'SubmittedBy',+--     and 'TimeCreated'.+-- 6.  __NextToken.__ A resumption point for pagination.+-- 7.  __ServiceCode.__ The identifier for the AWS service that corresponds+--     to the service code defined in the call to DescribeServices.+-- 8.  __SeverityCode.__ The severity code assigned to the case. Contains+--     one of the values returned by the call to DescribeSeverityLevels.+-- 9.  __Status.__ The status of the case in the AWS Support Center.+-- 10. __Subject.__ The subject line of the case.+-- 11. __SubmittedBy.__ The email address of the account that submitted the+--     case.+-- 12. __TimeCreated.__ The time the case was created, in ISO-8601 format.+--+-- /See:/ 'caseDetails' smart constructor.+data CaseDetails = CaseDetails'+    { _cdSubject              :: !(Maybe Text)+    , _cdStatus               :: !(Maybe Text)+    , _cdRecentCommunications :: !(Maybe RecentCaseCommunications)+    , _cdSeverityCode         :: !(Maybe Text)+    , _cdCaseId               :: !(Maybe Text)+    , _cdCcEmailAddresses     :: !(Maybe [Text])+    , _cdDisplayId            :: !(Maybe Text)+    , _cdSubmittedBy          :: !(Maybe Text)+    , _cdLanguage             :: !(Maybe Text)+    , _cdCategoryCode         :: !(Maybe Text)+    , _cdTimeCreated          :: !(Maybe Text)+    , _cdServiceCode          :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CaseDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdSubject'+--+-- * 'cdStatus'+--+-- * 'cdRecentCommunications'+--+-- * 'cdSeverityCode'+--+-- * 'cdCaseId'+--+-- * 'cdCcEmailAddresses'+--+-- * 'cdDisplayId'+--+-- * 'cdSubmittedBy'+--+-- * 'cdLanguage'+--+-- * 'cdCategoryCode'+--+-- * 'cdTimeCreated'+--+-- * 'cdServiceCode'+caseDetails+    :: CaseDetails+caseDetails =+    CaseDetails'+    { _cdSubject = Nothing+    , _cdStatus = Nothing+    , _cdRecentCommunications = Nothing+    , _cdSeverityCode = Nothing+    , _cdCaseId = Nothing+    , _cdCcEmailAddresses = Nothing+    , _cdDisplayId = Nothing+    , _cdSubmittedBy = Nothing+    , _cdLanguage = Nothing+    , _cdCategoryCode = Nothing+    , _cdTimeCreated = Nothing+    , _cdServiceCode = Nothing+    }++-- | The subject line for the case in the AWS Support Center.+cdSubject :: Lens' CaseDetails (Maybe Text)+cdSubject = lens _cdSubject (\ s a -> s{_cdSubject = a});++-- | The status of the case.+cdStatus :: Lens' CaseDetails (Maybe Text)+cdStatus = lens _cdStatus (\ s a -> s{_cdStatus = a});++-- | The five most recent communications between you and AWS Support Center,+-- including the IDs of any attachments to the communications. Also+-- includes a 'nextToken' that you can use to retrieve earlier+-- communications.+cdRecentCommunications :: Lens' CaseDetails (Maybe RecentCaseCommunications)+cdRecentCommunications = lens _cdRecentCommunications (\ s a -> s{_cdRecentCommunications = a});++-- | The code for the severity level returned by the call to+-- DescribeSeverityLevels.+cdSeverityCode :: Lens' CaseDetails (Maybe Text)+cdSeverityCode = lens _cdSeverityCode (\ s a -> s{_cdSeverityCode = a});++-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/+cdCaseId :: Lens' CaseDetails (Maybe Text)+cdCaseId = lens _cdCaseId (\ s a -> s{_cdCaseId = a});++-- | The email addresses that receive copies of communication about the case.+cdCcEmailAddresses :: Lens' CaseDetails [Text]+cdCcEmailAddresses = lens _cdCcEmailAddresses (\ s a -> s{_cdCcEmailAddresses = a}) . _Default . _Coerce;++-- | The ID displayed for the case in the AWS Support Center. This is a+-- numeric string.+cdDisplayId :: Lens' CaseDetails (Maybe Text)+cdDisplayId = lens _cdDisplayId (\ s a -> s{_cdDisplayId = a});++-- | The email address of the account that submitted the case.+cdSubmittedBy :: Lens' CaseDetails (Maybe Text)+cdSubmittedBy = lens _cdSubmittedBy (\ s a -> s{_cdSubmittedBy = a});++-- | The ISO 639-1 code for the language in which AWS provides support. AWS+-- Support currently supports English (\"en\") and Japanese (\"ja\").+-- Language parameters must be passed explicitly for operations that take+-- them.+cdLanguage :: Lens' CaseDetails (Maybe Text)+cdLanguage = lens _cdLanguage (\ s a -> s{_cdLanguage = a});++-- | The category of problem for the AWS Support case.+cdCategoryCode :: Lens' CaseDetails (Maybe Text)+cdCategoryCode = lens _cdCategoryCode (\ s a -> s{_cdCategoryCode = a});++-- | The time that the case was case created in the AWS Support Center.+cdTimeCreated :: Lens' CaseDetails (Maybe Text)+cdTimeCreated = lens _cdTimeCreated (\ s a -> s{_cdTimeCreated = a});++-- | The code for the AWS service returned by the call to DescribeServices.+cdServiceCode :: Lens' CaseDetails (Maybe Text)+cdServiceCode = lens _cdServiceCode (\ s a -> s{_cdServiceCode = a});++instance FromJSON CaseDetails where+        parseJSON+          = withObject "CaseDetails"+              (\ x ->+                 CaseDetails' <$>+                   (x .:? "subject") <*> (x .:? "status") <*>+                     (x .:? "recentCommunications")+                     <*> (x .:? "severityCode")+                     <*> (x .:? "caseId")+                     <*> (x .:? "ccEmailAddresses" .!= mempty)+                     <*> (x .:? "displayId")+                     <*> (x .:? "submittedBy")+                     <*> (x .:? "language")+                     <*> (x .:? "categoryCode")+                     <*> (x .:? "timeCreated")+                     <*> (x .:? "serviceCode"))++-- | A JSON-formatted name\/value pair that represents the category name and+-- category code of the problem, selected from the DescribeServices+-- response for each AWS service.+--+-- /See:/ 'category' smart constructor.+data Category = Category'+    { _cName :: !(Maybe Text)+    , _cCode :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Category' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cName'+--+-- * 'cCode'+category+    :: Category+category =+    Category'+    { _cName = Nothing+    , _cCode = Nothing+    }++-- | The category name for the support case.+cName :: Lens' Category (Maybe Text)+cName = lens _cName (\ s a -> s{_cName = a});++-- | The category code for the support case.+cCode :: Lens' Category (Maybe Text)+cCode = lens _cCode (\ s a -> s{_cCode = a});++instance FromJSON Category where+        parseJSON+          = withObject "Category"+              (\ x ->+                 Category' <$> (x .:? "name") <*> (x .:? "code"))++-- | A communication associated with an AWS Support case. The communication+-- consists of the case ID, the message body, attachment information, the+-- account email address, and the date and time of the communication.+--+-- /See:/ 'communication' smart constructor.+data Communication = Communication'+    { _cBody          :: !(Maybe Text)+    , _cCaseId        :: !(Maybe Text)+    , _cSubmittedBy   :: !(Maybe Text)+    , _cTimeCreated   :: !(Maybe Text)+    , _cAttachmentSet :: !(Maybe [AttachmentDetails])+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Communication' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cBody'+--+-- * 'cCaseId'+--+-- * 'cSubmittedBy'+--+-- * 'cTimeCreated'+--+-- * 'cAttachmentSet'+communication+    :: Communication+communication =+    Communication'+    { _cBody = Nothing+    , _cCaseId = Nothing+    , _cSubmittedBy = Nothing+    , _cTimeCreated = Nothing+    , _cAttachmentSet = Nothing+    }++-- | The text of the communication between the customer and AWS Support.+cBody :: Lens' Communication (Maybe Text)+cBody = lens _cBody (\ s a -> s{_cBody = a});++-- | The AWS Support case ID requested or returned in the call. The case ID+-- is an alphanumeric string formatted as shown in this example:+-- case-/12345678910-2013-c4c1d2bf33c5cf47/+cCaseId :: Lens' Communication (Maybe Text)+cCaseId = lens _cCaseId (\ s a -> s{_cCaseId = a});++-- | The email address of the account that submitted the AWS Support case.+cSubmittedBy :: Lens' Communication (Maybe Text)+cSubmittedBy = lens _cSubmittedBy (\ s a -> s{_cSubmittedBy = a});++-- | The time the communication was created.+cTimeCreated :: Lens' Communication (Maybe Text)+cTimeCreated = lens _cTimeCreated (\ s a -> s{_cTimeCreated = a});++-- | Information about the attachments to the case communication.+cAttachmentSet :: Lens' Communication [AttachmentDetails]+cAttachmentSet = lens _cAttachmentSet (\ s a -> s{_cAttachmentSet = a}) . _Default . _Coerce;++instance FromJSON Communication where+        parseJSON+          = withObject "Communication"+              (\ x ->+                 Communication' <$>+                   (x .:? "body") <*> (x .:? "caseId") <*>+                     (x .:? "submittedBy")+                     <*> (x .:? "timeCreated")+                     <*> (x .:? "attachmentSet" .!= mempty))++-- | The five most recent communications associated with the case.+--+-- /See:/ 'recentCaseCommunications' smart constructor.+data RecentCaseCommunications = RecentCaseCommunications'+    { _rccNextToken      :: !(Maybe Text)+    , _rccCommunications :: !(Maybe [Communication])+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecentCaseCommunications' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rccNextToken'+--+-- * 'rccCommunications'+recentCaseCommunications+    :: RecentCaseCommunications+recentCaseCommunications =+    RecentCaseCommunications'+    { _rccNextToken = Nothing+    , _rccCommunications = Nothing+    }++-- | A resumption point for pagination.+rccNextToken :: Lens' RecentCaseCommunications (Maybe Text)+rccNextToken = lens _rccNextToken (\ s a -> s{_rccNextToken = a});++-- | The five most recent communications associated with the case.+rccCommunications :: Lens' RecentCaseCommunications [Communication]+rccCommunications = lens _rccCommunications (\ s a -> s{_rccCommunications = a}) . _Default . _Coerce;++instance FromJSON RecentCaseCommunications where+        parseJSON+          = withObject "RecentCaseCommunications"+              (\ x ->+                 RecentCaseCommunications' <$>+                   (x .:? "nextToken") <*>+                     (x .:? "communications" .!= mempty))++-- | A code and name pair that represent a severity level that can be applied+-- to a support case.+--+-- /See:/ 'severityLevel' smart constructor.+data SeverityLevel = SeverityLevel'+    { _slName :: !(Maybe Text)+    , _slCode :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SeverityLevel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'slName'+--+-- * 'slCode'+severityLevel+    :: SeverityLevel+severityLevel =+    SeverityLevel'+    { _slName = Nothing+    , _slCode = Nothing+    }++-- | The name of the severity level that corresponds to the severity level+-- code.+slName :: Lens' SeverityLevel (Maybe Text)+slName = lens _slName (\ s a -> s{_slName = a});++-- | One of four values: \"low,\" \"medium,\" \"high,\" and \"urgent\". These+-- values correspond to response times returned to the caller in+-- 'SeverityLevel.name'.+slCode :: Lens' SeverityLevel (Maybe Text)+slCode = lens _slCode (\ s a -> s{_slCode = a});++instance FromJSON SeverityLevel where+        parseJSON+          = withObject "SeverityLevel"+              (\ x ->+                 SeverityLevel' <$> (x .:? "name") <*> (x .:? "code"))++-- | Information about an AWS service returned by the DescribeServices+-- operation.+--+-- /See:/ 'supportService' smart constructor.+data SupportService = SupportService'+    { _ssCategories :: !(Maybe [Category])+    , _ssName       :: !(Maybe Text)+    , _ssCode       :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SupportService' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ssCategories'+--+-- * 'ssName'+--+-- * 'ssCode'+supportService+    :: SupportService+supportService =+    SupportService'+    { _ssCategories = Nothing+    , _ssName = Nothing+    , _ssCode = Nothing+    }++-- | A list of categories that describe the type of support issue a case+-- describes. Categories consist of a category name and a category code.+-- Category names and codes are passed to AWS Support when you call+-- CreateCase.+ssCategories :: Lens' SupportService [Category]+ssCategories = lens _ssCategories (\ s a -> s{_ssCategories = a}) . _Default . _Coerce;++-- | The friendly name for an AWS service. The 'Code' element contains the+-- corresponding code.+ssName :: Lens' SupportService (Maybe Text)+ssName = lens _ssName (\ s a -> s{_ssName = a});++-- | The code for an AWS service returned by the DescribeServices response.+-- The 'Name' element contains the corresponding friendly name.+ssCode :: Lens' SupportService (Maybe Text)+ssCode = lens _ssCode (\ s a -> s{_ssCode = a});++instance FromJSON SupportService where+        parseJSON+          = withObject "SupportService"+              (\ x ->+                 SupportService' <$>+                   (x .:? "categories" .!= mempty) <*> (x .:? "name")+                     <*> (x .:? "code"))++-- | The container for summary information that relates to the category of+-- the Trusted Advisor check.+--+-- /See:/ 'trustedAdvisorCategorySpecificSummary' smart constructor.+newtype TrustedAdvisorCategorySpecificSummary = TrustedAdvisorCategorySpecificSummary'+    { _tacssCostOptimizing :: Maybe TrustedAdvisorCostOptimizingSummary+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCategorySpecificSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacssCostOptimizing'+trustedAdvisorCategorySpecificSummary+    :: TrustedAdvisorCategorySpecificSummary+trustedAdvisorCategorySpecificSummary =+    TrustedAdvisorCategorySpecificSummary'+    { _tacssCostOptimizing = Nothing+    }++-- | The summary information about cost savings for a Trusted Advisor check+-- that is in the Cost Optimizing category.+tacssCostOptimizing :: Lens' TrustedAdvisorCategorySpecificSummary (Maybe TrustedAdvisorCostOptimizingSummary)+tacssCostOptimizing = lens _tacssCostOptimizing (\ s a -> s{_tacssCostOptimizing = a});++instance FromJSON+         TrustedAdvisorCategorySpecificSummary where+        parseJSON+          = withObject "TrustedAdvisorCategorySpecificSummary"+              (\ x ->+                 TrustedAdvisorCategorySpecificSummary' <$>+                   (x .:? "costOptimizing"))++-- | The description and metadata for a Trusted Advisor check.+--+-- /See:/ 'trustedAdvisorCheckDescription' smart constructor.+data TrustedAdvisorCheckDescription = TrustedAdvisorCheckDescription'+    { _tacdId          :: !Text+    , _tacdName        :: !Text+    , _tacdDescription :: !Text+    , _tacdCategory    :: !Text+    , _tacdMetadata    :: ![Text]+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCheckDescription' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacdId'+--+-- * 'tacdName'+--+-- * 'tacdDescription'+--+-- * 'tacdCategory'+--+-- * 'tacdMetadata'+trustedAdvisorCheckDescription+    :: Text -- ^ 'tacdId'+    -> Text -- ^ 'tacdName'+    -> Text -- ^ 'tacdDescription'+    -> Text -- ^ 'tacdCategory'+    -> TrustedAdvisorCheckDescription+trustedAdvisorCheckDescription pId_ pName_ pDescription_ pCategory_ =+    TrustedAdvisorCheckDescription'+    { _tacdId = pId_+    , _tacdName = pName_+    , _tacdDescription = pDescription_+    , _tacdCategory = pCategory_+    , _tacdMetadata = mempty+    }++-- | The unique identifier for the Trusted Advisor check.+tacdId :: Lens' TrustedAdvisorCheckDescription Text+tacdId = lens _tacdId (\ s a -> s{_tacdId = a});++-- | The display name for the Trusted Advisor check.+tacdName :: Lens' TrustedAdvisorCheckDescription Text+tacdName = lens _tacdName (\ s a -> s{_tacdName = a});++-- | The description of the Trusted Advisor check, which includes the alert+-- criteria and recommended actions (contains HTML markup).+tacdDescription :: Lens' TrustedAdvisorCheckDescription Text+tacdDescription = lens _tacdDescription (\ s a -> s{_tacdDescription = a});++-- | The category of the Trusted Advisor check.+tacdCategory :: Lens' TrustedAdvisorCheckDescription Text+tacdCategory = lens _tacdCategory (\ s a -> s{_tacdCategory = a});++-- | The column headings for the data returned by the Trusted Advisor check.+-- The order of the headings corresponds to the order of the data in the+-- __Metadata__ element of the TrustedAdvisorResourceDetail for the check.+-- __Metadata__ contains all the data that is shown in the Excel download,+-- even in those cases where the UI shows just summary data.+tacdMetadata :: Lens' TrustedAdvisorCheckDescription [Text]+tacdMetadata = lens _tacdMetadata (\ s a -> s{_tacdMetadata = a}) . _Coerce;++instance FromJSON TrustedAdvisorCheckDescription+         where+        parseJSON+          = withObject "TrustedAdvisorCheckDescription"+              (\ x ->+                 TrustedAdvisorCheckDescription' <$>+                   (x .: "id") <*> (x .: "name") <*>+                     (x .: "description")+                     <*> (x .: "category")+                     <*> (x .:? "metadata" .!= mempty))++-- | The refresh status of a Trusted Advisor check.+--+-- /See:/ 'trustedAdvisorCheckRefreshStatus' smart constructor.+data TrustedAdvisorCheckRefreshStatus = TrustedAdvisorCheckRefreshStatus'+    { _tacrsCheckId                    :: !Text+    , _tacrsStatus                     :: !Text+    , _tacrsMillisUntilNextRefreshable :: !Integer+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCheckRefreshStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacrsCheckId'+--+-- * 'tacrsStatus'+--+-- * 'tacrsMillisUntilNextRefreshable'+trustedAdvisorCheckRefreshStatus+    :: Text -- ^ 'tacrsCheckId'+    -> Text -- ^ 'tacrsStatus'+    -> Integer -- ^ 'tacrsMillisUntilNextRefreshable'+    -> TrustedAdvisorCheckRefreshStatus+trustedAdvisorCheckRefreshStatus pCheckId_ pStatus_ pMillisUntilNextRefreshable_ =+    TrustedAdvisorCheckRefreshStatus'+    { _tacrsCheckId = pCheckId_+    , _tacrsStatus = pStatus_+    , _tacrsMillisUntilNextRefreshable = pMillisUntilNextRefreshable_+    }++-- | The unique identifier for the Trusted Advisor check.+tacrsCheckId :: Lens' TrustedAdvisorCheckRefreshStatus Text+tacrsCheckId = lens _tacrsCheckId (\ s a -> s{_tacrsCheckId = a});++-- | The status of the Trusted Advisor check for which a refresh has been+-- requested: \"none\", \"enqueued\", \"processing\", \"success\", or+-- \"abandoned\".+tacrsStatus :: Lens' TrustedAdvisorCheckRefreshStatus Text+tacrsStatus = lens _tacrsStatus (\ s a -> s{_tacrsStatus = a});++-- | The amount of time, in milliseconds, until the Trusted Advisor check is+-- eligible for refresh.+tacrsMillisUntilNextRefreshable :: Lens' TrustedAdvisorCheckRefreshStatus Integer+tacrsMillisUntilNextRefreshable = lens _tacrsMillisUntilNextRefreshable (\ s a -> s{_tacrsMillisUntilNextRefreshable = a});++instance FromJSON TrustedAdvisorCheckRefreshStatus+         where+        parseJSON+          = withObject "TrustedAdvisorCheckRefreshStatus"+              (\ x ->+                 TrustedAdvisorCheckRefreshStatus' <$>+                   (x .: "checkId") <*> (x .: "status") <*>+                     (x .: "millisUntilNextRefreshable"))++-- | The results of a Trusted Advisor check returned by+-- DescribeTrustedAdvisorCheckResult.+--+-- /See:/ 'trustedAdvisorCheckResult' smart constructor.+data TrustedAdvisorCheckResult = TrustedAdvisorCheckResult'+    { _tacrCheckId                 :: !Text+    , _tacrTimestamp               :: !Text+    , _tacrStatus                  :: !Text+    , _tacrResourcesSummary        :: !TrustedAdvisorResourcesSummary+    , _tacrCategorySpecificSummary :: !TrustedAdvisorCategorySpecificSummary+    , _tacrFlaggedResources        :: ![TrustedAdvisorResourceDetail]+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCheckResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacrCheckId'+--+-- * 'tacrTimestamp'+--+-- * 'tacrStatus'+--+-- * 'tacrResourcesSummary'+--+-- * 'tacrCategorySpecificSummary'+--+-- * 'tacrFlaggedResources'+trustedAdvisorCheckResult+    :: Text -- ^ 'tacrCheckId'+    -> Text -- ^ 'tacrTimestamp'+    -> Text -- ^ 'tacrStatus'+    -> TrustedAdvisorResourcesSummary -- ^ 'tacrResourcesSummary'+    -> TrustedAdvisorCategorySpecificSummary -- ^ 'tacrCategorySpecificSummary'+    -> TrustedAdvisorCheckResult+trustedAdvisorCheckResult pCheckId_ pTimestamp_ pStatus_ pResourcesSummary_ pCategorySpecificSummary_ =+    TrustedAdvisorCheckResult'+    { _tacrCheckId = pCheckId_+    , _tacrTimestamp = pTimestamp_+    , _tacrStatus = pStatus_+    , _tacrResourcesSummary = pResourcesSummary_+    , _tacrCategorySpecificSummary = pCategorySpecificSummary_+    , _tacrFlaggedResources = mempty+    }++-- | The unique identifier for the Trusted Advisor check.+tacrCheckId :: Lens' TrustedAdvisorCheckResult Text+tacrCheckId = lens _tacrCheckId (\ s a -> s{_tacrCheckId = a});++-- | The time of the last refresh of the check.+tacrTimestamp :: Lens' TrustedAdvisorCheckResult Text+tacrTimestamp = lens _tacrTimestamp (\ s a -> s{_tacrTimestamp = a});++-- | The alert status of the check: \"ok\" (green), \"warning\" (yellow),+-- \"error\" (red), or \"not_available\".+tacrStatus :: Lens' TrustedAdvisorCheckResult Text+tacrStatus = lens _tacrStatus (\ s a -> s{_tacrStatus = a});++-- | Undocumented member.+tacrResourcesSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorResourcesSummary+tacrResourcesSummary = lens _tacrResourcesSummary (\ s a -> s{_tacrResourcesSummary = a});++-- | Summary information that relates to the category of the check. Cost+-- Optimizing is the only category that is currently supported.+tacrCategorySpecificSummary :: Lens' TrustedAdvisorCheckResult TrustedAdvisorCategorySpecificSummary+tacrCategorySpecificSummary = lens _tacrCategorySpecificSummary (\ s a -> s{_tacrCategorySpecificSummary = a});++-- | The details about each resource listed in the check result.+tacrFlaggedResources :: Lens' TrustedAdvisorCheckResult [TrustedAdvisorResourceDetail]+tacrFlaggedResources = lens _tacrFlaggedResources (\ s a -> s{_tacrFlaggedResources = a}) . _Coerce;++instance FromJSON TrustedAdvisorCheckResult where+        parseJSON+          = withObject "TrustedAdvisorCheckResult"+              (\ x ->+                 TrustedAdvisorCheckResult' <$>+                   (x .: "checkId") <*> (x .: "timestamp") <*>+                     (x .: "status")+                     <*> (x .: "resourcesSummary")+                     <*> (x .: "categorySpecificSummary")+                     <*> (x .:? "flaggedResources" .!= mempty))++-- | A summary of a Trusted Advisor check result, including the alert status,+-- last refresh, and number of resources examined.+--+-- /See:/ 'trustedAdvisorCheckSummary' smart constructor.+data TrustedAdvisorCheckSummary = TrustedAdvisorCheckSummary'+    { _tacsHasFlaggedResources     :: !(Maybe Bool)+    , _tacsCheckId                 :: !Text+    , _tacsTimestamp               :: !Text+    , _tacsStatus                  :: !Text+    , _tacsResourcesSummary        :: !TrustedAdvisorResourcesSummary+    , _tacsCategorySpecificSummary :: !TrustedAdvisorCategorySpecificSummary+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCheckSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacsHasFlaggedResources'+--+-- * 'tacsCheckId'+--+-- * 'tacsTimestamp'+--+-- * 'tacsStatus'+--+-- * 'tacsResourcesSummary'+--+-- * 'tacsCategorySpecificSummary'+trustedAdvisorCheckSummary+    :: Text -- ^ 'tacsCheckId'+    -> Text -- ^ 'tacsTimestamp'+    -> Text -- ^ 'tacsStatus'+    -> TrustedAdvisorResourcesSummary -- ^ 'tacsResourcesSummary'+    -> TrustedAdvisorCategorySpecificSummary -- ^ 'tacsCategorySpecificSummary'+    -> TrustedAdvisorCheckSummary+trustedAdvisorCheckSummary pCheckId_ pTimestamp_ pStatus_ pResourcesSummary_ pCategorySpecificSummary_ =+    TrustedAdvisorCheckSummary'+    { _tacsHasFlaggedResources = Nothing+    , _tacsCheckId = pCheckId_+    , _tacsTimestamp = pTimestamp_+    , _tacsStatus = pStatus_+    , _tacsResourcesSummary = pResourcesSummary_+    , _tacsCategorySpecificSummary = pCategorySpecificSummary_+    }++-- | Specifies whether the Trusted Advisor check has flagged resources.+tacsHasFlaggedResources :: Lens' TrustedAdvisorCheckSummary (Maybe Bool)+tacsHasFlaggedResources = lens _tacsHasFlaggedResources (\ s a -> s{_tacsHasFlaggedResources = a});++-- | The unique identifier for the Trusted Advisor check.+tacsCheckId :: Lens' TrustedAdvisorCheckSummary Text+tacsCheckId = lens _tacsCheckId (\ s a -> s{_tacsCheckId = a});++-- | The time of the last refresh of the check.+tacsTimestamp :: Lens' TrustedAdvisorCheckSummary Text+tacsTimestamp = lens _tacsTimestamp (\ s a -> s{_tacsTimestamp = a});++-- | The alert status of the check: \"ok\" (green), \"warning\" (yellow),+-- \"error\" (red), or \"not_available\".+tacsStatus :: Lens' TrustedAdvisorCheckSummary Text+tacsStatus = lens _tacsStatus (\ s a -> s{_tacsStatus = a});++-- | Undocumented member.+tacsResourcesSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorResourcesSummary+tacsResourcesSummary = lens _tacsResourcesSummary (\ s a -> s{_tacsResourcesSummary = a});++-- | Summary information that relates to the category of the check. Cost+-- Optimizing is the only category that is currently supported.+tacsCategorySpecificSummary :: Lens' TrustedAdvisorCheckSummary TrustedAdvisorCategorySpecificSummary+tacsCategorySpecificSummary = lens _tacsCategorySpecificSummary (\ s a -> s{_tacsCategorySpecificSummary = a});++instance FromJSON TrustedAdvisorCheckSummary where+        parseJSON+          = withObject "TrustedAdvisorCheckSummary"+              (\ x ->+                 TrustedAdvisorCheckSummary' <$>+                   (x .:? "hasFlaggedResources") <*> (x .: "checkId")+                     <*> (x .: "timestamp")+                     <*> (x .: "status")+                     <*> (x .: "resourcesSummary")+                     <*> (x .: "categorySpecificSummary"))++-- | The estimated cost savings that might be realized if the recommended+-- actions are taken.+--+-- /See:/ 'trustedAdvisorCostOptimizingSummary' smart constructor.+data TrustedAdvisorCostOptimizingSummary = TrustedAdvisorCostOptimizingSummary'+    { _tacosEstimatedMonthlySavings        :: !Double+    , _tacosEstimatedPercentMonthlySavings :: !Double+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorCostOptimizingSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tacosEstimatedMonthlySavings'+--+-- * 'tacosEstimatedPercentMonthlySavings'+trustedAdvisorCostOptimizingSummary+    :: Double -- ^ 'tacosEstimatedMonthlySavings'+    -> Double -- ^ 'tacosEstimatedPercentMonthlySavings'+    -> TrustedAdvisorCostOptimizingSummary+trustedAdvisorCostOptimizingSummary pEstimatedMonthlySavings_ pEstimatedPercentMonthlySavings_ =+    TrustedAdvisorCostOptimizingSummary'+    { _tacosEstimatedMonthlySavings = pEstimatedMonthlySavings_+    , _tacosEstimatedPercentMonthlySavings = pEstimatedPercentMonthlySavings_+    }++-- | The estimated monthly savings that might be realized if the recommended+-- actions are taken.+tacosEstimatedMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double+tacosEstimatedMonthlySavings = lens _tacosEstimatedMonthlySavings (\ s a -> s{_tacosEstimatedMonthlySavings = a});++-- | The estimated percentage of savings that might be realized if the+-- recommended actions are taken.+tacosEstimatedPercentMonthlySavings :: Lens' TrustedAdvisorCostOptimizingSummary Double+tacosEstimatedPercentMonthlySavings = lens _tacosEstimatedPercentMonthlySavings (\ s a -> s{_tacosEstimatedPercentMonthlySavings = a});++instance FromJSON TrustedAdvisorCostOptimizingSummary+         where+        parseJSON+          = withObject "TrustedAdvisorCostOptimizingSummary"+              (\ x ->+                 TrustedAdvisorCostOptimizingSummary' <$>+                   (x .: "estimatedMonthlySavings") <*>+                     (x .: "estimatedPercentMonthlySavings"))++-- | Contains information about a resource identified by a Trusted Advisor+-- check.+--+-- /See:/ 'trustedAdvisorResourceDetail' smart constructor.+data TrustedAdvisorResourceDetail = TrustedAdvisorResourceDetail'+    { _tardIsSuppressed :: !(Maybe Bool)+    , _tardStatus       :: !Text+    , _tardRegion       :: !Text+    , _tardResourceId   :: !Text+    , _tardMetadata     :: ![Text]+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorResourceDetail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tardIsSuppressed'+--+-- * 'tardStatus'+--+-- * 'tardRegion'+--+-- * 'tardResourceId'+--+-- * 'tardMetadata'+trustedAdvisorResourceDetail+    :: Text -- ^ 'tardStatus'+    -> Text -- ^ 'tardRegion'+    -> Text -- ^ 'tardResourceId'+    -> TrustedAdvisorResourceDetail+trustedAdvisorResourceDetail pStatus_ pRegion_ pResourceId_ =+    TrustedAdvisorResourceDetail'+    { _tardIsSuppressed = Nothing+    , _tardStatus = pStatus_+    , _tardRegion = pRegion_+    , _tardResourceId = pResourceId_+    , _tardMetadata = mempty+    }++-- | Specifies whether the AWS resource was ignored by Trusted Advisor+-- because it was marked as suppressed by the user.+tardIsSuppressed :: Lens' TrustedAdvisorResourceDetail (Maybe Bool)+tardIsSuppressed = lens _tardIsSuppressed (\ s a -> s{_tardIsSuppressed = a});++-- | The status code for the resource identified in the Trusted Advisor+-- check.+tardStatus :: Lens' TrustedAdvisorResourceDetail Text+tardStatus = lens _tardStatus (\ s a -> s{_tardStatus = a});++-- | The AWS region in which the identified resource is located.+tardRegion :: Lens' TrustedAdvisorResourceDetail Text+tardRegion = lens _tardRegion (\ s a -> s{_tardRegion = a});++-- | The unique identifier for the identified resource.+tardResourceId :: Lens' TrustedAdvisorResourceDetail Text+tardResourceId = lens _tardResourceId (\ s a -> s{_tardResourceId = a});++-- | Additional information about the identified resource. The exact metadata+-- and its order can be obtained by inspecting the+-- TrustedAdvisorCheckDescription object returned by the call to+-- DescribeTrustedAdvisorChecks. __Metadata__ contains all the data that is+-- shown in the Excel download, even in those cases where the UI shows just+-- summary data.+tardMetadata :: Lens' TrustedAdvisorResourceDetail [Text]+tardMetadata = lens _tardMetadata (\ s a -> s{_tardMetadata = a}) . _Coerce;++instance FromJSON TrustedAdvisorResourceDetail where+        parseJSON+          = withObject "TrustedAdvisorResourceDetail"+              (\ x ->+                 TrustedAdvisorResourceDetail' <$>+                   (x .:? "isSuppressed") <*> (x .: "status") <*>+                     (x .: "region")+                     <*> (x .: "resourceId")+                     <*> (x .:? "metadata" .!= mempty))++-- | Details about AWS resources that were analyzed in a call to Trusted+-- Advisor DescribeTrustedAdvisorCheckSummaries.+--+-- /See:/ 'trustedAdvisorResourcesSummary' smart constructor.+data TrustedAdvisorResourcesSummary = TrustedAdvisorResourcesSummary'+    { _tarsResourcesProcessed  :: !Integer+    , _tarsResourcesFlagged    :: !Integer+    , _tarsResourcesIgnored    :: !Integer+    , _tarsResourcesSuppressed :: !Integer+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrustedAdvisorResourcesSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tarsResourcesProcessed'+--+-- * 'tarsResourcesFlagged'+--+-- * 'tarsResourcesIgnored'+--+-- * 'tarsResourcesSuppressed'+trustedAdvisorResourcesSummary+    :: Integer -- ^ 'tarsResourcesProcessed'+    -> Integer -- ^ 'tarsResourcesFlagged'+    -> Integer -- ^ 'tarsResourcesIgnored'+    -> Integer -- ^ 'tarsResourcesSuppressed'+    -> TrustedAdvisorResourcesSummary+trustedAdvisorResourcesSummary pResourcesProcessed_ pResourcesFlagged_ pResourcesIgnored_ pResourcesSuppressed_ =+    TrustedAdvisorResourcesSummary'+    { _tarsResourcesProcessed = pResourcesProcessed_+    , _tarsResourcesFlagged = pResourcesFlagged_+    , _tarsResourcesIgnored = pResourcesIgnored_+    , _tarsResourcesSuppressed = pResourcesSuppressed_+    }++-- | The number of AWS resources that were analyzed by the Trusted Advisor+-- check.+tarsResourcesProcessed :: Lens' TrustedAdvisorResourcesSummary Integer+tarsResourcesProcessed = lens _tarsResourcesProcessed (\ s a -> s{_tarsResourcesProcessed = a});++-- | The number of AWS resources that were flagged (listed) by the Trusted+-- Advisor check.+tarsResourcesFlagged :: Lens' TrustedAdvisorResourcesSummary Integer+tarsResourcesFlagged = lens _tarsResourcesFlagged (\ s a -> s{_tarsResourcesFlagged = a});++-- | The number of AWS resources ignored by Trusted Advisor because+-- information was unavailable.+tarsResourcesIgnored :: Lens' TrustedAdvisorResourcesSummary Integer+tarsResourcesIgnored = lens _tarsResourcesIgnored (\ s a -> s{_tarsResourcesIgnored = a});++-- | The number of AWS resources ignored by Trusted Advisor because they were+-- marked as suppressed by the user.+tarsResourcesSuppressed :: Lens' TrustedAdvisorResourcesSummary Integer+tarsResourcesSuppressed = lens _tarsResourcesSuppressed (\ s a -> s{_tarsResourcesSuppressed = a});++instance FromJSON TrustedAdvisorResourcesSummary+         where+        parseJSON+          = withObject "TrustedAdvisorResourcesSummary"+              (\ x ->+                 TrustedAdvisorResourcesSummary' <$>+                   (x .: "resourcesProcessed") <*>+                     (x .: "resourcesFlagged")+                     <*> (x .: "resourcesIgnored")+                     <*> (x .: "resourcesSuppressed"))
+ gen/Network/AWS/Support/Types/Sum.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE LambdaCase         #-}+{-# LANGUAGE OverloadedStrings  #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Network.AWS.Support.Types.Sum+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.Support.Types.Sum where++import           Network.AWS.Prelude
+ gen/Network/AWS/Support/Waiters.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies      #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Network.AWS.Support.Waiters+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.Support.Waiters where++import           Network.AWS.Prelude+import           Network.AWS.Support.Types+import           Network.AWS.Waiter
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Main+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Main (main) where++import Test.Tasty+import Test.AWS.Support+import Test.AWS.Support.Internal++main :: IO ()+main = defaultMain $ testGroup "Support"+    [ testGroup "tests"    tests+    , testGroup "fixtures" fixtures+    ]
+ test/Test/AWS/Gen/Support.hs view
@@ -0,0 +1,277 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans        #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Test.AWS.Gen.Support+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.Gen.Support where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.Support+import Test.AWS.Support.Internal++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+--     [ testGroup "request"+--         [ testRefreshTrustedAdvisorCheck $+--             refreshTrustedAdvisorCheck+--+--         , testDescribeCases $+--             describeCases+--+--         , testDescribeTrustedAdvisorCheckRefreshStatuses $+--             describeTrustedAdvisorCheckRefreshStatuses+--+--         , testCreateCase $+--             createCase+--+--         , testDescribeTrustedAdvisorCheckSummaries $+--             describeTrustedAdvisorCheckSummaries+--+--         , testResolveCase $+--             resolveCase+--+--         , testDescribeSeverityLevels $+--             describeSeverityLevels+--+--         , testDescribeTrustedAdvisorChecks $+--             describeTrustedAdvisorChecks+--+--         , testDescribeAttachment $+--             describeAttachment+--+--         , testAddAttachmentsToSet $+--             addAttachmentsToSet+--+--         , testDescribeTrustedAdvisorCheckResult $+--             describeTrustedAdvisorCheckResult+--+--         , testDescribeServices $+--             describeServices+--+--         , testDescribeCommunications $+--             describeCommunications+--+--         , testAddCommunicationToCase $+--             addCommunicationToCase+--+--           ]++--     , testGroup "response"+--         [ testRefreshTrustedAdvisorCheckResponse $+--             refreshTrustedAdvisorCheckResponse+--+--         , testDescribeCasesResponse $+--             describeCasesResponse+--+--         , testDescribeTrustedAdvisorCheckRefreshStatusesResponse $+--             describeTrustedAdvisorCheckRefreshStatusesResponse+--+--         , testCreateCaseResponse $+--             createCaseResponse+--+--         , testDescribeTrustedAdvisorCheckSummariesResponse $+--             describeTrustedAdvisorCheckSummariesResponse+--+--         , testResolveCaseResponse $+--             resolveCaseResponse+--+--         , testDescribeSeverityLevelsResponse $+--             describeSeverityLevelsResponse+--+--         , testDescribeTrustedAdvisorChecksResponse $+--             describeTrustedAdvisorChecksResponse+--+--         , testDescribeAttachmentResponse $+--             describeAttachmentResponse+--+--         , testAddAttachmentsToSetResponse $+--             addAttachmentsToSetResponse+--+--         , testDescribeTrustedAdvisorCheckResultResponse $+--             describeTrustedAdvisorCheckResultResponse+--+--         , testDescribeServicesResponse $+--             describeServicesResponse+--+--         , testDescribeCommunicationsResponse $+--             describeCommunicationsResponse+--+--         , testAddCommunicationToCaseResponse $+--             addCommunicationToCaseResponse+--+--           ]+--     ]++-- Requests++testRefreshTrustedAdvisorCheck :: RefreshTrustedAdvisorCheck -> TestTree+testRefreshTrustedAdvisorCheck = req+    "RefreshTrustedAdvisorCheck"+    "fixture/RefreshTrustedAdvisorCheck"++testDescribeCases :: DescribeCases -> TestTree+testDescribeCases = req+    "DescribeCases"+    "fixture/DescribeCases"++testDescribeTrustedAdvisorCheckRefreshStatuses :: DescribeTrustedAdvisorCheckRefreshStatuses -> TestTree+testDescribeTrustedAdvisorCheckRefreshStatuses = req+    "DescribeTrustedAdvisorCheckRefreshStatuses"+    "fixture/DescribeTrustedAdvisorCheckRefreshStatuses"++testCreateCase :: CreateCase -> TestTree+testCreateCase = req+    "CreateCase"+    "fixture/CreateCase"++testDescribeTrustedAdvisorCheckSummaries :: DescribeTrustedAdvisorCheckSummaries -> TestTree+testDescribeTrustedAdvisorCheckSummaries = req+    "DescribeTrustedAdvisorCheckSummaries"+    "fixture/DescribeTrustedAdvisorCheckSummaries"++testResolveCase :: ResolveCase -> TestTree+testResolveCase = req+    "ResolveCase"+    "fixture/ResolveCase"++testDescribeSeverityLevels :: DescribeSeverityLevels -> TestTree+testDescribeSeverityLevels = req+    "DescribeSeverityLevels"+    "fixture/DescribeSeverityLevels"++testDescribeTrustedAdvisorChecks :: DescribeTrustedAdvisorChecks -> TestTree+testDescribeTrustedAdvisorChecks = req+    "DescribeTrustedAdvisorChecks"+    "fixture/DescribeTrustedAdvisorChecks"++testDescribeAttachment :: DescribeAttachment -> TestTree+testDescribeAttachment = req+    "DescribeAttachment"+    "fixture/DescribeAttachment"++testAddAttachmentsToSet :: AddAttachmentsToSet -> TestTree+testAddAttachmentsToSet = req+    "AddAttachmentsToSet"+    "fixture/AddAttachmentsToSet"++testDescribeTrustedAdvisorCheckResult :: DescribeTrustedAdvisorCheckResult -> TestTree+testDescribeTrustedAdvisorCheckResult = req+    "DescribeTrustedAdvisorCheckResult"+    "fixture/DescribeTrustedAdvisorCheckResult"++testDescribeServices :: DescribeServices -> TestTree+testDescribeServices = req+    "DescribeServices"+    "fixture/DescribeServices"++testDescribeCommunications :: DescribeCommunications -> TestTree+testDescribeCommunications = req+    "DescribeCommunications"+    "fixture/DescribeCommunications"++testAddCommunicationToCase :: AddCommunicationToCase -> TestTree+testAddCommunicationToCase = req+    "AddCommunicationToCase"+    "fixture/AddCommunicationToCase"++-- Responses++testRefreshTrustedAdvisorCheckResponse :: RefreshTrustedAdvisorCheckResponse -> TestTree+testRefreshTrustedAdvisorCheckResponse = res+    "RefreshTrustedAdvisorCheckResponse"+    "fixture/RefreshTrustedAdvisorCheckResponse"+    (Proxy :: Proxy RefreshTrustedAdvisorCheck)++testDescribeCasesResponse :: DescribeCasesResponse -> TestTree+testDescribeCasesResponse = res+    "DescribeCasesResponse"+    "fixture/DescribeCasesResponse"+    (Proxy :: Proxy DescribeCases)++testDescribeTrustedAdvisorCheckRefreshStatusesResponse :: DescribeTrustedAdvisorCheckRefreshStatusesResponse -> TestTree+testDescribeTrustedAdvisorCheckRefreshStatusesResponse = res+    "DescribeTrustedAdvisorCheckRefreshStatusesResponse"+    "fixture/DescribeTrustedAdvisorCheckRefreshStatusesResponse"+    (Proxy :: Proxy DescribeTrustedAdvisorCheckRefreshStatuses)++testCreateCaseResponse :: CreateCaseResponse -> TestTree+testCreateCaseResponse = res+    "CreateCaseResponse"+    "fixture/CreateCaseResponse"+    (Proxy :: Proxy CreateCase)++testDescribeTrustedAdvisorCheckSummariesResponse :: DescribeTrustedAdvisorCheckSummariesResponse -> TestTree+testDescribeTrustedAdvisorCheckSummariesResponse = res+    "DescribeTrustedAdvisorCheckSummariesResponse"+    "fixture/DescribeTrustedAdvisorCheckSummariesResponse"+    (Proxy :: Proxy DescribeTrustedAdvisorCheckSummaries)++testResolveCaseResponse :: ResolveCaseResponse -> TestTree+testResolveCaseResponse = res+    "ResolveCaseResponse"+    "fixture/ResolveCaseResponse"+    (Proxy :: Proxy ResolveCase)++testDescribeSeverityLevelsResponse :: DescribeSeverityLevelsResponse -> TestTree+testDescribeSeverityLevelsResponse = res+    "DescribeSeverityLevelsResponse"+    "fixture/DescribeSeverityLevelsResponse"+    (Proxy :: Proxy DescribeSeverityLevels)++testDescribeTrustedAdvisorChecksResponse :: DescribeTrustedAdvisorChecksResponse -> TestTree+testDescribeTrustedAdvisorChecksResponse = res+    "DescribeTrustedAdvisorChecksResponse"+    "fixture/DescribeTrustedAdvisorChecksResponse"+    (Proxy :: Proxy DescribeTrustedAdvisorChecks)++testDescribeAttachmentResponse :: DescribeAttachmentResponse -> TestTree+testDescribeAttachmentResponse = res+    "DescribeAttachmentResponse"+    "fixture/DescribeAttachmentResponse"+    (Proxy :: Proxy DescribeAttachment)++testAddAttachmentsToSetResponse :: AddAttachmentsToSetResponse -> TestTree+testAddAttachmentsToSetResponse = res+    "AddAttachmentsToSetResponse"+    "fixture/AddAttachmentsToSetResponse"+    (Proxy :: Proxy AddAttachmentsToSet)++testDescribeTrustedAdvisorCheckResultResponse :: DescribeTrustedAdvisorCheckResultResponse -> TestTree+testDescribeTrustedAdvisorCheckResultResponse = res+    "DescribeTrustedAdvisorCheckResultResponse"+    "fixture/DescribeTrustedAdvisorCheckResultResponse"+    (Proxy :: Proxy DescribeTrustedAdvisorCheckResult)++testDescribeServicesResponse :: DescribeServicesResponse -> TestTree+testDescribeServicesResponse = res+    "DescribeServicesResponse"+    "fixture/DescribeServicesResponse"+    (Proxy :: Proxy DescribeServices)++testDescribeCommunicationsResponse :: DescribeCommunicationsResponse -> TestTree+testDescribeCommunicationsResponse = res+    "DescribeCommunicationsResponse"+    "fixture/DescribeCommunicationsResponse"+    (Proxy :: Proxy DescribeCommunications)++testAddCommunicationToCaseResponse :: AddCommunicationToCaseResponse -> TestTree+testAddCommunicationToCaseResponse = res+    "AddCommunicationToCaseResponse"+    "fixture/AddCommunicationToCaseResponse"+    (Proxy :: Proxy AddCommunicationToCase)
+ test/Test/AWS/Support.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module      : Test.AWS.Support+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : This Source Code Form is subject to the terms of+--               the Mozilla Public License, v. 2.0.+--               A copy of the MPL can be found in the LICENSE file or+--               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.Support+    ( tests+    , fixtures+    ) where++import           Network.AWS.Support+import           Test.AWS.Gen.Support+import           Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/Support/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Test.AWS.Support.Internal+-- Copyright   : (c) 2013-2015 Brendan Hay+-- License     : This Source Code Form is subject to the terms of+--               the Mozilla Public License, v. 2.0.+--               A copy of the MPL can be found in the LICENSE file or+--               you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.Support.Internal where++import Test.AWS.Prelude