packages feed

amazonka-ssm 0.3.6 → 1.0.0

raw patch · 22 files changed

+2527/−1684 lines, 22 filesdep +amazonka-ssmdep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok

version bump matches the API change (PVP)

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

Dependency ranges changed: amazonka-core, base

API changes (from Hackage documentation)

- Network.AWS.SSM.CreateAssociation: carAssociationDescription :: Lens' CreateAssociationResponse (Maybe AssociationDescription)
- Network.AWS.SSM.CreateAssociation: instance FromJSON CreateAssociationResponse
- Network.AWS.SSM.CreateAssociation: instance Ord CreateAssociation
- Network.AWS.SSM.CreateAssociationBatch: cabrFailed :: Lens' CreateAssociationBatchResponse [FailedCreateAssociation]
- Network.AWS.SSM.CreateAssociationBatch: cabrSuccessful :: Lens' CreateAssociationBatchResponse [AssociationDescription]
- Network.AWS.SSM.CreateAssociationBatch: instance FromJSON CreateAssociationBatchResponse
- Network.AWS.SSM.CreateAssociationBatch: instance IsList CreateAssociationBatch
- Network.AWS.SSM.CreateAssociationBatch: instance Monoid CreateAssociationBatch
- Network.AWS.SSM.CreateAssociationBatch: instance Semigroup CreateAssociationBatch
- Network.AWS.SSM.CreateDocument: cdrDocumentDescription :: Lens' CreateDocumentResponse (Maybe DocumentDescription)
- Network.AWS.SSM.CreateDocument: instance FromJSON CreateDocumentResponse
- Network.AWS.SSM.CreateDocument: instance Ord CreateDocument
- Network.AWS.SSM.DeleteAssociation: da1InstanceId :: Lens' DeleteAssociation Text
- Network.AWS.SSM.DeleteAssociation: da1Name :: Lens' DeleteAssociation Text
- Network.AWS.SSM.DeleteAssociation: instance Ord DeleteAssociation
- Network.AWS.SSM.DeleteAssociation: instance Ord DeleteAssociationResponse
- Network.AWS.SSM.DeleteDocument: dd2Name :: Lens' DeleteDocument Text
- Network.AWS.SSM.DeleteDocument: instance IsString DeleteDocument
- Network.AWS.SSM.DeleteDocument: instance Monoid DeleteDocument
- Network.AWS.SSM.DeleteDocument: instance Ord DeleteDocument
- Network.AWS.SSM.DeleteDocument: instance Ord DeleteDocumentResponse
- Network.AWS.SSM.DescribeAssociation: darAssociationDescription :: Lens' DescribeAssociationResponse (Maybe AssociationDescription)
- Network.AWS.SSM.DescribeAssociation: instance FromJSON DescribeAssociationResponse
- Network.AWS.SSM.DescribeAssociation: instance Ord DescribeAssociation
- Network.AWS.SSM.DescribeDocument: ddrDocument :: Lens' DescribeDocumentResponse (Maybe DocumentDescription)
- Network.AWS.SSM.DescribeDocument: instance FromJSON DescribeDocumentResponse
- Network.AWS.SSM.DescribeDocument: instance IsString DescribeDocument
- Network.AWS.SSM.DescribeDocument: instance Monoid DescribeDocument
- Network.AWS.SSM.DescribeDocument: instance Ord DescribeDocument
- Network.AWS.SSM.GetDocument: gdrContent :: Lens' GetDocumentResponse (Maybe Text)
- Network.AWS.SSM.GetDocument: gdrName :: Lens' GetDocumentResponse (Maybe Text)
- Network.AWS.SSM.GetDocument: instance FromJSON GetDocumentResponse
- Network.AWS.SSM.GetDocument: instance IsString GetDocument
- Network.AWS.SSM.GetDocument: instance Monoid GetDocument
- Network.AWS.SSM.GetDocument: instance Ord GetDocument
- Network.AWS.SSM.GetDocument: instance Ord GetDocumentResponse
- Network.AWS.SSM.ListAssociations: instance FromJSON ListAssociationsResponse
- Network.AWS.SSM.ListAssociations: larAssociations :: Lens' ListAssociationsResponse [Association]
- Network.AWS.SSM.ListAssociations: larNextToken :: Lens' ListAssociationsResponse (Maybe Text)
- Network.AWS.SSM.ListDocuments: instance FromJSON ListDocumentsResponse
- Network.AWS.SSM.ListDocuments: ldrDocumentIdentifiers :: Lens' ListDocumentsResponse [DocumentIdentifier]
- Network.AWS.SSM.ListDocuments: ldrNextToken :: Lens' ListDocumentsResponse (Maybe Text)
- Network.AWS.SSM.Types: data JSONError :: *
- Network.AWS.SSM.Types: dd1CreatedDate :: Lens' DocumentDescription (Maybe UTCTime)
- Network.AWS.SSM.Types: dd1Name :: Lens' DocumentDescription (Maybe Text)
- Network.AWS.SSM.Types: dd1Sha1 :: Lens' DocumentDescription (Maybe Text)
- Network.AWS.SSM.Types: dd1Status :: Lens' DocumentDescription (Maybe DocumentStatus)
- Network.AWS.SSM.Types: instance Constructor C1_0AssociationFilterKey
- Network.AWS.SSM.Types: instance Constructor C1_0AssociationStatusName
- Network.AWS.SSM.Types: instance Constructor C1_0DocumentFilterKey
- Network.AWS.SSM.Types: instance Constructor C1_0DocumentStatus
- Network.AWS.SSM.Types: instance Constructor C1_0Fault
- Network.AWS.SSM.Types: instance Constructor C1_1AssociationFilterKey
- Network.AWS.SSM.Types: instance Constructor C1_1AssociationStatusName
- Network.AWS.SSM.Types: instance Constructor C1_1DocumentStatus
- Network.AWS.SSM.Types: instance Constructor C1_1Fault
- Network.AWS.SSM.Types: instance Constructor C1_2AssociationStatusName
- Network.AWS.SSM.Types: instance Constructor C1_2DocumentStatus
- Network.AWS.SSM.Types: instance Constructor C1_2Fault
- Network.AWS.SSM.Types: instance Datatype D1AssociationFilterKey
- Network.AWS.SSM.Types: instance Datatype D1AssociationStatusName
- Network.AWS.SSM.Types: instance Datatype D1DocumentFilterKey
- Network.AWS.SSM.Types: instance Datatype D1DocumentStatus
- Network.AWS.SSM.Types: instance Datatype D1Fault
- Network.AWS.SSM.Types: instance Enum AssociationFilterKey
- Network.AWS.SSM.Types: instance Enum AssociationStatusName
- Network.AWS.SSM.Types: instance Enum DocumentFilterKey
- Network.AWS.SSM.Types: instance Enum DocumentStatus
- Network.AWS.SSM.Types: instance Enum Fault
- Network.AWS.SSM.Types: instance Eq Association
- Network.AWS.SSM.Types: instance Eq AssociationDescription
- Network.AWS.SSM.Types: instance Eq AssociationFilter
- Network.AWS.SSM.Types: instance Eq AssociationFilterKey
- Network.AWS.SSM.Types: instance Eq AssociationStatus
- Network.AWS.SSM.Types: instance Eq AssociationStatusName
- Network.AWS.SSM.Types: instance Eq CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance Eq DocumentDescription
- Network.AWS.SSM.Types: instance Eq DocumentFilter
- Network.AWS.SSM.Types: instance Eq DocumentFilterKey
- Network.AWS.SSM.Types: instance Eq DocumentIdentifier
- Network.AWS.SSM.Types: instance Eq DocumentStatus
- Network.AWS.SSM.Types: instance Eq FailedCreateAssociation
- Network.AWS.SSM.Types: instance Eq Fault
- Network.AWS.SSM.Types: instance FromJSON Association
- Network.AWS.SSM.Types: instance FromJSON AssociationDescription
- Network.AWS.SSM.Types: instance FromJSON AssociationFilter
- Network.AWS.SSM.Types: instance FromJSON AssociationFilterKey
- Network.AWS.SSM.Types: instance FromJSON AssociationStatus
- Network.AWS.SSM.Types: instance FromJSON AssociationStatusName
- Network.AWS.SSM.Types: instance FromJSON CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance FromJSON DocumentDescription
- Network.AWS.SSM.Types: instance FromJSON DocumentFilter
- Network.AWS.SSM.Types: instance FromJSON DocumentFilterKey
- Network.AWS.SSM.Types: instance FromJSON DocumentIdentifier
- Network.AWS.SSM.Types: instance FromJSON DocumentStatus
- Network.AWS.SSM.Types: instance FromJSON FailedCreateAssociation
- Network.AWS.SSM.Types: instance FromJSON Fault
- Network.AWS.SSM.Types: instance FromText AssociationFilterKey
- Network.AWS.SSM.Types: instance FromText AssociationStatusName
- Network.AWS.SSM.Types: instance FromText DocumentFilterKey
- Network.AWS.SSM.Types: instance FromText DocumentStatus
- Network.AWS.SSM.Types: instance FromText Fault
- Network.AWS.SSM.Types: instance Generic AssociationFilterKey
- Network.AWS.SSM.Types: instance Generic AssociationStatusName
- Network.AWS.SSM.Types: instance Generic DocumentFilterKey
- Network.AWS.SSM.Types: instance Generic DocumentStatus
- Network.AWS.SSM.Types: instance Generic Fault
- Network.AWS.SSM.Types: instance Hashable AssociationFilterKey
- Network.AWS.SSM.Types: instance Hashable AssociationStatusName
- Network.AWS.SSM.Types: instance Hashable DocumentFilterKey
- Network.AWS.SSM.Types: instance Hashable DocumentStatus
- Network.AWS.SSM.Types: instance Hashable Fault
- Network.AWS.SSM.Types: instance Monoid DocumentIdentifier
- Network.AWS.SSM.Types: instance Ord Association
- Network.AWS.SSM.Types: instance Ord AssociationFilterKey
- Network.AWS.SSM.Types: instance Ord AssociationStatusName
- Network.AWS.SSM.Types: instance Ord CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance Ord DocumentFilterKey
- Network.AWS.SSM.Types: instance Ord DocumentIdentifier
- Network.AWS.SSM.Types: instance Ord DocumentStatus
- Network.AWS.SSM.Types: instance Ord Fault
- Network.AWS.SSM.Types: instance Read Association
- Network.AWS.SSM.Types: instance Read AssociationDescription
- Network.AWS.SSM.Types: instance Read AssociationFilter
- Network.AWS.SSM.Types: instance Read AssociationFilterKey
- Network.AWS.SSM.Types: instance Read AssociationStatus
- Network.AWS.SSM.Types: instance Read AssociationStatusName
- Network.AWS.SSM.Types: instance Read CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance Read DocumentDescription
- Network.AWS.SSM.Types: instance Read DocumentFilter
- Network.AWS.SSM.Types: instance Read DocumentFilterKey
- Network.AWS.SSM.Types: instance Read DocumentIdentifier
- Network.AWS.SSM.Types: instance Read DocumentStatus
- Network.AWS.SSM.Types: instance Read FailedCreateAssociation
- Network.AWS.SSM.Types: instance Read Fault
- Network.AWS.SSM.Types: instance Show Association
- Network.AWS.SSM.Types: instance Show AssociationDescription
- Network.AWS.SSM.Types: instance Show AssociationFilter
- Network.AWS.SSM.Types: instance Show AssociationFilterKey
- Network.AWS.SSM.Types: instance Show AssociationStatus
- Network.AWS.SSM.Types: instance Show AssociationStatusName
- Network.AWS.SSM.Types: instance Show CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance Show DocumentDescription
- Network.AWS.SSM.Types: instance Show DocumentFilter
- Network.AWS.SSM.Types: instance Show DocumentFilterKey
- Network.AWS.SSM.Types: instance Show DocumentIdentifier
- Network.AWS.SSM.Types: instance Show DocumentStatus
- Network.AWS.SSM.Types: instance Show FailedCreateAssociation
- Network.AWS.SSM.Types: instance Show Fault
- Network.AWS.SSM.Types: instance ToByteString AssociationFilterKey
- Network.AWS.SSM.Types: instance ToByteString AssociationStatusName
- Network.AWS.SSM.Types: instance ToByteString DocumentFilterKey
- Network.AWS.SSM.Types: instance ToByteString DocumentStatus
- Network.AWS.SSM.Types: instance ToByteString Fault
- Network.AWS.SSM.Types: instance ToHeader AssociationFilterKey
- Network.AWS.SSM.Types: instance ToHeader AssociationStatusName
- Network.AWS.SSM.Types: instance ToHeader DocumentFilterKey
- Network.AWS.SSM.Types: instance ToHeader DocumentStatus
- Network.AWS.SSM.Types: instance ToHeader Fault
- Network.AWS.SSM.Types: instance ToJSON Association
- Network.AWS.SSM.Types: instance ToJSON AssociationDescription
- Network.AWS.SSM.Types: instance ToJSON AssociationFilter
- Network.AWS.SSM.Types: instance ToJSON AssociationFilterKey
- Network.AWS.SSM.Types: instance ToJSON AssociationStatus
- Network.AWS.SSM.Types: instance ToJSON AssociationStatusName
- Network.AWS.SSM.Types: instance ToJSON CreateAssociationBatchRequestEntry
- Network.AWS.SSM.Types: instance ToJSON DocumentDescription
- Network.AWS.SSM.Types: instance ToJSON DocumentFilter
- Network.AWS.SSM.Types: instance ToJSON DocumentFilterKey
- Network.AWS.SSM.Types: instance ToJSON DocumentIdentifier
- Network.AWS.SSM.Types: instance ToJSON DocumentStatus
- Network.AWS.SSM.Types: instance ToJSON FailedCreateAssociation
- Network.AWS.SSM.Types: instance ToJSON Fault
- Network.AWS.SSM.Types: instance ToQuery AssociationFilterKey
- Network.AWS.SSM.Types: instance ToQuery AssociationStatusName
- Network.AWS.SSM.Types: instance ToQuery DocumentFilterKey
- Network.AWS.SSM.Types: instance ToQuery DocumentStatus
- Network.AWS.SSM.Types: instance ToQuery Fault
- Network.AWS.SSM.Types: instance ToText AssociationFilterKey
- Network.AWS.SSM.Types: instance ToText AssociationStatusName
- Network.AWS.SSM.Types: instance ToText DocumentFilterKey
- Network.AWS.SSM.Types: instance ToText DocumentStatus
- Network.AWS.SSM.Types: instance ToText Fault
- Network.AWS.SSM.UpdateAssociationStatus: instance FromJSON UpdateAssociationStatusResponse
- Network.AWS.SSM.UpdateAssociationStatus: uasrAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)
+ Network.AWS.SSM: AFKInstanceId :: AssociationFilterKey
+ Network.AWS.SSM: AFKName :: AssociationFilterKey
+ Network.AWS.SSM: Active :: DocumentStatus
+ Network.AWS.SSM: Client :: Fault
+ Network.AWS.SSM: Creating :: DocumentStatus
+ Network.AWS.SSM: Deleting :: DocumentStatus
+ Network.AWS.SSM: Failed :: AssociationStatusName
+ Network.AWS.SSM: Name :: DocumentFilterKey
+ Network.AWS.SSM: Pending :: AssociationStatusName
+ Network.AWS.SSM: Server :: Fault
+ Network.AWS.SSM: Success :: AssociationStatusName
+ Network.AWS.SSM: Unknown :: Fault
+ Network.AWS.SSM: _AssociatedInstances :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _AssociationAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _AssociationDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _AssociationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _DocumentAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _DocumentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _DuplicateInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _InvalidDocument :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _InvalidDocumentContent :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _InvalidInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _MaxDocumentSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _StatusUnchanged :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: _TooManyUpdates :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM: aInstanceId :: Lens' Association (Maybe Text)
+ Network.AWS.SSM: aName :: Lens' Association (Maybe Text)
+ Network.AWS.SSM: adDate :: Lens' AssociationDescription (Maybe UTCTime)
+ Network.AWS.SSM: adInstanceId :: Lens' AssociationDescription (Maybe Text)
+ Network.AWS.SSM: adName :: Lens' AssociationDescription (Maybe Text)
+ Network.AWS.SSM: adStatus :: Lens' AssociationDescription (Maybe AssociationStatus)
+ Network.AWS.SSM: afKey :: Lens' AssociationFilter AssociationFilterKey
+ Network.AWS.SSM: afValue :: Lens' AssociationFilter Text
+ Network.AWS.SSM: asAdditionalInfo :: Lens' AssociationStatus (Maybe Text)
+ Network.AWS.SSM: asDate :: Lens' AssociationStatus UTCTime
+ Network.AWS.SSM: asMessage :: Lens' AssociationStatus Text
+ Network.AWS.SSM: asName :: Lens' AssociationStatus AssociationStatusName
+ Network.AWS.SSM: association :: Association
+ Network.AWS.SSM: associationDescription :: AssociationDescription
+ Network.AWS.SSM: associationFilter :: AssociationFilterKey -> Text -> AssociationFilter
+ Network.AWS.SSM: associationStatus :: UTCTime -> AssociationStatusName -> Text -> AssociationStatus
+ Network.AWS.SSM: cabreInstanceId :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)
+ Network.AWS.SSM: cabreName :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)
+ Network.AWS.SSM: createAssociationBatchRequestEntry :: CreateAssociationBatchRequestEntry
+ Network.AWS.SSM: dCreatedDate :: Lens' DocumentDescription (Maybe UTCTime)
+ Network.AWS.SSM: dName :: Lens' DocumentDescription (Maybe Text)
+ Network.AWS.SSM: dSha1 :: Lens' DocumentDescription (Maybe Text)
+ Network.AWS.SSM: dStatus :: Lens' DocumentDescription (Maybe DocumentStatus)
+ Network.AWS.SSM: data Association
+ Network.AWS.SSM: data AssociationDescription
+ Network.AWS.SSM: data AssociationFilter
+ Network.AWS.SSM: data AssociationFilterKey
+ Network.AWS.SSM: data AssociationStatus
+ Network.AWS.SSM: data AssociationStatusName
+ Network.AWS.SSM: data CreateAssociationBatchRequestEntry
+ Network.AWS.SSM: data DocumentDescription
+ Network.AWS.SSM: data DocumentFilter
+ Network.AWS.SSM: data DocumentFilterKey
+ Network.AWS.SSM: data DocumentIdentifier
+ Network.AWS.SSM: data DocumentStatus
+ Network.AWS.SSM: data FailedCreateAssociation
+ Network.AWS.SSM: data Fault
+ Network.AWS.SSM: data SSM
+ Network.AWS.SSM: dfKey :: Lens' DocumentFilter DocumentFilterKey
+ Network.AWS.SSM: dfValue :: Lens' DocumentFilter Text
+ Network.AWS.SSM: diName :: Lens' DocumentIdentifier (Maybe Text)
+ Network.AWS.SSM: documentDescription :: DocumentDescription
+ Network.AWS.SSM: documentFilter :: DocumentFilterKey -> Text -> DocumentFilter
+ Network.AWS.SSM: documentIdentifier :: DocumentIdentifier
+ Network.AWS.SSM: failedCreateAssociation :: FailedCreateAssociation
+ Network.AWS.SSM: fcaEntry :: Lens' FailedCreateAssociation (Maybe CreateAssociationBatchRequestEntry)
+ Network.AWS.SSM: fcaFault :: Lens' FailedCreateAssociation (Maybe Fault)
+ Network.AWS.SSM: fcaMessage :: Lens' FailedCreateAssociation (Maybe Text)
+ Network.AWS.SSM.CreateAssociation: carsAssociationDescription :: Lens' CreateAssociationResponse (Maybe AssociationDescription)
+ Network.AWS.SSM.CreateAssociation: carsStatus :: Lens' CreateAssociationResponse Int
+ Network.AWS.SSM.CreateAssociation: instance Constructor C1_0CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Constructor C1_0CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Data CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Data CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Datatype D1CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Datatype D1CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Generic CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Generic CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Selector S1_0_0CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Selector S1_0_0CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Selector S1_0_1CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Selector S1_0_1CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: instance Typeable CreateAssociation
+ Network.AWS.SSM.CreateAssociation: instance Typeable CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociationBatch: cabrsFailed :: Lens' CreateAssociationBatchResponse [FailedCreateAssociation]
+ Network.AWS.SSM.CreateAssociationBatch: cabrsStatus :: Lens' CreateAssociationBatchResponse Int
+ Network.AWS.SSM.CreateAssociationBatch: cabrsSuccessful :: Lens' CreateAssociationBatchResponse [AssociationDescription]
+ Network.AWS.SSM.CreateAssociationBatch: instance Constructor C1_0CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Constructor C1_0CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Data CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Data CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Datatype D1CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Datatype D1CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Generic CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Generic CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Selector S1_0_0CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Selector S1_0_0CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Selector S1_0_1CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Selector S1_0_2CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: instance Typeable CreateAssociationBatch
+ Network.AWS.SSM.CreateAssociationBatch: instance Typeable CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateDocument: cdrsDocumentDescription :: Lens' CreateDocumentResponse (Maybe DocumentDescription)
+ Network.AWS.SSM.CreateDocument: cdrsStatus :: Lens' CreateDocumentResponse Int
+ Network.AWS.SSM.CreateDocument: instance Constructor C1_0CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Constructor C1_0CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Data CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Data CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Datatype D1CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Datatype D1CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Generic CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Generic CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Selector S1_0_0CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Selector S1_0_0CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Selector S1_0_1CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Selector S1_0_1CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: instance Typeable CreateDocument
+ Network.AWS.SSM.CreateDocument: instance Typeable CreateDocumentResponse
+ Network.AWS.SSM.DeleteAssociation: delInstanceId :: Lens' DeleteAssociation Text
+ Network.AWS.SSM.DeleteAssociation: delName :: Lens' DeleteAssociation Text
+ Network.AWS.SSM.DeleteAssociation: delrsStatus :: Lens' DeleteAssociationResponse Int
+ Network.AWS.SSM.DeleteAssociation: instance Constructor C1_0DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Data DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Data DeleteAssociationResponse
+ Network.AWS.SSM.DeleteAssociation: instance Datatype D1DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Generic DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Selector S1_0_0DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Selector S1_0_0DeleteAssociationResponse
+ Network.AWS.SSM.DeleteAssociation: instance Selector S1_0_1DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Typeable DeleteAssociation
+ Network.AWS.SSM.DeleteAssociation: instance Typeable DeleteAssociationResponse
+ Network.AWS.SSM.DeleteDocument: dddName :: Lens' DeleteDocument Text
+ Network.AWS.SSM.DeleteDocument: ddrsStatus :: Lens' DeleteDocumentResponse Int
+ Network.AWS.SSM.DeleteDocument: instance Constructor C1_0DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Data DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Data DeleteDocumentResponse
+ Network.AWS.SSM.DeleteDocument: instance Datatype D1DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Generic DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Selector S1_0_0DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Selector S1_0_0DeleteDocumentResponse
+ Network.AWS.SSM.DeleteDocument: instance Typeable DeleteDocument
+ Network.AWS.SSM.DeleteDocument: instance Typeable DeleteDocumentResponse
+ Network.AWS.SSM.DescribeAssociation: darsAssociationDescription :: Lens' DescribeAssociationResponse (Maybe AssociationDescription)
+ Network.AWS.SSM.DescribeAssociation: darsStatus :: Lens' DescribeAssociationResponse Int
+ Network.AWS.SSM.DescribeAssociation: instance Constructor C1_0DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Constructor C1_0DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Data DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Data DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Datatype D1DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Datatype D1DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Generic DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Generic DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Selector S1_0_0DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Selector S1_0_0DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Selector S1_0_1DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Selector S1_0_1DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: instance Typeable DescribeAssociation
+ Network.AWS.SSM.DescribeAssociation: instance Typeable DescribeAssociationResponse
+ Network.AWS.SSM.DescribeDocument: drsDocument :: Lens' DescribeDocumentResponse (Maybe DocumentDescription)
+ Network.AWS.SSM.DescribeDocument: drsStatus :: Lens' DescribeDocumentResponse Int
+ Network.AWS.SSM.DescribeDocument: instance Constructor C1_0DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Constructor C1_0DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Data DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Data DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Datatype D1DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Datatype D1DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Generic DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Generic DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Selector S1_0_0DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Selector S1_0_0DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Selector S1_0_1DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: instance Typeable DescribeDocument
+ Network.AWS.SSM.DescribeDocument: instance Typeable DescribeDocumentResponse
+ Network.AWS.SSM.GetDocument: gdrsContent :: Lens' GetDocumentResponse (Maybe Text)
+ Network.AWS.SSM.GetDocument: gdrsName :: Lens' GetDocumentResponse (Maybe Text)
+ Network.AWS.SSM.GetDocument: gdrsStatus :: Lens' GetDocumentResponse Int
+ Network.AWS.SSM.GetDocument: instance Constructor C1_0GetDocument
+ Network.AWS.SSM.GetDocument: instance Constructor C1_0GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Data GetDocument
+ Network.AWS.SSM.GetDocument: instance Data GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Datatype D1GetDocument
+ Network.AWS.SSM.GetDocument: instance Datatype D1GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Generic GetDocument
+ Network.AWS.SSM.GetDocument: instance Generic GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Selector S1_0_0GetDocument
+ Network.AWS.SSM.GetDocument: instance Selector S1_0_0GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Selector S1_0_1GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Selector S1_0_2GetDocumentResponse
+ Network.AWS.SSM.GetDocument: instance Typeable GetDocument
+ Network.AWS.SSM.GetDocument: instance Typeable GetDocumentResponse
+ Network.AWS.SSM.ListAssociations: instance Constructor C1_0ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Constructor C1_0ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Data ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Data ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Datatype D1ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Datatype D1ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Generic ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Generic ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_0ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_0ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_1ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_1ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_2ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Selector S1_0_2ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: instance Typeable ListAssociations
+ Network.AWS.SSM.ListAssociations: instance Typeable ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: larsAssociations :: Lens' ListAssociationsResponse [Association]
+ Network.AWS.SSM.ListAssociations: larsNextToken :: Lens' ListAssociationsResponse (Maybe Text)
+ Network.AWS.SSM.ListAssociations: larsStatus :: Lens' ListAssociationsResponse Int
+ Network.AWS.SSM.ListDocuments: instance Constructor C1_0ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Constructor C1_0ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Data ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Data ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Datatype D1ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Datatype D1ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Generic ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Generic ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_0ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_0ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_1ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_1ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_2ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Selector S1_0_2ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: instance Typeable ListDocuments
+ Network.AWS.SSM.ListDocuments: instance Typeable ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: ldrsDocumentIdentifiers :: Lens' ListDocumentsResponse [DocumentIdentifier]
+ Network.AWS.SSM.ListDocuments: ldrsNextToken :: Lens' ListDocumentsResponse (Maybe Text)
+ Network.AWS.SSM.ListDocuments: ldrsStatus :: Lens' ListDocumentsResponse Int
+ Network.AWS.SSM.Types: _AssociatedInstances :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _AssociationAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _AssociationDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _AssociationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _DocumentAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _DocumentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _DuplicateInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _InvalidDocument :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _InvalidDocumentContent :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _InvalidInstanceId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _MaxDocumentSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _StatusUnchanged :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: _TooManyUpdates :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SSM.Types: dCreatedDate :: Lens' DocumentDescription (Maybe UTCTime)
+ Network.AWS.SSM.Types: dName :: Lens' DocumentDescription (Maybe Text)
+ Network.AWS.SSM.Types: dSha1 :: Lens' DocumentDescription (Maybe Text)
+ Network.AWS.SSM.Types: dStatus :: Lens' DocumentDescription (Maybe DocumentStatus)
+ Network.AWS.SSM.UpdateAssociationStatus: instance Constructor C1_0UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Constructor C1_0UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Data UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Data UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Datatype D1UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Datatype D1UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Generic UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Generic UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Selector S1_0_0UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Selector S1_0_0UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Selector S1_0_1UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Selector S1_0_1UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: instance Selector S1_0_2UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Typeable UpdateAssociationStatus
+ Network.AWS.SSM.UpdateAssociationStatus: instance Typeable UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: uasrsAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)
+ Network.AWS.SSM.UpdateAssociationStatus: uasrsStatus :: Lens' UpdateAssociationStatusResponse Int
- Network.AWS.SSM.CreateAssociation: createAssociationResponse :: CreateAssociationResponse
+ Network.AWS.SSM.CreateAssociation: createAssociationResponse :: Int -> CreateAssociationResponse
- Network.AWS.SSM.CreateAssociationBatch: createAssociationBatchResponse :: CreateAssociationBatchResponse
+ Network.AWS.SSM.CreateAssociationBatch: createAssociationBatchResponse :: Int -> CreateAssociationBatchResponse
- Network.AWS.SSM.CreateDocument: createDocumentResponse :: CreateDocumentResponse
+ Network.AWS.SSM.CreateDocument: createDocumentResponse :: Int -> CreateDocumentResponse
- Network.AWS.SSM.DeleteAssociation: deleteAssociationResponse :: DeleteAssociationResponse
+ Network.AWS.SSM.DeleteAssociation: deleteAssociationResponse :: Int -> DeleteAssociationResponse
- Network.AWS.SSM.DeleteDocument: deleteDocumentResponse :: DeleteDocumentResponse
+ Network.AWS.SSM.DeleteDocument: deleteDocumentResponse :: Int -> DeleteDocumentResponse
- Network.AWS.SSM.DescribeAssociation: describeAssociationResponse :: DescribeAssociationResponse
+ Network.AWS.SSM.DescribeAssociation: describeAssociationResponse :: Int -> DescribeAssociationResponse
- Network.AWS.SSM.DescribeDocument: describeDocumentResponse :: DescribeDocumentResponse
+ Network.AWS.SSM.DescribeDocument: describeDocumentResponse :: Int -> DescribeDocumentResponse
- Network.AWS.SSM.GetDocument: getDocumentResponse :: GetDocumentResponse
+ Network.AWS.SSM.GetDocument: getDocumentResponse :: Int -> GetDocumentResponse
- Network.AWS.SSM.ListAssociations: listAssociationsResponse :: ListAssociationsResponse
+ Network.AWS.SSM.ListAssociations: listAssociationsResponse :: Int -> ListAssociationsResponse
- Network.AWS.SSM.ListDocuments: ldDocumentFilterList :: Lens' ListDocuments (NonEmpty DocumentFilter)
+ Network.AWS.SSM.ListDocuments: ldDocumentFilterList :: Lens' ListDocuments (Maybe (NonEmpty DocumentFilter))
- Network.AWS.SSM.ListDocuments: listDocuments :: NonEmpty DocumentFilter -> ListDocuments
+ Network.AWS.SSM.ListDocuments: listDocuments :: ListDocuments
- Network.AWS.SSM.ListDocuments: listDocumentsResponse :: ListDocumentsResponse
+ Network.AWS.SSM.ListDocuments: listDocumentsResponse :: Int -> ListDocumentsResponse
- Network.AWS.SSM.UpdateAssociationStatus: updateAssociationStatusResponse :: UpdateAssociationStatusResponse
+ Network.AWS.SSM.UpdateAssociationStatus: updateAssociationStatusResponse :: Int -> UpdateAssociationStatusResponse

Files

README.md view
@@ -1,20 +1,46 @@ # Amazon Simple Systems Management Service 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 -Amazon EC2 Simple Systems Manager (SSM) enables you to configure and manage-your EC2 instances. You can create a configuration document and then-associate it with one or more running instances.+Amazon EC2 Simple Systems Manager (SSM) enables you to configure and+manage your EC2 instances. You can create a configuration document and+then associate it with one or more running instances. +You can use a configuration document to automate the following tasks for+your Windows instances:++-   Join an AWS Directory++-   Install, repair, or uninstall software using an MSI package++-   Run PowerShell scripts++-   Configure CloudWatch Logs to monitor applications and systems++Note that configuration documents are not supported on Linux instances.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-ssm) and the [AWS API Reference](http://docs.aws.amazon.com/ssm/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-ssm.cabal view
@@ -1,27 +1,48 @@ name:                  amazonka-ssm-version:               0.3.6+version:               1.0.0 synopsis:              Amazon Simple Systems Management Service 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:-    Amazon EC2 Simple Systems Manager (SSM) enables you to configure and manage-    your EC2 instances. You can create a configuration document and then-    associate it with one or more running instances.+    Amazon EC2 Simple Systems Manager (SSM) enables you to configure and+    manage your EC2 instances. You can create a configuration document and+    then associate it with one or more running instances. +    You can use a configuration document to automate the following tasks for+    your Windows instances:++    -   Join an AWS Directory++    -   Install, repair, or uninstall software using an MSI package++    -   Run PowerShell scripts++    -   Configure CloudWatch Logs to monitor applications and systems++    Note that configuration documents are not supported on Linux instances.     .-    /See:/ <http://docs.aws.amazon.com/ssm/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.SSM" and the <http://docs.aws.amazon.com/ssm/latest/APIReference/Welcome.html AWS API Reference>+    to get started.  source-repository head     type:     git@@ -47,9 +68,40 @@         , Network.AWS.SSM.ListDocuments         , Network.AWS.SSM.Types         , Network.AWS.SSM.UpdateAssociationStatus+        , Network.AWS.SSM.Waiters      other-modules:+          Network.AWS.SSM.Types.Product+        , Network.AWS.SSM.Types.Sum      build-depends:-          amazonka-core == 0.3.6.*+          amazonka-core == 1.0.0.*         , base          >= 4.7     && < 5++test-suite amazonka-ssm-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.SSM+        , Test.AWS.Gen.SSM+        , Test.AWS.SSM.Internal++    build-depends:+          amazonka-core == 1.0.0+        , amazonka-test == 1.0.0+        , amazonka-ssm == 1.0.0+        , base+        , bytestring+        , lens+        , tasty+        , tasty-hunit+        , text+        , time+        , unordered-containers
gen/Network/AWS/SSM.hs view
@@ -1,42 +1,244 @@+{-# 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.SSM--- 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.---- | Amazon EC2 Simple Systems Manager (SSM) enables you to configure and manage--- your EC2 instances. You can create a configuration document and then--- associate it with one or more running instances.+-- Amazon EC2 Simple Systems Manager (SSM) enables you to configure and+-- manage your EC2 instances. You can create a configuration document and+-- then associate it with one or more running instances.+--+-- You can use a configuration document to automate the following tasks for+-- your Windows instances:+--+-- -   Join an AWS Directory+--+-- -   Install, repair, or uninstall software using an MSI package+--+-- -   Run PowerShell scripts+--+-- -   Configure CloudWatch Logs to monitor applications and systems+--+-- Note that configuration documents are not supported on Linux instances.+--+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.SSM-    ( module Network.AWS.SSM.CreateAssociation-    , module Network.AWS.SSM.CreateAssociationBatch-    , module Network.AWS.SSM.CreateDocument-    , module Network.AWS.SSM.DeleteAssociation-    , module Network.AWS.SSM.DeleteDocument-    , module Network.AWS.SSM.DescribeAssociation+    (+    -- * Service+      SSM++    -- * Errors+    -- $errors++    -- ** AssociatedInstances+    , _AssociatedInstances++    -- ** InvalidNextToken+    , _InvalidNextToken++    -- ** InvalidInstanceId+    , _InvalidInstanceId++    -- ** StatusUnchanged+    , _StatusUnchanged++    -- ** DuplicateInstanceId+    , _DuplicateInstanceId++    -- ** InvalidDocument+    , _InvalidDocument++    -- ** AssociationLimitExceeded+    , _AssociationLimitExceeded++    -- ** InvalidDocumentContent+    , _InvalidDocumentContent++    -- ** AssociationAlreadyExists+    , _AssociationAlreadyExists++    -- ** AssociationDoesNotExist+    , _AssociationDoesNotExist++    -- ** InternalServerError+    , _InternalServerError++    -- ** MaxDocumentSizeExceeded+    , _MaxDocumentSizeExceeded++    -- ** TooManyUpdates+    , _TooManyUpdates++    -- ** DocumentAlreadyExists+    , _DocumentAlreadyExists++    -- ** DocumentLimitExceeded+    , _DocumentLimitExceeded++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** DescribeDocument     , module Network.AWS.SSM.DescribeDocument-    , module Network.AWS.SSM.GetDocument-    , module Network.AWS.SSM.ListAssociations++    -- ** CreateAssociation+    , module Network.AWS.SSM.CreateAssociation++    -- ** CreateDocument+    , module Network.AWS.SSM.CreateDocument++    -- ** ListDocuments     , module Network.AWS.SSM.ListDocuments-    , module Network.AWS.SSM.Types++    -- ** GetDocument+    , module Network.AWS.SSM.GetDocument++    -- ** DescribeAssociation+    , module Network.AWS.SSM.DescribeAssociation++    -- ** UpdateAssociationStatus     , module Network.AWS.SSM.UpdateAssociationStatus++    -- ** DeleteAssociation+    , module Network.AWS.SSM.DeleteAssociation++    -- ** ListAssociations+    , module Network.AWS.SSM.ListAssociations++    -- ** DeleteDocument+    , module Network.AWS.SSM.DeleteDocument++    -- ** CreateAssociationBatch+    , module Network.AWS.SSM.CreateAssociationBatch++    -- * Types++    -- ** AssociationFilterKey+    , AssociationFilterKey (..)++    -- ** AssociationStatusName+    , AssociationStatusName (..)++    -- ** DocumentFilterKey+    , DocumentFilterKey (..)++    -- ** DocumentStatus+    , DocumentStatus (..)++    -- ** Fault+    , Fault (..)++    -- ** Association+    , Association+    , association+    , aInstanceId+    , aName++    -- ** AssociationDescription+    , AssociationDescription+    , associationDescription+    , adInstanceId+    , adStatus+    , adDate+    , adName++    -- ** AssociationFilter+    , AssociationFilter+    , associationFilter+    , afKey+    , afValue++    -- ** AssociationStatus+    , AssociationStatus+    , associationStatus+    , asAdditionalInfo+    , asDate+    , asName+    , asMessage++    -- ** CreateAssociationBatchRequestEntry+    , CreateAssociationBatchRequestEntry+    , createAssociationBatchRequestEntry+    , cabreInstanceId+    , cabreName++    -- ** DocumentDescription+    , DocumentDescription+    , documentDescription+    , dStatus+    , dSha1+    , dCreatedDate+    , dName++    -- ** DocumentFilter+    , DocumentFilter+    , documentFilter+    , dfKey+    , dfValue++    -- ** DocumentIdentifier+    , DocumentIdentifier+    , documentIdentifier+    , diName++    -- ** FailedCreateAssociation+    , FailedCreateAssociation+    , failedCreateAssociation+    , fcaEntry+    , fcaFault+    , fcaMessage     ) where -import Network.AWS.SSM.CreateAssociation-import Network.AWS.SSM.CreateAssociationBatch-import Network.AWS.SSM.CreateDocument-import Network.AWS.SSM.DeleteAssociation-import Network.AWS.SSM.DeleteDocument-import Network.AWS.SSM.DescribeAssociation-import Network.AWS.SSM.DescribeDocument-import Network.AWS.SSM.GetDocument-import Network.AWS.SSM.ListAssociations-import Network.AWS.SSM.ListDocuments-import Network.AWS.SSM.Types-import Network.AWS.SSM.UpdateAssociationStatus+import           Network.AWS.SSM.CreateAssociation+import           Network.AWS.SSM.CreateAssociationBatch+import           Network.AWS.SSM.CreateDocument+import           Network.AWS.SSM.DeleteAssociation+import           Network.AWS.SSM.DeleteDocument+import           Network.AWS.SSM.DescribeAssociation+import           Network.AWS.SSM.DescribeDocument+import           Network.AWS.SSM.GetDocument+import           Network.AWS.SSM.ListAssociations+import           Network.AWS.SSM.ListDocuments+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.UpdateAssociationStatus+import           Network.AWS.SSM.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 'SSM'.+-}++{- $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/SSM/CreateAssociation.hs view
@@ -1,133 +1,146 @@-{-# 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.SSM.CreateAssociation--- 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.---- | Associates the specified configuration document with the specified instance.+-- Associates the specified configuration document with the specified+-- instance. -- -- When you associate a configuration document with an instance, the--- configuration agent on the instance processes the configuration document and--- configures the instance as specified.+-- configuration agent on the instance processes the configuration document+-- and configures the instance as specified. ----- If you associate a configuration document with an instance that already has--- an associated configuration document, we replace the current configuration--- document with the new configuration document.+-- If you associate a configuration document with an instance that already+-- has an associated configuration document, we replace the current+-- configuration document with the new configuration document. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateAssociation.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateAssociation.html AWS API Reference> for CreateAssociation. module Network.AWS.SSM.CreateAssociation     (-    -- * Request-      CreateAssociation-    -- ** Request constructor-    , createAssociation-    -- ** Request lenses-    , caInstanceId+    -- * Creating a Request+      createAssociation+    , CreateAssociation+    -- * Request Lenses     , caName+    , caInstanceId -    -- * Response-    , CreateAssociationResponse-    -- ** Response constructor+    -- * Destructuring the Response     , createAssociationResponse-    -- ** Response lenses-    , carAssociationDescription+    , CreateAssociationResponse+    -- * Response Lenses+    , carsAssociationDescription+    , carsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data CreateAssociation = CreateAssociation-    { _caInstanceId :: Text-    , _caName       :: Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'createAssociation' smart constructor.+data CreateAssociation = CreateAssociation'+    { _caName       :: !Text+    , _caInstanceId :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateAssociation' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateAssociation' with the minimum fields required to make a request. ----- * 'caInstanceId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'caName' @::@ 'Text'+-- * 'caName' ---createAssociation :: Text -- ^ 'caName'-                  -> Text -- ^ 'caInstanceId'-                  -> CreateAssociation-createAssociation p1 p2 = CreateAssociation-    { _caName       = p1-    , _caInstanceId = p2+-- * 'caInstanceId'+createAssociation+    :: Text -- ^ 'caName'+    -> Text -- ^ 'caInstanceId'+    -> CreateAssociation+createAssociation pName_ pInstanceId_ =+    CreateAssociation'+    { _caName = pName_+    , _caInstanceId = pInstanceId_     } --- | The ID of the instance.-caInstanceId :: Lens' CreateAssociation Text-caInstanceId = lens _caInstanceId (\s a -> s { _caInstanceId = a })- -- | The name of the configuration document. caName :: Lens' CreateAssociation Text-caName = lens _caName (\s a -> s { _caName = a })+caName = lens _caName (\ s a -> s{_caName = a}); -newtype CreateAssociationResponse = CreateAssociationResponse-    { _carAssociationDescription :: Maybe AssociationDescription-    } deriving (Eq, Read, Show)+-- | The ID of the instance.+caInstanceId :: Lens' CreateAssociation Text+caInstanceId = lens _caInstanceId (\ s a -> s{_caInstanceId = a}); --- | 'CreateAssociationResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'carAssociationDescription' @::@ 'Maybe' 'AssociationDescription'----createAssociationResponse :: CreateAssociationResponse-createAssociationResponse = CreateAssociationResponse-    { _carAssociationDescription = Nothing-    }+instance AWSRequest CreateAssociation where+        type Sv CreateAssociation = SSM+        type Rs CreateAssociation = CreateAssociationResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 CreateAssociationResponse' <$>+                   (x .?> "AssociationDescription") <*>+                     (pure (fromEnum s))) --- | Information about the association.-carAssociationDescription :: Lens' CreateAssociationResponse (Maybe AssociationDescription)-carAssociationDescription =-    lens _carAssociationDescription-        (\s a -> s { _carAssociationDescription = a })+instance ToHeaders CreateAssociation where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.CreateAssociation" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) +instance ToJSON CreateAssociation where+        toJSON CreateAssociation'{..}+          = object+              ["Name" .= _caName, "InstanceId" .= _caInstanceId]+ instance ToPath CreateAssociation where-    toPath = const "/"+        toPath = const "/"  instance ToQuery CreateAssociation where-    toQuery = const mempty--instance ToHeaders CreateAssociation+        toQuery = const mempty -instance ToJSON CreateAssociation where-    toJSON CreateAssociation{..} = object-        [ "Name"       .= _caName-        , "InstanceId" .= _caInstanceId-        ]+-- | /See:/ 'createAssociationResponse' smart constructor.+data CreateAssociationResponse = CreateAssociationResponse'+    { _carsAssociationDescription :: !(Maybe AssociationDescription)+    , _carsStatus                 :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateAssociation where-    type Sv CreateAssociation = SSM-    type Rs CreateAssociation = CreateAssociationResponse+-- | Creates a value of 'CreateAssociationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'carsAssociationDescription'+--+-- * 'carsStatus'+createAssociationResponse+    :: Int -- ^ 'carsStatus'+    -> CreateAssociationResponse+createAssociationResponse pStatus_ =+    CreateAssociationResponse'+    { _carsAssociationDescription = Nothing+    , _carsStatus = pStatus_+    } -    request  = post "CreateAssociation"-    response = jsonResponse+-- | Information about the association.+carsAssociationDescription :: Lens' CreateAssociationResponse (Maybe AssociationDescription)+carsAssociationDescription = lens _carsAssociationDescription (\ s a -> s{_carsAssociationDescription = a}); -instance FromJSON CreateAssociationResponse where-    parseJSON = withObject "CreateAssociationResponse" $ \o -> CreateAssociationResponse-        <$> o .:? "AssociationDescription"+-- | The response status code.+carsStatus :: Lens' CreateAssociationResponse Int+carsStatus = lens _carsStatus (\ s a -> s{_carsStatus = a});
gen/Network/AWS/SSM/CreateAssociationBatch.hs view
@@ -1,135 +1,145 @@-{-# 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.SSM.CreateAssociationBatch--- 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.---- | Associates the specified configuration documents with the specified instances.+-- Associates the specified configuration documents with the specified+-- instances. -- -- When you associate a configuration document with an instance, the--- configuration agent on the instance processes the configuration document and--- configures the instance as specified.+-- configuration agent on the instance processes the configuration document+-- and configures the instance as specified. ----- If you associate a configuration document with an instance that already has--- an associated configuration document, we replace the current configuration--- document with the new configuration document.+-- If you associate a configuration document with an instance that already+-- has an associated configuration document, we replace the current+-- configuration document with the new configuration document. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateAssociationBatch.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateAssociationBatch.html AWS API Reference> for CreateAssociationBatch. module Network.AWS.SSM.CreateAssociationBatch     (-    -- * Request-      CreateAssociationBatch-    -- ** Request constructor-    , createAssociationBatch-    -- ** Request lenses+    -- * Creating a Request+      createAssociationBatch+    , CreateAssociationBatch+    -- * Request Lenses     , cabEntries -    -- * Response-    , CreateAssociationBatchResponse-    -- ** Response constructor+    -- * Destructuring the Response     , createAssociationBatchResponse-    -- ** Response lenses-    , cabrFailed-    , cabrSuccessful+    , CreateAssociationBatchResponse+    -- * Response Lenses+    , cabrsSuccessful+    , cabrsFailed+    , cabrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts--newtype CreateAssociationBatch = CreateAssociationBatch-    { _cabEntries :: List "entries" CreateAssociationBatchRequestEntry-    } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList CreateAssociationBatch where-    type Item CreateAssociationBatch = CreateAssociationBatchRequestEntry+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -    fromList = CreateAssociationBatch . GHC.Exts.fromList-    toList   = GHC.Exts.toList . _cabEntries+-- | /See:/ 'createAssociationBatch' smart constructor.+newtype CreateAssociationBatch = CreateAssociationBatch'+    { _cabEntries :: [CreateAssociationBatchRequestEntry]+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateAssociationBatch' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateAssociationBatch' with the minimum fields required to make a request. ----- * 'cabEntries' @::@ ['CreateAssociationBatchRequestEntry']+-- Use one of the following lenses to modify other fields as desired: ---createAssociationBatch :: CreateAssociationBatch-createAssociationBatch = CreateAssociationBatch+-- * 'cabEntries'+createAssociationBatch+    :: CreateAssociationBatch+createAssociationBatch =+    CreateAssociationBatch'     { _cabEntries = mempty     }  -- | One or more associations. cabEntries :: Lens' CreateAssociationBatch [CreateAssociationBatchRequestEntry]-cabEntries = lens _cabEntries (\s a -> s { _cabEntries = a }) . _List--data CreateAssociationBatchResponse = CreateAssociationBatchResponse-    { _cabrFailed     :: List "FailedCreateAssociationEntry" FailedCreateAssociation-    , _cabrSuccessful :: List "AssociationDescription" AssociationDescription-    } deriving (Eq, Read, Show)+cabEntries = lens _cabEntries (\ s a -> s{_cabEntries = a}) . _Coerce; --- | 'CreateAssociationBatchResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'cabrFailed' @::@ ['FailedCreateAssociation']------ * 'cabrSuccessful' @::@ ['AssociationDescription']----createAssociationBatchResponse :: CreateAssociationBatchResponse-createAssociationBatchResponse = CreateAssociationBatchResponse-    { _cabrSuccessful = mempty-    , _cabrFailed     = mempty-    }+instance AWSRequest CreateAssociationBatch where+        type Sv CreateAssociationBatch = SSM+        type Rs CreateAssociationBatch =+             CreateAssociationBatchResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 CreateAssociationBatchResponse' <$>+                   (x .?> "Successful" .!@ mempty) <*>+                     (x .?> "Failed" .!@ mempty)+                     <*> (pure (fromEnum s))) --- | Information about the associations that failed.-cabrFailed :: Lens' CreateAssociationBatchResponse [FailedCreateAssociation]-cabrFailed = lens _cabrFailed (\s a -> s { _cabrFailed = a }) . _List+instance ToHeaders CreateAssociationBatch where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.CreateAssociationBatch" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | Information about the associations that succeeded.-cabrSuccessful :: Lens' CreateAssociationBatchResponse [AssociationDescription]-cabrSuccessful = lens _cabrSuccessful (\s a -> s { _cabrSuccessful = a }) . _List+instance ToJSON CreateAssociationBatch where+        toJSON CreateAssociationBatch'{..}+          = object ["Entries" .= _cabEntries]  instance ToPath CreateAssociationBatch where-    toPath = const "/"+        toPath = const "/"  instance ToQuery CreateAssociationBatch where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders CreateAssociationBatch+-- | /See:/ 'createAssociationBatchResponse' smart constructor.+data CreateAssociationBatchResponse = CreateAssociationBatchResponse'+    { _cabrsSuccessful :: !(Maybe [AssociationDescription])+    , _cabrsFailed     :: !(Maybe [FailedCreateAssociation])+    , _cabrsStatus     :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON CreateAssociationBatch where-    toJSON CreateAssociationBatch{..} = object-        [ "Entries" .= _cabEntries-        ]+-- | Creates a value of 'CreateAssociationBatchResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cabrsSuccessful'+--+-- * 'cabrsFailed'+--+-- * 'cabrsStatus'+createAssociationBatchResponse+    :: Int -- ^ 'cabrsStatus'+    -> CreateAssociationBatchResponse+createAssociationBatchResponse pStatus_ =+    CreateAssociationBatchResponse'+    { _cabrsSuccessful = Nothing+    , _cabrsFailed = Nothing+    , _cabrsStatus = pStatus_+    } -instance AWSRequest CreateAssociationBatch where-    type Sv CreateAssociationBatch = SSM-    type Rs CreateAssociationBatch = CreateAssociationBatchResponse+-- | Information about the associations that succeeded.+cabrsSuccessful :: Lens' CreateAssociationBatchResponse [AssociationDescription]+cabrsSuccessful = lens _cabrsSuccessful (\ s a -> s{_cabrsSuccessful = a}) . _Default . _Coerce; -    request  = post "CreateAssociationBatch"-    response = jsonResponse+-- | Information about the associations that failed.+cabrsFailed :: Lens' CreateAssociationBatchResponse [FailedCreateAssociation]+cabrsFailed = lens _cabrsFailed (\ s a -> s{_cabrsFailed = a}) . _Default . _Coerce; -instance FromJSON CreateAssociationBatchResponse where-    parseJSON = withObject "CreateAssociationBatchResponse" $ \o -> CreateAssociationBatchResponse-        <$> o .:? "Failed" .!= mempty-        <*> o .:? "Successful" .!= mempty+-- | The response status code.+cabrsStatus :: Lens' CreateAssociationBatchResponse Int+cabrsStatus = lens _cabrsStatus (\ s a -> s{_cabrsStatus = a});
gen/Network/AWS/SSM/CreateDocument.hs view
@@ -1,127 +1,141 @@-{-# 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.SSM.CreateDocument--- 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 configuration document.+-- Creates a configuration document. ----- After you create a configuration document, you can use 'CreateAssociation' to--- associate it with one or more running instances.+-- After you create a configuration document, you can use CreateAssociation+-- to associate it with one or more running instances. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateDocument.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_CreateDocument.html AWS API Reference> for CreateDocument. module Network.AWS.SSM.CreateDocument     (-    -- * Request-      CreateDocument-    -- ** Request constructor-    , createDocument-    -- ** Request lenses+    -- * Creating a Request+      createDocument+    , CreateDocument+    -- * Request Lenses     , cdContent     , cdName -    -- * Response-    , CreateDocumentResponse-    -- ** Response constructor+    -- * Destructuring the Response     , createDocumentResponse-    -- ** Response lenses-    , cdrDocumentDescription+    , CreateDocumentResponse+    -- * Response Lenses+    , cdrsDocumentDescription+    , cdrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data CreateDocument = CreateDocument-    { _cdContent :: Text-    , _cdName    :: Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'createDocument' smart constructor.+data CreateDocument = CreateDocument'+    { _cdContent :: !Text+    , _cdName    :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateDocument' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateDocument' with the minimum fields required to make a request. ----- * 'cdContent' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'cdName' @::@ 'Text'+-- * 'cdContent' ---createDocument :: Text -- ^ 'cdContent'-               -> Text -- ^ 'cdName'-               -> CreateDocument-createDocument p1 p2 = CreateDocument-    { _cdContent = p1-    , _cdName    = p2+-- * 'cdName'+createDocument+    :: Text -- ^ 'cdContent'+    -> Text -- ^ 'cdName'+    -> CreateDocument+createDocument pContent_ pName_ =+    CreateDocument'+    { _cdContent = pContent_+    , _cdName = pName_     } --- | A valid JSON file. For more information about the contents of this file, see <http://docs.aws.amazon.com/ssm/latest/APIReference/aws-ssm-document.html Configuration Document>.+-- | A valid JSON file. For more information about the contents of this file,+-- see+-- <http://docs.aws.amazon.com/ssm/latest/APIReference/aws-ssm-document.html Configuration Document>. cdContent :: Lens' CreateDocument Text-cdContent = lens _cdContent (\s a -> s { _cdContent = a })+cdContent = lens _cdContent (\ s a -> s{_cdContent = a});  -- | A name for the configuration document. cdName :: Lens' CreateDocument Text-cdName = lens _cdName (\s a -> s { _cdName = a })+cdName = lens _cdName (\ s a -> s{_cdName = a}); -newtype CreateDocumentResponse = CreateDocumentResponse-    { _cdrDocumentDescription :: Maybe DocumentDescription-    } deriving (Eq, Read, Show)+instance AWSRequest CreateDocument where+        type Sv CreateDocument = SSM+        type Rs CreateDocument = CreateDocumentResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 CreateDocumentResponse' <$>+                   (x .?> "DocumentDescription") <*>+                     (pure (fromEnum s))) --- | 'CreateDocumentResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'cdrDocumentDescription' @::@ 'Maybe' 'DocumentDescription'----createDocumentResponse :: CreateDocumentResponse-createDocumentResponse = CreateDocumentResponse-    { _cdrDocumentDescription = Nothing-    }+instance ToHeaders CreateDocument where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.CreateDocument" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | Information about the configuration document.-cdrDocumentDescription :: Lens' CreateDocumentResponse (Maybe DocumentDescription)-cdrDocumentDescription =-    lens _cdrDocumentDescription (\s a -> s { _cdrDocumentDescription = a })+instance ToJSON CreateDocument where+        toJSON CreateDocument'{..}+          = object ["Content" .= _cdContent, "Name" .= _cdName]  instance ToPath CreateDocument where-    toPath = const "/"+        toPath = const "/"  instance ToQuery CreateDocument where-    toQuery = const mempty--instance ToHeaders CreateDocument+        toQuery = const mempty -instance ToJSON CreateDocument where-    toJSON CreateDocument{..} = object-        [ "Content" .= _cdContent-        , "Name"    .= _cdName-        ]+-- | /See:/ 'createDocumentResponse' smart constructor.+data CreateDocumentResponse = CreateDocumentResponse'+    { _cdrsDocumentDescription :: !(Maybe DocumentDescription)+    , _cdrsStatus              :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateDocument where-    type Sv CreateDocument = SSM-    type Rs CreateDocument = CreateDocumentResponse+-- | Creates a value of 'CreateDocumentResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdrsDocumentDescription'+--+-- * 'cdrsStatus'+createDocumentResponse+    :: Int -- ^ 'cdrsStatus'+    -> CreateDocumentResponse+createDocumentResponse pStatus_ =+    CreateDocumentResponse'+    { _cdrsDocumentDescription = Nothing+    , _cdrsStatus = pStatus_+    } -    request  = post "CreateDocument"-    response = jsonResponse+-- | Information about the configuration document.+cdrsDocumentDescription :: Lens' CreateDocumentResponse (Maybe DocumentDescription)+cdrsDocumentDescription = lens _cdrsDocumentDescription (\ s a -> s{_cdrsDocumentDescription = a}); -instance FromJSON CreateDocumentResponse where-    parseJSON = withObject "CreateDocumentResponse" $ \o -> CreateDocumentResponse-        <$> o .:? "DocumentDescription"+-- | The response status code.+cdrsStatus :: Lens' CreateDocumentResponse Int+cdrsStatus = lens _cdrsStatus (\ s a -> s{_cdrsStatus = a});
gen/Network/AWS/SSM/DeleteAssociation.hs view
@@ -1,112 +1,133 @@-{-# 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.SSM.DeleteAssociation--- 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.---- | Disassociates the specified configuration document from the specified+-- Disassociates the specified configuration document from the specified -- instance. ----- When you disassociate a configuration document from an instance, it does not--- change the configuration of the instance. To change the configuration state--- of an instance after you disassociate a configuration document, you must--- create a new configuration document with the desired configuration and--- associate it with the instance.+-- When you disassociate a configuration document from an instance, it does+-- not change the configuration of the instance. To change the+-- configuration state of an instance after you disassociate a+-- configuration document, you must create a new configuration document+-- with the desired configuration and associate it with the instance. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DeleteAssociation.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DeleteAssociation.html AWS API Reference> for DeleteAssociation. module Network.AWS.SSM.DeleteAssociation     (-    -- * Request-      DeleteAssociation-    -- ** Request constructor-    , deleteAssociation-    -- ** Request lenses-    , da1InstanceId-    , da1Name+    -- * Creating a Request+      deleteAssociation+    , DeleteAssociation+    -- * Request Lenses+    , delName+    , delInstanceId -    -- * Response-    , DeleteAssociationResponse-    -- ** Response constructor+    -- * Destructuring the Response     , deleteAssociationResponse+    , DeleteAssociationResponse+    -- * Response Lenses+    , delrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data DeleteAssociation = DeleteAssociation-    { _da1InstanceId :: Text-    , _da1Name       :: Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteAssociation' smart constructor.+data DeleteAssociation = DeleteAssociation'+    { _delName       :: !Text+    , _delInstanceId :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteAssociation' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteAssociation' with the minimum fields required to make a request. ----- * 'da1InstanceId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'da1Name' @::@ 'Text'+-- * 'delName' ---deleteAssociation :: Text -- ^ 'da1Name'-                  -> Text -- ^ 'da1InstanceId'-                  -> DeleteAssociation-deleteAssociation p1 p2 = DeleteAssociation-    { _da1Name       = p1-    , _da1InstanceId = p2+-- * 'delInstanceId'+deleteAssociation+    :: Text -- ^ 'delName'+    -> Text -- ^ 'delInstanceId'+    -> DeleteAssociation+deleteAssociation pName_ pInstanceId_ =+    DeleteAssociation'+    { _delName = pName_+    , _delInstanceId = pInstanceId_     } +-- | The name of the configuration document.+delName :: Lens' DeleteAssociation Text+delName = lens _delName (\ s a -> s{_delName = a});+ -- | The ID of the instance.-da1InstanceId :: Lens' DeleteAssociation Text-da1InstanceId = lens _da1InstanceId (\s a -> s { _da1InstanceId = a })+delInstanceId :: Lens' DeleteAssociation Text+delInstanceId = lens _delInstanceId (\ s a -> s{_delInstanceId = a}); --- | The name of the configuration document.-da1Name :: Lens' DeleteAssociation Text-da1Name = lens _da1Name (\s a -> s { _da1Name = a })+instance AWSRequest DeleteAssociation where+        type Sv DeleteAssociation = SSM+        type Rs DeleteAssociation = DeleteAssociationResponse+        request = postJSON+        response+          = receiveEmpty+              (\ s h x ->+                 DeleteAssociationResponse' <$> (pure (fromEnum s))) -data DeleteAssociationResponse = DeleteAssociationResponse-    deriving (Eq, Ord, Read, Show, Generic)+instance ToHeaders DeleteAssociation where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.DeleteAssociation" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | 'DeleteAssociationResponse' constructor.-deleteAssociationResponse :: DeleteAssociationResponse-deleteAssociationResponse = DeleteAssociationResponse+instance ToJSON DeleteAssociation where+        toJSON DeleteAssociation'{..}+          = object+              ["Name" .= _delName, "InstanceId" .= _delInstanceId]  instance ToPath DeleteAssociation where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DeleteAssociation where-    toQuery = const mempty--instance ToHeaders DeleteAssociation+        toQuery = const mempty -instance ToJSON DeleteAssociation where-    toJSON DeleteAssociation{..} = object-        [ "Name"       .= _da1Name-        , "InstanceId" .= _da1InstanceId-        ]+-- | /See:/ 'deleteAssociationResponse' smart constructor.+newtype DeleteAssociationResponse = DeleteAssociationResponse'+    { _delrsStatus :: Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteAssociation where-    type Sv DeleteAssociation = SSM-    type Rs DeleteAssociation = DeleteAssociationResponse+-- | Creates a value of 'DeleteAssociationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'delrsStatus'+deleteAssociationResponse+    :: Int -- ^ 'delrsStatus'+    -> DeleteAssociationResponse+deleteAssociationResponse pStatus_ =+    DeleteAssociationResponse'+    { _delrsStatus = pStatus_+    } -    request  = post "DeleteAssociation"-    response = nullResponse DeleteAssociationResponse+-- | The response status code.+delrsStatus :: Lens' DeleteAssociationResponse Int+delrsStatus = lens _delrsStatus (\ s a -> s{_delrsStatus = a});
gen/Network/AWS/SSM/DeleteDocument.hs view
@@ -1,97 +1,118 @@-{-# 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.SSM.DeleteDocument--- 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.---- | Deletes the specified configuration document.+-- Deletes the specified configuration document. ----- You must use 'DeleteAssociation' to disassociate all instances that are+-- You must use DeleteAssociation to disassociate all instances that are -- associated with the configuration document before you can delete it. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DeleteDocument.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DeleteDocument.html AWS API Reference> for DeleteDocument. module Network.AWS.SSM.DeleteDocument     (-    -- * Request-      DeleteDocument-    -- ** Request constructor-    , deleteDocument-    -- ** Request lenses-    , dd2Name+    -- * Creating a Request+      deleteDocument+    , DeleteDocument+    -- * Request Lenses+    , dddName -    -- * Response-    , DeleteDocumentResponse-    -- ** Response constructor+    -- * Destructuring the Response     , deleteDocumentResponse+    , DeleteDocumentResponse+    -- * Response Lenses+    , ddrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -newtype DeleteDocument = DeleteDocument-    { _dd2Name :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+-- | /See:/ 'deleteDocument' smart constructor.+newtype DeleteDocument = DeleteDocument'+    { _dddName :: Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteDocument' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteDocument' with the minimum fields required to make a request. ----- * 'dd2Name' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteDocument :: Text -- ^ 'dd2Name'-               -> DeleteDocument-deleteDocument p1 = DeleteDocument-    { _dd2Name = p1+-- * 'dddName'+deleteDocument+    :: Text -- ^ 'dddName'+    -> DeleteDocument+deleteDocument pName_ =+    DeleteDocument'+    { _dddName = pName_     }  -- | The name of the configuration document.-dd2Name :: Lens' DeleteDocument Text-dd2Name = lens _dd2Name (\s a -> s { _dd2Name = a })+dddName :: Lens' DeleteDocument Text+dddName = lens _dddName (\ s a -> s{_dddName = a}); -data DeleteDocumentResponse = DeleteDocumentResponse-    deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteDocument where+        type Sv DeleteDocument = SSM+        type Rs DeleteDocument = DeleteDocumentResponse+        request = postJSON+        response+          = receiveEmpty+              (\ s h x ->+                 DeleteDocumentResponse' <$> (pure (fromEnum s))) --- | 'DeleteDocumentResponse' constructor.-deleteDocumentResponse :: DeleteDocumentResponse-deleteDocumentResponse = DeleteDocumentResponse+instance ToHeaders DeleteDocument where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.DeleteDocument" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) +instance ToJSON DeleteDocument where+        toJSON DeleteDocument'{..}+          = object ["Name" .= _dddName]+ instance ToPath DeleteDocument where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DeleteDocument where-    toQuery = const mempty--instance ToHeaders DeleteDocument+        toQuery = const mempty -instance ToJSON DeleteDocument where-    toJSON DeleteDocument{..} = object-        [ "Name" .= _dd2Name-        ]+-- | /See:/ 'deleteDocumentResponse' smart constructor.+newtype DeleteDocumentResponse = DeleteDocumentResponse'+    { _ddrsStatus :: Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteDocument where-    type Sv DeleteDocument = SSM-    type Rs DeleteDocument = DeleteDocumentResponse+-- | Creates a value of 'DeleteDocumentResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddrsStatus'+deleteDocumentResponse+    :: Int -- ^ 'ddrsStatus'+    -> DeleteDocumentResponse+deleteDocumentResponse pStatus_ =+    DeleteDocumentResponse'+    { _ddrsStatus = pStatus_+    } -    request  = post "DeleteDocument"-    response = nullResponse DeleteDocumentResponse+-- | The response status code.+ddrsStatus :: Lens' DeleteDocumentResponse Int+ddrsStatus = lens _ddrsStatus (\ s a -> s{_ddrsStatus = a});
gen/Network/AWS/SSM/DescribeAssociation.hs view
@@ -1,126 +1,139 @@-{-# 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.SSM.DescribeAssociation--- 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.---- | Describes the associations for the specified configuration document or+-- Describes the associations for the specified configuration document or -- instance. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DescribeAssociation.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DescribeAssociation.html AWS API Reference> for DescribeAssociation. module Network.AWS.SSM.DescribeAssociation     (-    -- * Request-      DescribeAssociation-    -- ** Request constructor-    , describeAssociation-    -- ** Request lenses-    , daInstanceId+    -- * Creating a Request+      describeAssociation+    , DescribeAssociation+    -- * Request Lenses     , daName+    , daInstanceId -    -- * Response-    , DescribeAssociationResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeAssociationResponse-    -- ** Response lenses-    , darAssociationDescription+    , DescribeAssociationResponse+    -- * Response Lenses+    , darsAssociationDescription+    , darsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data DescribeAssociation = DescribeAssociation-    { _daInstanceId :: Text-    , _daName       :: Text-    } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeAssociation' smart constructor.+data DescribeAssociation = DescribeAssociation'+    { _daName       :: !Text+    , _daInstanceId :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAssociation' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeAssociation' with the minimum fields required to make a request. ----- * 'daInstanceId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'daName' @::@ 'Text'+-- * 'daName' ---describeAssociation :: Text -- ^ 'daName'-                    -> Text -- ^ 'daInstanceId'-                    -> DescribeAssociation-describeAssociation p1 p2 = DescribeAssociation-    { _daName       = p1-    , _daInstanceId = p2+-- * 'daInstanceId'+describeAssociation+    :: Text -- ^ 'daName'+    -> Text -- ^ 'daInstanceId'+    -> DescribeAssociation+describeAssociation pName_ pInstanceId_ =+    DescribeAssociation'+    { _daName = pName_+    , _daInstanceId = pInstanceId_     } --- | The ID of the instance.-daInstanceId :: Lens' DescribeAssociation Text-daInstanceId = lens _daInstanceId (\s a -> s { _daInstanceId = a })- -- | The name of the configuration document. daName :: Lens' DescribeAssociation Text-daName = lens _daName (\s a -> s { _daName = a })+daName = lens _daName (\ s a -> s{_daName = a}); -newtype DescribeAssociationResponse = DescribeAssociationResponse-    { _darAssociationDescription :: Maybe AssociationDescription-    } deriving (Eq, Read, Show)+-- | The ID of the instance.+daInstanceId :: Lens' DescribeAssociation Text+daInstanceId = lens _daInstanceId (\ s a -> s{_daInstanceId = a}); --- | 'DescribeAssociationResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'darAssociationDescription' @::@ 'Maybe' 'AssociationDescription'----describeAssociationResponse :: DescribeAssociationResponse-describeAssociationResponse = DescribeAssociationResponse-    { _darAssociationDescription = Nothing-    }+instance AWSRequest DescribeAssociation where+        type Sv DescribeAssociation = SSM+        type Rs DescribeAssociation =+             DescribeAssociationResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeAssociationResponse' <$>+                   (x .?> "AssociationDescription") <*>+                     (pure (fromEnum s))) --- | Information about the association.-darAssociationDescription :: Lens' DescribeAssociationResponse (Maybe AssociationDescription)-darAssociationDescription =-    lens _darAssociationDescription-        (\s a -> s { _darAssociationDescription = a })+instance ToHeaders DescribeAssociation where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.DescribeAssociation" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) +instance ToJSON DescribeAssociation where+        toJSON DescribeAssociation'{..}+          = object+              ["Name" .= _daName, "InstanceId" .= _daInstanceId]+ instance ToPath DescribeAssociation where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeAssociation where-    toQuery = const mempty--instance ToHeaders DescribeAssociation+        toQuery = const mempty -instance ToJSON DescribeAssociation where-    toJSON DescribeAssociation{..} = object-        [ "Name"       .= _daName-        , "InstanceId" .= _daInstanceId-        ]+-- | /See:/ 'describeAssociationResponse' smart constructor.+data DescribeAssociationResponse = DescribeAssociationResponse'+    { _darsAssociationDescription :: !(Maybe AssociationDescription)+    , _darsStatus                 :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeAssociation where-    type Sv DescribeAssociation = SSM-    type Rs DescribeAssociation = DescribeAssociationResponse+-- | Creates a value of 'DescribeAssociationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'darsAssociationDescription'+--+-- * 'darsStatus'+describeAssociationResponse+    :: Int -- ^ 'darsStatus'+    -> DescribeAssociationResponse+describeAssociationResponse pStatus_ =+    DescribeAssociationResponse'+    { _darsAssociationDescription = Nothing+    , _darsStatus = pStatus_+    } -    request  = post "DescribeAssociation"-    response = jsonResponse+-- | Information about the association.+darsAssociationDescription :: Lens' DescribeAssociationResponse (Maybe AssociationDescription)+darsAssociationDescription = lens _darsAssociationDescription (\ s a -> s{_darsAssociationDescription = a}); -instance FromJSON DescribeAssociationResponse where-    parseJSON = withObject "DescribeAssociationResponse" $ \o -> DescribeAssociationResponse-        <$> o .:? "AssociationDescription"+-- | The response status code.+darsStatus :: Lens' DescribeAssociationResponse Int+darsStatus = lens _darsStatus (\ s a -> s{_darsStatus = a});
gen/Network/AWS/SSM/DescribeDocument.hs view
@@ -1,112 +1,125 @@-{-# 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.SSM.DescribeDocument--- 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.---- | Describes the specified configuration document.+-- Describes the specified configuration document. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DescribeDocument.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_DescribeDocument.html AWS API Reference> for DescribeDocument. module Network.AWS.SSM.DescribeDocument     (-    -- * Request-      DescribeDocument-    -- ** Request constructor-    , describeDocument-    -- ** Request lenses+    -- * Creating a Request+      describeDocument+    , DescribeDocument+    -- * Request Lenses     , ddName -    -- * Response-    , DescribeDocumentResponse-    -- ** Response constructor+    -- * Destructuring the Response     , describeDocumentResponse-    -- ** Response lenses-    , ddrDocument+    , DescribeDocumentResponse+    -- * Response Lenses+    , drsDocument+    , drsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -newtype DescribeDocument = DescribeDocument+-- | /See:/ 'describeDocument' smart constructor.+newtype DescribeDocument = DescribeDocument'     { _ddName :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeDocument' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeDocument' with the minimum fields required to make a request. ----- * 'ddName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---describeDocument :: Text -- ^ 'ddName'-                 -> DescribeDocument-describeDocument p1 = DescribeDocument-    { _ddName = p1+-- * 'ddName'+describeDocument+    :: Text -- ^ 'ddName'+    -> DescribeDocument+describeDocument pName_ =+    DescribeDocument'+    { _ddName = pName_     }  -- | The name of the configuration document. ddName :: Lens' DescribeDocument Text-ddName = lens _ddName (\s a -> s { _ddName = a })+ddName = lens _ddName (\ s a -> s{_ddName = a}); -newtype DescribeDocumentResponse = DescribeDocumentResponse-    { _ddrDocument :: Maybe DocumentDescription-    } deriving (Eq, Read, Show)+instance AWSRequest DescribeDocument where+        type Sv DescribeDocument = SSM+        type Rs DescribeDocument = DescribeDocumentResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 DescribeDocumentResponse' <$>+                   (x .?> "Document") <*> (pure (fromEnum s))) --- | 'DescribeDocumentResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ddrDocument' @::@ 'Maybe' 'DocumentDescription'----describeDocumentResponse :: DescribeDocumentResponse-describeDocumentResponse = DescribeDocumentResponse-    { _ddrDocument = Nothing-    }+instance ToHeaders DescribeDocument where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.DescribeDocument" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | Information about the configuration document.-ddrDocument :: Lens' DescribeDocumentResponse (Maybe DocumentDescription)-ddrDocument = lens _ddrDocument (\s a -> s { _ddrDocument = a })+instance ToJSON DescribeDocument where+        toJSON DescribeDocument'{..}+          = object ["Name" .= _ddName]  instance ToPath DescribeDocument where-    toPath = const "/"+        toPath = const "/"  instance ToQuery DescribeDocument where-    toQuery = const mempty--instance ToHeaders DescribeDocument+        toQuery = const mempty -instance ToJSON DescribeDocument where-    toJSON DescribeDocument{..} = object-        [ "Name" .= _ddName-        ]+-- | /See:/ 'describeDocumentResponse' smart constructor.+data DescribeDocumentResponse = DescribeDocumentResponse'+    { _drsDocument :: !(Maybe DocumentDescription)+    , _drsStatus   :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeDocument where-    type Sv DescribeDocument = SSM-    type Rs DescribeDocument = DescribeDocumentResponse+-- | Creates a value of 'DescribeDocumentResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drsDocument'+--+-- * 'drsStatus'+describeDocumentResponse+    :: Int -- ^ 'drsStatus'+    -> DescribeDocumentResponse+describeDocumentResponse pStatus_ =+    DescribeDocumentResponse'+    { _drsDocument = Nothing+    , _drsStatus = pStatus_+    } -    request  = post "DescribeDocument"-    response = jsonResponse+-- | Information about the configuration document.+drsDocument :: Lens' DescribeDocumentResponse (Maybe DocumentDescription)+drsDocument = lens _drsDocument (\ s a -> s{_drsDocument = a}); -instance FromJSON DescribeDocumentResponse where-    parseJSON = withObject "DescribeDocumentResponse" $ \o -> DescribeDocumentResponse-        <$> o .:? "Document"+-- | The response status code.+drsStatus :: Lens' DescribeDocumentResponse Int+drsStatus = lens _drsStatus (\ s a -> s{_drsStatus = a});
gen/Network/AWS/SSM/GetDocument.hs view
@@ -1,122 +1,134 @@-{-# 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.SSM.GetDocument--- 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.---- | Gets the contents of the specified configuration document.+-- Gets the contents of the specified configuration document. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_GetDocument.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_GetDocument.html AWS API Reference> for GetDocument. module Network.AWS.SSM.GetDocument     (-    -- * Request-      GetDocument-    -- ** Request constructor-    , getDocument-    -- ** Request lenses+    -- * Creating a Request+      getDocument+    , GetDocument+    -- * Request Lenses     , gdName -    -- * Response-    , GetDocumentResponse-    -- ** Response constructor+    -- * Destructuring the Response     , getDocumentResponse-    -- ** Response lenses-    , gdrContent-    , gdrName+    , GetDocumentResponse+    -- * Response Lenses+    , gdrsContent+    , gdrsName+    , gdrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -newtype GetDocument = GetDocument+-- | /See:/ 'getDocument' smart constructor.+newtype GetDocument = GetDocument'     { _gdName :: Text-    } deriving (Eq, Ord, Read, Show, Monoid, IsString)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'GetDocument' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'GetDocument' with the minimum fields required to make a request. ----- * 'gdName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---getDocument :: Text -- ^ 'gdName'-            -> GetDocument-getDocument p1 = GetDocument-    { _gdName = p1+-- * 'gdName'+getDocument+    :: Text -- ^ 'gdName'+    -> GetDocument+getDocument pName_ =+    GetDocument'+    { _gdName = pName_     }  -- | The name of the configuration document. gdName :: Lens' GetDocument Text-gdName = lens _gdName (\s a -> s { _gdName = a })--data GetDocumentResponse = GetDocumentResponse-    { _gdrContent :: Maybe Text-    , _gdrName    :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+gdName = lens _gdName (\ s a -> s{_gdName = a}); --- | 'GetDocumentResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'gdrContent' @::@ 'Maybe' 'Text'------ * 'gdrName' @::@ 'Maybe' 'Text'----getDocumentResponse :: GetDocumentResponse-getDocumentResponse = GetDocumentResponse-    { _gdrName    = Nothing-    , _gdrContent = Nothing-    }+instance AWSRequest GetDocument where+        type Sv GetDocument = SSM+        type Rs GetDocument = GetDocumentResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 GetDocumentResponse' <$>+                   (x .?> "Content") <*> (x .?> "Name") <*>+                     (pure (fromEnum s))) --- | The contents of the configuration document.-gdrContent :: Lens' GetDocumentResponse (Maybe Text)-gdrContent = lens _gdrContent (\s a -> s { _gdrContent = a })+instance ToHeaders GetDocument where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.GetDocument" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The name of the configuration document.-gdrName :: Lens' GetDocumentResponse (Maybe Text)-gdrName = lens _gdrName (\s a -> s { _gdrName = a })+instance ToJSON GetDocument where+        toJSON GetDocument'{..} = object ["Name" .= _gdName]  instance ToPath GetDocument where-    toPath = const "/"+        toPath = const "/"  instance ToQuery GetDocument where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders GetDocument+-- | /See:/ 'getDocumentResponse' smart constructor.+data GetDocumentResponse = GetDocumentResponse'+    { _gdrsContent :: !(Maybe Text)+    , _gdrsName    :: !(Maybe Text)+    , _gdrsStatus  :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON GetDocument where-    toJSON GetDocument{..} = object-        [ "Name" .= _gdName-        ]+-- | Creates a value of 'GetDocumentResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdrsContent'+--+-- * 'gdrsName'+--+-- * 'gdrsStatus'+getDocumentResponse+    :: Int -- ^ 'gdrsStatus'+    -> GetDocumentResponse+getDocumentResponse pStatus_ =+    GetDocumentResponse'+    { _gdrsContent = Nothing+    , _gdrsName = Nothing+    , _gdrsStatus = pStatus_+    } -instance AWSRequest GetDocument where-    type Sv GetDocument = SSM-    type Rs GetDocument = GetDocumentResponse+-- | The contents of the configuration document.+gdrsContent :: Lens' GetDocumentResponse (Maybe Text)+gdrsContent = lens _gdrsContent (\ s a -> s{_gdrsContent = a}); -    request  = post "GetDocument"-    response = jsonResponse+-- | The name of the configuration document.+gdrsName :: Lens' GetDocumentResponse (Maybe Text)+gdrsName = lens _gdrsName (\ s a -> s{_gdrsName = a}); -instance FromJSON GetDocumentResponse where-    parseJSON = withObject "GetDocumentResponse" $ \o -> GetDocumentResponse-        <$> o .:? "Content"-        <*> o .:? "Name"+-- | The response status code.+gdrsStatus :: Lens' GetDocumentResponse Int+gdrsStatus = lens _gdrsStatus (\ s a -> s{_gdrsStatus = a});
gen/Network/AWS/SSM/ListAssociations.hs view
@@ -1,148 +1,163 @@-{-# 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.SSM.ListAssociations--- 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.---- | Lists the associations for the specified configuration document or instance.+-- Lists the associations for the specified configuration document or+-- instance. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_ListAssociations.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_ListAssociations.html AWS API Reference> for ListAssociations. module Network.AWS.SSM.ListAssociations     (-    -- * Request-      ListAssociations-    -- ** Request constructor-    , listAssociations-    -- ** Request lenses-    , laAssociationFilterList-    , laMaxResults+    -- * Creating a Request+      listAssociations+    , ListAssociations+    -- * Request Lenses     , laNextToken+    , laMaxResults+    , laAssociationFilterList -    -- * Response-    , ListAssociationsResponse-    -- ** Response constructor+    -- * Destructuring the Response     , listAssociationsResponse-    -- ** Response lenses-    , larAssociations-    , larNextToken+    , ListAssociationsResponse+    -- * Response Lenses+    , larsNextToken+    , larsAssociations+    , larsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data ListAssociations = ListAssociations-    { _laAssociationFilterList :: List1 "AssociationFilter" AssociationFilter-    , _laMaxResults            :: Maybe Nat-    , _laNextToken             :: Maybe Text-    } deriving (Eq, Read, Show)+-- | /See:/ 'listAssociations' smart constructor.+data ListAssociations = ListAssociations'+    { _laNextToken             :: !(Maybe Text)+    , _laMaxResults            :: !(Maybe Nat)+    , _laAssociationFilterList :: !(List1 AssociationFilter)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListAssociations' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ListAssociations' with the minimum fields required to make a request. ----- * 'laAssociationFilterList' @::@ 'NonEmpty' 'AssociationFilter'+-- Use one of the following lenses to modify other fields as desired: ----- * 'laMaxResults' @::@ 'Maybe' 'Natural'+-- * 'laNextToken' ----- * 'laNextToken' @::@ 'Maybe' 'Text'+-- * 'laMaxResults' ---listAssociations :: NonEmpty AssociationFilter -- ^ 'laAssociationFilterList'-                 -> ListAssociations-listAssociations p1 = ListAssociations-    { _laAssociationFilterList = withIso _List1 (const id) p1-    , _laMaxResults            = Nothing-    , _laNextToken             = Nothing+-- * 'laAssociationFilterList'+listAssociations+    :: NonEmpty AssociationFilter -- ^ 'laAssociationFilterList'+    -> ListAssociations+listAssociations pAssociationFilterList_ =+    ListAssociations'+    { _laNextToken = Nothing+    , _laMaxResults = Nothing+    , _laAssociationFilterList = _List1 # pAssociationFilterList_     } --- | One or more filters. Use a filter to return a more specific list of results.-laAssociationFilterList :: Lens' ListAssociations (NonEmpty AssociationFilter)-laAssociationFilterList =-    lens _laAssociationFilterList (\s a -> s { _laAssociationFilterList = a })-        . _List1+-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+laNextToken :: Lens' ListAssociations (Maybe Text)+laNextToken = lens _laNextToken (\ s a -> s{_laNextToken = a}); --- | The maximum number of items to return for this call. The call also returns a--- token that you can specify in a subsequent call to get the next set of--- results.+-- | The maximum number of items to return for this call. The call also+-- returns a token that you can specify in a subsequent call to get the+-- next set of results. laMaxResults :: Lens' ListAssociations (Maybe Natural)-laMaxResults = lens _laMaxResults (\s a -> s { _laMaxResults = a }) . mapping _Nat---- | The token for the next set of items to return. (You received this token from--- a previous call.)-laNextToken :: Lens' ListAssociations (Maybe Text)-laNextToken = lens _laNextToken (\s a -> s { _laNextToken = a })+laMaxResults = lens _laMaxResults (\ s a -> s{_laMaxResults = a}) . mapping _Nat; -data ListAssociationsResponse = ListAssociationsResponse-    { _larAssociations :: List "Association" Association-    , _larNextToken    :: Maybe Text-    } deriving (Eq, Read, Show)+-- | One or more filters. Use a filter to return a more specific list of+-- results.+laAssociationFilterList :: Lens' ListAssociations (NonEmpty AssociationFilter)+laAssociationFilterList = lens _laAssociationFilterList (\ s a -> s{_laAssociationFilterList = a}) . _List1; --- | 'ListAssociationsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'larAssociations' @::@ ['Association']------ * 'larNextToken' @::@ 'Maybe' 'Text'----listAssociationsResponse :: ListAssociationsResponse-listAssociationsResponse = ListAssociationsResponse-    { _larAssociations = mempty-    , _larNextToken    = Nothing-    }+instance AWSRequest ListAssociations where+        type Sv ListAssociations = SSM+        type Rs ListAssociations = ListAssociationsResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 ListAssociationsResponse' <$>+                   (x .?> "NextToken") <*>+                     (x .?> "Associations" .!@ mempty)+                     <*> (pure (fromEnum s))) --- | The associations.-larAssociations :: Lens' ListAssociationsResponse [Association]-larAssociations = lens _larAssociations (\s a -> s { _larAssociations = a }) . _List+instance ToHeaders ListAssociations where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.ListAssociations" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The token to use when requesting the next set of items. If there are no--- additional items to return, the string is empty.-larNextToken :: Lens' ListAssociationsResponse (Maybe Text)-larNextToken = lens _larNextToken (\s a -> s { _larNextToken = a })+instance ToJSON ListAssociations where+        toJSON ListAssociations'{..}+          = object+              ["NextToken" .= _laNextToken,+               "MaxResults" .= _laMaxResults,+               "AssociationFilterList" .= _laAssociationFilterList]  instance ToPath ListAssociations where-    toPath = const "/"+        toPath = const "/"  instance ToQuery ListAssociations where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders ListAssociations+-- | /See:/ 'listAssociationsResponse' smart constructor.+data ListAssociationsResponse = ListAssociationsResponse'+    { _larsNextToken    :: !(Maybe Text)+    , _larsAssociations :: !(Maybe [Association])+    , _larsStatus       :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON ListAssociations where-    toJSON ListAssociations{..} = object-        [ "AssociationFilterList" .= _laAssociationFilterList-        , "MaxResults"            .= _laMaxResults-        , "NextToken"             .= _laNextToken-        ]+-- | Creates a value of 'ListAssociationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'larsNextToken'+--+-- * 'larsAssociations'+--+-- * 'larsStatus'+listAssociationsResponse+    :: Int -- ^ 'larsStatus'+    -> ListAssociationsResponse+listAssociationsResponse pStatus_ =+    ListAssociationsResponse'+    { _larsNextToken = Nothing+    , _larsAssociations = Nothing+    , _larsStatus = pStatus_+    } -instance AWSRequest ListAssociations where-    type Sv ListAssociations = SSM-    type Rs ListAssociations = ListAssociationsResponse+-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+larsNextToken :: Lens' ListAssociationsResponse (Maybe Text)+larsNextToken = lens _larsNextToken (\ s a -> s{_larsNextToken = a}); -    request  = post "ListAssociations"-    response = jsonResponse+-- | The associations.+larsAssociations :: Lens' ListAssociationsResponse [Association]+larsAssociations = lens _larsAssociations (\ s a -> s{_larsAssociations = a}) . _Default . _Coerce; -instance FromJSON ListAssociationsResponse where-    parseJSON = withObject "ListAssociationsResponse" $ \o -> ListAssociationsResponse-        <$> o .:? "Associations" .!= mempty-        <*> o .:? "NextToken"+-- | The response status code.+larsStatus :: Lens' ListAssociationsResponse Int+larsStatus = lens _larsStatus (\ s a -> s{_larsStatus = a});
gen/Network/AWS/SSM/ListDocuments.hs view
@@ -1,150 +1,161 @@-{-# 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.SSM.ListDocuments--- 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.---- | Describes one or more of your configuration documents.+-- Describes one or more of your configuration documents. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_ListDocuments.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_ListDocuments.html AWS API Reference> for ListDocuments. module Network.AWS.SSM.ListDocuments     (-    -- * Request-      ListDocuments-    -- ** Request constructor-    , listDocuments-    -- ** Request lenses+    -- * Creating a Request+      listDocuments+    , ListDocuments+    -- * Request Lenses     , ldDocumentFilterList-    , ldMaxResults     , ldNextToken+    , ldMaxResults -    -- * Response-    , ListDocumentsResponse-    -- ** Response constructor+    -- * Destructuring the Response     , listDocumentsResponse-    -- ** Response lenses-    , ldrDocumentIdentifiers-    , ldrNextToken+    , ListDocumentsResponse+    -- * Response Lenses+    , ldrsDocumentIdentifiers+    , ldrsNextToken+    , ldrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data ListDocuments = ListDocuments-    { _ldDocumentFilterList :: List1 "DocumentFilter" DocumentFilter-    , _ldMaxResults         :: Maybe Nat-    , _ldNextToken          :: Maybe Text-    } deriving (Eq, Read, Show)+-- | /See:/ 'listDocuments' smart constructor.+data ListDocuments = ListDocuments'+    { _ldDocumentFilterList :: !(Maybe (List1 DocumentFilter))+    , _ldNextToken          :: !(Maybe Text)+    , _ldMaxResults         :: !(Maybe Nat)+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListDocuments' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ListDocuments' with the minimum fields required to make a request. ----- * 'ldDocumentFilterList' @::@ 'NonEmpty' 'DocumentFilter'+-- Use one of the following lenses to modify other fields as desired: ----- * 'ldMaxResults' @::@ 'Maybe' 'Natural'+-- * 'ldDocumentFilterList' ----- * 'ldNextToken' @::@ 'Maybe' 'Text'+-- * 'ldNextToken' ---listDocuments :: NonEmpty DocumentFilter -- ^ 'ldDocumentFilterList'-              -> ListDocuments-listDocuments p1 = ListDocuments-    { _ldDocumentFilterList = withIso _List1 (const id) p1-    , _ldMaxResults         = Nothing-    , _ldNextToken          = Nothing+-- * 'ldMaxResults'+listDocuments+    :: ListDocuments+listDocuments =+    ListDocuments'+    { _ldDocumentFilterList = Nothing+    , _ldNextToken = Nothing+    , _ldMaxResults = Nothing     } --- | One or more filters. Use a filter to return a more specific list of results.-ldDocumentFilterList :: Lens' ListDocuments (NonEmpty DocumentFilter)-ldDocumentFilterList =-    lens _ldDocumentFilterList (\s a -> s { _ldDocumentFilterList = a })-        . _List1---- | The maximum number of items to return for this call. The call also returns a--- token that you can specify in a subsequent call to get the next set of+-- | One or more filters. Use a filter to return a more specific list of -- results.-ldMaxResults :: Lens' ListDocuments (Maybe Natural)-ldMaxResults = lens _ldMaxResults (\s a -> s { _ldMaxResults = a }) . mapping _Nat+ldDocumentFilterList :: Lens' ListDocuments (Maybe (NonEmpty DocumentFilter))+ldDocumentFilterList = lens _ldDocumentFilterList (\ s a -> s{_ldDocumentFilterList = a}) . mapping _List1; --- | The token for the next set of items to return. (You received this token from--- a previous call.)+-- | The token for the next set of items to return. (You received this token+-- from a previous call.) ldNextToken :: Lens' ListDocuments (Maybe Text)-ldNextToken = lens _ldNextToken (\s a -> s { _ldNextToken = a })+ldNextToken = lens _ldNextToken (\ s a -> s{_ldNextToken = a}); -data ListDocumentsResponse = ListDocumentsResponse-    { _ldrDocumentIdentifiers :: List "DocumentIdentifier" DocumentIdentifier-    , _ldrNextToken           :: Maybe Text-    } deriving (Eq, Read, Show)+-- | The maximum number of items to return for this call. The call also+-- returns a token that you can specify in a subsequent call to get the+-- next set of results.+ldMaxResults :: Lens' ListDocuments (Maybe Natural)+ldMaxResults = lens _ldMaxResults (\ s a -> s{_ldMaxResults = a}) . mapping _Nat; --- | 'ListDocumentsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ldrDocumentIdentifiers' @::@ ['DocumentIdentifier']------ * 'ldrNextToken' @::@ 'Maybe' 'Text'----listDocumentsResponse :: ListDocumentsResponse-listDocumentsResponse = ListDocumentsResponse-    { _ldrDocumentIdentifiers = mempty-    , _ldrNextToken           = Nothing-    }+instance AWSRequest ListDocuments where+        type Sv ListDocuments = SSM+        type Rs ListDocuments = ListDocumentsResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 ListDocumentsResponse' <$>+                   (x .?> "DocumentIdentifiers" .!@ mempty) <*>+                     (x .?> "NextToken")+                     <*> (pure (fromEnum s))) --- | The names of the configuration documents.-ldrDocumentIdentifiers :: Lens' ListDocumentsResponse [DocumentIdentifier]-ldrDocumentIdentifiers =-    lens _ldrDocumentIdentifiers (\s a -> s { _ldrDocumentIdentifiers = a })-        . _List+instance ToHeaders ListDocuments where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.ListDocuments" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | The token to use when requesting the next set of items. If there are no--- additional items to return, the string is empty.-ldrNextToken :: Lens' ListDocumentsResponse (Maybe Text)-ldrNextToken = lens _ldrNextToken (\s a -> s { _ldrNextToken = a })+instance ToJSON ListDocuments where+        toJSON ListDocuments'{..}+          = object+              ["DocumentFilterList" .= _ldDocumentFilterList,+               "NextToken" .= _ldNextToken,+               "MaxResults" .= _ldMaxResults]  instance ToPath ListDocuments where-    toPath = const "/"+        toPath = const "/"  instance ToQuery ListDocuments where-    toQuery = const mempty+        toQuery = const mempty -instance ToHeaders ListDocuments+-- | /See:/ 'listDocumentsResponse' smart constructor.+data ListDocumentsResponse = ListDocumentsResponse'+    { _ldrsDocumentIdentifiers :: !(Maybe [DocumentIdentifier])+    , _ldrsNextToken           :: !(Maybe Text)+    , _ldrsStatus              :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance ToJSON ListDocuments where-    toJSON ListDocuments{..} = object-        [ "DocumentFilterList" .= _ldDocumentFilterList-        , "MaxResults"         .= _ldMaxResults-        , "NextToken"          .= _ldNextToken-        ]+-- | Creates a value of 'ListDocumentsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldrsDocumentIdentifiers'+--+-- * 'ldrsNextToken'+--+-- * 'ldrsStatus'+listDocumentsResponse+    :: Int -- ^ 'ldrsStatus'+    -> ListDocumentsResponse+listDocumentsResponse pStatus_ =+    ListDocumentsResponse'+    { _ldrsDocumentIdentifiers = Nothing+    , _ldrsNextToken = Nothing+    , _ldrsStatus = pStatus_+    } -instance AWSRequest ListDocuments where-    type Sv ListDocuments = SSM-    type Rs ListDocuments = ListDocumentsResponse+-- | The names of the configuration documents.+ldrsDocumentIdentifiers :: Lens' ListDocumentsResponse [DocumentIdentifier]+ldrsDocumentIdentifiers = lens _ldrsDocumentIdentifiers (\ s a -> s{_ldrsDocumentIdentifiers = a}) . _Default . _Coerce; -    request  = post "ListDocuments"-    response = jsonResponse+-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+ldrsNextToken :: Lens' ListDocumentsResponse (Maybe Text)+ldrsNextToken = lens _ldrsNextToken (\ s a -> s{_ldrsNextToken = a}); -instance FromJSON ListDocumentsResponse where-    parseJSON = withObject "ListDocumentsResponse" $ \o -> ListDocumentsResponse-        <$> o .:? "DocumentIdentifiers" .!= mempty-        <*> o .:? "NextToken"+-- | The response status code.+ldrsStatus :: Lens' ListDocumentsResponse Int+ldrsStatus = lens _ldrsStatus (\ s a -> s{_ldrsStatus = a});
gen/Network/AWS/SSM/Types.hs view
@@ -1,54 +1,40 @@-{-# LANGUAGE DataKinds                   #-}-{-# LANGUAGE DeriveGeneric               #-}-{-# LANGUAGE FlexibleInstances           #-}-{-# LANGUAGE GeneralizedNewtypeDeriving  #-}-{-# LANGUAGE LambdaCase                  #-}-{-# LANGUAGE NoImplicitPrelude           #-}-{-# LANGUAGE OverloadedStrings           #-}-{-# LANGUAGE RecordWildCards             #-}-{-# LANGUAGE TypeFamilies                #-}-{-# LANGUAGE ViewPatterns                #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies      #-} -{-# OPTIONS_GHC -fno-warn-unused-imports #-}+-- Derived from AWS service descriptions, licensed under Apache 2.0. +-- | -- Module      : Network.AWS.SSM.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/.+-- 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.- module Network.AWS.SSM.Types     (     -- * Service       SSM-    -- ** Error-    , JSONError -    -- * CreateAssociationBatchRequestEntry-    , CreateAssociationBatchRequestEntry-    , createAssociationBatchRequestEntry-    , cabreInstanceId-    , cabreName--    -- * DocumentFilter-    , DocumentFilter-    , documentFilter-    , dfKey-    , dfValue+    -- * Errors+    , _AssociatedInstances+    , _InvalidNextToken+    , _InvalidInstanceId+    , _StatusUnchanged+    , _DuplicateInstanceId+    , _InvalidDocument+    , _AssociationLimitExceeded+    , _InvalidDocumentContent+    , _AssociationAlreadyExists+    , _AssociationDoesNotExist+    , _InternalServerError+    , _MaxDocumentSizeExceeded+    , _TooManyUpdates+    , _DocumentAlreadyExists+    , _DocumentLimitExceeded -    -- * AssociationDescription-    , AssociationDescription-    , associationDescription-    , adDate-    , adInstanceId-    , adName-    , adStatus+    -- * AssociationFilterKey+    , AssociationFilterKey (..)      -- * AssociationStatusName     , AssociationStatusName (..)@@ -56,656 +42,181 @@     -- * DocumentFilterKey     , DocumentFilterKey (..) -    -- * DocumentDescription-    , DocumentDescription-    , documentDescription-    , dd1CreatedDate-    , dd1Name-    , dd1Sha1-    , dd1Status+    -- * DocumentStatus+    , DocumentStatus (..) +    -- * Fault+    , Fault (..)++    -- * Association+    , Association+    , association+    , aInstanceId+    , aName++    -- * AssociationDescription+    , AssociationDescription+    , associationDescription+    , adInstanceId+    , adStatus+    , adDate+    , adName+     -- * AssociationFilter     , AssociationFilter     , associationFilter     , afKey     , afValue -    -- * DocumentIdentifier-    , DocumentIdentifier-    , documentIdentifier-    , diName--    -- * Fault-    , Fault (..)-     -- * AssociationStatus     , AssociationStatus     , associationStatus     , asAdditionalInfo     , asDate-    , asMessage     , asName+    , asMessage -    -- * DocumentStatus-    , DocumentStatus (..)+    -- * CreateAssociationBatchRequestEntry+    , CreateAssociationBatchRequestEntry+    , createAssociationBatchRequestEntry+    , cabreInstanceId+    , cabreName -    -- * AssociationFilterKey-    , AssociationFilterKey (..)+    -- * DocumentDescription+    , DocumentDescription+    , documentDescription+    , dStatus+    , dSha1+    , dCreatedDate+    , dName +    -- * DocumentFilter+    , DocumentFilter+    , documentFilter+    , dfKey+    , dfValue++    -- * DocumentIdentifier+    , DocumentIdentifier+    , documentIdentifier+    , diName+     -- * FailedCreateAssociation     , FailedCreateAssociation     , failedCreateAssociation     , fcaEntry     , fcaFault     , fcaMessage--    -- * Association-    , Association-    , association-    , aInstanceId-    , aName     ) where -import Network.AWS.Prelude-import Network.AWS.Signing-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Sign.V4+import           Network.AWS.SSM.Types.Product+import           Network.AWS.SSM.Types.Sum --- | Version @2014-11-06@ of the Amazon Simple Systems Management Service service.+-- | Version @2014-11-06@ of the Amazon Simple Systems Management Service SDK. data SSM  instance AWSService SSM where     type Sg SSM = V4-    type Er SSM = JSONError--    service = service'+    service = const svc       where-        service' :: Service SSM-        service' = Service-            { _svcAbbrev       = "SSM"-            , _svcPrefix       = "ssm"-            , _svcVersion      = "2014-11-06"-            , _svcTargetPrefix = Just "AmazonSSM"-            , _svcJSONVersion  = Just "1.1"-            , _svcHandle       = handle-            , _svcRetry        = retry+        svc =+            Service+            { _svcAbbrev = "SSM"+            , _svcPrefix = "ssm"+            , _svcVersion = "2014-11-06"+            , _svcEndpoint = defaultEndpoint svc+            , _svcTimeout = Just 70+            , _svcStatus = statusSuccess+            , _svcError = parseJSONError+            , _svcRetry = retry             }--        handle :: Status-               -> Maybe (LazyByteString -> ServiceError JSONError)-        handle = jsonError statusSuccess service'--        retry :: Retry SSM-        retry = Exponential-            { _retryBase     = 0.05-            , _retryGrowth   = 2+        retry =+            Exponential+            { _retryBase = 5.0e-2+            , _retryGrowth = 2             , _retryAttempts = 5-            , _retryCheck    = check+            , _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 CreateAssociationBatchRequestEntry = CreateAssociationBatchRequestEntry-    { _cabreInstanceId :: Maybe Text-    , _cabreName       :: Maybe Text-    } deriving (Eq, Ord, Read, Show)---- | 'CreateAssociationBatchRequestEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'cabreInstanceId' @::@ 'Maybe' 'Text'------ * 'cabreName' @::@ 'Maybe' 'Text'----createAssociationBatchRequestEntry :: CreateAssociationBatchRequestEntry-createAssociationBatchRequestEntry = CreateAssociationBatchRequestEntry-    { _cabreName       = Nothing-    , _cabreInstanceId = Nothing-    }---- | The ID of the instance.-cabreInstanceId :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)-cabreInstanceId = lens _cabreInstanceId (\s a -> s { _cabreInstanceId = a })---- | The name of the configuration document.-cabreName :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)-cabreName = lens _cabreName (\s a -> s { _cabreName = a })--instance FromJSON CreateAssociationBatchRequestEntry where-    parseJSON = withObject "CreateAssociationBatchRequestEntry" $ \o -> CreateAssociationBatchRequestEntry-        <$> o .:? "InstanceId"-        <*> o .:? "Name"--instance ToJSON CreateAssociationBatchRequestEntry where-    toJSON CreateAssociationBatchRequestEntry{..} = object-        [ "Name"       .= _cabreName-        , "InstanceId" .= _cabreInstanceId-        ]--data DocumentFilter = DocumentFilter-    { _dfKey   :: DocumentFilterKey-    , _dfValue :: Text-    } deriving (Eq, Read, Show)---- | 'DocumentFilter' constructor.------ The fields accessible through corresponding lenses are:------ * 'dfKey' @::@ 'DocumentFilterKey'------ * 'dfValue' @::@ 'Text'----documentFilter :: DocumentFilterKey -- ^ 'dfKey'-               -> Text -- ^ 'dfValue'-               -> DocumentFilter-documentFilter p1 p2 = DocumentFilter-    { _dfKey   = p1-    , _dfValue = p2-    }---- | The name of the filter.-dfKey :: Lens' DocumentFilter DocumentFilterKey-dfKey = lens _dfKey (\s a -> s { _dfKey = a })---- | The value of the filter.-dfValue :: Lens' DocumentFilter Text-dfValue = lens _dfValue (\s a -> s { _dfValue = a })--instance FromJSON DocumentFilter where-    parseJSON = withObject "DocumentFilter" $ \o -> DocumentFilter-        <$> o .:  "key"-        <*> o .:  "value"--instance ToJSON DocumentFilter where-    toJSON DocumentFilter{..} = object-        [ "key"   .= _dfKey-        , "value" .= _dfValue-        ]--data AssociationDescription = AssociationDescription-    { _adDate       :: Maybe POSIX-    , _adInstanceId :: Maybe Text-    , _adName       :: Maybe Text-    , _adStatus     :: Maybe AssociationStatus-    } deriving (Eq, Read, Show)---- | 'AssociationDescription' constructor.------ The fields accessible through corresponding lenses are:------ * 'adDate' @::@ 'Maybe' 'UTCTime'------ * 'adInstanceId' @::@ 'Maybe' 'Text'------ * 'adName' @::@ 'Maybe' 'Text'------ * 'adStatus' @::@ 'Maybe' 'AssociationStatus'----associationDescription :: AssociationDescription-associationDescription = AssociationDescription-    { _adName       = Nothing-    , _adInstanceId = Nothing-    , _adDate       = Nothing-    , _adStatus     = Nothing-    }---- | The date when the association was made.-adDate :: Lens' AssociationDescription (Maybe UTCTime)-adDate = lens _adDate (\s a -> s { _adDate = a }) . mapping _Time---- | The ID of the instance.-adInstanceId :: Lens' AssociationDescription (Maybe Text)-adInstanceId = lens _adInstanceId (\s a -> s { _adInstanceId = a })---- | The name of the configuration document.-adName :: Lens' AssociationDescription (Maybe Text)-adName = lens _adName (\s a -> s { _adName = a })---- | The association status.-adStatus :: Lens' AssociationDescription (Maybe AssociationStatus)-adStatus = lens _adStatus (\s a -> s { _adStatus = a })--instance FromJSON AssociationDescription where-    parseJSON = withObject "AssociationDescription" $ \o -> AssociationDescription-        <$> o .:? "Date"-        <*> o .:? "InstanceId"-        <*> o .:? "Name"-        <*> o .:? "Status"--instance ToJSON AssociationDescription where-    toJSON AssociationDescription{..} = object-        [ "Name"       .= _adName-        , "InstanceId" .= _adInstanceId-        , "Date"       .= _adDate-        , "Status"     .= _adStatus-        ]--data AssociationStatusName-    = Failed  -- ^ Failed-    | Pending -- ^ Pending-    | Success -- ^ Success-      deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable AssociationStatusName--instance FromText AssociationStatusName where-    parser = takeLowerText >>= \case-        "failed"  -> pure Failed-        "pending" -> pure Pending-        "success" -> pure Success-        e         -> fail $-            "Failure parsing AssociationStatusName from " ++ show e--instance ToText AssociationStatusName where-    toText = \case-        Failed  -> "Failed"-        Pending -> "Pending"-        Success -> "Success"--instance ToByteString AssociationStatusName-instance ToHeader     AssociationStatusName-instance ToQuery      AssociationStatusName--instance FromJSON AssociationStatusName where-    parseJSON = parseJSONText "AssociationStatusName"--instance ToJSON AssociationStatusName where-    toJSON = toJSONText--data DocumentFilterKey-    = Name -- ^ Name-      deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable DocumentFilterKey--instance FromText DocumentFilterKey where-    parser = takeLowerText >>= \case-        "name" -> pure Name-        e      -> fail $-            "Failure parsing DocumentFilterKey from " ++ show e--instance ToText DocumentFilterKey where-    toText Name = "Name"--instance ToByteString DocumentFilterKey-instance ToHeader     DocumentFilterKey-instance ToQuery      DocumentFilterKey--instance FromJSON DocumentFilterKey where-    parseJSON = parseJSONText "DocumentFilterKey"--instance ToJSON DocumentFilterKey where-    toJSON = toJSONText--data DocumentDescription = DocumentDescription-    { _dd1CreatedDate :: Maybe POSIX-    , _dd1Name        :: Maybe Text-    , _dd1Sha1        :: Maybe Text-    , _dd1Status      :: Maybe DocumentStatus-    } deriving (Eq, Read, Show)---- | 'DocumentDescription' constructor.------ The fields accessible through corresponding lenses are:------ * 'dd1CreatedDate' @::@ 'Maybe' 'UTCTime'------ * 'dd1Name' @::@ 'Maybe' 'Text'------ * 'dd1Sha1' @::@ 'Maybe' 'Text'------ * 'dd1Status' @::@ 'Maybe' 'DocumentStatus'----documentDescription :: DocumentDescription-documentDescription = DocumentDescription-    { _dd1Sha1        = Nothing-    , _dd1Name        = Nothing-    , _dd1CreatedDate = Nothing-    , _dd1Status      = Nothing-    }---- | The date when the configuration document was created.-dd1CreatedDate :: Lens' DocumentDescription (Maybe UTCTime)-dd1CreatedDate = lens _dd1CreatedDate (\s a -> s { _dd1CreatedDate = a }) . mapping _Time---- | The name of the configuration document.-dd1Name :: Lens' DocumentDescription (Maybe Text)-dd1Name = lens _dd1Name (\s a -> s { _dd1Name = a })---- | The SHA1 hash of the document, which you can use for verification purposes.-dd1Sha1 :: Lens' DocumentDescription (Maybe Text)-dd1Sha1 = lens _dd1Sha1 (\s a -> s { _dd1Sha1 = a })---- | The status of the configuration document.-dd1Status :: Lens' DocumentDescription (Maybe DocumentStatus)-dd1Status = lens _dd1Status (\s a -> s { _dd1Status = a })--instance FromJSON DocumentDescription where-    parseJSON = withObject "DocumentDescription" $ \o -> DocumentDescription-        <$> o .:? "CreatedDate"-        <*> o .:? "Name"-        <*> o .:? "Sha1"-        <*> o .:? "Status"--instance ToJSON DocumentDescription where-    toJSON DocumentDescription{..} = object-        [ "Sha1"        .= _dd1Sha1-        , "Name"        .= _dd1Name-        , "CreatedDate" .= _dd1CreatedDate-        , "Status"      .= _dd1Status-        ]--data AssociationFilter = AssociationFilter-    { _afKey   :: AssociationFilterKey-    , _afValue :: Text-    } deriving (Eq, Read, Show)---- | 'AssociationFilter' constructor.------ The fields accessible through corresponding lenses are:------ * 'afKey' @::@ 'AssociationFilterKey'------ * 'afValue' @::@ 'Text'----associationFilter :: AssociationFilterKey -- ^ 'afKey'-                  -> Text -- ^ 'afValue'-                  -> AssociationFilter-associationFilter p1 p2 = AssociationFilter-    { _afKey   = p1-    , _afValue = p2-    }---- | The name of the filter.-afKey :: Lens' AssociationFilter AssociationFilterKey-afKey = lens _afKey (\s a -> s { _afKey = a })---- | The filter value.-afValue :: Lens' AssociationFilter Text-afValue = lens _afValue (\s a -> s { _afValue = a })--instance FromJSON AssociationFilter where-    parseJSON = withObject "AssociationFilter" $ \o -> AssociationFilter-        <$> o .:  "key"-        <*> o .:  "value"--instance ToJSON AssociationFilter where-    toJSON AssociationFilter{..} = object-        [ "key"   .= _afKey-        , "value" .= _afValue-        ]--newtype DocumentIdentifier = DocumentIdentifier-    { _diName :: Maybe Text-    } deriving (Eq, Ord, Read, Show, Monoid)---- | 'DocumentIdentifier' constructor.------ The fields accessible through corresponding lenses are:------ * 'diName' @::@ 'Maybe' 'Text'----documentIdentifier :: DocumentIdentifier-documentIdentifier = DocumentIdentifier-    { _diName = Nothing-    }---- | The name of the configuration document.-diName :: Lens' DocumentIdentifier (Maybe Text)-diName = lens _diName (\s a -> s { _diName = a })--instance FromJSON DocumentIdentifier where-    parseJSON = withObject "DocumentIdentifier" $ \o -> DocumentIdentifier-        <$> o .:? "Name"--instance ToJSON DocumentIdentifier where-    toJSON DocumentIdentifier{..} = object-        [ "Name" .= _diName-        ]--data Fault-    = Client  -- ^ Client-    | Server  -- ^ Server-    | Unknown -- ^ Unknown-      deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable Fault--instance FromText Fault where-    parser = takeLowerText >>= \case-        "client"  -> pure Client-        "server"  -> pure Server-        "unknown" -> pure Unknown-        e         -> fail $-            "Failure parsing Fault from " ++ show e--instance ToText Fault where-    toText = \case-        Client  -> "Client"-        Server  -> "Server"-        Unknown -> "Unknown"--instance ToByteString Fault-instance ToHeader     Fault-instance ToQuery      Fault--instance FromJSON Fault where-    parseJSON = parseJSONText "Fault"--instance ToJSON Fault where-    toJSON = toJSONText--data AssociationStatus = AssociationStatus-    { _asAdditionalInfo :: Maybe Text-    , _asDate           :: POSIX-    , _asMessage        :: Text-    , _asName           :: AssociationStatusName-    } deriving (Eq, Read, Show)---- | 'AssociationStatus' constructor.------ The fields accessible through corresponding lenses are:------ * 'asAdditionalInfo' @::@ 'Maybe' 'Text'------ * 'asDate' @::@ 'UTCTime'------ * 'asMessage' @::@ 'Text'------ * 'asName' @::@ 'AssociationStatusName'----associationStatus :: UTCTime -- ^ 'asDate'-                  -> AssociationStatusName -- ^ 'asName'-                  -> Text -- ^ 'asMessage'-                  -> AssociationStatus-associationStatus p1 p2 p3 = AssociationStatus-    { _asDate           = withIso _Time (const id) p1-    , _asName           = p2-    , _asMessage        = p3-    , _asAdditionalInfo = Nothing-    }---- | A user-defined string.-asAdditionalInfo :: Lens' AssociationStatus (Maybe Text)-asAdditionalInfo = lens _asAdditionalInfo (\s a -> s { _asAdditionalInfo = a })---- | The date when the status changed.-asDate :: Lens' AssociationStatus UTCTime-asDate = lens _asDate (\s a -> s { _asDate = a }) . _Time---- | The reason for the status.-asMessage :: Lens' AssociationStatus Text-asMessage = lens _asMessage (\s a -> s { _asMessage = a })---- | The status.-asName :: Lens' AssociationStatus AssociationStatusName-asName = lens _asName (\s a -> s { _asName = a })--instance FromJSON AssociationStatus where-    parseJSON = withObject "AssociationStatus" $ \o -> AssociationStatus-        <$> o .:? "AdditionalInfo"-        <*> o .:  "Date"-        <*> o .:  "Message"-        <*> o .:  "Name"--instance ToJSON AssociationStatus where-    toJSON AssociationStatus{..} = object-        [ "Date"           .= _asDate-        , "Name"           .= _asName-        , "Message"        .= _asMessage-        , "AdditionalInfo" .= _asAdditionalInfo-        ]--data DocumentStatus-    = Active   -- ^ Active-    | Creating -- ^ Creating-    | Deleting -- ^ Deleting-      deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable DocumentStatus--instance FromText DocumentStatus where-    parser = takeLowerText >>= \case-        "active"   -> pure Active-        "creating" -> pure Creating-        "deleting" -> pure Deleting-        e          -> fail $-            "Failure parsing DocumentStatus from " ++ show e--instance ToText DocumentStatus where-    toText = \case-        Active   -> "Active"-        Creating -> "Creating"-        Deleting -> "Deleting"--instance ToByteString DocumentStatus-instance ToHeader     DocumentStatus-instance ToQuery      DocumentStatus--instance FromJSON DocumentStatus where-    parseJSON = parseJSONText "DocumentStatus"--instance ToJSON DocumentStatus where-    toJSON = toJSONText--data AssociationFilterKey-    = AFKInstanceId -- ^ InstanceId-    | AFKName       -- ^ Name-      deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable AssociationFilterKey--instance FromText AssociationFilterKey where-    parser = takeLowerText >>= \case-        "instanceid" -> pure AFKInstanceId-        "name"       -> pure AFKName-        e            -> fail $-            "Failure parsing AssociationFilterKey from " ++ show e--instance ToText AssociationFilterKey where-    toText = \case-        AFKInstanceId -> "InstanceId"-        AFKName       -> "Name"--instance ToByteString AssociationFilterKey-instance ToHeader     AssociationFilterKey-instance ToQuery      AssociationFilterKey+        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 -instance FromJSON AssociationFilterKey where-    parseJSON = parseJSONText "AssociationFilterKey"+-- | You must disassociate a configuration document from all instances before+-- you can delete it.+_AssociatedInstances :: AsError a => Getting (First ServiceError) a ServiceError+_AssociatedInstances =+    _ServiceError . hasStatus 400 . hasCode "AssociatedInstances" -instance ToJSON AssociationFilterKey where-    toJSON = toJSONText+-- | The specified token is not valid.+_InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidNextToken = _ServiceError . hasStatus 400 . hasCode "InvalidNextToken" -data FailedCreateAssociation = FailedCreateAssociation-    { _fcaEntry   :: Maybe CreateAssociationBatchRequestEntry-    , _fcaFault   :: Maybe Fault-    , _fcaMessage :: Maybe Text-    } deriving (Eq, Read, Show)+-- | You must specify the ID of a running instance.+_InvalidInstanceId :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidInstanceId =+    _ServiceError . hasStatus 404 . hasCode "InvalidInstanceId" --- | 'FailedCreateAssociation' constructor.------ The fields accessible through corresponding lenses are:------ * 'fcaEntry' @::@ 'Maybe' 'CreateAssociationBatchRequestEntry'------ * 'fcaFault' @::@ 'Maybe' 'Fault'------ * 'fcaMessage' @::@ 'Maybe' 'Text'----failedCreateAssociation :: FailedCreateAssociation-failedCreateAssociation = FailedCreateAssociation-    { _fcaEntry   = Nothing-    , _fcaMessage = Nothing-    , _fcaFault   = Nothing-    }+-- | The updated status is the same as the current status.+_StatusUnchanged :: AsError a => Getting (First ServiceError) a ServiceError+_StatusUnchanged = _ServiceError . hasStatus 400 . hasCode "StatusUnchanged" --- | The association.-fcaEntry :: Lens' FailedCreateAssociation (Maybe CreateAssociationBatchRequestEntry)-fcaEntry = lens _fcaEntry (\s a -> s { _fcaEntry = a })+-- | You cannot specify an instance ID in more than one association.+_DuplicateInstanceId :: AsError a => Getting (First ServiceError) a ServiceError+_DuplicateInstanceId =+    _ServiceError . hasStatus 404 . hasCode "DuplicateInstanceId" --- | The source of the failure.-fcaFault :: Lens' FailedCreateAssociation (Maybe Fault)-fcaFault = lens _fcaFault (\s a -> s { _fcaFault = a })+-- | The configuration document is not valid.+_InvalidDocument :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidDocument = _ServiceError . hasStatus 404 . hasCode "InvalidDocument" --- | A description of the failure.-fcaMessage :: Lens' FailedCreateAssociation (Maybe Text)-fcaMessage = lens _fcaMessage (\s a -> s { _fcaMessage = a })+-- | You can have at most 2,000 active associations.+_AssociationLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_AssociationLimitExceeded =+    _ServiceError . hasStatus 400 . hasCode "AssociationLimitExceeded" -instance FromJSON FailedCreateAssociation where-    parseJSON = withObject "FailedCreateAssociation" $ \o -> FailedCreateAssociation-        <$> o .:? "Entry"-        <*> o .:? "Fault"-        <*> o .:? "Message"+-- | The content for the configuration document is not valid.+_InvalidDocumentContent :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidDocumentContent =+    _ServiceError . hasStatus 400 . hasCode "InvalidDocumentContent" -instance ToJSON FailedCreateAssociation where-    toJSON FailedCreateAssociation{..} = object-        [ "Entry"   .= _fcaEntry-        , "Message" .= _fcaMessage-        , "Fault"   .= _fcaFault-        ]+-- | The specified association already exists.+_AssociationAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError+_AssociationAlreadyExists =+    _ServiceError . hasStatus 400 . hasCode "AssociationAlreadyExists" -data Association = Association-    { _aInstanceId :: Maybe Text-    , _aName       :: Maybe Text-    } deriving (Eq, Ord, Read, Show)+-- | The specified association does not exist.+_AssociationDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError+_AssociationDoesNotExist =+    _ServiceError . hasStatus 404 . hasCode "AssociationDoesNotExist" --- | 'Association' constructor.------ The fields accessible through corresponding lenses are:------ * 'aInstanceId' @::@ 'Maybe' 'Text'------ * 'aName' @::@ 'Maybe' 'Text'----association :: Association-association = Association-    { _aName       = Nothing-    , _aInstanceId = Nothing-    }+-- | An error occurred on the server side.+_InternalServerError :: AsError a => Getting (First ServiceError) a ServiceError+_InternalServerError =+    _ServiceError . hasStatus 500 . hasCode "InternalServerError" --- | The ID of the instance.-aInstanceId :: Lens' Association (Maybe Text)-aInstanceId = lens _aInstanceId (\s a -> s { _aInstanceId = a })+-- | The size limit of a configuration document is 64 KB.+_MaxDocumentSizeExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_MaxDocumentSizeExceeded =+    _ServiceError . hasStatus 400 . hasCode "MaxDocumentSizeExceeded" --- | The name of the configuration document.-aName :: Lens' Association (Maybe Text)-aName = lens _aName (\s a -> s { _aName = a })+-- | There are concurrent updates for a resource that supports one update at+-- a time.+_TooManyUpdates :: AsError a => Getting (First ServiceError) a ServiceError+_TooManyUpdates = _ServiceError . hasStatus 429 . hasCode "TooManyUpdates" -instance FromJSON Association where-    parseJSON = withObject "Association" $ \o -> Association-        <$> o .:? "InstanceId"-        <*> o .:? "Name"+-- | The specified configuration document already exists.+_DocumentAlreadyExists :: AsError a => Getting (First ServiceError) a ServiceError+_DocumentAlreadyExists =+    _ServiceError . hasStatus 400 . hasCode "DocumentAlreadyExists" -instance ToJSON Association where-    toJSON Association{..} = object-        [ "Name"       .= _aName-        , "InstanceId" .= _aInstanceId-        ]+-- | You can have at most 100 active configuration documents.+_DocumentLimitExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_DocumentLimitExceeded =+    _ServiceError . hasStatus 400 . hasCode "DocumentLimitExceeded"
+ gen/Network/AWS/SSM/Types/Product.hs view
@@ -0,0 +1,434 @@+{-# 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.SSM.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.SSM.Types.Product where++import           Network.AWS.Prelude+import           Network.AWS.SSM.Types.Sum++-- | Describes an association of a configuration document and an instance.+--+-- /See:/ 'association' smart constructor.+data Association = Association'+    { _aInstanceId :: !(Maybe Text)+    , _aName       :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Association' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aInstanceId'+--+-- * 'aName'+association+    :: Association+association =+    Association'+    { _aInstanceId = Nothing+    , _aName = Nothing+    }++-- | The ID of the instance.+aInstanceId :: Lens' Association (Maybe Text)+aInstanceId = lens _aInstanceId (\ s a -> s{_aInstanceId = a});++-- | The name of the configuration document.+aName :: Lens' Association (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a});++instance FromJSON Association where+        parseJSON+          = withObject "Association"+              (\ x ->+                 Association' <$>+                   (x .:? "InstanceId") <*> (x .:? "Name"))++-- | Describes an association.+--+-- /See:/ 'associationDescription' smart constructor.+data AssociationDescription = AssociationDescription'+    { _adInstanceId :: !(Maybe Text)+    , _adStatus     :: !(Maybe AssociationStatus)+    , _adDate       :: !(Maybe POSIX)+    , _adName       :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationDescription' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adInstanceId'+--+-- * 'adStatus'+--+-- * 'adDate'+--+-- * 'adName'+associationDescription+    :: AssociationDescription+associationDescription =+    AssociationDescription'+    { _adInstanceId = Nothing+    , _adStatus = Nothing+    , _adDate = Nothing+    , _adName = Nothing+    }++-- | The ID of the instance.+adInstanceId :: Lens' AssociationDescription (Maybe Text)+adInstanceId = lens _adInstanceId (\ s a -> s{_adInstanceId = a});++-- | The association status.+adStatus :: Lens' AssociationDescription (Maybe AssociationStatus)+adStatus = lens _adStatus (\ s a -> s{_adStatus = a});++-- | The date when the association was made.+adDate :: Lens' AssociationDescription (Maybe UTCTime)+adDate = lens _adDate (\ s a -> s{_adDate = a}) . mapping _Time;++-- | The name of the configuration document.+adName :: Lens' AssociationDescription (Maybe Text)+adName = lens _adName (\ s a -> s{_adName = a});++instance FromJSON AssociationDescription where+        parseJSON+          = withObject "AssociationDescription"+              (\ x ->+                 AssociationDescription' <$>+                   (x .:? "InstanceId") <*> (x .:? "Status") <*>+                     (x .:? "Date")+                     <*> (x .:? "Name"))++-- | Describes a filter.+--+-- /See:/ 'associationFilter' smart constructor.+data AssociationFilter = AssociationFilter'+    { _afKey   :: !AssociationFilterKey+    , _afValue :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'afKey'+--+-- * 'afValue'+associationFilter+    :: AssociationFilterKey -- ^ 'afKey'+    -> Text -- ^ 'afValue'+    -> AssociationFilter+associationFilter pKey_ pValue_ =+    AssociationFilter'+    { _afKey = pKey_+    , _afValue = pValue_+    }++-- | The name of the filter.+afKey :: Lens' AssociationFilter AssociationFilterKey+afKey = lens _afKey (\ s a -> s{_afKey = a});++-- | The filter value.+afValue :: Lens' AssociationFilter Text+afValue = lens _afValue (\ s a -> s{_afValue = a});++instance ToJSON AssociationFilter where+        toJSON AssociationFilter'{..}+          = object ["key" .= _afKey, "value" .= _afValue]++-- | Describes an association status.+--+-- /See:/ 'associationStatus' smart constructor.+data AssociationStatus = AssociationStatus'+    { _asAdditionalInfo :: !(Maybe Text)+    , _asDate           :: !POSIX+    , _asName           :: !AssociationStatusName+    , _asMessage        :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asAdditionalInfo'+--+-- * 'asDate'+--+-- * 'asName'+--+-- * 'asMessage'+associationStatus+    :: UTCTime -- ^ 'asDate'+    -> AssociationStatusName -- ^ 'asName'+    -> Text -- ^ 'asMessage'+    -> AssociationStatus+associationStatus pDate_ pName_ pMessage_ =+    AssociationStatus'+    { _asAdditionalInfo = Nothing+    , _asDate = _Time # pDate_+    , _asName = pName_+    , _asMessage = pMessage_+    }++-- | A user-defined string.+asAdditionalInfo :: Lens' AssociationStatus (Maybe Text)+asAdditionalInfo = lens _asAdditionalInfo (\ s a -> s{_asAdditionalInfo = a});++-- | The date when the status changed.+asDate :: Lens' AssociationStatus UTCTime+asDate = lens _asDate (\ s a -> s{_asDate = a}) . _Time;++-- | The status.+asName :: Lens' AssociationStatus AssociationStatusName+asName = lens _asName (\ s a -> s{_asName = a});++-- | The reason for the status.+asMessage :: Lens' AssociationStatus Text+asMessage = lens _asMessage (\ s a -> s{_asMessage = a});++instance FromJSON AssociationStatus where+        parseJSON+          = withObject "AssociationStatus"+              (\ x ->+                 AssociationStatus' <$>+                   (x .:? "AdditionalInfo") <*> (x .: "Date") <*>+                     (x .: "Name")+                     <*> (x .: "Message"))++instance ToJSON AssociationStatus where+        toJSON AssociationStatus'{..}+          = object+              ["AdditionalInfo" .= _asAdditionalInfo,+               "Date" .= _asDate, "Name" .= _asName,+               "Message" .= _asMessage]++-- | Describes the association of a configuration document and an instance.+--+-- /See:/ 'createAssociationBatchRequestEntry' smart constructor.+data CreateAssociationBatchRequestEntry = CreateAssociationBatchRequestEntry'+    { _cabreInstanceId :: !(Maybe Text)+    , _cabreName       :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateAssociationBatchRequestEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cabreInstanceId'+--+-- * 'cabreName'+createAssociationBatchRequestEntry+    :: CreateAssociationBatchRequestEntry+createAssociationBatchRequestEntry =+    CreateAssociationBatchRequestEntry'+    { _cabreInstanceId = Nothing+    , _cabreName = Nothing+    }++-- | The ID of the instance.+cabreInstanceId :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)+cabreInstanceId = lens _cabreInstanceId (\ s a -> s{_cabreInstanceId = a});++-- | The name of the configuration document.+cabreName :: Lens' CreateAssociationBatchRequestEntry (Maybe Text)+cabreName = lens _cabreName (\ s a -> s{_cabreName = a});++instance FromJSON CreateAssociationBatchRequestEntry+         where+        parseJSON+          = withObject "CreateAssociationBatchRequestEntry"+              (\ x ->+                 CreateAssociationBatchRequestEntry' <$>+                   (x .:? "InstanceId") <*> (x .:? "Name"))++instance ToJSON CreateAssociationBatchRequestEntry+         where+        toJSON CreateAssociationBatchRequestEntry'{..}+          = object+              ["InstanceId" .= _cabreInstanceId,+               "Name" .= _cabreName]++-- | Describes a configuration document.+--+-- /See:/ 'documentDescription' smart constructor.+data DocumentDescription = DocumentDescription'+    { _dStatus      :: !(Maybe DocumentStatus)+    , _dSha1        :: !(Maybe Text)+    , _dCreatedDate :: !(Maybe POSIX)+    , _dName        :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DocumentDescription' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dStatus'+--+-- * 'dSha1'+--+-- * 'dCreatedDate'+--+-- * 'dName'+documentDescription+    :: DocumentDescription+documentDescription =+    DocumentDescription'+    { _dStatus = Nothing+    , _dSha1 = Nothing+    , _dCreatedDate = Nothing+    , _dName = Nothing+    }++-- | The status of the configuration document.+dStatus :: Lens' DocumentDescription (Maybe DocumentStatus)+dStatus = lens _dStatus (\ s a -> s{_dStatus = a});++-- | The SHA1 hash of the document, which you can use for verification+-- purposes.+dSha1 :: Lens' DocumentDescription (Maybe Text)+dSha1 = lens _dSha1 (\ s a -> s{_dSha1 = a});++-- | The date when the configuration document was created.+dCreatedDate :: Lens' DocumentDescription (Maybe UTCTime)+dCreatedDate = lens _dCreatedDate (\ s a -> s{_dCreatedDate = a}) . mapping _Time;++-- | The name of the configuration document.+dName :: Lens' DocumentDescription (Maybe Text)+dName = lens _dName (\ s a -> s{_dName = a});++instance FromJSON DocumentDescription where+        parseJSON+          = withObject "DocumentDescription"+              (\ x ->+                 DocumentDescription' <$>+                   (x .:? "Status") <*> (x .:? "Sha1") <*>+                     (x .:? "CreatedDate")+                     <*> (x .:? "Name"))++-- | Describes a filter.+--+-- /See:/ 'documentFilter' smart constructor.+data DocumentFilter = DocumentFilter'+    { _dfKey   :: !DocumentFilterKey+    , _dfValue :: !Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DocumentFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dfKey'+--+-- * 'dfValue'+documentFilter+    :: DocumentFilterKey -- ^ 'dfKey'+    -> Text -- ^ 'dfValue'+    -> DocumentFilter+documentFilter pKey_ pValue_ =+    DocumentFilter'+    { _dfKey = pKey_+    , _dfValue = pValue_+    }++-- | The name of the filter.+dfKey :: Lens' DocumentFilter DocumentFilterKey+dfKey = lens _dfKey (\ s a -> s{_dfKey = a});++-- | The value of the filter.+dfValue :: Lens' DocumentFilter Text+dfValue = lens _dfValue (\ s a -> s{_dfValue = a});++instance ToJSON DocumentFilter where+        toJSON DocumentFilter'{..}+          = object ["key" .= _dfKey, "value" .= _dfValue]++-- | Describes the name of a configuration document.+--+-- /See:/ 'documentIdentifier' smart constructor.+newtype DocumentIdentifier = DocumentIdentifier'+    { _diName :: Maybe Text+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DocumentIdentifier' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'diName'+documentIdentifier+    :: DocumentIdentifier+documentIdentifier =+    DocumentIdentifier'+    { _diName = Nothing+    }++-- | The name of the configuration document.+diName :: Lens' DocumentIdentifier (Maybe Text)+diName = lens _diName (\ s a -> s{_diName = a});++instance FromJSON DocumentIdentifier where+        parseJSON+          = withObject "DocumentIdentifier"+              (\ x -> DocumentIdentifier' <$> (x .:? "Name"))++-- | Describes a failed association.+--+-- /See:/ 'failedCreateAssociation' smart constructor.+data FailedCreateAssociation = FailedCreateAssociation'+    { _fcaEntry   :: !(Maybe CreateAssociationBatchRequestEntry)+    , _fcaFault   :: !(Maybe Fault)+    , _fcaMessage :: !(Maybe Text)+    } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'FailedCreateAssociation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fcaEntry'+--+-- * 'fcaFault'+--+-- * 'fcaMessage'+failedCreateAssociation+    :: FailedCreateAssociation+failedCreateAssociation =+    FailedCreateAssociation'+    { _fcaEntry = Nothing+    , _fcaFault = Nothing+    , _fcaMessage = Nothing+    }++-- | The association.+fcaEntry :: Lens' FailedCreateAssociation (Maybe CreateAssociationBatchRequestEntry)+fcaEntry = lens _fcaEntry (\ s a -> s{_fcaEntry = a});++-- | The source of the failure.+fcaFault :: Lens' FailedCreateAssociation (Maybe Fault)+fcaFault = lens _fcaFault (\ s a -> s{_fcaFault = a});++-- | A description of the failure.+fcaMessage :: Lens' FailedCreateAssociation (Maybe Text)+fcaMessage = lens _fcaMessage (\ s a -> s{_fcaMessage = a});++instance FromJSON FailedCreateAssociation where+        parseJSON+          = withObject "FailedCreateAssociation"+              (\ x ->+                 FailedCreateAssociation' <$>+                   (x .:? "Entry") <*> (x .:? "Fault") <*>+                     (x .:? "Message"))
+ gen/Network/AWS/SSM/Types/Sum.hs view
@@ -0,0 +1,154 @@+{-# 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.SSM.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.SSM.Types.Sum where++import           Network.AWS.Prelude++data AssociationFilterKey+    = AFKInstanceId+    | AFKName+    deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText AssociationFilterKey where+    parser = takeLowerText >>= \case+        "instanceid" -> pure AFKInstanceId+        "name" -> pure AFKName+        e -> fromTextError $ "Failure parsing AssociationFilterKey from value: '" <> e+           <> "'. Accepted values: instanceid, name"++instance ToText AssociationFilterKey where+    toText = \case+        AFKInstanceId -> "instanceid"+        AFKName -> "name"++instance Hashable     AssociationFilterKey+instance ToByteString AssociationFilterKey+instance ToQuery      AssociationFilterKey+instance ToHeader     AssociationFilterKey++instance ToJSON AssociationFilterKey where+    toJSON = toJSONText++data AssociationStatusName+    = Failed+    | Pending+    | Success+    deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText AssociationStatusName where+    parser = takeLowerText >>= \case+        "failed" -> pure Failed+        "pending" -> pure Pending+        "success" -> pure Success+        e -> fromTextError $ "Failure parsing AssociationStatusName from value: '" <> e+           <> "'. Accepted values: failed, pending, success"++instance ToText AssociationStatusName where+    toText = \case+        Failed -> "failed"+        Pending -> "pending"+        Success -> "success"++instance Hashable     AssociationStatusName+instance ToByteString AssociationStatusName+instance ToQuery      AssociationStatusName+instance ToHeader     AssociationStatusName++instance ToJSON AssociationStatusName where+    toJSON = toJSONText++instance FromJSON AssociationStatusName where+    parseJSON = parseJSONText "AssociationStatusName"++data DocumentFilterKey =+    Name+    deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DocumentFilterKey where+    parser = takeLowerText >>= \case+        "name" -> pure Name+        e -> fromTextError $ "Failure parsing DocumentFilterKey from value: '" <> e+           <> "'. Accepted values: name"++instance ToText DocumentFilterKey where+    toText = \case+        Name -> "name"++instance Hashable     DocumentFilterKey+instance ToByteString DocumentFilterKey+instance ToQuery      DocumentFilterKey+instance ToHeader     DocumentFilterKey++instance ToJSON DocumentFilterKey where+    toJSON = toJSONText++data DocumentStatus+    = Active+    | Creating+    | Deleting+    deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DocumentStatus where+    parser = takeLowerText >>= \case+        "active" -> pure Active+        "creating" -> pure Creating+        "deleting" -> pure Deleting+        e -> fromTextError $ "Failure parsing DocumentStatus from value: '" <> e+           <> "'. Accepted values: active, creating, deleting"++instance ToText DocumentStatus where+    toText = \case+        Active -> "active"+        Creating -> "creating"+        Deleting -> "deleting"++instance Hashable     DocumentStatus+instance ToByteString DocumentStatus+instance ToQuery      DocumentStatus+instance ToHeader     DocumentStatus++instance FromJSON DocumentStatus where+    parseJSON = parseJSONText "DocumentStatus"++data Fault+    = Client+    | Server+    | Unknown+    deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText Fault where+    parser = takeLowerText >>= \case+        "client" -> pure Client+        "server" -> pure Server+        "unknown" -> pure Unknown+        e -> fromTextError $ "Failure parsing Fault from value: '" <> e+           <> "'. Accepted values: client, server, unknown"++instance ToText Fault where+    toText = \case+        Client -> "client"+        Server -> "server"+        Unknown -> "unknown"++instance Hashable     Fault+instance ToByteString Fault+instance ToQuery      Fault+instance ToHeader     Fault++instance FromJSON Fault where+    parseJSON = parseJSONText "Fault"
gen/Network/AWS/SSM/UpdateAssociationStatus.hs view
@@ -1,138 +1,150 @@-{-# 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.SSM.UpdateAssociationStatus--- 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.---- | Updates the status of the configuration document associated with the+-- Updates the status of the configuration document associated with the -- specified instance. ----- <http://docs.aws.amazon.com/ssm/latest/APIReference/API_UpdateAssociationStatus.html>+-- /See:/ <http://docs.aws.amazon.com/ssm/latest/APIReference/API_UpdateAssociationStatus.html AWS API Reference> for UpdateAssociationStatus. module Network.AWS.SSM.UpdateAssociationStatus     (-    -- * Request-      UpdateAssociationStatus-    -- ** Request constructor-    , updateAssociationStatus-    -- ** Request lenses-    , uasAssociationStatus-    , uasInstanceId+    -- * Creating a Request+      updateAssociationStatus+    , UpdateAssociationStatus+    -- * Request Lenses     , uasName+    , uasInstanceId+    , uasAssociationStatus -    -- * Response-    , UpdateAssociationStatusResponse-    -- ** Response constructor+    -- * Destructuring the Response     , updateAssociationStatusResponse-    -- ** Response lenses-    , uasrAssociationDescription+    , UpdateAssociationStatusResponse+    -- * Response Lenses+    , uasrsAssociationDescription+    , uasrsStatus     ) where -import Network.AWS.Data (Object)-import Network.AWS.Prelude-import Network.AWS.Request.JSON-import Network.AWS.SSM.Types-import qualified GHC.Exts+import           Network.AWS.Prelude+import           Network.AWS.Request+import           Network.AWS.Response+import           Network.AWS.SSM.Types+import           Network.AWS.SSM.Types.Product -data UpdateAssociationStatus = UpdateAssociationStatus-    { _uasAssociationStatus :: AssociationStatus-    , _uasInstanceId        :: Text-    , _uasName              :: Text-    } deriving (Eq, Read, Show)+-- | /See:/ 'updateAssociationStatus' smart constructor.+data UpdateAssociationStatus = UpdateAssociationStatus'+    { _uasName              :: !Text+    , _uasInstanceId        :: !Text+    , _uasAssociationStatus :: !AssociationStatus+    } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'UpdateAssociationStatus' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'UpdateAssociationStatus' with the minimum fields required to make a request. ----- * 'uasAssociationStatus' @::@ 'AssociationStatus'+-- Use one of the following lenses to modify other fields as desired: ----- * 'uasInstanceId' @::@ 'Text'+-- * 'uasName' ----- * 'uasName' @::@ 'Text'+-- * 'uasInstanceId' ---updateAssociationStatus :: Text -- ^ 'uasName'-                        -> Text -- ^ 'uasInstanceId'-                        -> AssociationStatus -- ^ 'uasAssociationStatus'-                        -> UpdateAssociationStatus-updateAssociationStatus p1 p2 p3 = UpdateAssociationStatus-    { _uasName              = p1-    , _uasInstanceId        = p2-    , _uasAssociationStatus = p3+-- * 'uasAssociationStatus'+updateAssociationStatus+    :: Text -- ^ 'uasName'+    -> Text -- ^ 'uasInstanceId'+    -> AssociationStatus -- ^ 'uasAssociationStatus'+    -> UpdateAssociationStatus+updateAssociationStatus pName_ pInstanceId_ pAssociationStatus_ =+    UpdateAssociationStatus'+    { _uasName = pName_+    , _uasInstanceId = pInstanceId_+    , _uasAssociationStatus = pAssociationStatus_     } --- | The association status.-uasAssociationStatus :: Lens' UpdateAssociationStatus AssociationStatus-uasAssociationStatus =-    lens _uasAssociationStatus (\s a -> s { _uasAssociationStatus = a })+-- | The name of the configuration document.+uasName :: Lens' UpdateAssociationStatus Text+uasName = lens _uasName (\ s a -> s{_uasName = a});  -- | The ID of the instance. uasInstanceId :: Lens' UpdateAssociationStatus Text-uasInstanceId = lens _uasInstanceId (\s a -> s { _uasInstanceId = a })+uasInstanceId = lens _uasInstanceId (\ s a -> s{_uasInstanceId = a}); --- | The name of the configuration document.-uasName :: Lens' UpdateAssociationStatus Text-uasName = lens _uasName (\s a -> s { _uasName = a })+-- | The association status.+uasAssociationStatus :: Lens' UpdateAssociationStatus AssociationStatus+uasAssociationStatus = lens _uasAssociationStatus (\ s a -> s{_uasAssociationStatus = a}); -newtype UpdateAssociationStatusResponse = UpdateAssociationStatusResponse-    { _uasrAssociationDescription :: Maybe AssociationDescription-    } deriving (Eq, Read, Show)+instance AWSRequest UpdateAssociationStatus where+        type Sv UpdateAssociationStatus = SSM+        type Rs UpdateAssociationStatus =+             UpdateAssociationStatusResponse+        request = postJSON+        response+          = receiveJSON+              (\ s h x ->+                 UpdateAssociationStatusResponse' <$>+                   (x .?> "AssociationDescription") <*>+                     (pure (fromEnum s))) --- | 'UpdateAssociationStatusResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'uasrAssociationDescription' @::@ 'Maybe' 'AssociationDescription'----updateAssociationStatusResponse :: UpdateAssociationStatusResponse-updateAssociationStatusResponse = UpdateAssociationStatusResponse-    { _uasrAssociationDescription = Nothing-    }+instance ToHeaders UpdateAssociationStatus where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("AmazonSSM.UpdateAssociationStatus" :: ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)]) --- | Information about the association.-uasrAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)-uasrAssociationDescription =-    lens _uasrAssociationDescription-        (\s a -> s { _uasrAssociationDescription = a })+instance ToJSON UpdateAssociationStatus where+        toJSON UpdateAssociationStatus'{..}+          = object+              ["Name" .= _uasName, "InstanceId" .= _uasInstanceId,+               "AssociationStatus" .= _uasAssociationStatus]  instance ToPath UpdateAssociationStatus where-    toPath = const "/"+        toPath = const "/"  instance ToQuery UpdateAssociationStatus where-    toQuery = const mempty--instance ToHeaders UpdateAssociationStatus+        toQuery = const mempty -instance ToJSON UpdateAssociationStatus where-    toJSON UpdateAssociationStatus{..} = object-        [ "Name"              .= _uasName-        , "InstanceId"        .= _uasInstanceId-        , "AssociationStatus" .= _uasAssociationStatus-        ]+-- | /See:/ 'updateAssociationStatusResponse' smart constructor.+data UpdateAssociationStatusResponse = UpdateAssociationStatusResponse'+    { _uasrsAssociationDescription :: !(Maybe AssociationDescription)+    , _uasrsStatus                 :: !Int+    } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest UpdateAssociationStatus where-    type Sv UpdateAssociationStatus = SSM-    type Rs UpdateAssociationStatus = UpdateAssociationStatusResponse+-- | Creates a value of 'UpdateAssociationStatusResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uasrsAssociationDescription'+--+-- * 'uasrsStatus'+updateAssociationStatusResponse+    :: Int -- ^ 'uasrsStatus'+    -> UpdateAssociationStatusResponse+updateAssociationStatusResponse pStatus_ =+    UpdateAssociationStatusResponse'+    { _uasrsAssociationDescription = Nothing+    , _uasrsStatus = pStatus_+    } -    request  = post "UpdateAssociationStatus"-    response = jsonResponse+-- | Information about the association.+uasrsAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)+uasrsAssociationDescription = lens _uasrsAssociationDescription (\ s a -> s{_uasrsAssociationDescription = a}); -instance FromJSON UpdateAssociationStatusResponse where-    parseJSON = withObject "UpdateAssociationStatusResponse" $ \o -> UpdateAssociationStatusResponse-        <$> o .:? "AssociationDescription"+-- | The response status code.+uasrsStatus :: Lens' UpdateAssociationStatusResponse Int+uasrsStatus = lens _uasrsStatus (\ s a -> s{_uasrsStatus = a});
+ gen/Network/AWS/SSM/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.SSM.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.SSM.Waiters where++import           Network.AWS.Prelude+import           Network.AWS.SSM.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.SSM+import Test.AWS.SSM.Internal++main :: IO ()+main = defaultMain $ testGroup "SSM"+    [ testGroup "tests"    tests+    , testGroup "fixtures" fixtures+    ]
+ test/Test/AWS/Gen/SSM.hs view
@@ -0,0 +1,226 @@+{-# 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.SSM+-- 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.SSM where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.SSM+import Test.AWS.SSM.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"+--         [ testDescribeDocument $+--             describeDocument+--+--         , testCreateAssociation $+--             createAssociation+--+--         , testCreateDocument $+--             createDocument+--+--         , testListDocuments $+--             listDocuments+--+--         , testGetDocument $+--             getDocument+--+--         , testDescribeAssociation $+--             describeAssociation+--+--         , testUpdateAssociationStatus $+--             updateAssociationStatus+--+--         , testDeleteAssociation $+--             deleteAssociation+--+--         , testListAssociations $+--             listAssociations+--+--         , testDeleteDocument $+--             deleteDocument+--+--         , testCreateAssociationBatch $+--             createAssociationBatch+--+--           ]++--     , testGroup "response"+--         [ testDescribeDocumentResponse $+--             describeDocumentResponse+--+--         , testCreateAssociationResponse $+--             createAssociationResponse+--+--         , testCreateDocumentResponse $+--             createDocumentResponse+--+--         , testListDocumentsResponse $+--             listDocumentsResponse+--+--         , testGetDocumentResponse $+--             getDocumentResponse+--+--         , testDescribeAssociationResponse $+--             describeAssociationResponse+--+--         , testUpdateAssociationStatusResponse $+--             updateAssociationStatusResponse+--+--         , testDeleteAssociationResponse $+--             deleteAssociationResponse+--+--         , testListAssociationsResponse $+--             listAssociationsResponse+--+--         , testDeleteDocumentResponse $+--             deleteDocumentResponse+--+--         , testCreateAssociationBatchResponse $+--             createAssociationBatchResponse+--+--           ]+--     ]++-- Requests++testDescribeDocument :: DescribeDocument -> TestTree+testDescribeDocument = req+    "DescribeDocument"+    "fixture/DescribeDocument"++testCreateAssociation :: CreateAssociation -> TestTree+testCreateAssociation = req+    "CreateAssociation"+    "fixture/CreateAssociation"++testCreateDocument :: CreateDocument -> TestTree+testCreateDocument = req+    "CreateDocument"+    "fixture/CreateDocument"++testListDocuments :: ListDocuments -> TestTree+testListDocuments = req+    "ListDocuments"+    "fixture/ListDocuments"++testGetDocument :: GetDocument -> TestTree+testGetDocument = req+    "GetDocument"+    "fixture/GetDocument"++testDescribeAssociation :: DescribeAssociation -> TestTree+testDescribeAssociation = req+    "DescribeAssociation"+    "fixture/DescribeAssociation"++testUpdateAssociationStatus :: UpdateAssociationStatus -> TestTree+testUpdateAssociationStatus = req+    "UpdateAssociationStatus"+    "fixture/UpdateAssociationStatus"++testDeleteAssociation :: DeleteAssociation -> TestTree+testDeleteAssociation = req+    "DeleteAssociation"+    "fixture/DeleteAssociation"++testListAssociations :: ListAssociations -> TestTree+testListAssociations = req+    "ListAssociations"+    "fixture/ListAssociations"++testDeleteDocument :: DeleteDocument -> TestTree+testDeleteDocument = req+    "DeleteDocument"+    "fixture/DeleteDocument"++testCreateAssociationBatch :: CreateAssociationBatch -> TestTree+testCreateAssociationBatch = req+    "CreateAssociationBatch"+    "fixture/CreateAssociationBatch"++-- Responses++testDescribeDocumentResponse :: DescribeDocumentResponse -> TestTree+testDescribeDocumentResponse = res+    "DescribeDocumentResponse"+    "fixture/DescribeDocumentResponse"+    (Proxy :: Proxy DescribeDocument)++testCreateAssociationResponse :: CreateAssociationResponse -> TestTree+testCreateAssociationResponse = res+    "CreateAssociationResponse"+    "fixture/CreateAssociationResponse"+    (Proxy :: Proxy CreateAssociation)++testCreateDocumentResponse :: CreateDocumentResponse -> TestTree+testCreateDocumentResponse = res+    "CreateDocumentResponse"+    "fixture/CreateDocumentResponse"+    (Proxy :: Proxy CreateDocument)++testListDocumentsResponse :: ListDocumentsResponse -> TestTree+testListDocumentsResponse = res+    "ListDocumentsResponse"+    "fixture/ListDocumentsResponse"+    (Proxy :: Proxy ListDocuments)++testGetDocumentResponse :: GetDocumentResponse -> TestTree+testGetDocumentResponse = res+    "GetDocumentResponse"+    "fixture/GetDocumentResponse"+    (Proxy :: Proxy GetDocument)++testDescribeAssociationResponse :: DescribeAssociationResponse -> TestTree+testDescribeAssociationResponse = res+    "DescribeAssociationResponse"+    "fixture/DescribeAssociationResponse"+    (Proxy :: Proxy DescribeAssociation)++testUpdateAssociationStatusResponse :: UpdateAssociationStatusResponse -> TestTree+testUpdateAssociationStatusResponse = res+    "UpdateAssociationStatusResponse"+    "fixture/UpdateAssociationStatusResponse"+    (Proxy :: Proxy UpdateAssociationStatus)++testDeleteAssociationResponse :: DeleteAssociationResponse -> TestTree+testDeleteAssociationResponse = res+    "DeleteAssociationResponse"+    "fixture/DeleteAssociationResponse"+    (Proxy :: Proxy DeleteAssociation)++testListAssociationsResponse :: ListAssociationsResponse -> TestTree+testListAssociationsResponse = res+    "ListAssociationsResponse"+    "fixture/ListAssociationsResponse"+    (Proxy :: Proxy ListAssociations)++testDeleteDocumentResponse :: DeleteDocumentResponse -> TestTree+testDeleteDocumentResponse = res+    "DeleteDocumentResponse"+    "fixture/DeleteDocumentResponse"+    (Proxy :: Proxy DeleteDocument)++testCreateAssociationBatchResponse :: CreateAssociationBatchResponse -> TestTree+testCreateAssociationBatchResponse = res+    "CreateAssociationBatchResponse"+    "fixture/CreateAssociationBatchResponse"+    (Proxy :: Proxy CreateAssociationBatch)
+ test/Test/AWS/SSM.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module      : Test.AWS.SSM+-- 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.SSM+    ( tests+    , fixtures+    ) where++import           Network.AWS.SSM+import           Test.AWS.Gen.SSM+import           Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/SSM/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Test.AWS.SSM.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.SSM.Internal where++import Test.AWS.Prelude