amazonka-sqs 0.3.6 → 1.0.0
raw patch · 29 files changed
+3647/−2393 lines, 29 filesdep +amazonka-sqsdep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok
version bump matches the API change (PVP)
Dependencies added: amazonka-sqs, amazonka-test, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers
Dependency ranges changed: amazonka-core, base
API changes (from Hackage documentation)
- Network.AWS.SQS.AddPermission: apQueueUrl :: Lens' AddPermission Text
- Network.AWS.SQS.AddPermission: instance Ord AddPermission
- Network.AWS.SQS.AddPermission: instance Ord AddPermissionResponse
- Network.AWS.SQS.ChangeMessageVisibility: cmvQueueUrl :: Lens' ChangeMessageVisibility Text
- Network.AWS.SQS.ChangeMessageVisibility: instance Ord ChangeMessageVisibility
- Network.AWS.SQS.ChangeMessageVisibility: instance Ord ChangeMessageVisibilityResponse
- Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbQueueUrl :: Lens' ChangeMessageVisibilityBatch Text
- Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbrFailed :: Lens' ChangeMessageVisibilityBatchResponse [BatchResultErrorEntry]
- Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbrSuccessful :: Lens' ChangeMessageVisibilityBatchResponse [ChangeMessageVisibilityBatchResultEntry]
- Network.AWS.SQS.ChangeMessageVisibilityBatch: instance FromXML ChangeMessageVisibilityBatchResponse
- Network.AWS.SQS.CreateQueue: cqrQueueUrl :: Lens' CreateQueueResponse (Maybe Text)
- Network.AWS.SQS.CreateQueue: instance FromXML CreateQueueResponse
- Network.AWS.SQS.CreateQueue: instance Monoid CreateQueueResponse
- Network.AWS.SQS.CreateQueue: instance Ord CreateQueueResponse
- Network.AWS.SQS.DeleteMessage: dmQueueUrl :: Lens' DeleteMessage Text
- Network.AWS.SQS.DeleteMessage: instance Ord DeleteMessage
- Network.AWS.SQS.DeleteMessage: instance Ord DeleteMessageResponse
- Network.AWS.SQS.DeleteMessageBatch: dmbQueueUrl :: Lens' DeleteMessageBatch Text
- Network.AWS.SQS.DeleteMessageBatch: dmbrFailed :: Lens' DeleteMessageBatchResponse [BatchResultErrorEntry]
- Network.AWS.SQS.DeleteMessageBatch: dmbrSuccessful :: Lens' DeleteMessageBatchResponse [DeleteMessageBatchResultEntry]
- Network.AWS.SQS.DeleteMessageBatch: instance FromXML DeleteMessageBatchResponse
- Network.AWS.SQS.DeleteQueue: dqQueueUrl :: Lens' DeleteQueue Text
- Network.AWS.SQS.DeleteQueue: instance IsString DeleteQueue
- Network.AWS.SQS.DeleteQueue: instance Monoid DeleteQueue
- Network.AWS.SQS.DeleteQueue: instance Ord DeleteQueue
- Network.AWS.SQS.DeleteQueue: instance Ord DeleteQueueResponse
- Network.AWS.SQS.GetQueueAttributes: gqaQueueUrl :: Lens' GetQueueAttributes Text
- Network.AWS.SQS.GetQueueAttributes: gqarAttributes :: Lens' GetQueueAttributesResponse (HashMap Text Text)
- Network.AWS.SQS.GetQueueAttributes: instance FromXML GetQueueAttributesResponse
- Network.AWS.SQS.GetQueueAttributes: instance Monoid GetQueueAttributesResponse
- Network.AWS.SQS.GetQueueAttributes: instance Semigroup GetQueueAttributesResponse
- Network.AWS.SQS.GetQueueUrl: data GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: data GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: getQueueUrl :: Text -> GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: getQueueUrlResponse :: Text -> GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: gquQueueName :: Lens' GetQueueUrl Text
- Network.AWS.SQS.GetQueueUrl: gquQueueOwnerAWSAccountId :: Lens' GetQueueUrl (Maybe Text)
- Network.AWS.SQS.GetQueueUrl: gqurQueueUrl :: Lens' GetQueueUrlResponse Text
- Network.AWS.SQS.GetQueueUrl: instance AWSRequest GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance Eq GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance Eq GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance FromXML GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance IsString GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance Monoid GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance Ord GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance Ord GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance Read GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance Read GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance Show GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance Show GetQueueUrlResponse
- Network.AWS.SQS.GetQueueUrl: instance ToHeaders GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance ToPath GetQueueUrl
- Network.AWS.SQS.GetQueueUrl: instance ToQuery GetQueueUrl
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance FromXML ListDeadLetterSourceQueuesResponse
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance IsString ListDeadLetterSourceQueues
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance Monoid ListDeadLetterSourceQueues
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance Monoid ListDeadLetterSourceQueuesResponse
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance Ord ListDeadLetterSourceQueues
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance Ord ListDeadLetterSourceQueuesResponse
- Network.AWS.SQS.ListDeadLetterSourceQueues: instance Semigroup ListDeadLetterSourceQueuesResponse
- Network.AWS.SQS.ListDeadLetterSourceQueues: ldlsqQueueUrl :: Lens' ListDeadLetterSourceQueues Text
- Network.AWS.SQS.ListDeadLetterSourceQueues: ldlsqrQueueUrls :: Lens' ListDeadLetterSourceQueuesResponse [Text]
- Network.AWS.SQS.ListQueues: instance FromXML ListQueuesResponse
- Network.AWS.SQS.ListQueues: instance Monoid ListQueues
- Network.AWS.SQS.ListQueues: instance Monoid ListQueuesResponse
- Network.AWS.SQS.ListQueues: instance Ord ListQueues
- Network.AWS.SQS.ListQueues: instance Ord ListQueuesResponse
- Network.AWS.SQS.ListQueues: instance Semigroup ListQueuesResponse
- Network.AWS.SQS.ListQueues: lqrQueueUrls :: Lens' ListQueuesResponse [Text]
- Network.AWS.SQS.PurgeQueue: instance IsString PurgeQueue
- Network.AWS.SQS.PurgeQueue: instance Monoid PurgeQueue
- Network.AWS.SQS.PurgeQueue: instance Ord PurgeQueue
- Network.AWS.SQS.PurgeQueue: instance Ord PurgeQueueResponse
- Network.AWS.SQS.PurgeQueue: pqQueueUrl :: Lens' PurgeQueue Text
- Network.AWS.SQS.ReceiveMessage: instance FromXML ReceiveMessageResponse
- Network.AWS.SQS.ReceiveMessage: instance Monoid ReceiveMessageResponse
- Network.AWS.SQS.ReceiveMessage: instance Semigroup ReceiveMessageResponse
- Network.AWS.SQS.ReceiveMessage: rmQueueUrl :: Lens' ReceiveMessage Text
- Network.AWS.SQS.ReceiveMessage: rmrMessages :: Lens' ReceiveMessageResponse [Message]
- Network.AWS.SQS.RemovePermission: instance Ord RemovePermission
- Network.AWS.SQS.RemovePermission: instance Ord RemovePermissionResponse
- Network.AWS.SQS.RemovePermission: rpQueueUrl :: Lens' RemovePermission Text
- Network.AWS.SQS.SendMessage: instance FromXML SendMessageResponse
- Network.AWS.SQS.SendMessage: instance Ord SendMessageResponse
- Network.AWS.SQS.SendMessage: smQueueUrl :: Lens' SendMessage Text
- Network.AWS.SQS.SendMessage: smrMD5OfMessageAttributes :: Lens' SendMessageResponse (Maybe Text)
- Network.AWS.SQS.SendMessage: smrMD5OfMessageBody :: Lens' SendMessageResponse (Maybe Text)
- Network.AWS.SQS.SendMessage: smrMessageId :: Lens' SendMessageResponse (Maybe Text)
- Network.AWS.SQS.SendMessageBatch: instance FromXML SendMessageBatchResponse
- Network.AWS.SQS.SendMessageBatch: smbQueueUrl :: Lens' SendMessageBatch Text
- Network.AWS.SQS.SendMessageBatch: smbrFailed :: Lens' SendMessageBatchResponse [BatchResultErrorEntry]
- Network.AWS.SQS.SendMessageBatch: smbrSuccessful :: Lens' SendMessageBatchResponse [SendMessageBatchResultEntry]
- Network.AWS.SQS.SetQueueAttributes: instance Ord SetQueueAttributesResponse
- Network.AWS.SQS.SetQueueAttributes: sqaQueueUrl :: Lens' SetQueueAttributes Text
- Network.AWS.SQS.Types: cmvbre1Id :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
- Network.AWS.SQS.Types: cmvbre1ReceiptHandle :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
- Network.AWS.SQS.Types: cmvbre1VisibilityTimeout :: Lens' ChangeMessageVisibilityBatchRequestEntry (Maybe Int)
- Network.AWS.SQS.Types: data RESTError :: *
- Network.AWS.SQS.Types: dmbre1Id :: Lens' DeleteMessageBatchResultEntry Text
- Network.AWS.SQS.Types: instance Eq BatchResultErrorEntry
- Network.AWS.SQS.Types: instance Eq ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance Eq ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance Eq DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Eq DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Eq Message
- Network.AWS.SQS.Types: instance Eq MessageAttributeValue
- Network.AWS.SQS.Types: instance Eq SendMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Eq SendMessageBatchResultEntry
- Network.AWS.SQS.Types: instance FromXML BatchResultErrorEntry
- Network.AWS.SQS.Types: instance FromXML ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance FromXML ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance FromXML DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance FromXML DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance FromXML Message
- Network.AWS.SQS.Types: instance FromXML MessageAttributeValue
- Network.AWS.SQS.Types: instance FromXML SendMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance FromXML SendMessageBatchResultEntry
- Network.AWS.SQS.Types: instance IsString ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance IsString DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Monoid ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance Monoid DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Ord BatchResultErrorEntry
- Network.AWS.SQS.Types: instance Ord ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance Ord ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance Ord DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Ord DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Ord SendMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Read BatchResultErrorEntry
- Network.AWS.SQS.Types: instance Read ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance Read ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance Read DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Read DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Read Message
- Network.AWS.SQS.Types: instance Read MessageAttributeValue
- Network.AWS.SQS.Types: instance Read SendMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Read SendMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Show BatchResultErrorEntry
- Network.AWS.SQS.Types: instance Show ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance Show ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance Show DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Show DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance Show Message
- Network.AWS.SQS.Types: instance Show MessageAttributeValue
- Network.AWS.SQS.Types: instance Show SendMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance Show SendMessageBatchResultEntry
- Network.AWS.SQS.Types: instance ToQuery BatchResultErrorEntry
- Network.AWS.SQS.Types: instance ToQuery ChangeMessageVisibilityBatchRequestEntry
- Network.AWS.SQS.Types: instance ToQuery ChangeMessageVisibilityBatchResultEntry
- Network.AWS.SQS.Types: instance ToQuery DeleteMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance ToQuery DeleteMessageBatchResultEntry
- Network.AWS.SQS.Types: instance ToQuery Message
- Network.AWS.SQS.Types: instance ToQuery MessageAttributeValue
- Network.AWS.SQS.Types: instance ToQuery SendMessageBatchRequestEntry
- Network.AWS.SQS.Types: instance ToQuery SendMessageBatchResultEntry
- Network.AWS.SQS.Types: ns :: Text
- Network.AWS.SQS.Types: smbre1Id :: Lens' SendMessageBatchResultEntry Text
- Network.AWS.SQS.Types: smbre1MD5OfMessageAttributes :: Lens' SendMessageBatchResultEntry (Maybe Text)
- Network.AWS.SQS.Types: smbre1MD5OfMessageBody :: Lens' SendMessageBatchResultEntry Text
- Network.AWS.SQS.Types: smbre1MessageId :: Lens' SendMessageBatchResultEntry Text
- Network.AWS.SQS.Types: smbreDelaySeconds :: Lens' SendMessageBatchRequestEntry (Maybe Int)
- Network.AWS.SQS.Types: smbreMessageAttributes :: Lens' SendMessageBatchRequestEntry (HashMap Text MessageAttributeValue)
- Network.AWS.SQS.Types: smbreMessageBody :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS: ApproximateNumberOfMessages :: QueueAttributeName
+ Network.AWS.SQS: ApproximateNumberOfMessagesDelayed :: QueueAttributeName
+ Network.AWS.SQS: ApproximateNumberOfMessagesNotVisible :: QueueAttributeName
+ Network.AWS.SQS: CreatedTimestamp :: QueueAttributeName
+ Network.AWS.SQS: DelaySeconds :: QueueAttributeName
+ Network.AWS.SQS: LastModifiedTimestamp :: QueueAttributeName
+ Network.AWS.SQS: MaximumMessageSize :: QueueAttributeName
+ Network.AWS.SQS: MessageRetentionPeriod :: QueueAttributeName
+ Network.AWS.SQS: Policy :: QueueAttributeName
+ Network.AWS.SQS: QueueARN :: QueueAttributeName
+ Network.AWS.SQS: ReceiveMessageWaitTimeSeconds :: QueueAttributeName
+ Network.AWS.SQS: RedrivePolicy :: QueueAttributeName
+ Network.AWS.SQS: VisibilityTimeout :: QueueAttributeName
+ Network.AWS.SQS: _BatchEntryIdsNotDistinct :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _BatchRequestTooLong :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _EmptyBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _InvalidAttributeName :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _InvalidBatchEntryId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _InvalidIdFormat :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _InvalidMessageContents :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _MessageNotInflight :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _OverLimit :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _PurgeQueueInProgress :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _QueueDeletedRecently :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _QueueDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _QueueNameExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _ReceiptHandleIsInvalid :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _TooManyEntriesInBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: _UnsupportedOperation :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS: batchResultErrorEntry :: Text -> Bool -> Text -> BatchResultErrorEntry
+ Network.AWS.SQS: breeCode :: Lens' BatchResultErrorEntry Text
+ Network.AWS.SQS: breeId :: Lens' BatchResultErrorEntry Text
+ Network.AWS.SQS: breeMessage :: Lens' BatchResultErrorEntry (Maybe Text)
+ Network.AWS.SQS: breeSenderFault :: Lens' BatchResultErrorEntry Bool
+ Network.AWS.SQS: cId :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
+ Network.AWS.SQS: cReceiptHandle :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
+ Network.AWS.SQS: cVisibilityTimeout :: Lens' ChangeMessageVisibilityBatchRequestEntry (Maybe Int)
+ Network.AWS.SQS: changeMessageVisibilityBatchRequestEntry :: Text -> Text -> ChangeMessageVisibilityBatchRequestEntry
+ Network.AWS.SQS: changeMessageVisibilityBatchResultEntry :: Text -> ChangeMessageVisibilityBatchResultEntry
+ Network.AWS.SQS: cmvbreId :: Lens' ChangeMessageVisibilityBatchResultEntry Text
+ Network.AWS.SQS: dId :: Lens' DeleteMessageBatchResultEntry Text
+ Network.AWS.SQS: data BatchResultErrorEntry
+ Network.AWS.SQS: data ChangeMessageVisibilityBatchRequestEntry
+ Network.AWS.SQS: data ChangeMessageVisibilityBatchResultEntry
+ Network.AWS.SQS: data DeleteMessageBatchRequestEntry
+ Network.AWS.SQS: data DeleteMessageBatchResultEntry
+ Network.AWS.SQS: data Message
+ Network.AWS.SQS: data MessageAttributeValue
+ Network.AWS.SQS: data QueueAttributeName
+ Network.AWS.SQS: data SQS
+ Network.AWS.SQS: data SendMessageBatchRequestEntry
+ Network.AWS.SQS: data SendMessageBatchResultEntry
+ Network.AWS.SQS: deleteMessageBatchRequestEntry :: Text -> Text -> DeleteMessageBatchRequestEntry
+ Network.AWS.SQS: deleteMessageBatchResultEntry :: Text -> DeleteMessageBatchResultEntry
+ Network.AWS.SQS: dmbreId :: Lens' DeleteMessageBatchRequestEntry Text
+ Network.AWS.SQS: dmbreReceiptHandle :: Lens' DeleteMessageBatchRequestEntry Text
+ Network.AWS.SQS: mAttributes :: Lens' Message (HashMap QueueAttributeName Text)
+ Network.AWS.SQS: mBody :: Lens' Message (Maybe Text)
+ Network.AWS.SQS: mMD5OfBody :: Lens' Message (Maybe Text)
+ Network.AWS.SQS: mMD5OfMessageAttributes :: Lens' Message (Maybe Text)
+ Network.AWS.SQS: mMessageAttributes :: Lens' Message (HashMap Text MessageAttributeValue)
+ Network.AWS.SQS: mMessageId :: Lens' Message (Maybe Text)
+ Network.AWS.SQS: mReceiptHandle :: Lens' Message (Maybe Text)
+ Network.AWS.SQS: mavBinaryListValues :: Lens' MessageAttributeValue [ByteString]
+ Network.AWS.SQS: mavBinaryValue :: Lens' MessageAttributeValue (Maybe ByteString)
+ Network.AWS.SQS: mavDataType :: Lens' MessageAttributeValue Text
+ Network.AWS.SQS: mavStringListValues :: Lens' MessageAttributeValue [Text]
+ Network.AWS.SQS: mavStringValue :: Lens' MessageAttributeValue (Maybe Text)
+ Network.AWS.SQS: message :: Message
+ Network.AWS.SQS: messageAttributeValue :: Text -> MessageAttributeValue
+ Network.AWS.SQS: sDelaySeconds :: Lens' SendMessageBatchRequestEntry (Maybe Int)
+ Network.AWS.SQS: sId :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS: sMessageAttributes :: Lens' SendMessageBatchRequestEntry (HashMap Text MessageAttributeValue)
+ Network.AWS.SQS: sMessageBody :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS: sendMessageBatchRequestEntry :: Text -> Text -> SendMessageBatchRequestEntry
+ Network.AWS.SQS: sendMessageBatchResultEntry :: Text -> Text -> Text -> SendMessageBatchResultEntry
+ Network.AWS.SQS: smbreId :: Lens' SendMessageBatchResultEntry Text
+ Network.AWS.SQS: smbreMD5OfMessageAttributes :: Lens' SendMessageBatchResultEntry (Maybe Text)
+ Network.AWS.SQS: smbreMD5OfMessageBody :: Lens' SendMessageBatchResultEntry Text
+ Network.AWS.SQS: smbreMessageId :: Lens' SendMessageBatchResultEntry Text
+ Network.AWS.SQS.AddPermission: apQueueURL :: Lens' AddPermission Text
+ Network.AWS.SQS.AddPermission: instance Constructor C1_0AddPermission
+ Network.AWS.SQS.AddPermission: instance Data AddPermission
+ Network.AWS.SQS.AddPermission: instance Data AddPermissionResponse
+ Network.AWS.SQS.AddPermission: instance Datatype D1AddPermission
+ Network.AWS.SQS.AddPermission: instance Generic AddPermission
+ Network.AWS.SQS.AddPermission: instance Selector S1_0_0AddPermission
+ Network.AWS.SQS.AddPermission: instance Selector S1_0_1AddPermission
+ Network.AWS.SQS.AddPermission: instance Selector S1_0_2AddPermission
+ Network.AWS.SQS.AddPermission: instance Selector S1_0_3AddPermission
+ Network.AWS.SQS.AddPermission: instance Typeable AddPermission
+ Network.AWS.SQS.AddPermission: instance Typeable AddPermissionResponse
+ Network.AWS.SQS.ChangeMessageVisibility: cmvQueueURL :: Lens' ChangeMessageVisibility Text
+ Network.AWS.SQS.ChangeMessageVisibility: instance Constructor C1_0ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Data ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Data ChangeMessageVisibilityResponse
+ Network.AWS.SQS.ChangeMessageVisibility: instance Datatype D1ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Generic ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Selector S1_0_0ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Selector S1_0_1ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Selector S1_0_2ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Typeable ChangeMessageVisibility
+ Network.AWS.SQS.ChangeMessageVisibility: instance Typeable ChangeMessageVisibilityResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbQueueURL :: Lens' ChangeMessageVisibilityBatch Text
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbrsFailed :: Lens' ChangeMessageVisibilityBatchResponse [BatchResultErrorEntry]
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbrsStatus :: Lens' ChangeMessageVisibilityBatchResponse Int
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: cmvbrsSuccessful :: Lens' ChangeMessageVisibilityBatchResponse [ChangeMessageVisibilityBatchResultEntry]
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Constructor C1_0ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Constructor C1_0ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Data ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Data ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Datatype D1ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Datatype D1ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Generic ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Generic ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Selector S1_0_0ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Selector S1_0_0ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Selector S1_0_1ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Selector S1_0_1ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Selector S1_0_2ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Typeable ChangeMessageVisibilityBatch
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: instance Typeable ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.CreateQueue: cqrsQueueURL :: Lens' CreateQueueResponse (Maybe Text)
+ Network.AWS.SQS.CreateQueue: cqrsStatus :: Lens' CreateQueueResponse Int
+ Network.AWS.SQS.CreateQueue: instance Constructor C1_0CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Constructor C1_0CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Data CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Data CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Datatype D1CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Datatype D1CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Generic CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Generic CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Selector S1_0_0CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Selector S1_0_0CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Selector S1_0_1CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Selector S1_0_1CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: instance Typeable CreateQueue
+ Network.AWS.SQS.CreateQueue: instance Typeable CreateQueueResponse
+ Network.AWS.SQS.DeleteMessage: dmQueueURL :: Lens' DeleteMessage Text
+ Network.AWS.SQS.DeleteMessage: instance Constructor C1_0DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Data DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Data DeleteMessageResponse
+ Network.AWS.SQS.DeleteMessage: instance Datatype D1DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Generic DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Selector S1_0_0DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Selector S1_0_1DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Typeable DeleteMessage
+ Network.AWS.SQS.DeleteMessage: instance Typeable DeleteMessageResponse
+ Network.AWS.SQS.DeleteMessageBatch: dmbQueueURL :: Lens' DeleteMessageBatch Text
+ Network.AWS.SQS.DeleteMessageBatch: dmbrsFailed :: Lens' DeleteMessageBatchResponse [BatchResultErrorEntry]
+ Network.AWS.SQS.DeleteMessageBatch: dmbrsStatus :: Lens' DeleteMessageBatchResponse Int
+ Network.AWS.SQS.DeleteMessageBatch: dmbrsSuccessful :: Lens' DeleteMessageBatchResponse [DeleteMessageBatchResultEntry]
+ Network.AWS.SQS.DeleteMessageBatch: instance Constructor C1_0DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Constructor C1_0DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Data DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Data DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Datatype D1DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Datatype D1DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Generic DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Generic DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Selector S1_0_0DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Selector S1_0_0DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Selector S1_0_1DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Selector S1_0_1DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Selector S1_0_2DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: instance Typeable DeleteMessageBatch
+ Network.AWS.SQS.DeleteMessageBatch: instance Typeable DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteQueue: dqQueueURL :: Lens' DeleteQueue Text
+ Network.AWS.SQS.DeleteQueue: instance Constructor C1_0DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Data DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Data DeleteQueueResponse
+ Network.AWS.SQS.DeleteQueue: instance Datatype D1DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Generic DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Selector S1_0_0DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Typeable DeleteQueue
+ Network.AWS.SQS.DeleteQueue: instance Typeable DeleteQueueResponse
+ Network.AWS.SQS.GetQueueAttributes: gqaQueueURL :: Lens' GetQueueAttributes Text
+ Network.AWS.SQS.GetQueueAttributes: gqarsAttributes :: Lens' GetQueueAttributesResponse (HashMap QueueAttributeName Text)
+ Network.AWS.SQS.GetQueueAttributes: gqarsStatus :: Lens' GetQueueAttributesResponse Int
+ Network.AWS.SQS.GetQueueAttributes: instance Constructor C1_0GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Constructor C1_0GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Data GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Data GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Datatype D1GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Datatype D1GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Generic GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Generic GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Selector S1_0_0GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Selector S1_0_0GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Selector S1_0_1GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Selector S1_0_1GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: instance Typeable GetQueueAttributes
+ Network.AWS.SQS.GetQueueAttributes: instance Typeable GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueURL: data GetQueueURL
+ Network.AWS.SQS.GetQueueURL: data GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: getQueueURL :: Text -> GetQueueURL
+ Network.AWS.SQS.GetQueueURL: getQueueURLResponse :: Int -> Text -> GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: gquQueueName :: Lens' GetQueueURL Text
+ Network.AWS.SQS.GetQueueURL: gquQueueOwnerAWSAccountId :: Lens' GetQueueURL (Maybe Text)
+ Network.AWS.SQS.GetQueueURL: gqursQueueURL :: Lens' GetQueueURLResponse Text
+ Network.AWS.SQS.GetQueueURL: gqursStatus :: Lens' GetQueueURLResponse Int
+ Network.AWS.SQS.GetQueueURL: instance AWSRequest GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Constructor C1_0GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Constructor C1_0GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Data GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Data GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Datatype D1GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Datatype D1GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Eq GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Eq GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Generic GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Generic GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Read GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Read GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Selector S1_0_0GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Selector S1_0_0GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Selector S1_0_1GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Selector S1_0_1GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance Show GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Show GetQueueURLResponse
+ Network.AWS.SQS.GetQueueURL: instance ToHeaders GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance ToPath GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance ToQuery GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Typeable GetQueueURL
+ Network.AWS.SQS.GetQueueURL: instance Typeable GetQueueURLResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Constructor C1_0ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Constructor C1_0ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Data ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Data ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Datatype D1ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Datatype D1ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Generic ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Generic ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Selector S1_0_0ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Selector S1_0_0ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Selector S1_0_1ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Typeable ListDeadLetterSourceQueues
+ Network.AWS.SQS.ListDeadLetterSourceQueues: instance Typeable ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: ldlsqQueueURL :: Lens' ListDeadLetterSourceQueues Text
+ Network.AWS.SQS.ListDeadLetterSourceQueues: ldlsqrsQueueURLs :: Lens' ListDeadLetterSourceQueuesResponse [Text]
+ Network.AWS.SQS.ListDeadLetterSourceQueues: ldlsqrsStatus :: Lens' ListDeadLetterSourceQueuesResponse Int
+ Network.AWS.SQS.ListQueues: instance Constructor C1_0ListQueues
+ Network.AWS.SQS.ListQueues: instance Constructor C1_0ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Data ListQueues
+ Network.AWS.SQS.ListQueues: instance Data ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Datatype D1ListQueues
+ Network.AWS.SQS.ListQueues: instance Datatype D1ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Generic ListQueues
+ Network.AWS.SQS.ListQueues: instance Generic ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Selector S1_0_0ListQueues
+ Network.AWS.SQS.ListQueues: instance Selector S1_0_0ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Selector S1_0_1ListQueuesResponse
+ Network.AWS.SQS.ListQueues: instance Typeable ListQueues
+ Network.AWS.SQS.ListQueues: instance Typeable ListQueuesResponse
+ Network.AWS.SQS.ListQueues: lqrsQueueURLs :: Lens' ListQueuesResponse [Text]
+ Network.AWS.SQS.ListQueues: lqrsStatus :: Lens' ListQueuesResponse Int
+ Network.AWS.SQS.PurgeQueue: instance Constructor C1_0PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Data PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Data PurgeQueueResponse
+ Network.AWS.SQS.PurgeQueue: instance Datatype D1PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Generic PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Selector S1_0_0PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Typeable PurgeQueue
+ Network.AWS.SQS.PurgeQueue: instance Typeable PurgeQueueResponse
+ Network.AWS.SQS.PurgeQueue: pqQueueURL :: Lens' PurgeQueue Text
+ Network.AWS.SQS.ReceiveMessage: instance Constructor C1_0ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Constructor C1_0ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Data ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Data ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Datatype D1ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Datatype D1ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Generic ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Generic ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_0ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_0ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_1ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_1ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_2ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_3ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_4ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Selector S1_0_5ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Typeable ReceiveMessage
+ Network.AWS.SQS.ReceiveMessage: instance Typeable ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: rmQueueURL :: Lens' ReceiveMessage Text
+ Network.AWS.SQS.ReceiveMessage: rmrsMessages :: Lens' ReceiveMessageResponse [Message]
+ Network.AWS.SQS.ReceiveMessage: rmrsStatus :: Lens' ReceiveMessageResponse Int
+ Network.AWS.SQS.RemovePermission: instance Constructor C1_0RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Data RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Data RemovePermissionResponse
+ Network.AWS.SQS.RemovePermission: instance Datatype D1RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Generic RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Selector S1_0_0RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Selector S1_0_1RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Typeable RemovePermission
+ Network.AWS.SQS.RemovePermission: instance Typeable RemovePermissionResponse
+ Network.AWS.SQS.RemovePermission: rpQueueURL :: Lens' RemovePermission Text
+ Network.AWS.SQS.SendMessage: instance Constructor C1_0SendMessage
+ Network.AWS.SQS.SendMessage: instance Constructor C1_0SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Data SendMessage
+ Network.AWS.SQS.SendMessage: instance Data SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Datatype D1SendMessage
+ Network.AWS.SQS.SendMessage: instance Datatype D1SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Generic SendMessage
+ Network.AWS.SQS.SendMessage: instance Generic SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_0SendMessage
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_0SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_1SendMessage
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_1SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_2SendMessage
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_2SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_3SendMessage
+ Network.AWS.SQS.SendMessage: instance Selector S1_0_3SendMessageResponse
+ Network.AWS.SQS.SendMessage: instance Typeable SendMessage
+ Network.AWS.SQS.SendMessage: instance Typeable SendMessageResponse
+ Network.AWS.SQS.SendMessage: smQueueURL :: Lens' SendMessage Text
+ Network.AWS.SQS.SendMessage: smrsMD5OfMessageAttributes :: Lens' SendMessageResponse (Maybe Text)
+ Network.AWS.SQS.SendMessage: smrsMD5OfMessageBody :: Lens' SendMessageResponse (Maybe Text)
+ Network.AWS.SQS.SendMessage: smrsMessageId :: Lens' SendMessageResponse (Maybe Text)
+ Network.AWS.SQS.SendMessage: smrsStatus :: Lens' SendMessageResponse Int
+ Network.AWS.SQS.SendMessageBatch: instance Constructor C1_0SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Constructor C1_0SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Data SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Data SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Datatype D1SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Datatype D1SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Generic SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Generic SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Selector S1_0_0SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Selector S1_0_0SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Selector S1_0_1SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Selector S1_0_1SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Selector S1_0_2SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: instance Typeable SendMessageBatch
+ Network.AWS.SQS.SendMessageBatch: instance Typeable SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: smbQueueURL :: Lens' SendMessageBatch Text
+ Network.AWS.SQS.SendMessageBatch: smbrsFailed :: Lens' SendMessageBatchResponse [BatchResultErrorEntry]
+ Network.AWS.SQS.SendMessageBatch: smbrsStatus :: Lens' SendMessageBatchResponse Int
+ Network.AWS.SQS.SendMessageBatch: smbrsSuccessful :: Lens' SendMessageBatchResponse [SendMessageBatchResultEntry]
+ Network.AWS.SQS.SetQueueAttributes: instance Constructor C1_0SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Data SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Data SetQueueAttributesResponse
+ Network.AWS.SQS.SetQueueAttributes: instance Datatype D1SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Generic SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Selector S1_0_0SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Selector S1_0_1SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Typeable SetQueueAttributes
+ Network.AWS.SQS.SetQueueAttributes: instance Typeable SetQueueAttributesResponse
+ Network.AWS.SQS.SetQueueAttributes: sqaQueueURL :: Lens' SetQueueAttributes Text
+ Network.AWS.SQS.Types: ApproximateNumberOfMessages :: QueueAttributeName
+ Network.AWS.SQS.Types: ApproximateNumberOfMessagesDelayed :: QueueAttributeName
+ Network.AWS.SQS.Types: ApproximateNumberOfMessagesNotVisible :: QueueAttributeName
+ Network.AWS.SQS.Types: CreatedTimestamp :: QueueAttributeName
+ Network.AWS.SQS.Types: DelaySeconds :: QueueAttributeName
+ Network.AWS.SQS.Types: LastModifiedTimestamp :: QueueAttributeName
+ Network.AWS.SQS.Types: MaximumMessageSize :: QueueAttributeName
+ Network.AWS.SQS.Types: MessageRetentionPeriod :: QueueAttributeName
+ Network.AWS.SQS.Types: Policy :: QueueAttributeName
+ Network.AWS.SQS.Types: QueueARN :: QueueAttributeName
+ Network.AWS.SQS.Types: ReceiveMessageWaitTimeSeconds :: QueueAttributeName
+ Network.AWS.SQS.Types: RedrivePolicy :: QueueAttributeName
+ Network.AWS.SQS.Types: VisibilityTimeout :: QueueAttributeName
+ Network.AWS.SQS.Types: _BatchEntryIdsNotDistinct :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _BatchRequestTooLong :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _EmptyBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _InvalidAttributeName :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _InvalidBatchEntryId :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _InvalidIdFormat :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _InvalidMessageContents :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _MessageNotInflight :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _OverLimit :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _PurgeQueueInProgress :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _QueueDeletedRecently :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _QueueDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _QueueNameExists :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _ReceiptHandleIsInvalid :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _TooManyEntriesInBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: _UnsupportedOperation :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SQS.Types: cId :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
+ Network.AWS.SQS.Types: cReceiptHandle :: Lens' ChangeMessageVisibilityBatchRequestEntry Text
+ Network.AWS.SQS.Types: cVisibilityTimeout :: Lens' ChangeMessageVisibilityBatchRequestEntry (Maybe Int)
+ Network.AWS.SQS.Types: dId :: Lens' DeleteMessageBatchResultEntry Text
+ Network.AWS.SQS.Types: data QueueAttributeName
+ Network.AWS.SQS.Types: sDelaySeconds :: Lens' SendMessageBatchRequestEntry (Maybe Int)
+ Network.AWS.SQS.Types: sId :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS.Types: sMessageAttributes :: Lens' SendMessageBatchRequestEntry (HashMap Text MessageAttributeValue)
+ Network.AWS.SQS.Types: sMessageBody :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS.Types: smbreMD5OfMessageAttributes :: Lens' SendMessageBatchResultEntry (Maybe Text)
+ Network.AWS.SQS.Types: smbreMD5OfMessageBody :: Lens' SendMessageBatchResultEntry Text
+ Network.AWS.SQS.Types: smbreMessageId :: Lens' SendMessageBatchResultEntry Text
- Network.AWS.SQS.ChangeMessageVisibilityBatch: changeMessageVisibilityBatchResponse :: ChangeMessageVisibilityBatchResponse
+ Network.AWS.SQS.ChangeMessageVisibilityBatch: changeMessageVisibilityBatchResponse :: Int -> ChangeMessageVisibilityBatchResponse
- Network.AWS.SQS.CreateQueue: cqAttributes :: Lens' CreateQueue (HashMap Text Text)
+ Network.AWS.SQS.CreateQueue: cqAttributes :: Lens' CreateQueue (HashMap QueueAttributeName Text)
- Network.AWS.SQS.CreateQueue: createQueueResponse :: CreateQueueResponse
+ Network.AWS.SQS.CreateQueue: createQueueResponse :: Int -> CreateQueueResponse
- Network.AWS.SQS.DeleteMessageBatch: deleteMessageBatchResponse :: DeleteMessageBatchResponse
+ Network.AWS.SQS.DeleteMessageBatch: deleteMessageBatchResponse :: Int -> DeleteMessageBatchResponse
- Network.AWS.SQS.GetQueueAttributes: getQueueAttributesResponse :: GetQueueAttributesResponse
+ Network.AWS.SQS.GetQueueAttributes: getQueueAttributesResponse :: Int -> GetQueueAttributesResponse
- Network.AWS.SQS.GetQueueAttributes: gqaAttributeNames :: Lens' GetQueueAttributes [Text]
+ Network.AWS.SQS.GetQueueAttributes: gqaAttributeNames :: Lens' GetQueueAttributes [QueueAttributeName]
- Network.AWS.SQS.ListDeadLetterSourceQueues: listDeadLetterSourceQueuesResponse :: ListDeadLetterSourceQueuesResponse
+ Network.AWS.SQS.ListDeadLetterSourceQueues: listDeadLetterSourceQueuesResponse :: Int -> ListDeadLetterSourceQueuesResponse
- Network.AWS.SQS.ListQueues: listQueuesResponse :: ListQueuesResponse
+ Network.AWS.SQS.ListQueues: listQueuesResponse :: Int -> ListQueuesResponse
- Network.AWS.SQS.ReceiveMessage: receiveMessageResponse :: ReceiveMessageResponse
+ Network.AWS.SQS.ReceiveMessage: receiveMessageResponse :: Int -> ReceiveMessageResponse
- Network.AWS.SQS.ReceiveMessage: rmAttributeNames :: Lens' ReceiveMessage [Text]
+ Network.AWS.SQS.ReceiveMessage: rmAttributeNames :: Lens' ReceiveMessage [QueueAttributeName]
- Network.AWS.SQS.SendMessage: sendMessageResponse :: SendMessageResponse
+ Network.AWS.SQS.SendMessage: sendMessageResponse :: Int -> SendMessageResponse
- Network.AWS.SQS.SendMessageBatch: sendMessageBatchResponse :: SendMessageBatchResponse
+ Network.AWS.SQS.SendMessageBatch: sendMessageBatchResponse :: Int -> SendMessageBatchResponse
- Network.AWS.SQS.SetQueueAttributes: sqaAttributes :: Lens' SetQueueAttributes (HashMap Text Text)
+ Network.AWS.SQS.SetQueueAttributes: sqaAttributes :: Lens' SetQueueAttributes (HashMap QueueAttributeName Text)
- Network.AWS.SQS.Types: mAttributes :: Lens' Message (HashMap Text Text)
+ Network.AWS.SQS.Types: mAttributes :: Lens' Message (HashMap QueueAttributeName Text)
- Network.AWS.SQS.Types: mavBinaryListValues :: Lens' MessageAttributeValue [Base64]
+ Network.AWS.SQS.Types: mavBinaryListValues :: Lens' MessageAttributeValue [ByteString]
- Network.AWS.SQS.Types: mavBinaryValue :: Lens' MessageAttributeValue (Maybe Base64)
+ Network.AWS.SQS.Types: mavBinaryValue :: Lens' MessageAttributeValue (Maybe ByteString)
- Network.AWS.SQS.Types: smbreId :: Lens' SendMessageBatchRequestEntry Text
+ Network.AWS.SQS.Types: smbreId :: Lens' SendMessageBatchResultEntry Text
Files
- README.md +44/−9
- amazonka-sqs.cabal +75/−14
- gen/Network/AWS/SQS.hs +267/−46
- gen/Network/AWS/SQS/AddPermission.hs +119/−101
- gen/Network/AWS/SQS/ChangeMessageVisibility.hs +109/−98
- gen/Network/AWS/SQS/ChangeMessageVisibilityBatch.hs +131/−102
- gen/Network/AWS/SQS/CreateQueue.hs +140/−109
- gen/Network/AWS/SQS/DeleteMessage.hs +89/−86
- gen/Network/AWS/SQS/DeleteMessageBatch.hs +120/−100
- gen/Network/AWS/SQS/DeleteQueue.hs +76/−71
- gen/Network/AWS/SQS/GetQueueAttributes.hs +144/−105
- gen/Network/AWS/SQS/GetQueueURL.hs +145/−0
- gen/Network/AWS/SQS/GetQueueUrl.hs +0/−127
- gen/Network/AWS/SQS/ListDeadLetterSourceQueues.hs +97/−80
- gen/Network/AWS/SQS/ListQueues.hs +91/−78
- gen/Network/AWS/SQS/PurgeQueue.hs +75/−68
- gen/Network/AWS/SQS/ReceiveMessage.hs +190/−169
- gen/Network/AWS/SQS/RemovePermission.hs +74/−72
- gen/Network/AWS/SQS/SendMessage.hs +154/−142
- gen/Network/AWS/SQS/SendMessageBatch.hs +134/−111
- gen/Network/AWS/SQS/SetQueueAttributes.hs +104/−90
- gen/Network/AWS/SQS/Types.hs +178/−615
- gen/Network/AWS/SQS/Types/Product.hs +562/−0
- gen/Network/AWS/SQS/Types/Sum.hs +78/−0
- gen/Network/AWS/SQS/Waiters.hs +20/−0
- test/Main.hs +21/−0
- test/Test/AWS/Gen/SQS.hs +328/−0
- test/Test/AWS/SQS.hs +66/−0
- test/Test/AWS/SQS/Internal.hs +16/−0
README.md view
@@ -1,24 +1,59 @@ # Amazon Simple Queue 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 Simple Queue Service (SQS) is a fast, reliable, scalable, fully-managed message queuing service. SQS makes it simple and cost-effective to-decouple the components of a cloud application. You can use SQS to transmit-any volume of data, at any level of throughput, without losing messages or-requiring other services to be always available. With SQS, you can offload-the administrative burden of operating and scaling a highly available-messaging cluster, while paying a low price for only what you use.+Welcome to the /Amazon Simple Queue Service API Reference/. This section+describes who should read this guide, how the guide is organized, and+other resources related to the Amazon Simple Queue Service (Amazon SQS). +Amazon SQS offers reliable and scalable hosted queues for storing+messages as they travel between computers. By using Amazon SQS, you can+move data between distributed components of your applications that+perform different tasks without losing messages or requiring each+component to be always available.++Helpful Links:++- <http://queue.amazonaws.com/doc/2012-11-05/QueueService.wsdl Current WSDL (2012-11-05)>+- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/MakingRequestsArticle.html Making API Requests>+- <http://aws.amazon.com/sqs/ Amazon SQS product page>+- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html Using Amazon SQS Message Attributes>+- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQS Dead Letter Queues>+- <http://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region Regions and Endpoints>++We also provide SDKs that enable you to access Amazon SQS from your+preferred programming language. The SDKs contain functionality that+automatically takes care of tasks such as:++- Cryptographically signing your service requests+- Retrying requests+- Handling error responses++For a list of available SDKs, go to+<http://aws.amazon.com/tools/ Tools for Amazon Web Services>.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-sqs) and the [AWS API Reference](http://docs.aws.amazon.com/AWSSimpleQueueService/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-sqs.cabal view
@@ -1,31 +1,61 @@ name: amazonka-sqs-version: 0.3.6+version: 1.0.0 synopsis: Amazon Simple Queue 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 Simple Queue Service (SQS) is a fast, reliable, scalable, fully- managed message queuing service. SQS makes it simple and cost-effective to- decouple the components of a cloud application. You can use SQS to transmit- any volume of data, at any level of throughput, without losing messages or- requiring other services to be always available. With SQS, you can offload- the administrative burden of operating and scaling a highly available- messaging cluster, while paying a low price for only what you use.+ Welcome to the /Amazon Simple Queue Service API Reference/. This section+ describes who should read this guide, how the guide is organized, and+ other resources related to the Amazon Simple Queue Service (Amazon SQS). + Amazon SQS offers reliable and scalable hosted queues for storing+ messages as they travel between computers. By using Amazon SQS, you can+ move data between distributed components of your applications that+ perform different tasks without losing messages or requiring each+ component to be always available.++ Helpful Links:++ - <http://queue.amazonaws.com/doc/2012-11-05/QueueService.wsdl Current WSDL (2012-11-05)>+ - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/MakingRequestsArticle.html Making API Requests>+ - <http://aws.amazon.com/sqs/ Amazon SQS product page>+ - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html Using Amazon SQS Message Attributes>+ - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQS Dead Letter Queues>+ - <http://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region Regions and Endpoints>++ We also provide SDKs that enable you to access Amazon SQS from your+ preferred programming language. The SDKs contain functionality that+ automatically takes care of tasks such as:++ - Cryptographically signing your service requests+ - Retrying requests+ - Handling error responses++ For a list of available SDKs, go to+ <http://aws.amazon.com/tools/ Tools for Amazon Web Services>. .- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/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.SQS" and the <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/Welcome.html AWS API Reference>+ to get started. source-repository head type: git@@ -47,7 +77,7 @@ , Network.AWS.SQS.DeleteMessageBatch , Network.AWS.SQS.DeleteQueue , Network.AWS.SQS.GetQueueAttributes- , Network.AWS.SQS.GetQueueUrl+ , Network.AWS.SQS.GetQueueURL , Network.AWS.SQS.ListDeadLetterSourceQueues , Network.AWS.SQS.ListQueues , Network.AWS.SQS.PurgeQueue@@ -57,9 +87,40 @@ , Network.AWS.SQS.SendMessageBatch , Network.AWS.SQS.SetQueueAttributes , Network.AWS.SQS.Types+ , Network.AWS.SQS.Waiters other-modules:+ Network.AWS.SQS.Types.Product+ , Network.AWS.SQS.Types.Sum build-depends:- amazonka-core == 0.3.6.*+ amazonka-core == 1.0.0.* , base >= 4.7 && < 5++test-suite amazonka-sqs-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.SQS+ , Test.AWS.Gen.SQS+ , Test.AWS.SQS.Internal++ build-depends:+ amazonka-core == 1.0.0+ , amazonka-test == 1.0.0+ , amazonka-sqs == 1.0.0+ , base+ , bytestring+ , lens+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
gen/Network/AWS/SQS.hs view
@@ -1,58 +1,279 @@+{-# 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.SQS--- 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 Simple Queue Service (SQS) is a fast, reliable, scalable, fully--- managed message queuing service. SQS makes it simple and cost-effective to--- decouple the components of a cloud application. You can use SQS to transmit--- any volume of data, at any level of throughput, without losing messages or--- requiring other services to be always available. With SQS, you can offload--- the administrative burden of operating and scaling a highly available--- messaging cluster, while paying a low price for only what you use.+-- Welcome to the /Amazon Simple Queue Service API Reference/. This section+-- describes who should read this guide, how the guide is organized, and+-- other resources related to the Amazon Simple Queue Service (Amazon SQS).+--+-- Amazon SQS offers reliable and scalable hosted queues for storing+-- messages as they travel between computers. By using Amazon SQS, you can+-- move data between distributed components of your applications that+-- perform different tasks without losing messages or requiring each+-- component to be always available.+--+-- Helpful Links:+--+-- - <http://queue.amazonaws.com/doc/2012-11-05/QueueService.wsdl Current WSDL (2012-11-05)>+-- - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/MakingRequestsArticle.html Making API Requests>+-- - <http://aws.amazon.com/sqs/ Amazon SQS product page>+-- - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html Using Amazon SQS Message Attributes>+-- - <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQS Dead Letter Queues>+-- - <http://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region Regions and Endpoints>+--+-- We also provide SDKs that enable you to access Amazon SQS from your+-- preferred programming language. The SDKs contain functionality that+-- automatically takes care of tasks such as:+--+-- - Cryptographically signing your service requests+-- - Retrying requests+-- - Handling error responses+--+-- For a list of available SDKs, go to+-- <http://aws.amazon.com/tools/ Tools for Amazon Web Services>.+--+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.SQS- ( module Network.AWS.SQS.AddPermission- , module Network.AWS.SQS.ChangeMessageVisibility+ (+ -- * Service+ SQS++ -- * Errors+ -- $errors++ -- ** InvalidBatchEntryId+ , _InvalidBatchEntryId++ -- ** TooManyEntriesInBatchRequest+ , _TooManyEntriesInBatchRequest++ -- ** InvalidAttributeName+ , _InvalidAttributeName++ -- ** QueueDeletedRecently+ , _QueueDeletedRecently++ -- ** QueueDoesNotExist+ , _QueueDoesNotExist++ -- ** UnsupportedOperation+ , _UnsupportedOperation++ -- ** InvalidMessageContents+ , _InvalidMessageContents++ -- ** BatchRequestTooLong+ , _BatchRequestTooLong++ -- ** OverLimit+ , _OverLimit++ -- ** PurgeQueueInProgress+ , _PurgeQueueInProgress++ -- ** QueueNameExists+ , _QueueNameExists++ -- ** InvalidIdFormat+ , _InvalidIdFormat++ -- ** ReceiptHandleIsInvalid+ , _ReceiptHandleIsInvalid++ -- ** EmptyBatchRequest+ , _EmptyBatchRequest++ -- ** MessageNotInflight+ , _MessageNotInflight++ -- ** BatchEntryIdsNotDistinct+ , _BatchEntryIdsNotDistinct++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** GetQueueURL+ , module Network.AWS.SQS.GetQueueURL++ -- ** PurgeQueue+ , module Network.AWS.SQS.PurgeQueue++ -- ** SendMessage+ , module Network.AWS.SQS.SendMessage++ -- ** ChangeMessageVisibilityBatch , module Network.AWS.SQS.ChangeMessageVisibilityBatch- , module Network.AWS.SQS.CreateQueue- , module Network.AWS.SQS.DeleteMessage- , module Network.AWS.SQS.DeleteMessageBatch- , module Network.AWS.SQS.DeleteQueue++ -- ** RemovePermission+ , module Network.AWS.SQS.RemovePermission++ -- ** GetQueueAttributes , module Network.AWS.SQS.GetQueueAttributes- , module Network.AWS.SQS.GetQueueUrl- , module Network.AWS.SQS.ListDeadLetterSourceQueues++ -- ** ListQueues , module Network.AWS.SQS.ListQueues- , module Network.AWS.SQS.PurgeQueue++ -- ** ReceiveMessage , module Network.AWS.SQS.ReceiveMessage- , module Network.AWS.SQS.RemovePermission- , module Network.AWS.SQS.SendMessage- , module Network.AWS.SQS.SendMessageBatch++ -- ** DeleteQueue+ , module Network.AWS.SQS.DeleteQueue++ -- ** DeleteMessageBatch+ , module Network.AWS.SQS.DeleteMessageBatch++ -- ** SetQueueAttributes , module Network.AWS.SQS.SetQueueAttributes- , module Network.AWS.SQS.Types++ -- ** ListDeadLetterSourceQueues+ , module Network.AWS.SQS.ListDeadLetterSourceQueues++ -- ** AddPermission+ , module Network.AWS.SQS.AddPermission++ -- ** DeleteMessage+ , module Network.AWS.SQS.DeleteMessage++ -- ** CreateQueue+ , module Network.AWS.SQS.CreateQueue++ -- ** ChangeMessageVisibility+ , module Network.AWS.SQS.ChangeMessageVisibility++ -- ** SendMessageBatch+ , module Network.AWS.SQS.SendMessageBatch++ -- * Types++ -- ** QueueAttributeName+ , QueueAttributeName (..)++ -- ** BatchResultErrorEntry+ , BatchResultErrorEntry+ , batchResultErrorEntry+ , breeMessage+ , breeId+ , breeSenderFault+ , breeCode++ -- ** ChangeMessageVisibilityBatchRequestEntry+ , ChangeMessageVisibilityBatchRequestEntry+ , changeMessageVisibilityBatchRequestEntry+ , cVisibilityTimeout+ , cId+ , cReceiptHandle++ -- ** ChangeMessageVisibilityBatchResultEntry+ , ChangeMessageVisibilityBatchResultEntry+ , changeMessageVisibilityBatchResultEntry+ , cmvbreId++ -- ** DeleteMessageBatchRequestEntry+ , DeleteMessageBatchRequestEntry+ , deleteMessageBatchRequestEntry+ , dmbreId+ , dmbreReceiptHandle++ -- ** DeleteMessageBatchResultEntry+ , DeleteMessageBatchResultEntry+ , deleteMessageBatchResultEntry+ , dId++ -- ** Message+ , Message+ , message+ , mMessageAttributes+ , mMD5OfBody+ , mBody+ , mAttributes+ , mMessageId+ , mReceiptHandle+ , mMD5OfMessageAttributes++ -- ** MessageAttributeValue+ , MessageAttributeValue+ , messageAttributeValue+ , mavBinaryValue+ , mavStringListValues+ , mavStringValue+ , mavBinaryListValues+ , mavDataType++ -- ** SendMessageBatchRequestEntry+ , SendMessageBatchRequestEntry+ , sendMessageBatchRequestEntry+ , sMessageAttributes+ , sDelaySeconds+ , sId+ , sMessageBody++ -- ** SendMessageBatchResultEntry+ , SendMessageBatchResultEntry+ , sendMessageBatchResultEntry+ , smbreMD5OfMessageAttributes+ , smbreId+ , smbreMessageId+ , smbreMD5OfMessageBody ) where -import Network.AWS.SQS.AddPermission-import Network.AWS.SQS.ChangeMessageVisibility-import Network.AWS.SQS.ChangeMessageVisibilityBatch-import Network.AWS.SQS.CreateQueue-import Network.AWS.SQS.DeleteMessage-import Network.AWS.SQS.DeleteMessageBatch-import Network.AWS.SQS.DeleteQueue-import Network.AWS.SQS.GetQueueAttributes-import Network.AWS.SQS.GetQueueUrl-import Network.AWS.SQS.ListDeadLetterSourceQueues-import Network.AWS.SQS.ListQueues-import Network.AWS.SQS.PurgeQueue-import Network.AWS.SQS.ReceiveMessage-import Network.AWS.SQS.RemovePermission-import Network.AWS.SQS.SendMessage-import Network.AWS.SQS.SendMessageBatch-import Network.AWS.SQS.SetQueueAttributes-import Network.AWS.SQS.Types+import Network.AWS.SQS.AddPermission+import Network.AWS.SQS.ChangeMessageVisibility+import Network.AWS.SQS.ChangeMessageVisibilityBatch+import Network.AWS.SQS.CreateQueue+import Network.AWS.SQS.DeleteMessage+import Network.AWS.SQS.DeleteMessageBatch+import Network.AWS.SQS.DeleteQueue+import Network.AWS.SQS.GetQueueAttributes+import Network.AWS.SQS.GetQueueURL+import Network.AWS.SQS.ListDeadLetterSourceQueues+import Network.AWS.SQS.ListQueues+import Network.AWS.SQS.PurgeQueue+import Network.AWS.SQS.ReceiveMessage+import Network.AWS.SQS.RemovePermission+import Network.AWS.SQS.SendMessage+import Network.AWS.SQS.SendMessageBatch+import Network.AWS.SQS.SetQueueAttributes+import Network.AWS.SQS.Types+import Network.AWS.SQS.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 'SQS'.+-}++{- $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/SQS/AddPermission.hs view
@@ -1,145 +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.SQS.AddPermission--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Adds a permission to a queue for a specific <http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P principal>. This allows for--- sharing access to the queue.+-- Adds a permission to a queue for a specific+-- <http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P principal>.+-- This allows for sharing access to the queue. ----- When you create a queue, you have full control access rights for the queue.--- Only you (as owner of the queue) can grant or deny permissions to the queue.--- For more information about these permissions, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html Shared Queues> in the /AmazonSQS Developer Guide/.+-- When you create a queue, you have full control access rights for the+-- queue. Only you (as owner of the queue) can grant or deny permissions to+-- the queue. For more information about these permissions, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html Shared Queues>+-- in the /Amazon SQS Developer Guide/. ----- 'AddPermission' writes an Amazon SQS-generated policy. If you want to write--- your own policy, use 'SetQueueAttributes' to upload your policy. For more--- information about writing your own policy, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AccessPolicyLanguage.html Using The Access PolicyLanguage> in the /Amazon SQS Developer Guide/.+-- 'AddPermission' writes an Amazon SQS-generated policy. If you want to+-- write your own policy, use SetQueueAttributes to upload your policy. For+-- more information about writing your own policy, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AccessPolicyLanguage.html Using The Access Policy Language>+-- in the /Amazon SQS Developer Guide/. ----- Some API actions take lists of parameters. These lists are specified using--- the 'param.n' notation. Values of 'n' are integers starting from 1. For example,--- a parameter list with two elements looks like this: '&Attribute.1=this'+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this: --+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html AWS API Reference> for AddPermission. module Network.AWS.SQS.AddPermission (- -- * Request- AddPermission- -- ** Request constructor- , addPermission- -- ** Request lenses+ -- * Creating a Request+ addPermission+ , AddPermission+ -- * Request Lenses+ , apQueueURL+ , apLabel , apAWSAccountIds , apActions- , apLabel- , apQueueUrl - -- * Response- , AddPermissionResponse- -- ** Response constructor+ -- * Destructuring the Response , addPermissionResponse+ , AddPermissionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data AddPermission = AddPermission- { _apAWSAccountIds :: List "member" Text- , _apActions :: List "member" Text- , _apLabel :: Text- , _apQueueUrl :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'addPermission' smart constructor.+data AddPermission = AddPermission'+ { _apQueueURL :: !Text+ , _apLabel :: !Text+ , _apAWSAccountIds :: ![Text]+ , _apActions :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'AddPermission' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'AddPermission' with the minimum fields required to make a request. ----- * 'apAWSAccountIds' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'apActions' @::@ ['Text']+-- * 'apQueueURL' ----- * 'apLabel' @::@ 'Text'+-- * 'apLabel' ----- * 'apQueueUrl' @::@ 'Text'+-- * 'apAWSAccountIds' ---addPermission :: Text -- ^ 'apQueueUrl'- -> Text -- ^ 'apLabel'- -> AddPermission-addPermission p1 p2 = AddPermission- { _apQueueUrl = p1- , _apLabel = p2+-- * 'apActions'+addPermission+ :: Text -- ^ 'apQueueURL'+ -> Text -- ^ 'apLabel'+ -> AddPermission+addPermission pQueueURL_ pLabel_ =+ AddPermission'+ { _apQueueURL = pQueueURL_+ , _apLabel = pLabel_ , _apAWSAccountIds = mempty- , _apActions = mempty+ , _apActions = mempty } --- | The AWS account number of the <http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P principal> who will be given permission. The--- principal must have an AWS account, but does not need to be signed up for--- Amazon SQS. For information about locating the AWS account identification,--- see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AWSCredentials.html Your AWS Identifiers> in the /Amazon SQS Developer Guide/.+-- | The URL of the Amazon SQS queue to take action on.+apQueueURL :: Lens' AddPermission Text+apQueueURL = lens _apQueueURL (\ s a -> s{_apQueueURL = a});++-- | The unique identification of the permission you\'re setting (e.g.,+-- 'AliceSendMessage'). Constraints: Maximum 80 characters; alphanumeric+-- characters, hyphens (-), and underscores (_) are allowed.+apLabel :: Lens' AddPermission Text+apLabel = lens _apLabel (\ s a -> s{_apLabel = a});++-- | The AWS account number of the+-- <http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P principal>+-- who will be given permission. The principal must have an AWS account,+-- but does not need to be signed up for Amazon SQS. For information about+-- locating the AWS account identification, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AWSCredentials.html Your AWS Identifiers>+-- in the /Amazon SQS Developer Guide/. apAWSAccountIds :: Lens' AddPermission [Text]-apAWSAccountIds = lens _apAWSAccountIds (\s a -> s { _apAWSAccountIds = a }) . _List+apAWSAccountIds = lens _apAWSAccountIds (\ s a -> s{_apAWSAccountIds = a}) . _Coerce; -- | The action the client wants to allow for the specified principal. The--- following are valid values: '* | SendMessage | ReceiveMessage | DeleteMessage| ChangeMessageVisibility | GetQueueAttributes | GetQueueUrl'. For more--- information about these actions, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes Understanding Permissions> in the /AmazonSQS Developer Guide/.+-- following are valid values:+-- '* | SendMessage | ReceiveMessage | DeleteMessage | ChangeMessageVisibility | GetQueueAttributes | GetQueueUrl'.+-- For more information about these actions, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes Understanding Permissions>+-- in the /Amazon SQS Developer Guide/. ----- Specifying 'SendMessage', 'DeleteMessage', or 'ChangeMessageVisibility' for the 'ActionName.n' also grants permissions for the corresponding batch versions of those--- actions: 'SendMessageBatch', 'DeleteMessageBatch', and 'ChangeMessageVisibilityBatch'.+-- Specifying 'SendMessage', 'DeleteMessage', or 'ChangeMessageVisibility'+-- for the 'ActionName.n' also grants permissions for the corresponding+-- batch versions of those actions: 'SendMessageBatch',+-- 'DeleteMessageBatch', and 'ChangeMessageVisibilityBatch'. apActions :: Lens' AddPermission [Text]-apActions = lens _apActions (\s a -> s { _apActions = a }) . _List---- | The unique identification of the permission you're setting (e.g., 'AliceSendMessage'). Constraints: Maximum 80 characters; alphanumeric characters, hyphens (-),--- and underscores (_) are allowed.-apLabel :: Lens' AddPermission Text-apLabel = lens _apLabel (\s a -> s { _apLabel = a })---- | The URL of the Amazon SQS queue to take action on.-apQueueUrl :: Lens' AddPermission Text-apQueueUrl = lens _apQueueUrl (\s a -> s { _apQueueUrl = a })+apActions = lens _apActions (\ s a -> s{_apActions = a}) . _Coerce; -data AddPermissionResponse = AddPermissionResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest AddPermission where+ type Sv AddPermission = SQS+ type Rs AddPermission = AddPermissionResponse+ request = postQuery+ response = receiveNull AddPermissionResponse' --- | 'AddPermissionResponse' constructor.-addPermissionResponse :: AddPermissionResponse-addPermissionResponse = AddPermissionResponse+instance ToHeaders AddPermission where+ toHeaders = const mempty instance ToPath AddPermission where- toPath = const "/"+ toPath = const "/" instance ToQuery AddPermission where- toQuery AddPermission{..} = mconcat- [ toQuery _apAWSAccountIds- , toQuery _apActions- , "Label" =? _apLabel- , "QueueUrl" =? _apQueueUrl- ]--instance ToHeaders AddPermission+ toQuery AddPermission'{..}+ = mconcat+ ["Action" =: ("AddPermission" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _apQueueURL, "Label" =: _apLabel,+ toQueryList "AWSAccountId" _apAWSAccountIds,+ toQueryList "ActionName" _apActions] -instance AWSRequest AddPermission where- type Sv AddPermission = SQS- type Rs AddPermission = AddPermissionResponse+-- | /See:/ 'addPermissionResponse' smart constructor.+data AddPermissionResponse =+ AddPermissionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "AddPermission"- response = nullResponse AddPermissionResponse+-- | Creates a value of 'AddPermissionResponse' with the minimum fields required to make a request.+--+addPermissionResponse+ :: AddPermissionResponse+addPermissionResponse = AddPermissionResponse'
gen/Network/AWS/SQS/ChangeMessageVisibility.hs view
@@ -1,143 +1,154 @@-{-# 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.SQS.ChangeMessageVisibility--- 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.---- | Changes the visibility timeout of a specified message in a queue to a new--- value. The maximum allowed timeout value you can set the value to is 12--- hours. This means you can't extend the timeout of a message in an existing--- queue to more than a total visibility timeout of 12 hours. (For more--- information visibility timeout, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout> in the /Amazon SQSDeveloper Guide/.)+-- Changes the visibility timeout of a specified message in a queue to a+-- new value. The maximum allowed timeout value you can set the value to is+-- 12 hours. This means you can\'t extend the timeout of a message in an+-- existing queue to more than a total visibility timeout of 12 hours. (For+-- more information visibility timeout, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout>+-- in the /Amazon SQS Developer Guide/.) ----- For example, let's say you have a message and its default message visibility--- timeout is 30 minutes. You could call 'ChangeMessageVisiblity' with a value of--- two hours and the effective timeout would be two hours and 30 minutes. When--- that time comes near you could again extend the time out by calling--- ChangeMessageVisiblity, but this time the maximum allowed timeout would be 9--- hours and 30 minutes.+-- For example, let\'s say you have a message and its default message+-- visibility timeout is 30 minutes. You could call+-- 'ChangeMessageVisiblity' with a value of two hours and the effective+-- timeout would be two hours and 30 minutes. When that time comes near you+-- could again extend the time out by calling ChangeMessageVisiblity, but+-- this time the maximum allowed timeout would be 9 hours and 30 minutes. -- -- There is a 120,000 limit for the number of inflight messages per queue. -- Messages are inflight after they have been received from the queue by a--- consuming component, but have not yet been deleted from the queue. If you--- reach the 120,000 limit, you will receive an OverLimit error message from--- Amazon SQS. To help avoid reaching the limit, you should delete the messages--- from the queue after they have been processed. You can also increase the--- number of queues you use to process the messages.+-- consuming component, but have not yet been deleted from the queue. If+-- you reach the 120,000 limit, you will receive an OverLimit error message+-- from Amazon SQS. To help avoid reaching the limit, you should delete the+-- messages from the queue after they have been processed. You can also+-- increase the number of queues you use to process the messages. -- -- If you attempt to set the 'VisibilityTimeout' to an amount more than the--- maximum time left, Amazon SQS returns an error. It will not automatically--- recalculate and increase the timeout to the maximum time remaining. Unlike--- with a queue, when you change the visibility timeout for a specific message,--- that timeout value is applied immediately but is not saved in memory for that--- message. If you don't delete a message after it is received, the visibility--- timeout for the message the next time it is received reverts to the original--- timeout value, not the value you set with the 'ChangeMessageVisibility' action.+-- maximum time left, Amazon SQS returns an error. It will not+-- automatically recalculate and increase the timeout to the maximum time+-- remaining. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibility.html>+-- Unlike with a queue, when you change the visibility timeout for a+-- specific message, that timeout value is applied immediately but is not+-- saved in memory for that message. If you don\'t delete a message after+-- it is received, the visibility timeout for the message the next time it+-- is received reverts to the original timeout value, not the value you set+-- with the 'ChangeMessageVisibility' action.+--+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibility.html AWS API Reference> for ChangeMessageVisibility. module Network.AWS.SQS.ChangeMessageVisibility (- -- * Request- ChangeMessageVisibility- -- ** Request constructor- , changeMessageVisibility- -- ** Request lenses- , cmvQueueUrl+ -- * Creating a Request+ changeMessageVisibility+ , ChangeMessageVisibility+ -- * Request Lenses+ , cmvQueueURL , cmvReceiptHandle , cmvVisibilityTimeout - -- * Response- , ChangeMessageVisibilityResponse- -- ** Response constructor+ -- * Destructuring the Response , changeMessageVisibilityResponse+ , ChangeMessageVisibilityResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data ChangeMessageVisibility = ChangeMessageVisibility- { _cmvQueueUrl :: Text- , _cmvReceiptHandle :: Text- , _cmvVisibilityTimeout :: Int- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'changeMessageVisibility' smart constructor.+data ChangeMessageVisibility = ChangeMessageVisibility'+ { _cmvQueueURL :: !Text+ , _cmvReceiptHandle :: !Text+ , _cmvVisibilityTimeout :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ChangeMessageVisibility' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ChangeMessageVisibility' with the minimum fields required to make a request. ----- * 'cmvQueueUrl' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'cmvReceiptHandle' @::@ 'Text'+-- * 'cmvQueueURL' ----- * 'cmvVisibilityTimeout' @::@ 'Int'+-- * 'cmvReceiptHandle' ---changeMessageVisibility :: Text -- ^ 'cmvQueueUrl'- -> Text -- ^ 'cmvReceiptHandle'- -> Int -- ^ 'cmvVisibilityTimeout'- -> ChangeMessageVisibility-changeMessageVisibility p1 p2 p3 = ChangeMessageVisibility- { _cmvQueueUrl = p1- , _cmvReceiptHandle = p2- , _cmvVisibilityTimeout = p3+-- * 'cmvVisibilityTimeout'+changeMessageVisibility+ :: Text -- ^ 'cmvQueueURL'+ -> Text -- ^ 'cmvReceiptHandle'+ -> Int -- ^ 'cmvVisibilityTimeout'+ -> ChangeMessageVisibility+changeMessageVisibility pQueueURL_ pReceiptHandle_ pVisibilityTimeout_ =+ ChangeMessageVisibility'+ { _cmvQueueURL = pQueueURL_+ , _cmvReceiptHandle = pReceiptHandle_+ , _cmvVisibilityTimeout = pVisibilityTimeout_ } -- | The URL of the Amazon SQS queue to take action on.-cmvQueueUrl :: Lens' ChangeMessageVisibility Text-cmvQueueUrl = lens _cmvQueueUrl (\s a -> s { _cmvQueueUrl = a })+cmvQueueURL :: Lens' ChangeMessageVisibility Text+cmvQueueURL = lens _cmvQueueURL (\ s a -> s{_cmvQueueURL = a}); -- | The receipt handle associated with the message whose visibility timeout--- should be changed. This parameter is returned by the 'ReceiveMessage' action.+-- should be changed. This parameter is returned by the ReceiveMessage+-- action. cmvReceiptHandle :: Lens' ChangeMessageVisibility Text-cmvReceiptHandle = lens _cmvReceiptHandle (\s a -> s { _cmvReceiptHandle = a })+cmvReceiptHandle = lens _cmvReceiptHandle (\ s a -> s{_cmvReceiptHandle = a}); -- | The new value (in seconds - from 0 to 43200 - maximum 12 hours) for the--- message's visibility timeout.+-- message\'s visibility timeout. cmvVisibilityTimeout :: Lens' ChangeMessageVisibility Int-cmvVisibilityTimeout =- lens _cmvVisibilityTimeout (\s a -> s { _cmvVisibilityTimeout = a })+cmvVisibilityTimeout = lens _cmvVisibilityTimeout (\ s a -> s{_cmvVisibilityTimeout = a}); -data ChangeMessageVisibilityResponse = ChangeMessageVisibilityResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest ChangeMessageVisibility where+ type Sv ChangeMessageVisibility = SQS+ type Rs ChangeMessageVisibility =+ ChangeMessageVisibilityResponse+ request = postQuery+ response+ = receiveNull ChangeMessageVisibilityResponse' --- | 'ChangeMessageVisibilityResponse' constructor.-changeMessageVisibilityResponse :: ChangeMessageVisibilityResponse-changeMessageVisibilityResponse = ChangeMessageVisibilityResponse+instance ToHeaders ChangeMessageVisibility where+ toHeaders = const mempty instance ToPath ChangeMessageVisibility where- toPath = const "/"+ toPath = const "/" instance ToQuery ChangeMessageVisibility where- toQuery ChangeMessageVisibility{..} = mconcat- [ "QueueUrl" =? _cmvQueueUrl- , "ReceiptHandle" =? _cmvReceiptHandle- , "VisibilityTimeout" =? _cmvVisibilityTimeout- ]--instance ToHeaders ChangeMessageVisibility+ toQuery ChangeMessageVisibility'{..}+ = mconcat+ ["Action" =:+ ("ChangeMessageVisibility" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _cmvQueueURL,+ "ReceiptHandle" =: _cmvReceiptHandle,+ "VisibilityTimeout" =: _cmvVisibilityTimeout] -instance AWSRequest ChangeMessageVisibility where- type Sv ChangeMessageVisibility = SQS- type Rs ChangeMessageVisibility = ChangeMessageVisibilityResponse+-- | /See:/ 'changeMessageVisibilityResponse' smart constructor.+data ChangeMessageVisibilityResponse =+ ChangeMessageVisibilityResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "ChangeMessageVisibility"- response = nullResponse ChangeMessageVisibilityResponse+-- | Creates a value of 'ChangeMessageVisibilityResponse' with the minimum fields required to make a request.+--+changeMessageVisibilityResponse+ :: ChangeMessageVisibilityResponse+changeMessageVisibilityResponse = ChangeMessageVisibilityResponse'
gen/Network/AWS/SQS/ChangeMessageVisibilityBatch.hs view
@@ -1,140 +1,169 @@-{-# 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.SQS.ChangeMessageVisibilityBatch--- 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.---- | Changes the visibility timeout of multiple messages. This is a batch version--- of 'ChangeMessageVisibility'. The result of the action on each message is--- reported individually in the response. You can send up to 10 'ChangeMessageVisibility' requests with each 'ChangeMessageVisibilityBatch' action.+-- Changes the visibility timeout of multiple messages. This is a batch+-- version of ChangeMessageVisibility. The result of the action on each+-- message is reported individually in the response. You can send up to 10+-- ChangeMessageVisibility requests with each+-- 'ChangeMessageVisibilityBatch' action. -- -- Because the batch request can result in a combination of successful and--- unsuccessful actions, you should check for batch errors even when the call--- returns an HTTP status code of 200. Some API actions take lists of--- parameters. These lists are specified using the 'param.n' notation. Values of 'n'--- are integers starting from 1. For example, a parameter list with two elements--- looks like this: '&Attribute.1=this'+-- unsuccessful actions, you should check for batch errors even when the+-- call returns an HTTP status code of 200. --+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this:+--+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html AWS API Reference> for ChangeMessageVisibilityBatch. module Network.AWS.SQS.ChangeMessageVisibilityBatch (- -- * Request- ChangeMessageVisibilityBatch- -- ** Request constructor- , changeMessageVisibilityBatch- -- ** Request lenses+ -- * Creating a Request+ changeMessageVisibilityBatch+ , ChangeMessageVisibilityBatch+ -- * Request Lenses+ , cmvbQueueURL , cmvbEntries- , cmvbQueueUrl - -- * Response- , ChangeMessageVisibilityBatchResponse- -- ** Response constructor+ -- * Destructuring the Response , changeMessageVisibilityBatchResponse- -- ** Response lenses- , cmvbrFailed- , cmvbrSuccessful+ , ChangeMessageVisibilityBatchResponse+ -- * Response Lenses+ , cmvbrsStatus+ , cmvbrsSuccessful+ , cmvbrsFailed ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data ChangeMessageVisibilityBatch = ChangeMessageVisibilityBatch- { _cmvbEntries :: List "member" ChangeMessageVisibilityBatchRequestEntry- , _cmvbQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'changeMessageVisibilityBatch' smart constructor.+data ChangeMessageVisibilityBatch = ChangeMessageVisibilityBatch'+ { _cmvbQueueURL :: !Text+ , _cmvbEntries :: ![ChangeMessageVisibilityBatchRequestEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ChangeMessageVisibilityBatch' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ChangeMessageVisibilityBatch' with the minimum fields required to make a request. ----- * 'cmvbEntries' @::@ ['ChangeMessageVisibilityBatchRequestEntry']+-- Use one of the following lenses to modify other fields as desired: ----- * 'cmvbQueueUrl' @::@ 'Text'+-- * 'cmvbQueueURL' ---changeMessageVisibilityBatch :: Text -- ^ 'cmvbQueueUrl'- -> ChangeMessageVisibilityBatch-changeMessageVisibilityBatch p1 = ChangeMessageVisibilityBatch- { _cmvbQueueUrl = p1- , _cmvbEntries = mempty+-- * 'cmvbEntries'+changeMessageVisibilityBatch+ :: Text -- ^ 'cmvbQueueURL'+ -> ChangeMessageVisibilityBatch+changeMessageVisibilityBatch pQueueURL_ =+ ChangeMessageVisibilityBatch'+ { _cmvbQueueURL = pQueueURL_+ , _cmvbEntries = mempty } --- | A list of receipt handles of the messages for which the visibility timeout--- must be changed.-cmvbEntries :: Lens' ChangeMessageVisibilityBatch [ChangeMessageVisibilityBatchRequestEntry]-cmvbEntries = lens _cmvbEntries (\s a -> s { _cmvbEntries = a }) . _List- -- | The URL of the Amazon SQS queue to take action on.-cmvbQueueUrl :: Lens' ChangeMessageVisibilityBatch Text-cmvbQueueUrl = lens _cmvbQueueUrl (\s a -> s { _cmvbQueueUrl = a })--data ChangeMessageVisibilityBatchResponse = ChangeMessageVisibilityBatchResponse- { _cmvbrFailed :: List "member" BatchResultErrorEntry- , _cmvbrSuccessful :: List "member" ChangeMessageVisibilityBatchResultEntry- } deriving (Eq, Read, Show)+cmvbQueueURL :: Lens' ChangeMessageVisibilityBatch Text+cmvbQueueURL = lens _cmvbQueueURL (\ s a -> s{_cmvbQueueURL = a}); --- | 'ChangeMessageVisibilityBatchResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'cmvbrFailed' @::@ ['BatchResultErrorEntry']------ * 'cmvbrSuccessful' @::@ ['ChangeMessageVisibilityBatchResultEntry']----changeMessageVisibilityBatchResponse :: ChangeMessageVisibilityBatchResponse-changeMessageVisibilityBatchResponse = ChangeMessageVisibilityBatchResponse- { _cmvbrSuccessful = mempty- , _cmvbrFailed = mempty- }+-- | A list of receipt handles of the messages for which the visibility+-- timeout must be changed.+cmvbEntries :: Lens' ChangeMessageVisibilityBatch [ChangeMessageVisibilityBatchRequestEntry]+cmvbEntries = lens _cmvbEntries (\ s a -> s{_cmvbEntries = a}) . _Coerce; --- | A list of 'BatchResultErrorEntry' items.-cmvbrFailed :: Lens' ChangeMessageVisibilityBatchResponse [BatchResultErrorEntry]-cmvbrFailed = lens _cmvbrFailed (\s a -> s { _cmvbrFailed = a }) . _List+instance AWSRequest ChangeMessageVisibilityBatch+ where+ type Sv ChangeMessageVisibilityBatch = SQS+ type Rs ChangeMessageVisibilityBatch =+ ChangeMessageVisibilityBatchResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "ChangeMessageVisibilityBatchResult"+ (\ s h x ->+ ChangeMessageVisibilityBatchResponse' <$>+ (pure (fromEnum s)) <*>+ (parseXMLList+ "ChangeMessageVisibilityBatchResultEntry"+ x)+ <*> (parseXMLList "BatchResultErrorEntry" x)) --- | A list of 'ChangeMessageVisibilityBatchResultEntry' items.-cmvbrSuccessful :: Lens' ChangeMessageVisibilityBatchResponse [ChangeMessageVisibilityBatchResultEntry]-cmvbrSuccessful = lens _cmvbrSuccessful (\s a -> s { _cmvbrSuccessful = a }) . _List+instance ToHeaders ChangeMessageVisibilityBatch where+ toHeaders = const mempty instance ToPath ChangeMessageVisibilityBatch where- toPath = const "/"+ toPath = const "/" instance ToQuery ChangeMessageVisibilityBatch where- toQuery ChangeMessageVisibilityBatch{..} = mconcat- [ toQuery _cmvbEntries- , "QueueUrl" =? _cmvbQueueUrl- ]+ toQuery ChangeMessageVisibilityBatch'{..}+ = mconcat+ ["Action" =:+ ("ChangeMessageVisibilityBatch" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _cmvbQueueURL,+ toQueryList+ "ChangeMessageVisibilityBatchRequestEntry"+ _cmvbEntries] -instance ToHeaders ChangeMessageVisibilityBatch+-- | For each message in the batch, the response contains a+-- ChangeMessageVisibilityBatchResultEntry tag if the message succeeds or a+-- BatchResultErrorEntry tag if the message fails.+--+-- /See:/ 'changeMessageVisibilityBatchResponse' smart constructor.+data ChangeMessageVisibilityBatchResponse = ChangeMessageVisibilityBatchResponse'+ { _cmvbrsStatus :: !Int+ , _cmvbrsSuccessful :: ![ChangeMessageVisibilityBatchResultEntry]+ , _cmvbrsFailed :: ![BatchResultErrorEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ChangeMessageVisibilityBatch where- type Sv ChangeMessageVisibilityBatch = SQS- type Rs ChangeMessageVisibilityBatch = ChangeMessageVisibilityBatchResponse+-- | Creates a value of 'ChangeMessageVisibilityBatchResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmvbrsStatus'+--+-- * 'cmvbrsSuccessful'+--+-- * 'cmvbrsFailed'+changeMessageVisibilityBatchResponse+ :: Int -- ^ 'cmvbrsStatus'+ -> ChangeMessageVisibilityBatchResponse+changeMessageVisibilityBatchResponse pStatus_ =+ ChangeMessageVisibilityBatchResponse'+ { _cmvbrsStatus = pStatus_+ , _cmvbrsSuccessful = mempty+ , _cmvbrsFailed = mempty+ } - request = post "ChangeMessageVisibilityBatch"- response = xmlResponse+-- | The response status code.+cmvbrsStatus :: Lens' ChangeMessageVisibilityBatchResponse Int+cmvbrsStatus = lens _cmvbrsStatus (\ s a -> s{_cmvbrsStatus = a}); -instance FromXML ChangeMessageVisibilityBatchResponse where- parseXML = withElement "ChangeMessageVisibilityBatchResult" $ \x -> ChangeMessageVisibilityBatchResponse- <$> parseXML x- <*> parseXML x+-- | A list of ChangeMessageVisibilityBatchResultEntry items.+cmvbrsSuccessful :: Lens' ChangeMessageVisibilityBatchResponse [ChangeMessageVisibilityBatchResultEntry]+cmvbrsSuccessful = lens _cmvbrsSuccessful (\ s a -> s{_cmvbrsSuccessful = a}) . _Coerce;++-- | A list of BatchResultErrorEntry items.+cmvbrsFailed :: Lens' ChangeMessageVisibilityBatchResponse [BatchResultErrorEntry]+cmvbrsFailed = lens _cmvbrsFailed (\ s a -> s{_cmvbrsFailed = a}) . _Coerce;
gen/Network/AWS/SQS/CreateQueue.hs view
@@ -1,93 +1,97 @@-{-# 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.SQS.CreateQueue--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates a new queue, or returns the URL of an existing one. When you request 'CreateQueue', you provide a name for the queue. To successfully create a new queue, you--- must provide a name that is unique within the scope of your own queues.+-- Creates a new queue, or returns the URL of an existing one. When you+-- request 'CreateQueue', you provide a name for the queue. To successfully+-- create a new queue, you must provide a name that is unique within the+-- scope of your own queues. ----- If you delete a queue, you must wait at least 60 seconds before creating a--- queue with the same name.+-- If you delete a queue, you must wait at least 60 seconds before creating+-- a queue with the same name. ----- You may pass one or more attributes in the request. If you do not provide a--- value for any attribute, the queue will have the default value for that--- attribute. Permitted attributes are the same that can be set using 'SetQueueAttributes'.+-- You may pass one or more attributes in the request. If you do not+-- provide a value for any attribute, the queue will have the default value+-- for that attribute. Permitted attributes are the same that can be set+-- using SetQueueAttributes. ----- Use 'GetQueueUrl' to get a queue's URL. 'GetQueueUrl' requires only the 'QueueName'--- parameter.+-- Use GetQueueUrl to get a queue\'s URL. GetQueueUrl requires only the+-- 'QueueName' parameter. ----- If you provide the name of an existing queue, along with the exact names and--- values of all the queue's attributes, 'CreateQueue' returns the queue URL for--- the existing queue. If the queue name, attribute names, or attribute values--- do not match an existing queue, 'CreateQueue' returns an error.+-- If you provide the name of an existing queue, along with the exact names+-- and values of all the queue\'s attributes, 'CreateQueue' returns the+-- queue URL for the existing queue. If the queue name, attribute names, or+-- attribute values do not match an existing queue, 'CreateQueue' returns+-- an error. ----- Some API actions take lists of parameters. These lists are specified using--- the 'param.n' notation. Values of 'n' are integers starting from 1. For example,--- a parameter list with two elements looks like this: '&Attribute.1=this'+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this: --+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html AWS API Reference> for CreateQueue. module Network.AWS.SQS.CreateQueue (- -- * Request- CreateQueue- -- ** Request constructor- , createQueue- -- ** Request lenses+ -- * Creating a Request+ createQueue+ , CreateQueue+ -- * Request Lenses , cqAttributes , cqQueueName - -- * Response- , CreateQueueResponse- -- ** Response constructor+ -- * Destructuring the Response , createQueueResponse- -- ** Response lenses- , cqrQueueUrl+ , CreateQueueResponse+ -- * Response Lenses+ , cqrsQueueURL+ , cqrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data CreateQueue = CreateQueue- { _cqAttributes :: EMap "entry" "Name" "Value" Text Text- , _cqQueueName :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'createQueue' smart constructor.+data CreateQueue = CreateQueue'+ { _cqAttributes :: !(Maybe (Map QueueAttributeName Text))+ , _cqQueueName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateQueue' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateQueue' with the minimum fields required to make a request. ----- * 'cqAttributes' @::@ 'HashMap' 'Text' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'cqQueueName' @::@ 'Text'+-- * 'cqAttributes' ---createQueue :: Text -- ^ 'cqQueueName'- -> CreateQueue-createQueue p1 = CreateQueue- { _cqQueueName = p1- , _cqAttributes = mempty+-- * 'cqQueueName'+createQueue+ :: Text -- ^ 'cqQueueName'+ -> CreateQueue+createQueue pQueueName_ =+ CreateQueue'+ { _cqAttributes = Nothing+ , _cqQueueName = pQueueName_ } -- | A map of attributes with their corresponding values.@@ -95,63 +99,90 @@ -- The following lists the names, descriptions, and values of the special -- request parameters the 'CreateQueue' action uses: ----- 'DelaySeconds' - The time in seconds that the delivery of all messages in--- the queue will be delayed. An integer from 0 to 900 (15 minutes). The default--- for this attribute is 0 (zero). 'MaximumMessageSize' - The limit of how many--- bytes a message can contain before Amazon SQS rejects it. An integer from--- 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this--- attribute is 262144 (256 KiB). 'MessageRetentionPeriod' - The number of--- seconds Amazon SQS retains a message. Integer representing seconds, from 60--- (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4--- days). 'Policy' - The queue's policy. A valid AWS policy. For more information--- about policy structure, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html Overview of AWS IAM Policies> in the /Amazon IAMUser Guide/. 'ReceiveMessageWaitTimeSeconds' - The time for which a 'ReceiveMessage' call will wait for a message to arrive. An integer from 0 to 20 (seconds).--- The default for this attribute is 0. 'VisibilityTimeout' - The visibility--- timeout for the queue. An integer from 0 to 43200 (12 hours). The default for--- this attribute is 30. For more information about visibility timeout, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout> in the /Amazon SQS Developer Guide/.-cqAttributes :: Lens' CreateQueue (HashMap Text Text)-cqAttributes = lens _cqAttributes (\s a -> s { _cqAttributes = a }) . _EMap+-- - 'DelaySeconds' - The time in seconds that the delivery of all+-- messages in the queue will be delayed. An integer from 0 to 900 (15+-- minutes). The default for this attribute is 0 (zero).+-- - 'MaximumMessageSize' - The limit of how many bytes a message can+-- contain before Amazon SQS rejects it. An integer from 1024 bytes (1+-- KiB) up to 262144 bytes (256 KiB). The default for this attribute is+-- 262144 (256 KiB).+-- - 'MessageRetentionPeriod' - The number of seconds Amazon SQS retains+-- a message. Integer representing seconds, from 60 (1 minute) to+-- 1209600 (14 days). The default for this attribute is 345600 (4+-- days).+-- - 'Policy' - The queue\'s policy. A valid AWS policy. For more+-- information about policy structure, see+-- <http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html Overview of AWS IAM Policies>+-- in the /Amazon IAM User Guide/.+-- - 'ReceiveMessageWaitTimeSeconds' - The time for which a+-- ReceiveMessage call will wait for a message to arrive. An integer+-- from 0 to 20 (seconds). The default for this attribute is 0.+-- - 'VisibilityTimeout' - The visibility timeout for the queue. An+-- integer from 0 to 43200 (12 hours). The default for this attribute+-- is 30. For more information about visibility timeout, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout>+-- in the /Amazon SQS Developer Guide/.+cqAttributes :: Lens' CreateQueue (HashMap QueueAttributeName Text)+cqAttributes = lens _cqAttributes (\ s a -> s{_cqAttributes = a}) . _Default . _Map; -- | The name for the queue to be created. cqQueueName :: Lens' CreateQueue Text-cqQueueName = lens _cqQueueName (\s a -> s { _cqQueueName = a })--newtype CreateQueueResponse = CreateQueueResponse- { _cqrQueueUrl :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)+cqQueueName = lens _cqQueueName (\ s a -> s{_cqQueueName = a}); --- | 'CreateQueueResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'cqrQueueUrl' @::@ 'Maybe' 'Text'----createQueueResponse :: CreateQueueResponse-createQueueResponse = CreateQueueResponse- { _cqrQueueUrl = Nothing- }+instance AWSRequest CreateQueue where+ type Sv CreateQueue = SQS+ type Rs CreateQueue = CreateQueueResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateQueueResult"+ (\ s h x ->+ CreateQueueResponse' <$>+ (x .@? "QueueUrl") <*> (pure (fromEnum s))) --- | The URL for the created Amazon SQS queue.-cqrQueueUrl :: Lens' CreateQueueResponse (Maybe Text)-cqrQueueUrl = lens _cqrQueueUrl (\s a -> s { _cqrQueueUrl = a })+instance ToHeaders CreateQueue where+ toHeaders = const mempty instance ToPath CreateQueue where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateQueue where- toQuery CreateQueue{..} = mconcat- [ toQuery _cqAttributes- , "QueueName" =? _cqQueueName- ]+ toQuery CreateQueue'{..}+ = mconcat+ ["Action" =: ("CreateQueue" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ toQuery+ (toQueryMap "Attribute" "Name" "Value" <$>+ _cqAttributes),+ "QueueName" =: _cqQueueName] -instance ToHeaders CreateQueue+-- | Returns the QueueUrl element of the created queue.+--+-- /See:/ 'createQueueResponse' smart constructor.+data CreateQueueResponse = CreateQueueResponse'+ { _cqrsQueueURL :: !(Maybe Text)+ , _cqrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateQueue where- type Sv CreateQueue = SQS- type Rs CreateQueue = CreateQueueResponse+-- | Creates a value of 'CreateQueueResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cqrsQueueURL'+--+-- * 'cqrsStatus'+createQueueResponse+ :: Int -- ^ 'cqrsStatus'+ -> CreateQueueResponse+createQueueResponse pStatus_ =+ CreateQueueResponse'+ { _cqrsQueueURL = Nothing+ , _cqrsStatus = pStatus_+ } - request = post "CreateQueue"- response = xmlResponse+-- | The URL for the created Amazon SQS queue.+cqrsQueueURL :: Lens' CreateQueueResponse (Maybe Text)+cqrsQueueURL = lens _cqrsQueueURL (\ s a -> s{_cqrsQueueURL = a}); -instance FromXML CreateQueueResponse where- parseXML = withElement "CreateQueueResult" $ \x -> CreateQueueResponse- <$> x .@? "QueueUrl"+-- | The response status code.+cqrsStatus :: Lens' CreateQueueResponse Int+cqrsStatus = lens _cqrsStatus (\ s a -> s{_cqrsStatus = a});
gen/Network/AWS/SQS/DeleteMessage.hs view
@@ -1,122 +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.SQS.DeleteMessage--- 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 message from the specified queue. You specify the--- message by using the message's 'receipt handle' and not the 'message ID' you--- received when you sent the message. Even if the message is locked by another--- reader due to the visibility timeout setting, it is still deleted from the--- queue. If you leave a message in the queue for longer than the queue's--- configured retention period, Amazon SQS automatically deletes it.------ The receipt handle is associated with a specific instance of receiving the--- message. If you receive a message more than once, the receipt handle you get--- each time you receive the message is different. When you request 'DeleteMessage'--- , if you don't provide the most recently received receipt handle for the--- message, the request will still succeed, but the message might not be--- deleted.------ It is possible you will receive a message even after you have deleted it.--- This might happen on rare occasions if one of the servers storing a copy of--- the message is unavailable when you request to delete the message. The copy--- remains on the server and might be returned to you again on a subsequent--- receive request. You should create your system to be idempotent so that--- receiving a particular message more than once is not a problem.+-- Deletes the specified message from the specified queue. You specify the+-- message by using the message\'s 'receipt handle' and not the+-- 'message ID' you received when you sent the message. Even if the message+-- is locked by another reader due to the visibility timeout setting, it is+-- still deleted from the queue. If you leave a message in the queue for+-- longer than the queue\'s configured retention period, Amazon SQS+-- automatically deletes it. --+-- The receipt handle is associated with a specific instance of receiving+-- the message. If you receive a message more than once, the receipt handle+-- you get each time you receive the message is different. When you request+-- 'DeleteMessage', if you don\'t provide the most recently received+-- receipt handle for the message, the request will still succeed, but the+-- message might not be deleted. --+-- It is possible you will receive a message even after you have deleted+-- it. This might happen on rare occasions if one of the servers storing a+-- copy of the message is unavailable when you request to delete the+-- message. The copy remains on the server and might be returned to you+-- again on a subsequent receive request. You should create your system to+-- be idempotent so that receiving a particular message more than once is+-- not a problem. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html AWS API Reference> for DeleteMessage. module Network.AWS.SQS.DeleteMessage (- -- * Request- DeleteMessage- -- ** Request constructor- , deleteMessage- -- ** Request lenses- , dmQueueUrl+ -- * Creating a Request+ deleteMessage+ , DeleteMessage+ -- * Request Lenses+ , dmQueueURL , dmReceiptHandle - -- * Response- , DeleteMessageResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteMessageResponse+ , DeleteMessageResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data DeleteMessage = DeleteMessage- { _dmQueueUrl :: Text- , _dmReceiptHandle :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteMessage' smart constructor.+data DeleteMessage = DeleteMessage'+ { _dmQueueURL :: !Text+ , _dmReceiptHandle :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteMessage' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteMessage' with the minimum fields required to make a request. ----- * 'dmQueueUrl' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dmReceiptHandle' @::@ 'Text'+-- * 'dmQueueURL' ---deleteMessage :: Text -- ^ 'dmQueueUrl'- -> Text -- ^ 'dmReceiptHandle'- -> DeleteMessage-deleteMessage p1 p2 = DeleteMessage- { _dmQueueUrl = p1- , _dmReceiptHandle = p2+-- * 'dmReceiptHandle'+deleteMessage+ :: Text -- ^ 'dmQueueURL'+ -> Text -- ^ 'dmReceiptHandle'+ -> DeleteMessage+deleteMessage pQueueURL_ pReceiptHandle_ =+ DeleteMessage'+ { _dmQueueURL = pQueueURL_+ , _dmReceiptHandle = pReceiptHandle_ } -- | The URL of the Amazon SQS queue to take action on.-dmQueueUrl :: Lens' DeleteMessage Text-dmQueueUrl = lens _dmQueueUrl (\s a -> s { _dmQueueUrl = a })+dmQueueURL :: Lens' DeleteMessage Text+dmQueueURL = lens _dmQueueURL (\ s a -> s{_dmQueueURL = a}); -- | The receipt handle associated with the message to delete. dmReceiptHandle :: Lens' DeleteMessage Text-dmReceiptHandle = lens _dmReceiptHandle (\s a -> s { _dmReceiptHandle = a })+dmReceiptHandle = lens _dmReceiptHandle (\ s a -> s{_dmReceiptHandle = a}); -data DeleteMessageResponse = DeleteMessageResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteMessage where+ type Sv DeleteMessage = SQS+ type Rs DeleteMessage = DeleteMessageResponse+ request = postQuery+ response = receiveNull DeleteMessageResponse' --- | 'DeleteMessageResponse' constructor.-deleteMessageResponse :: DeleteMessageResponse-deleteMessageResponse = DeleteMessageResponse+instance ToHeaders DeleteMessage where+ toHeaders = const mempty instance ToPath DeleteMessage where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteMessage where- toQuery DeleteMessage{..} = mconcat- [ "QueueUrl" =? _dmQueueUrl- , "ReceiptHandle" =? _dmReceiptHandle- ]--instance ToHeaders DeleteMessage+ toQuery DeleteMessage'{..}+ = mconcat+ ["Action" =: ("DeleteMessage" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _dmQueueURL,+ "ReceiptHandle" =: _dmReceiptHandle] -instance AWSRequest DeleteMessage where- type Sv DeleteMessage = SQS- type Rs DeleteMessage = DeleteMessageResponse+-- | /See:/ 'deleteMessageResponse' smart constructor.+data DeleteMessageResponse =+ DeleteMessageResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteMessage"- response = nullResponse DeleteMessageResponse+-- | Creates a value of 'DeleteMessageResponse' with the minimum fields required to make a request.+--+deleteMessageResponse+ :: DeleteMessageResponse+deleteMessageResponse = DeleteMessageResponse'
gen/Network/AWS/SQS/DeleteMessageBatch.hs view
@@ -1,140 +1,160 @@-{-# 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.SQS.DeleteMessageBatch--- 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 up to ten messages from the specified queue. This is a batch version--- of 'DeleteMessage'. The result of the delete action on each message is reported--- individually in the response.+-- Deletes up to ten messages from the specified queue. This is a batch+-- version of DeleteMessage. The result of the delete action on each+-- message is reported individually in the response. -- -- Because the batch request can result in a combination of successful and--- unsuccessful actions, you should check for batch errors even when the call--- returns an HTTP status code of 200.+-- unsuccessful actions, you should check for batch errors even when the+-- call returns an HTTP status code of 200. ----- Some API actions take lists of parameters. These lists are specified using--- the 'param.n' notation. Values of 'n' are integers starting from 1. For example,--- a parameter list with two elements looks like this: '&Attribute.1=this'+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this: --+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html AWS API Reference> for DeleteMessageBatch. module Network.AWS.SQS.DeleteMessageBatch (- -- * Request- DeleteMessageBatch- -- ** Request constructor- , deleteMessageBatch- -- ** Request lenses+ -- * Creating a Request+ deleteMessageBatch+ , DeleteMessageBatch+ -- * Request Lenses+ , dmbQueueURL , dmbEntries- , dmbQueueUrl - -- * Response- , DeleteMessageBatchResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteMessageBatchResponse- -- ** Response lenses- , dmbrFailed- , dmbrSuccessful+ , DeleteMessageBatchResponse+ -- * Response Lenses+ , dmbrsStatus+ , dmbrsSuccessful+ , dmbrsFailed ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data DeleteMessageBatch = DeleteMessageBatch- { _dmbEntries :: List "member" DeleteMessageBatchRequestEntry- , _dmbQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'deleteMessageBatch' smart constructor.+data DeleteMessageBatch = DeleteMessageBatch'+ { _dmbQueueURL :: !Text+ , _dmbEntries :: ![DeleteMessageBatchRequestEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteMessageBatch' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteMessageBatch' with the minimum fields required to make a request. ----- * 'dmbEntries' @::@ ['DeleteMessageBatchRequestEntry']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dmbQueueUrl' @::@ 'Text'+-- * 'dmbQueueURL' ---deleteMessageBatch :: Text -- ^ 'dmbQueueUrl'- -> DeleteMessageBatch-deleteMessageBatch p1 = DeleteMessageBatch- { _dmbQueueUrl = p1- , _dmbEntries = mempty+-- * 'dmbEntries'+deleteMessageBatch+ :: Text -- ^ 'dmbQueueURL'+ -> DeleteMessageBatch+deleteMessageBatch pQueueURL_ =+ DeleteMessageBatch'+ { _dmbQueueURL = pQueueURL_+ , _dmbEntries = mempty } +-- | The URL of the Amazon SQS queue to take action on.+dmbQueueURL :: Lens' DeleteMessageBatch Text+dmbQueueURL = lens _dmbQueueURL (\ s a -> s{_dmbQueueURL = a});+ -- | A list of receipt handles for the messages to be deleted. dmbEntries :: Lens' DeleteMessageBatch [DeleteMessageBatchRequestEntry]-dmbEntries = lens _dmbEntries (\s a -> s { _dmbEntries = a }) . _List+dmbEntries = lens _dmbEntries (\ s a -> s{_dmbEntries = a}) . _Coerce; --- | The URL of the Amazon SQS queue to take action on.-dmbQueueUrl :: Lens' DeleteMessageBatch Text-dmbQueueUrl = lens _dmbQueueUrl (\s a -> s { _dmbQueueUrl = a })+instance AWSRequest DeleteMessageBatch where+ type Sv DeleteMessageBatch = SQS+ type Rs DeleteMessageBatch =+ DeleteMessageBatchResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteMessageBatchResult"+ (\ s h x ->+ DeleteMessageBatchResponse' <$>+ (pure (fromEnum s)) <*>+ (parseXMLList "DeleteMessageBatchResultEntry" x)+ <*> (parseXMLList "BatchResultErrorEntry" x)) -data DeleteMessageBatchResponse = DeleteMessageBatchResponse- { _dmbrFailed :: List "member" BatchResultErrorEntry- , _dmbrSuccessful :: List "member" DeleteMessageBatchResultEntry- } deriving (Eq, Read, Show)+instance ToHeaders DeleteMessageBatch where+ toHeaders = const mempty --- | 'DeleteMessageBatchResponse' constructor.+instance ToPath DeleteMessageBatch where+ toPath = const "/"++instance ToQuery DeleteMessageBatch where+ toQuery DeleteMessageBatch'{..}+ = mconcat+ ["Action" =: ("DeleteMessageBatch" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _dmbQueueURL,+ toQueryList "DeleteMessageBatchRequestEntry"+ _dmbEntries]++-- | For each message in the batch, the response contains a+-- DeleteMessageBatchResultEntry tag if the message is deleted or a+-- BatchResultErrorEntry tag if the message cannot be deleted. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteMessageBatchResponse' smart constructor.+data DeleteMessageBatchResponse = DeleteMessageBatchResponse'+ { _dmbrsStatus :: !Int+ , _dmbrsSuccessful :: ![DeleteMessageBatchResultEntry]+ , _dmbrsFailed :: ![BatchResultErrorEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteMessageBatchResponse' with the minimum fields required to make a request. ----- * 'dmbrFailed' @::@ ['BatchResultErrorEntry']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dmbrSuccessful' @::@ ['DeleteMessageBatchResultEntry']+-- * 'dmbrsStatus' ---deleteMessageBatchResponse :: DeleteMessageBatchResponse-deleteMessageBatchResponse = DeleteMessageBatchResponse- { _dmbrSuccessful = mempty- , _dmbrFailed = mempty+-- * 'dmbrsSuccessful'+--+-- * 'dmbrsFailed'+deleteMessageBatchResponse+ :: Int -- ^ 'dmbrsStatus'+ -> DeleteMessageBatchResponse+deleteMessageBatchResponse pStatus_ =+ DeleteMessageBatchResponse'+ { _dmbrsStatus = pStatus_+ , _dmbrsSuccessful = mempty+ , _dmbrsFailed = mempty } --- | A list of 'BatchResultErrorEntry' items.-dmbrFailed :: Lens' DeleteMessageBatchResponse [BatchResultErrorEntry]-dmbrFailed = lens _dmbrFailed (\s a -> s { _dmbrFailed = a }) . _List---- | A list of 'DeleteMessageBatchResultEntry' items.-dmbrSuccessful :: Lens' DeleteMessageBatchResponse [DeleteMessageBatchResultEntry]-dmbrSuccessful = lens _dmbrSuccessful (\s a -> s { _dmbrSuccessful = a }) . _List--instance ToPath DeleteMessageBatch where- toPath = const "/"--instance ToQuery DeleteMessageBatch where- toQuery DeleteMessageBatch{..} = mconcat- [ toQuery _dmbEntries- , "QueueUrl" =? _dmbQueueUrl- ]--instance ToHeaders DeleteMessageBatch--instance AWSRequest DeleteMessageBatch where- type Sv DeleteMessageBatch = SQS- type Rs DeleteMessageBatch = DeleteMessageBatchResponse+-- | The response status code.+dmbrsStatus :: Lens' DeleteMessageBatchResponse Int+dmbrsStatus = lens _dmbrsStatus (\ s a -> s{_dmbrsStatus = a}); - request = post "DeleteMessageBatch"- response = xmlResponse+-- | A list of DeleteMessageBatchResultEntry items.+dmbrsSuccessful :: Lens' DeleteMessageBatchResponse [DeleteMessageBatchResultEntry]+dmbrsSuccessful = lens _dmbrsSuccessful (\ s a -> s{_dmbrsSuccessful = a}) . _Coerce; -instance FromXML DeleteMessageBatchResponse where- parseXML = withElement "DeleteMessageBatchResult" $ \x -> DeleteMessageBatchResponse- <$> parseXML x- <*> parseXML x+-- | A list of BatchResultErrorEntry items.+dmbrsFailed :: Lens' DeleteMessageBatchResponse [BatchResultErrorEntry]+dmbrsFailed = lens _dmbrsFailed (\ s a -> s{_dmbrsFailed = a}) . _Coerce;
gen/Network/AWS/SQS/DeleteQueue.hs view
@@ -1,105 +1,110 @@-{-# 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.SQS.DeleteQueue--- 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 queue specified by the queue URL, regardless of whether the--- queue is empty. If the specified queue does not exist, Amazon SQS returns a--- successful response.+-- Deletes the queue specified by the __queue URL__, regardless of whether+-- the queue is empty. If the specified queue does not exist, Amazon SQS+-- returns a successful response. ----- Use 'DeleteQueue' with care; once you delete your queue, any messages in the--- queue are no longer available.+-- Use 'DeleteQueue' with care; once you delete your queue, any messages in+-- the queue are no longer available. -- -- When you delete a queue, the deletion process takes up to 60 seconds.--- Requests you send involving that queue during the 60 seconds might succeed.--- For example, a 'SendMessage' request might succeed, but after the 60 seconds,--- the queue and that message you sent no longer exist. Also, when you delete a--- queue, you must wait at least 60 seconds before creating a queue with the--- same name.+-- Requests you send involving that queue during the 60 seconds might+-- succeed. For example, a SendMessage request might succeed, but after the+-- 60 seconds, the queue and that message you sent no longer exist. Also,+-- when you delete a queue, you must wait at least 60 seconds before+-- creating a queue with the same name. -- -- We reserve the right to delete queues that have had no activity for more--- than 30 days. For more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSConcepts.html How Amazon SQS Queues Work> in the /Amazon SQS Developer Guide/.+-- than 30 days. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSConcepts.html How Amazon SQS Queues Work>+-- in the /Amazon SQS Developer Guide/. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html AWS API Reference> for DeleteQueue. module Network.AWS.SQS.DeleteQueue (- -- * Request- DeleteQueue- -- ** Request constructor- , deleteQueue- -- ** Request lenses- , dqQueueUrl+ -- * Creating a Request+ deleteQueue+ , DeleteQueue+ -- * Request Lenses+ , dqQueueURL - -- * Response- , DeleteQueueResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteQueueResponse+ , DeleteQueueResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -newtype DeleteQueue = DeleteQueue- { _dqQueueUrl :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+-- | /See:/ 'deleteQueue' smart constructor.+newtype DeleteQueue = DeleteQueue'+ { _dqQueueURL :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteQueue' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteQueue' with the minimum fields required to make a request. ----- * 'dqQueueUrl' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteQueue :: Text -- ^ 'dqQueueUrl'- -> DeleteQueue-deleteQueue p1 = DeleteQueue- { _dqQueueUrl = p1+-- * 'dqQueueURL'+deleteQueue+ :: Text -- ^ 'dqQueueURL'+ -> DeleteQueue+deleteQueue pQueueURL_ =+ DeleteQueue'+ { _dqQueueURL = pQueueURL_ } -- | The URL of the Amazon SQS queue to take action on.-dqQueueUrl :: Lens' DeleteQueue Text-dqQueueUrl = lens _dqQueueUrl (\s a -> s { _dqQueueUrl = a })+dqQueueURL :: Lens' DeleteQueue Text+dqQueueURL = lens _dqQueueURL (\ s a -> s{_dqQueueURL = a}); -data DeleteQueueResponse = DeleteQueueResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteQueue where+ type Sv DeleteQueue = SQS+ type Rs DeleteQueue = DeleteQueueResponse+ request = postQuery+ response = receiveNull DeleteQueueResponse' --- | 'DeleteQueueResponse' constructor.-deleteQueueResponse :: DeleteQueueResponse-deleteQueueResponse = DeleteQueueResponse+instance ToHeaders DeleteQueue where+ toHeaders = const mempty instance ToPath DeleteQueue where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteQueue where- toQuery DeleteQueue{..} = mconcat- [ "QueueUrl" =? _dqQueueUrl- ]--instance ToHeaders DeleteQueue+ toQuery DeleteQueue'{..}+ = mconcat+ ["Action" =: ("DeleteQueue" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _dqQueueURL] -instance AWSRequest DeleteQueue where- type Sv DeleteQueue = SQS- type Rs DeleteQueue = DeleteQueueResponse+-- | /See:/ 'deleteQueueResponse' smart constructor.+data DeleteQueueResponse =+ DeleteQueueResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteQueue"- response = nullResponse DeleteQueueResponse+-- | Creates a value of 'DeleteQueueResponse' with the minimum fields required to make a request.+--+deleteQueueResponse+ :: DeleteQueueResponse+deleteQueueResponse = DeleteQueueResponse'
gen/Network/AWS/SQS/GetQueueAttributes.hs view
@@ -1,143 +1,182 @@-{-# 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.SQS.GetQueueAttributes--- 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 attributes for the specified queue. The following attributes are--- supported: 'All' - returns all values. 'ApproximateNumberOfMessages' - returns--- the approximate number of visible messages in a queue. For more information,--- see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html Resources Required to Process Messages> in the /Amazon SQS Developer Guide/.--- 'ApproximateNumberOfMessagesNotVisible' - returns the approximate number of--- messages that are not timed-out and not deleted. For more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html Resources Required to Process Messages> in the /Amazon SQS Developer Guide/. 'VisibilityTimeout' - returns the--- visibility timeout for the queue. For more information about visibility--- timeout, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout> in the /Amazon SQS Developer Guide/. 'CreatedTimestamp' - returns the time when the queue was created (epoch time in seconds). 'LastModifiedTimestamp' - returns the time when the queue was last changed (epoch time in seconds). 'Policy' - returns the queue's policy. 'MaximumMessageSize' - returns the limit--- of how many bytes a message can contain before Amazon SQS rejects it. 'MessageRetentionPeriod' - returns the number of seconds Amazon SQS retains a message. 'QueueArn' ---- returns the queue's Amazon resource name (ARN). 'ApproximateNumberOfMessagesDelayed' - returns the approximate number of messages that are pending to be added to--- the queue. 'DelaySeconds' - returns the default delay on the queue in seconds.--- 'ReceiveMessageWaitTimeSeconds' - returns the time for which a ReceiveMessage--- call will wait for a message to arrive. 'RedrivePolicy' - returns the--- parameters for dead letter queue functionality of the source queue. For more--- information about RedrivePolicy and dead letter queues, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQSDead Letter Queues> in the /Amazon SQS Developer Guide/.+-- Gets attributes for the specified queue. The following attributes are+-- supported: ----- Going forward, new attributes might be added. If you are writing code that--- calls this action, we recommend that you structure your code so that it can--- handle new attributes gracefully. Some API actions take lists of parameters.--- These lists are specified using the 'param.n' notation. Values of 'n' are--- integers starting from 1. For example, a parameter list with two elements--- looks like this: '&Attribute.1=this'+-- - 'All' - returns all values.+-- - 'ApproximateNumberOfMessages' - returns the approximate number of+-- visible messages in a queue. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html Resources Required to Process Messages>+-- in the /Amazon SQS Developer Guide/.+-- - 'ApproximateNumberOfMessagesNotVisible' - returns the approximate+-- number of messages that are not timed-out and not deleted. For more+-- information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html Resources Required to Process Messages>+-- in the /Amazon SQS Developer Guide/.+-- - 'VisibilityTimeout' - returns the visibility timeout for the queue.+-- For more information about visibility timeout, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout>+-- in the /Amazon SQS Developer Guide/.+-- - 'CreatedTimestamp' - returns the time when the queue was created+-- (epoch time in seconds).+-- - 'LastModifiedTimestamp' - returns the time when the queue was last+-- changed (epoch time in seconds).+-- - 'Policy' - returns the queue\'s policy.+-- - 'MaximumMessageSize' - returns the limit of how many bytes a message+-- can contain before Amazon SQS rejects it.+-- - 'MessageRetentionPeriod' - returns the number of seconds Amazon SQS+-- retains a message.+-- - 'QueueArn' - returns the queue\'s Amazon resource name (ARN).+-- - 'ApproximateNumberOfMessagesDelayed' - returns the approximate+-- number of messages that are pending to be added to the queue.+-- - 'DelaySeconds' - returns the default delay on the queue in seconds.+-- - 'ReceiveMessageWaitTimeSeconds' - returns the time for which a+-- ReceiveMessage call will wait for a message to arrive.+-- - 'RedrivePolicy' - returns the parameters for dead letter queue+-- functionality of the source queue. For more information about+-- RedrivePolicy and dead letter queues, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQS Dead Letter Queues>+-- in the /Amazon SQS Developer Guide/. --+-- Going forward, new attributes might be added. If you are writing code+-- that calls this action, we recommend that you structure your code so+-- that it can handle new attributes gracefully.+--+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this:+--+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html AWS API Reference> for GetQueueAttributes. module Network.AWS.SQS.GetQueueAttributes (- -- * Request- GetQueueAttributes- -- ** Request constructor- , getQueueAttributes- -- ** Request lenses+ -- * Creating a Request+ getQueueAttributes+ , GetQueueAttributes+ -- * Request Lenses , gqaAttributeNames- , gqaQueueUrl+ , gqaQueueURL - -- * Response- , GetQueueAttributesResponse- -- ** Response constructor+ -- * Destructuring the Response , getQueueAttributesResponse- -- ** Response lenses- , gqarAttributes+ , GetQueueAttributesResponse+ -- * Response Lenses+ , gqarsAttributes+ , gqarsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data GetQueueAttributes = GetQueueAttributes- { _gqaAttributeNames :: List "member" Text- , _gqaQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'getQueueAttributes' smart constructor.+data GetQueueAttributes = GetQueueAttributes'+ { _gqaAttributeNames :: !(Maybe [QueueAttributeName])+ , _gqaQueueURL :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'GetQueueAttributes' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'GetQueueAttributes' with the minimum fields required to make a request. ----- * 'gqaAttributeNames' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'gqaQueueUrl' @::@ 'Text'+-- * 'gqaAttributeNames' ---getQueueAttributes :: Text -- ^ 'gqaQueueUrl'- -> GetQueueAttributes-getQueueAttributes p1 = GetQueueAttributes- { _gqaQueueUrl = p1- , _gqaAttributeNames = mempty+-- * 'gqaQueueURL'+getQueueAttributes+ :: Text -- ^ 'gqaQueueURL'+ -> GetQueueAttributes+getQueueAttributes pQueueURL_ =+ GetQueueAttributes'+ { _gqaAttributeNames = Nothing+ , _gqaQueueURL = pQueueURL_ } -- | A list of attributes to retrieve information for.-gqaAttributeNames :: Lens' GetQueueAttributes [Text]-gqaAttributeNames =- lens _gqaAttributeNames (\s a -> s { _gqaAttributeNames = a })- . _List+gqaAttributeNames :: Lens' GetQueueAttributes [QueueAttributeName]+gqaAttributeNames = lens _gqaAttributeNames (\ s a -> s{_gqaAttributeNames = a}) . _Default . _Coerce; -- | The URL of the Amazon SQS queue to take action on.-gqaQueueUrl :: Lens' GetQueueAttributes Text-gqaQueueUrl = lens _gqaQueueUrl (\s a -> s { _gqaQueueUrl = a })--newtype GetQueueAttributesResponse = GetQueueAttributesResponse- { _gqarAttributes :: EMap "entry" "Name" "Value" Text Text- } deriving (Eq, Read, Show, Monoid, Semigroup)+gqaQueueURL :: Lens' GetQueueAttributes Text+gqaQueueURL = lens _gqaQueueURL (\ s a -> s{_gqaQueueURL = a}); --- | 'GetQueueAttributesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'gqarAttributes' @::@ 'HashMap' 'Text' 'Text'----getQueueAttributesResponse :: GetQueueAttributesResponse-getQueueAttributesResponse = GetQueueAttributesResponse- { _gqarAttributes = mempty- }+instance AWSRequest GetQueueAttributes where+ type Sv GetQueueAttributes = SQS+ type Rs GetQueueAttributes =+ GetQueueAttributesResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetQueueAttributesResult"+ (\ s h x ->+ GetQueueAttributesResponse' <$>+ (may (parseXMLMap "Attribute" "Name" "Value") x) <*>+ (pure (fromEnum s))) --- | A map of attributes to the respective values.-gqarAttributes :: Lens' GetQueueAttributesResponse (HashMap Text Text)-gqarAttributes = lens _gqarAttributes (\s a -> s { _gqarAttributes = a }) . _EMap+instance ToHeaders GetQueueAttributes where+ toHeaders = const mempty instance ToPath GetQueueAttributes where- toPath = const "/"+ toPath = const "/" instance ToQuery GetQueueAttributes where- toQuery GetQueueAttributes{..} = mconcat- [ toQuery _gqaAttributeNames- , "QueueUrl" =? _gqaQueueUrl- ]+ toQuery GetQueueAttributes'{..}+ = mconcat+ ["Action" =: ("GetQueueAttributes" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ toQuery+ (toQueryList "AttributeName" <$> _gqaAttributeNames),+ "QueueUrl" =: _gqaQueueURL] -instance ToHeaders GetQueueAttributes+-- | A list of returned queue attributes.+--+-- /See:/ 'getQueueAttributesResponse' smart constructor.+data GetQueueAttributesResponse = GetQueueAttributesResponse'+ { _gqarsAttributes :: !(Maybe (Map QueueAttributeName Text))+ , _gqarsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest GetQueueAttributes where- type Sv GetQueueAttributes = SQS- type Rs GetQueueAttributes = GetQueueAttributesResponse+-- | Creates a value of 'GetQueueAttributesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gqarsAttributes'+--+-- * 'gqarsStatus'+getQueueAttributesResponse+ :: Int -- ^ 'gqarsStatus'+ -> GetQueueAttributesResponse+getQueueAttributesResponse pStatus_ =+ GetQueueAttributesResponse'+ { _gqarsAttributes = Nothing+ , _gqarsStatus = pStatus_+ } - request = post "GetQueueAttributes"- response = xmlResponse+-- | A map of attributes to the respective values.+gqarsAttributes :: Lens' GetQueueAttributesResponse (HashMap QueueAttributeName Text)+gqarsAttributes = lens _gqarsAttributes (\ s a -> s{_gqarsAttributes = a}) . _Default . _Map; -instance FromXML GetQueueAttributesResponse where- parseXML = withElement "GetQueueAttributesResult" $ \x -> GetQueueAttributesResponse- <$> parseXML x+-- | The response status code.+gqarsStatus :: Lens' GetQueueAttributesResponse Int+gqarsStatus = lens _gqarsStatus (\ s a -> s{_gqarsStatus = a});
+ gen/Network/AWS/SQS/GetQueueURL.hs view
@@ -0,0 +1,145 @@+{-# 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.SQS.GetQueueURL+-- 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)+--+-- Returns the URL of an existing queue. This action provides a simple way+-- to retrieve the URL of an Amazon SQS queue.+--+-- To access a queue that belongs to another AWS account, use the+-- 'QueueOwnerAWSAccountId' parameter to specify the account ID of the+-- queue\'s owner. The queue\'s owner must grant you permission to access+-- the queue. For more information about shared queue access, see+-- AddPermission or go to+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html Shared Queues>+-- in the /Amazon SQS Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueURL.html AWS API Reference> for GetQueueURL.+module Network.AWS.SQS.GetQueueURL+ (+ -- * Creating a Request+ getQueueURL+ , GetQueueURL+ -- * Request Lenses+ , gquQueueOwnerAWSAccountId+ , gquQueueName++ -- * Destructuring the Response+ , getQueueURLResponse+ , GetQueueURLResponse+ -- * Response Lenses+ , gqursStatus+ , gqursQueueURL+ ) where++import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product++-- | /See:/ 'getQueueURL' smart constructor.+data GetQueueURL = GetQueueURL'+ { _gquQueueOwnerAWSAccountId :: !(Maybe Text)+ , _gquQueueName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetQueueURL' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gquQueueOwnerAWSAccountId'+--+-- * 'gquQueueName'+getQueueURL+ :: Text -- ^ 'gquQueueName'+ -> GetQueueURL+getQueueURL pQueueName_ =+ GetQueueURL'+ { _gquQueueOwnerAWSAccountId = Nothing+ , _gquQueueName = pQueueName_+ }++-- | The AWS account ID of the account that created the queue.+gquQueueOwnerAWSAccountId :: Lens' GetQueueURL (Maybe Text)+gquQueueOwnerAWSAccountId = lens _gquQueueOwnerAWSAccountId (\ s a -> s{_gquQueueOwnerAWSAccountId = a});++-- | The name of the queue whose URL must be fetched. Maximum 80 characters;+-- alphanumeric characters, hyphens (-), and underscores (_) are allowed.+gquQueueName :: Lens' GetQueueURL Text+gquQueueName = lens _gquQueueName (\ s a -> s{_gquQueueName = a});++instance AWSRequest GetQueueURL where+ type Sv GetQueueURL = SQS+ type Rs GetQueueURL = GetQueueURLResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetQueueUrlResult"+ (\ s h x ->+ GetQueueURLResponse' <$>+ (pure (fromEnum s)) <*> (x .@ "QueueUrl"))++instance ToHeaders GetQueueURL where+ toHeaders = const mempty++instance ToPath GetQueueURL where+ toPath = const "/"++instance ToQuery GetQueueURL where+ toQuery GetQueueURL'{..}+ = mconcat+ ["Action" =: ("GetQueueUrl" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueOwnerAWSAccountId" =:+ _gquQueueOwnerAWSAccountId,+ "QueueName" =: _gquQueueName]++-- | For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html Responses>+-- in the /Amazon SQS Developer Guide/.+--+-- /See:/ 'getQueueURLResponse' smart constructor.+data GetQueueURLResponse = GetQueueURLResponse'+ { _gqursStatus :: !Int+ , _gqursQueueURL :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetQueueURLResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gqursStatus'+--+-- * 'gqursQueueURL'+getQueueURLResponse+ :: Int -- ^ 'gqursStatus'+ -> Text -- ^ 'gqursQueueURL'+ -> GetQueueURLResponse+getQueueURLResponse pStatus_ pQueueURL_ =+ GetQueueURLResponse'+ { _gqursStatus = pStatus_+ , _gqursQueueURL = pQueueURL_+ }++-- | The response status code.+gqursStatus :: Lens' GetQueueURLResponse Int+gqursStatus = lens _gqursStatus (\ s a -> s{_gqursStatus = a});++-- | The URL for the queue.+gqursQueueURL :: Lens' GetQueueURLResponse Text+gqursQueueURL = lens _gqursQueueURL (\ s a -> s{_gqursQueueURL = a});
− gen/Network/AWS/SQS/GetQueueUrl.hs
@@ -1,127 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Module : Network.AWS.SQS.GetQueueUrl--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental--- Portability : non-portable (GHC extensions)------ Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the URL of an existing queue. This action provides a simple way to--- retrieve the URL of an Amazon SQS queue.------ To access a queue that belongs to another AWS account, use the 'QueueOwnerAWSAccountId' parameter to specify the account ID of the queue's owner. The queue's owner--- must grant you permission to access the queue. For more information about--- shared queue access, see 'AddPermission' or go to <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html Shared Queues> in the /AmazonSQS Developer Guide/.------ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueUrl.html>-module Network.AWS.SQS.GetQueueUrl- (- -- * Request- GetQueueUrl- -- ** Request constructor- , getQueueUrl- -- ** Request lenses- , gquQueueName- , gquQueueOwnerAWSAccountId-- -- * Response- , GetQueueUrlResponse- -- ** Response constructor- , getQueueUrlResponse- -- ** Response lenses- , gqurQueueUrl- ) where--import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts--data GetQueueUrl = GetQueueUrl- { _gquQueueName :: Text- , _gquQueueOwnerAWSAccountId :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'GetQueueUrl' constructor.------ The fields accessible through corresponding lenses are:------ * 'gquQueueName' @::@ 'Text'------ * 'gquQueueOwnerAWSAccountId' @::@ 'Maybe' 'Text'----getQueueUrl :: Text -- ^ 'gquQueueName'- -> GetQueueUrl-getQueueUrl p1 = GetQueueUrl- { _gquQueueName = p1- , _gquQueueOwnerAWSAccountId = Nothing- }---- | The name of the queue whose URL must be fetched. Maximum 80 characters;--- alphanumeric characters, hyphens (-), and underscores (_) are allowed.-gquQueueName :: Lens' GetQueueUrl Text-gquQueueName = lens _gquQueueName (\s a -> s { _gquQueueName = a })---- | The AWS account ID of the account that created the queue.-gquQueueOwnerAWSAccountId :: Lens' GetQueueUrl (Maybe Text)-gquQueueOwnerAWSAccountId =- lens _gquQueueOwnerAWSAccountId- (\s a -> s { _gquQueueOwnerAWSAccountId = a })--newtype GetQueueUrlResponse = GetQueueUrlResponse- { _gqurQueueUrl :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)---- | 'GetQueueUrlResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'gqurQueueUrl' @::@ 'Text'----getQueueUrlResponse :: Text -- ^ 'gqurQueueUrl'- -> GetQueueUrlResponse-getQueueUrlResponse p1 = GetQueueUrlResponse- { _gqurQueueUrl = p1- }---- | The URL for the queue.-gqurQueueUrl :: Lens' GetQueueUrlResponse Text-gqurQueueUrl = lens _gqurQueueUrl (\s a -> s { _gqurQueueUrl = a })--instance ToPath GetQueueUrl where- toPath = const "/"--instance ToQuery GetQueueUrl where- toQuery GetQueueUrl{..} = mconcat- [ "QueueName" =? _gquQueueName- , "QueueOwnerAWSAccountId" =? _gquQueueOwnerAWSAccountId- ]--instance ToHeaders GetQueueUrl--instance AWSRequest GetQueueUrl where- type Sv GetQueueUrl = SQS- type Rs GetQueueUrl = GetQueueUrlResponse-- request = post "GetQueueUrl"- response = xmlResponse--instance FromXML GetQueueUrlResponse where- parseXML = withElement "GetQueueUrlResult" $ \x -> GetQueueUrlResponse- <$> x .@ "QueueUrl"
gen/Network/AWS/SQS/ListDeadLetterSourceQueues.hs view
@@ -1,112 +1,129 @@-{-# 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.SQS.ListDeadLetterSourceQueues--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list of your queues that have the RedrivePolicy queue attribute--- configured with a dead letter queue.+-- Returns a list of your queues that have the RedrivePolicy queue+-- attribute configured with a dead letter queue. ----- For more information about using dead letter queues, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQSDead Letter Queues>.+-- For more information about using dead letter queues, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html Using Amazon SQS Dead Letter Queues>. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListDeadLetterSourceQueues.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListDeadLetterSourceQueues.html AWS API Reference> for ListDeadLetterSourceQueues. module Network.AWS.SQS.ListDeadLetterSourceQueues (- -- * Request- ListDeadLetterSourceQueues- -- ** Request constructor- , listDeadLetterSourceQueues- -- ** Request lenses- , ldlsqQueueUrl+ -- * Creating a Request+ listDeadLetterSourceQueues+ , ListDeadLetterSourceQueues+ -- * Request Lenses+ , ldlsqQueueURL - -- * Response- , ListDeadLetterSourceQueuesResponse- -- ** Response constructor+ -- * Destructuring the Response , listDeadLetterSourceQueuesResponse- -- ** Response lenses- , ldlsqrQueueUrls+ , ListDeadLetterSourceQueuesResponse+ -- * Response Lenses+ , ldlsqrsStatus+ , ldlsqrsQueueURLs ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -newtype ListDeadLetterSourceQueues = ListDeadLetterSourceQueues- { _ldlsqQueueUrl :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+-- | /See:/ 'listDeadLetterSourceQueues' smart constructor.+newtype ListDeadLetterSourceQueues = ListDeadLetterSourceQueues'+ { _ldlsqQueueURL :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListDeadLetterSourceQueues' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ListDeadLetterSourceQueues' with the minimum fields required to make a request. ----- * 'ldlsqQueueUrl' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---listDeadLetterSourceQueues :: Text -- ^ 'ldlsqQueueUrl'- -> ListDeadLetterSourceQueues-listDeadLetterSourceQueues p1 = ListDeadLetterSourceQueues- { _ldlsqQueueUrl = p1+-- * 'ldlsqQueueURL'+listDeadLetterSourceQueues+ :: Text -- ^ 'ldlsqQueueURL'+ -> ListDeadLetterSourceQueues+listDeadLetterSourceQueues pQueueURL_ =+ ListDeadLetterSourceQueues'+ { _ldlsqQueueURL = pQueueURL_ } -- | The queue URL of a dead letter queue.-ldlsqQueueUrl :: Lens' ListDeadLetterSourceQueues Text-ldlsqQueueUrl = lens _ldlsqQueueUrl (\s a -> s { _ldlsqQueueUrl = a })--newtype ListDeadLetterSourceQueuesResponse = ListDeadLetterSourceQueuesResponse- { _ldlsqrQueueUrls :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+ldlsqQueueURL :: Lens' ListDeadLetterSourceQueues Text+ldlsqQueueURL = lens _ldlsqQueueURL (\ s a -> s{_ldlsqQueueURL = a}); --- | 'ListDeadLetterSourceQueuesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ldlsqrQueueUrls' @::@ ['Text']----listDeadLetterSourceQueuesResponse :: ListDeadLetterSourceQueuesResponse-listDeadLetterSourceQueuesResponse = ListDeadLetterSourceQueuesResponse- { _ldlsqrQueueUrls = mempty- }+instance AWSRequest ListDeadLetterSourceQueues where+ type Sv ListDeadLetterSourceQueues = SQS+ type Rs ListDeadLetterSourceQueues =+ ListDeadLetterSourceQueuesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "ListDeadLetterSourceQueuesResult"+ (\ s h x ->+ ListDeadLetterSourceQueuesResponse' <$>+ (pure (fromEnum s)) <*> (parseXMLList "QueueUrl" x)) --- | A list of source queue URLs that have the RedrivePolicy queue attribute--- configured with a dead letter queue.-ldlsqrQueueUrls :: Lens' ListDeadLetterSourceQueuesResponse [Text]-ldlsqrQueueUrls = lens _ldlsqrQueueUrls (\s a -> s { _ldlsqrQueueUrls = a }) . _List+instance ToHeaders ListDeadLetterSourceQueues where+ toHeaders = const mempty instance ToPath ListDeadLetterSourceQueues where- toPath = const "/"+ toPath = const "/" instance ToQuery ListDeadLetterSourceQueues where- toQuery ListDeadLetterSourceQueues{..} = mconcat- [ "QueueUrl" =? _ldlsqQueueUrl- ]+ toQuery ListDeadLetterSourceQueues'{..}+ = mconcat+ ["Action" =:+ ("ListDeadLetterSourceQueues" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _ldlsqQueueURL] -instance ToHeaders ListDeadLetterSourceQueues+-- | A list of your dead letter source queues.+--+-- /See:/ 'listDeadLetterSourceQueuesResponse' smart constructor.+data ListDeadLetterSourceQueuesResponse = ListDeadLetterSourceQueuesResponse'+ { _ldlsqrsStatus :: !Int+ , _ldlsqrsQueueURLs :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ListDeadLetterSourceQueues where- type Sv ListDeadLetterSourceQueues = SQS- type Rs ListDeadLetterSourceQueues = ListDeadLetterSourceQueuesResponse+-- | Creates a value of 'ListDeadLetterSourceQueuesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldlsqrsStatus'+--+-- * 'ldlsqrsQueueURLs'+listDeadLetterSourceQueuesResponse+ :: Int -- ^ 'ldlsqrsStatus'+ -> ListDeadLetterSourceQueuesResponse+listDeadLetterSourceQueuesResponse pStatus_ =+ ListDeadLetterSourceQueuesResponse'+ { _ldlsqrsStatus = pStatus_+ , _ldlsqrsQueueURLs = mempty+ } - request = post "ListDeadLetterSourceQueues"- response = xmlResponse+-- | The response status code.+ldlsqrsStatus :: Lens' ListDeadLetterSourceQueuesResponse Int+ldlsqrsStatus = lens _ldlsqrsStatus (\ s a -> s{_ldlsqrsStatus = a}); -instance FromXML ListDeadLetterSourceQueuesResponse where- parseXML = withElement "ListDeadLetterSourceQueuesResult" $ \x -> ListDeadLetterSourceQueuesResponse- <$> parseXML x+-- | A list of source queue URLs that have the RedrivePolicy queue attribute+-- configured with a dead letter queue.+ldlsqrsQueueURLs :: Lens' ListDeadLetterSourceQueuesResponse [Text]+ldlsqrsQueueURLs = lens _ldlsqrsQueueURLs (\ s a -> s{_ldlsqrsQueueURLs = a}) . _Coerce;
gen/Network/AWS/SQS/ListQueues.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.SQS.ListQueues--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list of your queues. The maximum number of queues that can be--- returned is 1000. If you specify a value for the optional 'QueueNamePrefix'--- parameter, only queues with a name beginning with the specified value are--- returned.+-- Returns a list of your queues. The maximum number of queues that can be+-- returned is 1000. If you specify a value for the optional+-- 'QueueNamePrefix' parameter, only queues with a name beginning with the+-- specified value are returned. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html AWS API Reference> for ListQueues. module Network.AWS.SQS.ListQueues (- -- * Request- ListQueues- -- ** Request constructor- , listQueues- -- ** Request lenses+ -- * Creating a Request+ listQueues+ , ListQueues+ -- * Request Lenses , lqQueueNamePrefix - -- * Response- , ListQueuesResponse- -- ** Response constructor+ -- * Destructuring the Response , listQueuesResponse- -- ** Response lenses- , lqrQueueUrls+ , ListQueuesResponse+ -- * Response Lenses+ , lqrsQueueURLs+ , lqrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -newtype ListQueues = ListQueues+-- | /See:/ 'listQueues' smart constructor.+newtype ListQueues = ListQueues' { _lqQueueNamePrefix :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListQueues' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ListQueues' with the minimum fields required to make a request. ----- * 'lqQueueNamePrefix' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ---listQueues :: ListQueues-listQueues = ListQueues+-- * 'lqQueueNamePrefix'+listQueues+ :: ListQueues+listQueues =+ ListQueues' { _lqQueueNamePrefix = Nothing } --- | A string to use for filtering the list results. Only those queues whose name--- begins with the specified string are returned.+-- | A string to use for filtering the list results. Only those queues whose+-- name begins with the specified string are returned. lqQueueNamePrefix :: Lens' ListQueues (Maybe Text)-lqQueueNamePrefix =- lens _lqQueueNamePrefix (\s a -> s { _lqQueueNamePrefix = a })--newtype ListQueuesResponse = ListQueuesResponse- { _lqrQueueUrls :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+lqQueueNamePrefix = lens _lqQueueNamePrefix (\ s a -> s{_lqQueueNamePrefix = a}); --- | 'ListQueuesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'lqrQueueUrls' @::@ ['Text']----listQueuesResponse :: ListQueuesResponse-listQueuesResponse = ListQueuesResponse- { _lqrQueueUrls = mempty- }+instance AWSRequest ListQueues where+ type Sv ListQueues = SQS+ type Rs ListQueues = ListQueuesResponse+ request = postQuery+ response+ = receiveXMLWrapper "ListQueuesResult"+ (\ s h x ->+ ListQueuesResponse' <$>+ (may (parseXMLList "QueueUrl") x) <*>+ (pure (fromEnum s))) --- | A list of queue URLs, up to 1000 entries.-lqrQueueUrls :: Lens' ListQueuesResponse [Text]-lqrQueueUrls = lens _lqrQueueUrls (\s a -> s { _lqrQueueUrls = a }) . _List+instance ToHeaders ListQueues where+ toHeaders = const mempty instance ToPath ListQueues where- toPath = const "/"+ toPath = const "/" instance ToQuery ListQueues where- toQuery ListQueues{..} = mconcat- [ "QueueNamePrefix" =? _lqQueueNamePrefix- ]+ toQuery ListQueues'{..}+ = mconcat+ ["Action" =: ("ListQueues" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueNamePrefix" =: _lqQueueNamePrefix] -instance ToHeaders ListQueues+-- | A list of your queues.+--+-- /See:/ 'listQueuesResponse' smart constructor.+data ListQueuesResponse = ListQueuesResponse'+ { _lqrsQueueURLs :: !(Maybe [Text])+ , _lqrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ListQueues where- type Sv ListQueues = SQS- type Rs ListQueues = ListQueuesResponse+-- | Creates a value of 'ListQueuesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lqrsQueueURLs'+--+-- * 'lqrsStatus'+listQueuesResponse+ :: Int -- ^ 'lqrsStatus'+ -> ListQueuesResponse+listQueuesResponse pStatus_ =+ ListQueuesResponse'+ { _lqrsQueueURLs = Nothing+ , _lqrsStatus = pStatus_+ } - request = post "ListQueues"- response = xmlResponse+-- | A list of queue URLs, up to 1000 entries.+lqrsQueueURLs :: Lens' ListQueuesResponse [Text]+lqrsQueueURLs = lens _lqrsQueueURLs (\ s a -> s{_lqrsQueueURLs = a}) . _Default . _Coerce; -instance FromXML ListQueuesResponse where- parseXML = withElement "ListQueuesResult" $ \x -> ListQueuesResponse- <$> parseXML x+-- | The response status code.+lqrsStatus :: Lens' ListQueuesResponse Int+lqrsStatus = lens _lqrsStatus (\ s a -> s{_lqrsStatus = a});
gen/Network/AWS/SQS/PurgeQueue.hs view
@@ -1,97 +1,104 @@-{-# 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.SQS.PurgeQueue--- 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 messages in a queue specified by the queue URL.+-- Deletes the messages in a queue specified by the __queue URL__. ----- When you use the 'PurgeQueue' API, the deleted messages in the queue cannot be--- retrieved. When you purge a queue, the message deletion process takes up to--- 60 seconds. All messages sent to the queue before calling 'PurgeQueue' will be--- deleted; messages sent to the queue while it is being purged may be deleted.--- While the queue is being purged, messages sent to the queue before 'PurgeQueue'--- was called may be received, but will be deleted within the next minute.+-- When you use the 'PurgeQueue' API, the deleted messages in the queue+-- cannot be retrieved. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_PurgeQueue.html>+-- When you purge a queue, the message deletion process takes up to 60+-- seconds. All messages sent to the queue before calling 'PurgeQueue' will+-- be deleted; messages sent to the queue while it is being purged may be+-- deleted. While the queue is being purged, messages sent to the queue+-- before 'PurgeQueue' was called may be received, but will be deleted+-- within the next minute.+--+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_PurgeQueue.html AWS API Reference> for PurgeQueue. module Network.AWS.SQS.PurgeQueue (- -- * Request- PurgeQueue- -- ** Request constructor- , purgeQueue- -- ** Request lenses- , pqQueueUrl+ -- * Creating a Request+ purgeQueue+ , PurgeQueue+ -- * Request Lenses+ , pqQueueURL - -- * Response- , PurgeQueueResponse- -- ** Response constructor+ -- * Destructuring the Response , purgeQueueResponse+ , PurgeQueueResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -newtype PurgeQueue = PurgeQueue- { _pqQueueUrl :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+-- | /See:/ 'purgeQueue' smart constructor.+newtype PurgeQueue = PurgeQueue'+ { _pqQueueURL :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'PurgeQueue' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'PurgeQueue' with the minimum fields required to make a request. ----- * 'pqQueueUrl' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---purgeQueue :: Text -- ^ 'pqQueueUrl'- -> PurgeQueue-purgeQueue p1 = PurgeQueue- { _pqQueueUrl = p1+-- * 'pqQueueURL'+purgeQueue+ :: Text -- ^ 'pqQueueURL'+ -> PurgeQueue+purgeQueue pQueueURL_ =+ PurgeQueue'+ { _pqQueueURL = pQueueURL_ } --- | The queue URL of the queue to delete the messages from when using the 'PurgeQueue' API.-pqQueueUrl :: Lens' PurgeQueue Text-pqQueueUrl = lens _pqQueueUrl (\s a -> s { _pqQueueUrl = a })+-- | The queue URL of the queue to delete the messages from when using the+-- 'PurgeQueue' API.+pqQueueURL :: Lens' PurgeQueue Text+pqQueueURL = lens _pqQueueURL (\ s a -> s{_pqQueueURL = a}); -data PurgeQueueResponse = PurgeQueueResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest PurgeQueue where+ type Sv PurgeQueue = SQS+ type Rs PurgeQueue = PurgeQueueResponse+ request = postQuery+ response = receiveNull PurgeQueueResponse' --- | 'PurgeQueueResponse' constructor.-purgeQueueResponse :: PurgeQueueResponse-purgeQueueResponse = PurgeQueueResponse+instance ToHeaders PurgeQueue where+ toHeaders = const mempty instance ToPath PurgeQueue where- toPath = const "/"+ toPath = const "/" instance ToQuery PurgeQueue where- toQuery PurgeQueue{..} = mconcat- [ "QueueUrl" =? _pqQueueUrl- ]--instance ToHeaders PurgeQueue+ toQuery PurgeQueue'{..}+ = mconcat+ ["Action" =: ("PurgeQueue" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _pqQueueURL] -instance AWSRequest PurgeQueue where- type Sv PurgeQueue = SQS- type Rs PurgeQueue = PurgeQueueResponse+-- | /See:/ 'purgeQueueResponse' smart constructor.+data PurgeQueueResponse =+ PurgeQueueResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "PurgeQueue"- response = nullResponse PurgeQueueResponse+-- | Creates a value of 'PurgeQueueResponse' with the minimum fields required to make a request.+--+purgeQueueResponse+ :: PurgeQueueResponse+purgeQueueResponse = PurgeQueueResponse'
gen/Network/AWS/SQS/ReceiveMessage.hs view
@@ -1,232 +1,253 @@-{-# 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.SQS.ReceiveMessage--- 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.---- | Retrieves one or more messages, with a maximum limit of 10 messages, from--- the specified queue. Long poll support is enabled by using the 'WaitTimeSeconds'--- parameter. For more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html Amazon SQS Long Poll> in the /Amazon SQSDeveloper Guide/.+-- Retrieves one or more messages, with a maximum limit of 10 messages,+-- from the specified queue. Long poll support is enabled by using the+-- 'WaitTimeSeconds' parameter. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html Amazon SQS Long Poll>+-- in the /Amazon SQS Developer Guide/. ----- Short poll is the default behavior where a weighted random set of machines--- is sampled on a 'ReceiveMessage' call. This means only the messages on the--- sampled machines are returned. If the number of messages in the queue is--- small (less than 1000), it is likely you will get fewer messages than you--- requested per 'ReceiveMessage' call. If the number of messages in the queue is--- extremely small, you might not receive any messages in a particular 'ReceiveMessage' response; in which case you should repeat the request.+-- Short poll is the default behavior where a weighted random set of+-- machines is sampled on a 'ReceiveMessage' call. This means only the+-- messages on the sampled machines are returned. If the number of messages+-- in the queue is small (less than 1000), it is likely you will get fewer+-- messages than you requested per 'ReceiveMessage' call. If the number of+-- messages in the queue is extremely small, you might not receive any+-- messages in a particular 'ReceiveMessage' response; in which case you+-- should repeat the request. -- -- For each message returned, the response includes the following: ----- Message body+-- - Message body ----- MD5 digest of the message body. For information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.+-- - MD5 digest of the message body. For information about MD5, go to+-- <http://www.faqs.org/rfcs/rfc1321.html>. ----- Message ID you received when you sent the message to the queue.+-- - Message ID you received when you sent the message to the queue. ----- Receipt handle.+-- - Receipt handle. ----- Message attributes.+-- - Message attributes. ----- MD5 digest of the message attributes.+-- - MD5 digest of the message attributes. -- -- The receipt handle is the identifier you must provide when deleting the--- message. For more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html Queue and Message Identifiers> in the /Amazon SQS Developer Guide/.------ You can provide the 'VisibilityTimeout' parameter in your request, which will--- be applied to the messages that Amazon SQS returns in the response. If you do--- not include the parameter, the overall visibility timeout for the queue is--- used for the returned messages. For more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout>+-- message. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html Queue and Message Identifiers> -- in the /Amazon SQS Developer Guide/. ----- Going forward, new attributes might be added. If you are writing code that--- calls this action, we recommend that you structure your code so that it can--- handle new attributes gracefully.---+-- You can provide the 'VisibilityTimeout' parameter in your request, which+-- will be applied to the messages that Amazon SQS returns in the response.+-- If you do not include the parameter, the overall visibility timeout for+-- the queue is used for the returned messages. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html Visibility Timeout>+-- in the /Amazon SQS Developer Guide/. --+-- Going forward, new attributes might be added. If you are writing code+-- that calls this action, we recommend that you structure your code so+-- that it can handle new attributes gracefully. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html AWS API Reference> for ReceiveMessage. module Network.AWS.SQS.ReceiveMessage (- -- * Request- ReceiveMessage- -- ** Request constructor- , receiveMessage- -- ** Request lenses- , rmAttributeNames- , rmMaxNumberOfMessages- , rmMessageAttributeNames- , rmQueueUrl+ -- * Creating a Request+ receiveMessage+ , ReceiveMessage+ -- * Request Lenses , rmVisibilityTimeout+ , rmMessageAttributeNames , rmWaitTimeSeconds+ , rmAttributeNames+ , rmMaxNumberOfMessages+ , rmQueueURL - -- * Response- , ReceiveMessageResponse- -- ** Response constructor+ -- * Destructuring the Response , receiveMessageResponse- -- ** Response lenses- , rmrMessages+ , ReceiveMessageResponse+ -- * Response Lenses+ , rmrsMessages+ , rmrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data ReceiveMessage = ReceiveMessage- { _rmAttributeNames :: List "member" Text- , _rmMaxNumberOfMessages :: Maybe Int- , _rmMessageAttributeNames :: List "member" Text- , _rmQueueUrl :: Text- , _rmVisibilityTimeout :: Maybe Int- , _rmWaitTimeSeconds :: Maybe Int- } deriving (Eq, Read, Show)+-- | /See:/ 'receiveMessage' smart constructor.+data ReceiveMessage = ReceiveMessage'+ { _rmVisibilityTimeout :: !(Maybe Int)+ , _rmMessageAttributeNames :: !(Maybe [Text])+ , _rmWaitTimeSeconds :: !(Maybe Int)+ , _rmAttributeNames :: !(Maybe [QueueAttributeName])+ , _rmMaxNumberOfMessages :: !(Maybe Int)+ , _rmQueueURL :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ReceiveMessage' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ReceiveMessage' with the minimum fields required to make a request. ----- * 'rmAttributeNames' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'rmMaxNumberOfMessages' @::@ 'Maybe' 'Int'+-- * 'rmVisibilityTimeout' ----- * 'rmMessageAttributeNames' @::@ ['Text']+-- * 'rmMessageAttributeNames' ----- * 'rmQueueUrl' @::@ 'Text'+-- * 'rmWaitTimeSeconds' ----- * 'rmVisibilityTimeout' @::@ 'Maybe' 'Int'+-- * 'rmAttributeNames' ----- * 'rmWaitTimeSeconds' @::@ 'Maybe' 'Int'+-- * 'rmMaxNumberOfMessages' ---receiveMessage :: Text -- ^ 'rmQueueUrl'- -> ReceiveMessage-receiveMessage p1 = ReceiveMessage- { _rmQueueUrl = p1- , _rmAttributeNames = mempty- , _rmMessageAttributeNames = mempty- , _rmMaxNumberOfMessages = Nothing- , _rmVisibilityTimeout = Nothing- , _rmWaitTimeSeconds = Nothing+-- * 'rmQueueURL'+receiveMessage+ :: Text -- ^ 'rmQueueURL'+ -> ReceiveMessage+receiveMessage pQueueURL_ =+ ReceiveMessage'+ { _rmVisibilityTimeout = Nothing+ , _rmMessageAttributeNames = Nothing+ , _rmWaitTimeSeconds = Nothing+ , _rmAttributeNames = Nothing+ , _rmMaxNumberOfMessages = Nothing+ , _rmQueueURL = pQueueURL_ } --- | A list of attributes that need to be returned along with each message.------ The following lists the names and descriptions of the attributes that can--- be returned:------ 'All' - returns all values. 'ApproximateFirstReceiveTimestamp' - returns the--- time when the message was first received from the queue (epoch time in--- milliseconds). 'ApproximateReceiveCount' - returns the number of times a--- message has been received from the queue but not deleted. 'SenderId' - returns--- the AWS account number (or the IP address, if anonymous access is allowed) of--- the sender. 'SentTimestamp' - returns the time when the message was sent to--- the queue (epoch time in milliseconds).-rmAttributeNames :: Lens' ReceiveMessage [Text]-rmAttributeNames = lens _rmAttributeNames (\s a -> s { _rmAttributeNames = a }) . _List---- | The maximum number of messages to return. Amazon SQS never returns more--- messages than this value but may return fewer. Values can be from 1 to 10.--- Default is 1.------ All of the messages are not necessarily returned.-rmMaxNumberOfMessages :: Lens' ReceiveMessage (Maybe Int)-rmMaxNumberOfMessages =- lens _rmMaxNumberOfMessages (\s a -> s { _rmMaxNumberOfMessages = a })+-- | The duration (in seconds) that the received messages are hidden from+-- subsequent retrieve requests after being retrieved by a 'ReceiveMessage'+-- request.+rmVisibilityTimeout :: Lens' ReceiveMessage (Maybe Int)+rmVisibilityTimeout = lens _rmVisibilityTimeout (\ s a -> s{_rmVisibilityTimeout = a}); -- | The name of the message attribute, where /N/ is the index. The message -- attribute name can contain the following characters: A-Z, a-z, 0-9,--- underscore (_), hyphen (-), and period (.). The name must not start or end--- with a period, and it should not have successive periods. The name is case--- sensitive and must be unique among all attribute names for the message. The--- name can be up to 256 characters long. The name cannot start with "AWS." or--- "Amazon." (or any variations in casing), because these prefixes are reserved--- for use by Amazon Web Services.+-- underscore (_), hyphen (-), and period (.). The name must not start or+-- end with a period, and it should not have successive periods. The name+-- is case sensitive and must be unique among all attribute names for the+-- message. The name can be up to 256 characters long. The name cannot+-- start with \"AWS.\" or \"Amazon.\" (or any variations in casing),+-- because these prefixes are reserved for use by Amazon Web Services. -- -- When using 'ReceiveMessage', you can send a list of attribute names to--- receive, or you can return all of the attributes by specifying "All" or ".*"--- in your request. You can also use "foo.*" to return all message attributes--- starting with the "foo" prefix.+-- receive, or you can return all of the attributes by specifying \"All\"+-- or \".*\" in your request. You can also use \"foo.*\" to return all+-- message attributes starting with the \"foo\" prefix. rmMessageAttributeNames :: Lens' ReceiveMessage [Text]-rmMessageAttributeNames =- lens _rmMessageAttributeNames (\s a -> s { _rmMessageAttributeNames = a })- . _List---- | The URL of the Amazon SQS queue to take action on.-rmQueueUrl :: Lens' ReceiveMessage Text-rmQueueUrl = lens _rmQueueUrl (\s a -> s { _rmQueueUrl = a })---- | The duration (in seconds) that the received messages are hidden from--- subsequent retrieve requests after being retrieved by a 'ReceiveMessage'--- request.-rmVisibilityTimeout :: Lens' ReceiveMessage (Maybe Int)-rmVisibilityTimeout =- lens _rmVisibilityTimeout (\s a -> s { _rmVisibilityTimeout = a })+rmMessageAttributeNames = lens _rmMessageAttributeNames (\ s a -> s{_rmMessageAttributeNames = a}) . _Default . _Coerce; -- | The duration (in seconds) for which the call will wait for a message to--- arrive in the queue before returning. If a message is available, the call--- will return sooner than WaitTimeSeconds.+-- arrive in the queue before returning. If a message is available, the+-- call will return sooner than WaitTimeSeconds. rmWaitTimeSeconds :: Lens' ReceiveMessage (Maybe Int)-rmWaitTimeSeconds =- lens _rmWaitTimeSeconds (\s a -> s { _rmWaitTimeSeconds = a })--newtype ReceiveMessageResponse = ReceiveMessageResponse- { _rmrMessages :: List "member" Message- } deriving (Eq, Read, Show, Monoid, Semigroup)+rmWaitTimeSeconds = lens _rmWaitTimeSeconds (\ s a -> s{_rmWaitTimeSeconds = a}); --- | 'ReceiveMessageResponse' constructor.+-- | A list of attributes that need to be returned along with each message. ----- The fields accessible through corresponding lenses are:+-- The following lists the names and descriptions of the attributes that+-- can be returned: ----- * 'rmrMessages' @::@ ['Message']+-- - 'All' - returns all values.+-- - 'ApproximateFirstReceiveTimestamp' - returns the time when the+-- message was first received from the queue (epoch time in+-- milliseconds).+-- - 'ApproximateReceiveCount' - returns the number of times a message+-- has been received from the queue but not deleted.+-- - 'SenderId' - returns the AWS account number (or the IP address, if+-- anonymous access is allowed) of the sender.+-- - 'SentTimestamp' - returns the time when the message was sent to the+-- queue (epoch time in milliseconds).+rmAttributeNames :: Lens' ReceiveMessage [QueueAttributeName]+rmAttributeNames = lens _rmAttributeNames (\ s a -> s{_rmAttributeNames = a}) . _Default . _Coerce;++-- | The maximum number of messages to return. Amazon SQS never returns more+-- messages than this value but may return fewer. Values can be from 1 to+-- 10. Default is 1. ---receiveMessageResponse :: ReceiveMessageResponse-receiveMessageResponse = ReceiveMessageResponse- { _rmrMessages = mempty- }+-- All of the messages are not necessarily returned.+rmMaxNumberOfMessages :: Lens' ReceiveMessage (Maybe Int)+rmMaxNumberOfMessages = lens _rmMaxNumberOfMessages (\ s a -> s{_rmMaxNumberOfMessages = a}); --- | A list of messages.-rmrMessages :: Lens' ReceiveMessageResponse [Message]-rmrMessages = lens _rmrMessages (\s a -> s { _rmrMessages = a }) . _List+-- | The URL of the Amazon SQS queue to take action on.+rmQueueURL :: Lens' ReceiveMessage Text+rmQueueURL = lens _rmQueueURL (\ s a -> s{_rmQueueURL = a}); +instance AWSRequest ReceiveMessage where+ type Sv ReceiveMessage = SQS+ type Rs ReceiveMessage = ReceiveMessageResponse+ request = postQuery+ response+ = receiveXMLWrapper "ReceiveMessageResult"+ (\ s h x ->+ ReceiveMessageResponse' <$>+ (may (parseXMLList "Message") x) <*>+ (pure (fromEnum s)))++instance ToHeaders ReceiveMessage where+ toHeaders = const mempty+ instance ToPath ReceiveMessage where- toPath = const "/"+ toPath = const "/" instance ToQuery ReceiveMessage where- toQuery ReceiveMessage{..} = mconcat- [ toQuery _rmAttributeNames- , "MaxNumberOfMessages" =? _rmMaxNumberOfMessages- , toQuery _rmMessageAttributeNames- , "QueueUrl" =? _rmQueueUrl- , "VisibilityTimeout" =? _rmVisibilityTimeout- , "WaitTimeSeconds" =? _rmWaitTimeSeconds- ]+ toQuery ReceiveMessage'{..}+ = mconcat+ ["Action" =: ("ReceiveMessage" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "VisibilityTimeout" =: _rmVisibilityTimeout,+ toQuery+ (toQueryList "MessageAttributeName" <$>+ _rmMessageAttributeNames),+ "WaitTimeSeconds" =: _rmWaitTimeSeconds,+ toQuery+ (toQueryList "AttributeName" <$> _rmAttributeNames),+ "MaxNumberOfMessages" =: _rmMaxNumberOfMessages,+ "QueueUrl" =: _rmQueueURL] -instance ToHeaders ReceiveMessage+-- | A list of received messages.+--+-- /See:/ 'receiveMessageResponse' smart constructor.+data ReceiveMessageResponse = ReceiveMessageResponse'+ { _rmrsMessages :: !(Maybe [Message])+ , _rmrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ReceiveMessage where- type Sv ReceiveMessage = SQS- type Rs ReceiveMessage = ReceiveMessageResponse+-- | Creates a value of 'ReceiveMessageResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rmrsMessages'+--+-- * 'rmrsStatus'+receiveMessageResponse+ :: Int -- ^ 'rmrsStatus'+ -> ReceiveMessageResponse+receiveMessageResponse pStatus_ =+ ReceiveMessageResponse'+ { _rmrsMessages = Nothing+ , _rmrsStatus = pStatus_+ } - request = post "ReceiveMessage"- response = xmlResponse+-- | A list of messages.+rmrsMessages :: Lens' ReceiveMessageResponse [Message]+rmrsMessages = lens _rmrsMessages (\ s a -> s{_rmrsMessages = a}) . _Default . _Coerce; -instance FromXML ReceiveMessageResponse where- parseXML = withElement "ReceiveMessageResult" $ \x -> ReceiveMessageResponse- <$> parseXML x+-- | The response status code.+rmrsStatus :: Lens' ReceiveMessageResponse Int+rmrsStatus = lens _rmrsStatus (\ s a -> s{_rmrsStatus = a});
gen/Network/AWS/SQS/RemovePermission.hs view
@@ -1,103 +1,105 @@-{-# 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.SQS.RemovePermission--- 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.---- | Revokes any permissions in the queue policy that matches the specified 'Label'--- parameter. Only the owner of the queue can remove permissions.+-- Revokes any permissions in the queue policy that matches the specified+-- 'Label' parameter. Only the owner of the queue can remove permissions. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html AWS API Reference> for RemovePermission. module Network.AWS.SQS.RemovePermission (- -- * Request- RemovePermission- -- ** Request constructor- , removePermission- -- ** Request lenses+ -- * Creating a Request+ removePermission+ , RemovePermission+ -- * Request Lenses+ , rpQueueURL , rpLabel- , rpQueueUrl - -- * Response- , RemovePermissionResponse- -- ** Response constructor+ -- * Destructuring the Response , removePermissionResponse+ , RemovePermissionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data RemovePermission = RemovePermission- { _rpLabel :: Text- , _rpQueueUrl :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'removePermission' smart constructor.+data RemovePermission = RemovePermission'+ { _rpQueueURL :: !Text+ , _rpLabel :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'RemovePermission' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'RemovePermission' with the minimum fields required to make a request. ----- * 'rpLabel' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rpQueueUrl' @::@ 'Text'+-- * 'rpQueueURL' ---removePermission :: Text -- ^ 'rpQueueUrl'- -> Text -- ^ 'rpLabel'- -> RemovePermission-removePermission p1 p2 = RemovePermission- { _rpQueueUrl = p1- , _rpLabel = p2+-- * 'rpLabel'+removePermission+ :: Text -- ^ 'rpQueueURL'+ -> Text -- ^ 'rpLabel'+ -> RemovePermission+removePermission pQueueURL_ pLabel_ =+ RemovePermission'+ { _rpQueueURL = pQueueURL_+ , _rpLabel = pLabel_ } --- | The identification of the permission to remove. This is the label added with--- the 'AddPermission' action.-rpLabel :: Lens' RemovePermission Text-rpLabel = lens _rpLabel (\s a -> s { _rpLabel = a })- -- | The URL of the Amazon SQS queue to take action on.-rpQueueUrl :: Lens' RemovePermission Text-rpQueueUrl = lens _rpQueueUrl (\s a -> s { _rpQueueUrl = a })+rpQueueURL :: Lens' RemovePermission Text+rpQueueURL = lens _rpQueueURL (\ s a -> s{_rpQueueURL = a}); -data RemovePermissionResponse = RemovePermissionResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The identification of the permission to remove. This is the label added+-- with the AddPermission action.+rpLabel :: Lens' RemovePermission Text+rpLabel = lens _rpLabel (\ s a -> s{_rpLabel = a}); --- | 'RemovePermissionResponse' constructor.-removePermissionResponse :: RemovePermissionResponse-removePermissionResponse = RemovePermissionResponse+instance AWSRequest RemovePermission where+ type Sv RemovePermission = SQS+ type Rs RemovePermission = RemovePermissionResponse+ request = postQuery+ response = receiveNull RemovePermissionResponse' +instance ToHeaders RemovePermission where+ toHeaders = const mempty+ instance ToPath RemovePermission where- toPath = const "/"+ toPath = const "/" instance ToQuery RemovePermission where- toQuery RemovePermission{..} = mconcat- [ "Label" =? _rpLabel- , "QueueUrl" =? _rpQueueUrl- ]--instance ToHeaders RemovePermission+ toQuery RemovePermission'{..}+ = mconcat+ ["Action" =: ("RemovePermission" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _rpQueueURL, "Label" =: _rpLabel] -instance AWSRequest RemovePermission where- type Sv RemovePermission = SQS- type Rs RemovePermission = RemovePermissionResponse+-- | /See:/ 'removePermissionResponse' smart constructor.+data RemovePermissionResponse =+ RemovePermissionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "RemovePermission"- response = nullResponse RemovePermissionResponse+-- | Creates a value of 'RemovePermissionResponse' with the minimum fields required to make a request.+--+removePermissionResponse+ :: RemovePermissionResponse+removePermissionResponse = RemovePermissionResponse'
gen/Network/AWS/SQS/SendMessage.hs view
@@ -1,189 +1,201 @@-{-# 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.SQS.SendMessage--- 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.---- | Delivers a message to the specified queue. With Amazon SQS, you now have the--- ability to send large payload messages that are up to 256KB (262,144 bytes)--- in size. To send large payloads, you must use an AWS SDK that supports SigV4--- signing. To verify whether SigV4 is supported for an AWS SDK, check the SDK--- release notes.+-- Delivers a message to the specified queue. With Amazon SQS, you now have+-- the ability to send large payload messages that are up to 256KB (262,144+-- bytes) in size. To send large payloads, you must use an AWS SDK that+-- supports SigV4 signing. To verify whether SigV4 is supported for an AWS+-- SDK, check the SDK release notes. -- -- The following list shows the characters (in Unicode) allowed in your--- message, according to the W3C XML specification. For more information, go to <http://www.w3.org/TR/REC-xml/#charsets http://www.w3.org/TR/REC-xml/#charsets> If you send any characters not included in the list, your request will be--- rejected.+-- message, according to the W3C XML specification. For more information,+-- go to <http://www.w3.org/TR/REC-xml/#charsets> If you send any+-- characters not included in the list, your request will be rejected. -- -- #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to -- #x10FFFF] ----------- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html AWS API Reference> for SendMessage. module Network.AWS.SQS.SendMessage (- -- * Request- SendMessage- -- ** Request constructor- , sendMessage- -- ** Request lenses- , smDelaySeconds+ -- * Creating a Request+ sendMessage+ , SendMessage+ -- * Request Lenses , smMessageAttributes+ , smDelaySeconds+ , smQueueURL , smMessageBody- , smQueueUrl - -- * Response- , SendMessageResponse- -- ** Response constructor+ -- * Destructuring the Response , sendMessageResponse- -- ** Response lenses- , smrMD5OfMessageAttributes- , smrMD5OfMessageBody- , smrMessageId+ , SendMessageResponse+ -- * Response Lenses+ , smrsMessageId+ , smrsMD5OfMessageBody+ , smrsMD5OfMessageAttributes+ , smrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data SendMessage = SendMessage- { _smDelaySeconds :: Maybe Int- , _smMessageAttributes :: EMap "entry" "Name" "Value" Text MessageAttributeValue- , _smMessageBody :: Text- , _smQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'sendMessage' smart constructor.+data SendMessage = SendMessage'+ { _smMessageAttributes :: !(Maybe (Map Text MessageAttributeValue))+ , _smDelaySeconds :: !(Maybe Int)+ , _smQueueURL :: !Text+ , _smMessageBody :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SendMessage' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SendMessage' with the minimum fields required to make a request. ----- * 'smDelaySeconds' @::@ 'Maybe' 'Int'+-- Use one of the following lenses to modify other fields as desired: ----- * 'smMessageAttributes' @::@ 'HashMap' 'Text' 'MessageAttributeValue'+-- * 'smMessageAttributes' ----- * 'smMessageBody' @::@ 'Text'+-- * 'smDelaySeconds' ----- * 'smQueueUrl' @::@ 'Text'+-- * 'smQueueURL' ---sendMessage :: Text -- ^ 'smQueueUrl'- -> Text -- ^ 'smMessageBody'- -> SendMessage-sendMessage p1 p2 = SendMessage- { _smQueueUrl = p1- , _smMessageBody = p2- , _smDelaySeconds = Nothing- , _smMessageAttributes = mempty+-- * 'smMessageBody'+sendMessage+ :: Text -- ^ 'smQueueURL'+ -> Text -- ^ 'smMessageBody'+ -> SendMessage+sendMessage pQueueURL_ pMessageBody_ =+ SendMessage'+ { _smMessageAttributes = Nothing+ , _smDelaySeconds = Nothing+ , _smQueueURL = pQueueURL_+ , _smMessageBody = pMessageBody_ } --- | The number of seconds (0 to 900 - 15 minutes) to delay a specific message.--- Messages with a positive 'DelaySeconds' value become available for processing--- after the delay time is finished. If you don't specify a value, the default--- value for the queue applies.-smDelaySeconds :: Lens' SendMessage (Maybe Int)-smDelaySeconds = lens _smDelaySeconds (\s a -> s { _smDelaySeconds = a })- -- | Each message attribute consists of a Name, Type, and Value. For more--- information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>.+-- information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>. smMessageAttributes :: Lens' SendMessage (HashMap Text MessageAttributeValue)-smMessageAttributes =- lens _smMessageAttributes (\s a -> s { _smMessageAttributes = a })- . _EMap+smMessageAttributes = lens _smMessageAttributes (\ s a -> s{_smMessageAttributes = a}) . _Default . _Map; --- | The message to send. String maximum 256 KB in size. For a list of allowed--- characters, see the preceding important note.-smMessageBody :: Lens' SendMessage Text-smMessageBody = lens _smMessageBody (\s a -> s { _smMessageBody = a })+-- | The number of seconds (0 to 900 - 15 minutes) to delay a specific+-- message. Messages with a positive 'DelaySeconds' value become available+-- for processing after the delay time is finished. If you don\'t specify a+-- value, the default value for the queue applies.+smDelaySeconds :: Lens' SendMessage (Maybe Int)+smDelaySeconds = lens _smDelaySeconds (\ s a -> s{_smDelaySeconds = a}); -- | The URL of the Amazon SQS queue to take action on.-smQueueUrl :: Lens' SendMessage Text-smQueueUrl = lens _smQueueUrl (\s a -> s { _smQueueUrl = a })+smQueueURL :: Lens' SendMessage Text+smQueueURL = lens _smQueueURL (\ s a -> s{_smQueueURL = a}); -data SendMessageResponse = SendMessageResponse- { _smrMD5OfMessageAttributes :: Maybe Text- , _smrMD5OfMessageBody :: Maybe Text- , _smrMessageId :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | The message to send. String maximum 256 KB in size. For a list of+-- allowed characters, see the preceding important note.+smMessageBody :: Lens' SendMessage Text+smMessageBody = lens _smMessageBody (\ s a -> s{_smMessageBody = a}); --- | 'SendMessageResponse' constructor.+instance AWSRequest SendMessage where+ type Sv SendMessage = SQS+ type Rs SendMessage = SendMessageResponse+ request = postQuery+ response+ = receiveXMLWrapper "SendMessageResult"+ (\ s h x ->+ SendMessageResponse' <$>+ (x .@? "MessageId") <*> (x .@? "MD5OfMessageBody")+ <*> (x .@? "MD5OfMessageAttributes")+ <*> (pure (fromEnum s)))++instance ToHeaders SendMessage where+ toHeaders = const mempty++instance ToPath SendMessage where+ toPath = const "/"++instance ToQuery SendMessage where+ toQuery SendMessage'{..}+ = mconcat+ ["Action" =: ("SendMessage" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ toQuery+ (toQueryMap "MessageAttribute" "Name" "Value" <$>+ _smMessageAttributes),+ "DelaySeconds" =: _smDelaySeconds,+ "QueueUrl" =: _smQueueURL,+ "MessageBody" =: _smMessageBody]++-- | The MD5OfMessageBody and MessageId elements. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'sendMessageResponse' smart constructor.+data SendMessageResponse = SendMessageResponse'+ { _smrsMessageId :: !(Maybe Text)+ , _smrsMD5OfMessageBody :: !(Maybe Text)+ , _smrsMD5OfMessageAttributes :: !(Maybe Text)+ , _smrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SendMessageResponse' with the minimum fields required to make a request. ----- * 'smrMD5OfMessageAttributes' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'smrMD5OfMessageBody' @::@ 'Maybe' 'Text'+-- * 'smrsMessageId' ----- * 'smrMessageId' @::@ 'Maybe' 'Text'+-- * 'smrsMD5OfMessageBody' ---sendMessageResponse :: SendMessageResponse-sendMessageResponse = SendMessageResponse- { _smrMD5OfMessageBody = Nothing- , _smrMD5OfMessageAttributes = Nothing- , _smrMessageId = Nothing+-- * 'smrsMD5OfMessageAttributes'+--+-- * 'smrsStatus'+sendMessageResponse+ :: Int -- ^ 'smrsStatus'+ -> SendMessageResponse+sendMessageResponse pStatus_ =+ SendMessageResponse'+ { _smrsMessageId = Nothing+ , _smrsMD5OfMessageBody = Nothing+ , _smrsMD5OfMessageAttributes = Nothing+ , _smrsStatus = pStatus_ } --- | An MD5 digest of the non-URL-encoded message attribute string. This can be--- used to verify that Amazon SQS received the message correctly. Amazon SQS--- first URL decodes the message before creating the MD5 digest. For information--- about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.-smrMD5OfMessageAttributes :: Lens' SendMessageResponse (Maybe Text)-smrMD5OfMessageAttributes =- lens _smrMD5OfMessageAttributes- (\s a -> s { _smrMD5OfMessageAttributes = a })---- | An MD5 digest of the non-URL-encoded message body string. This can be used to--- verify that Amazon SQS received the message correctly. Amazon SQS first URL--- decodes the message before creating the MD5 digest. For information about--- MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.-smrMD5OfMessageBody :: Lens' SendMessageResponse (Maybe Text)-smrMD5OfMessageBody =- lens _smrMD5OfMessageBody (\s a -> s { _smrMD5OfMessageBody = a })---- | An element containing the message ID of the message sent to the queue. For--- more information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html Queue and Message Identifiers> in the /Amazon SQSDeveloper Guide/.-smrMessageId :: Lens' SendMessageResponse (Maybe Text)-smrMessageId = lens _smrMessageId (\s a -> s { _smrMessageId = a })--instance ToPath SendMessage where- toPath = const "/"--instance ToQuery SendMessage where- toQuery SendMessage{..} = mconcat- [ "DelaySeconds" =? _smDelaySeconds- , toQuery _smMessageAttributes- , "MessageBody" =? _smMessageBody- , "QueueUrl" =? _smQueueUrl- ]--instance ToHeaders SendMessage+-- | An element containing the message ID of the message sent to the queue.+-- For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html Queue and Message Identifiers>+-- in the /Amazon SQS Developer Guide/.+smrsMessageId :: Lens' SendMessageResponse (Maybe Text)+smrsMessageId = lens _smrsMessageId (\ s a -> s{_smrsMessageId = a}); -instance AWSRequest SendMessage where- type Sv SendMessage = SQS- type Rs SendMessage = SendMessageResponse+-- | An MD5 digest of the non-URL-encoded message body string. This can be+-- used to verify that Amazon SQS received the message correctly. Amazon+-- SQS first URL decodes the message before creating the MD5 digest. For+-- information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html>.+smrsMD5OfMessageBody :: Lens' SendMessageResponse (Maybe Text)+smrsMD5OfMessageBody = lens _smrsMD5OfMessageBody (\ s a -> s{_smrsMD5OfMessageBody = a}); - request = post "SendMessage"- response = xmlResponse+-- | An MD5 digest of the non-URL-encoded message attribute string. This can+-- be used to verify that Amazon SQS received the message correctly. Amazon+-- SQS first URL decodes the message before creating the MD5 digest. For+-- information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html>.+smrsMD5OfMessageAttributes :: Lens' SendMessageResponse (Maybe Text)+smrsMD5OfMessageAttributes = lens _smrsMD5OfMessageAttributes (\ s a -> s{_smrsMD5OfMessageAttributes = a}); -instance FromXML SendMessageResponse where- parseXML = withElement "SendMessageResult" $ \x -> SendMessageResponse- <$> x .@? "MD5OfMessageAttributes"- <*> x .@? "MD5OfMessageBody"- <*> x .@? "MessageId"+-- | The response status code.+smrsStatus :: Lens' SendMessageResponse Int+smrsStatus = lens _smrsStatus (\ s a -> s{_smrsStatus = a});
gen/Network/AWS/SQS/SendMessageBatch.hs view
@@ -1,153 +1,176 @@-{-# 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.SQS.SendMessageBatch--- 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.---- | Delivers up to ten messages to the specified queue. This is a batch version--- of 'SendMessage'. The result of the send action on each message is reported--- individually in the response. The maximum allowed individual message size is--- 256 KB (262,144 bytes).+-- Delivers up to ten messages to the specified queue. This is a batch+-- version of SendMessage. The result of the send action on each message is+-- reported individually in the response. The maximum allowed individual+-- message size is 256 KB (262,144 bytes). ----- The maximum total payload size (i.e., the sum of all a batch's individual--- message lengths) is also 256 KB (262,144 bytes).+-- The maximum total payload size (i.e., the sum of all a batch\'s+-- individual message lengths) is also 256 KB (262,144 bytes). ----- If the 'DelaySeconds' parameter is not specified for an entry, the default for--- the queue is used.+-- If the 'DelaySeconds' parameter is not specified for an entry, the+-- default for the queue is used. -- -- The following list shows the characters (in Unicode) that are allowed in--- your message, according to the W3C XML specification. For more information,--- go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>. If you send any characters that--- are not included in the list, your request will be rejected. #x9 | #xA | #xD--- | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF]+-- your message, according to the W3C XML specification. For more+-- information, go to <http://www.faqs.org/rfcs/rfc1321.html>. If you send+-- any characters that are not included in the list, your request will be+-- rejected. --+-- #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to+-- #x10FFFF]+-- -- Because the batch request can result in a combination of successful and--- unsuccessful actions, you should check for batch errors even when the call--- returns an HTTP status code of 200. Some API actions take lists of--- parameters. These lists are specified using the 'param.n' notation. Values of 'n'--- are integers starting from 1. For example, a parameter list with two elements--- looks like this: '&Attribute.1=this'+-- unsuccessful actions, you should check for batch errors even when the+-- call returns an HTTP status code of 200. --+-- Some API actions take lists of parameters. These lists are specified+-- using the 'param.n' notation. Values of 'n' are integers starting from+-- 1. For example, a parameter list with two elements looks like this:+--+-- '&Attribute.1=this'+-- -- '&Attribute.2=that' ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html AWS API Reference> for SendMessageBatch. module Network.AWS.SQS.SendMessageBatch (- -- * Request- SendMessageBatch- -- ** Request constructor- , sendMessageBatch- -- ** Request lenses+ -- * Creating a Request+ sendMessageBatch+ , SendMessageBatch+ -- * Request Lenses+ , smbQueueURL , smbEntries- , smbQueueUrl - -- * Response- , SendMessageBatchResponse- -- ** Response constructor+ -- * Destructuring the Response , sendMessageBatchResponse- -- ** Response lenses- , smbrFailed- , smbrSuccessful+ , SendMessageBatchResponse+ -- * Response Lenses+ , smbrsStatus+ , smbrsSuccessful+ , smbrsFailed ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data SendMessageBatch = SendMessageBatch- { _smbEntries :: List "member" SendMessageBatchRequestEntry- , _smbQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'sendMessageBatch' smart constructor.+data SendMessageBatch = SendMessageBatch'+ { _smbQueueURL :: !Text+ , _smbEntries :: ![SendMessageBatchRequestEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SendMessageBatch' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SendMessageBatch' with the minimum fields required to make a request. ----- * 'smbEntries' @::@ ['SendMessageBatchRequestEntry']+-- Use one of the following lenses to modify other fields as desired: ----- * 'smbQueueUrl' @::@ 'Text'+-- * 'smbQueueURL' ---sendMessageBatch :: Text -- ^ 'smbQueueUrl'- -> SendMessageBatch-sendMessageBatch p1 = SendMessageBatch- { _smbQueueUrl = p1- , _smbEntries = mempty+-- * 'smbEntries'+sendMessageBatch+ :: Text -- ^ 'smbQueueURL'+ -> SendMessageBatch+sendMessageBatch pQueueURL_ =+ SendMessageBatch'+ { _smbQueueURL = pQueueURL_+ , _smbEntries = mempty } --- | A list of 'SendMessageBatchRequestEntry' items.-smbEntries :: Lens' SendMessageBatch [SendMessageBatchRequestEntry]-smbEntries = lens _smbEntries (\s a -> s { _smbEntries = a }) . _List- -- | The URL of the Amazon SQS queue to take action on.-smbQueueUrl :: Lens' SendMessageBatch Text-smbQueueUrl = lens _smbQueueUrl (\s a -> s { _smbQueueUrl = a })--data SendMessageBatchResponse = SendMessageBatchResponse- { _smbrFailed :: List "member" BatchResultErrorEntry- , _smbrSuccessful :: List "member" SendMessageBatchResultEntry- } deriving (Eq, Read, Show)+smbQueueURL :: Lens' SendMessageBatch Text+smbQueueURL = lens _smbQueueURL (\ s a -> s{_smbQueueURL = a}); --- | 'SendMessageBatchResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'smbrFailed' @::@ ['BatchResultErrorEntry']------ * 'smbrSuccessful' @::@ ['SendMessageBatchResultEntry']----sendMessageBatchResponse :: SendMessageBatchResponse-sendMessageBatchResponse = SendMessageBatchResponse- { _smbrSuccessful = mempty- , _smbrFailed = mempty- }+-- | A list of SendMessageBatchRequestEntry items.+smbEntries :: Lens' SendMessageBatch [SendMessageBatchRequestEntry]+smbEntries = lens _smbEntries (\ s a -> s{_smbEntries = a}) . _Coerce; --- | A list of 'BatchResultErrorEntry' items with the error detail about each--- message that could not be enqueued.-smbrFailed :: Lens' SendMessageBatchResponse [BatchResultErrorEntry]-smbrFailed = lens _smbrFailed (\s a -> s { _smbrFailed = a }) . _List+instance AWSRequest SendMessageBatch where+ type Sv SendMessageBatch = SQS+ type Rs SendMessageBatch = SendMessageBatchResponse+ request = postQuery+ response+ = receiveXMLWrapper "SendMessageBatchResult"+ (\ s h x ->+ SendMessageBatchResponse' <$>+ (pure (fromEnum s)) <*>+ (parseXMLList "SendMessageBatchResultEntry" x)+ <*> (parseXMLList "BatchResultErrorEntry" x)) --- | A list of 'SendMessageBatchResultEntry' items.-smbrSuccessful :: Lens' SendMessageBatchResponse [SendMessageBatchResultEntry]-smbrSuccessful = lens _smbrSuccessful (\s a -> s { _smbrSuccessful = a }) . _List+instance ToHeaders SendMessageBatch where+ toHeaders = const mempty instance ToPath SendMessageBatch where- toPath = const "/"+ toPath = const "/" instance ToQuery SendMessageBatch where- toQuery SendMessageBatch{..} = mconcat- [ toQuery _smbEntries- , "QueueUrl" =? _smbQueueUrl- ]+ toQuery SendMessageBatch'{..}+ = mconcat+ ["Action" =: ("SendMessageBatch" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _smbQueueURL,+ toQueryList "SendMessageBatchRequestEntry"+ _smbEntries] -instance ToHeaders SendMessageBatch+-- | For each message in the batch, the response contains a+-- SendMessageBatchResultEntry tag if the message succeeds or a+-- BatchResultErrorEntry tag if the message fails.+--+-- /See:/ 'sendMessageBatchResponse' smart constructor.+data SendMessageBatchResponse = SendMessageBatchResponse'+ { _smbrsStatus :: !Int+ , _smbrsSuccessful :: ![SendMessageBatchResultEntry]+ , _smbrsFailed :: ![BatchResultErrorEntry]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest SendMessageBatch where- type Sv SendMessageBatch = SQS- type Rs SendMessageBatch = SendMessageBatchResponse+-- | Creates a value of 'SendMessageBatchResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'smbrsStatus'+--+-- * 'smbrsSuccessful'+--+-- * 'smbrsFailed'+sendMessageBatchResponse+ :: Int -- ^ 'smbrsStatus'+ -> SendMessageBatchResponse+sendMessageBatchResponse pStatus_ =+ SendMessageBatchResponse'+ { _smbrsStatus = pStatus_+ , _smbrsSuccessful = mempty+ , _smbrsFailed = mempty+ } - request = post "SendMessageBatch"- response = xmlResponse+-- | The response status code.+smbrsStatus :: Lens' SendMessageBatchResponse Int+smbrsStatus = lens _smbrsStatus (\ s a -> s{_smbrsStatus = a}); -instance FromXML SendMessageBatchResponse where- parseXML = withElement "SendMessageBatchResult" $ \x -> SendMessageBatchResponse- <$> parseXML x- <*> parseXML x+-- | A list of SendMessageBatchResultEntry items.+smbrsSuccessful :: Lens' SendMessageBatchResponse [SendMessageBatchResultEntry]+smbrsSuccessful = lens _smbrsSuccessful (\ s a -> s{_smbrsSuccessful = a}) . _Coerce;++-- | A list of BatchResultErrorEntry items with the error detail about each+-- message that could not be enqueued.+smbrsFailed :: Lens' SendMessageBatchResponse [BatchResultErrorEntry]+smbrsFailed = lens _smbrsFailed (\ s a -> s{_smbrsFailed = a}) . _Coerce;
gen/Network/AWS/SQS/SetQueueAttributes.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.SQS.SetQueueAttributes--- 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.---- | Sets the value of one or more queue attributes. When you change a queue's--- attributes, the change can take up to 60 seconds for most of the attributes--- to propagate throughout the SQS system. Changes made to the 'MessageRetentionPeriod' attribute can take up to 15 minutes.+-- Sets the value of one or more queue attributes. When you change a+-- queue\'s attributes, the change can take up to 60 seconds for most of+-- the attributes to propagate throughout the SQS system. Changes made to+-- the 'MessageRetentionPeriod' attribute can take up to 15 minutes. ----- Going forward, new attributes might be added. If you are writing code that--- calls this action, we recommend that you structure your code so that it can--- handle new attributes gracefully.+-- Going forward, new attributes might be added. If you are writing code+-- that calls this action, we recommend that you structure your code so+-- that it can handle new attributes gracefully. ----- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html>+-- /See:/ <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html AWS API Reference> for SetQueueAttributes. module Network.AWS.SQS.SetQueueAttributes (- -- * Request- SetQueueAttributes- -- ** Request constructor- , setQueueAttributes- -- ** Request lenses+ -- * Creating a Request+ setQueueAttributes+ , SetQueueAttributes+ -- * Request Lenses+ , sqaQueueURL , sqaAttributes- , sqaQueueUrl - -- * Response- , SetQueueAttributesResponse- -- ** Response constructor+ -- * Destructuring the Response , setQueueAttributesResponse+ , SetQueueAttributesResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SQS.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SQS.Types+import Network.AWS.SQS.Types.Product -data SetQueueAttributes = SetQueueAttributes- { _sqaAttributes :: EMap "entry" "Name" "Value" Text Text- , _sqaQueueUrl :: Text- } deriving (Eq, Read, Show)+-- | /See:/ 'setQueueAttributes' smart constructor.+data SetQueueAttributes = SetQueueAttributes'+ { _sqaQueueURL :: !Text+ , _sqaAttributes :: !(Map QueueAttributeName Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SetQueueAttributes' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SetQueueAttributes' with the minimum fields required to make a request. ----- * 'sqaAttributes' @::@ 'HashMap' 'Text' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'sqaQueueUrl' @::@ 'Text'+-- * 'sqaQueueURL' ---setQueueAttributes :: Text -- ^ 'sqaQueueUrl'- -> SetQueueAttributes-setQueueAttributes p1 = SetQueueAttributes- { _sqaQueueUrl = p1+-- * 'sqaAttributes'+setQueueAttributes+ :: Text -- ^ 'sqaQueueURL'+ -> SetQueueAttributes+setQueueAttributes pQueueURL_ =+ SetQueueAttributes'+ { _sqaQueueURL = pQueueURL_ , _sqaAttributes = mempty } +-- | The URL of the Amazon SQS queue to take action on.+sqaQueueURL :: Lens' SetQueueAttributes Text+sqaQueueURL = lens _sqaQueueURL (\ s a -> s{_sqaQueueURL = a});+ -- | A map of attributes to set. -- -- The following lists the names, descriptions, and values of the special -- request parameters the 'SetQueueAttributes' action uses: ----- 'DelaySeconds' - The time in seconds that the delivery of all messages in--- the queue will be delayed. An integer from 0 to 900 (15 minutes). The default--- for this attribute is 0 (zero). 'MaximumMessageSize' - The limit of how many--- bytes a message can contain before Amazon SQS rejects it. An integer from--- 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this--- attribute is 262144 (256 KiB). 'MessageRetentionPeriod' - The number of--- seconds Amazon SQS retains a message. Integer representing seconds, from 60--- (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4--- days). 'Policy' - The queue's policy. A valid AWS policy. For more information--- about policy structure, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html Overview of AWS IAM Policies> in the /Amazon IAMUser Guide/. 'ReceiveMessageWaitTimeSeconds' - The time for which a--- ReceiveMessage call will wait for a message to arrive. An integer from 0 to--- 20 (seconds). The default for this attribute is 0. 'VisibilityTimeout' - The--- visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The--- default for this attribute is 30. For more information about visibility--- timeout, see Visibility Timeout in the /Amazon SQS Developer Guide/. 'RedrivePolicy' - The parameters for dead letter queue functionality of the source queue.--- For more information about RedrivePolicy and dead letter queues, see Using--- Amazon SQS Dead Letter Queues in the /Amazon SQS Developer Guide/.-sqaAttributes :: Lens' SetQueueAttributes (HashMap Text Text)-sqaAttributes = lens _sqaAttributes (\s a -> s { _sqaAttributes = a }) . _EMap---- | The URL of the Amazon SQS queue to take action on.-sqaQueueUrl :: Lens' SetQueueAttributes Text-sqaQueueUrl = lens _sqaQueueUrl (\s a -> s { _sqaQueueUrl = a })+-- - 'DelaySeconds' - The time in seconds that the delivery of all+-- messages in the queue will be delayed. An integer from 0 to 900 (15+-- minutes). The default for this attribute is 0 (zero).+-- - 'MaximumMessageSize' - The limit of how many bytes a message can+-- contain before Amazon SQS rejects it. An integer from 1024 bytes (1+-- KiB) up to 262144 bytes (256 KiB). The default for this attribute is+-- 262144 (256 KiB).+-- - 'MessageRetentionPeriod' - The number of seconds Amazon SQS retains+-- a message. Integer representing seconds, from 60 (1 minute) to+-- 1209600 (14 days). The default for this attribute is 345600 (4+-- days).+-- - 'Policy' - The queue\'s policy. A valid AWS policy. For more+-- information about policy structure, see+-- <http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html Overview of AWS IAM Policies>+-- in the /Amazon IAM User Guide/.+-- - 'ReceiveMessageWaitTimeSeconds' - The time for which a+-- ReceiveMessage call will wait for a message to arrive. An integer+-- from 0 to 20 (seconds). The default for this attribute is 0.+-- - 'VisibilityTimeout' - The visibility timeout for the queue. An+-- integer from 0 to 43200 (12 hours). The default for this attribute+-- is 30. For more information about visibility timeout, see Visibility+-- Timeout in the /Amazon SQS Developer Guide/.+-- - 'RedrivePolicy' - The parameters for dead letter queue functionality+-- of the source queue. For more information about RedrivePolicy and+-- dead letter queues, see Using Amazon SQS Dead Letter Queues in the+-- /Amazon SQS Developer Guide/.+sqaAttributes :: Lens' SetQueueAttributes (HashMap QueueAttributeName Text)+sqaAttributes = lens _sqaAttributes (\ s a -> s{_sqaAttributes = a}) . _Map; -data SetQueueAttributesResponse = SetQueueAttributesResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest SetQueueAttributes where+ type Sv SetQueueAttributes = SQS+ type Rs SetQueueAttributes =+ SetQueueAttributesResponse+ request = postQuery+ response = receiveNull SetQueueAttributesResponse' --- | 'SetQueueAttributesResponse' constructor.-setQueueAttributesResponse :: SetQueueAttributesResponse-setQueueAttributesResponse = SetQueueAttributesResponse+instance ToHeaders SetQueueAttributes where+ toHeaders = const mempty instance ToPath SetQueueAttributes where- toPath = const "/"+ toPath = const "/" instance ToQuery SetQueueAttributes where- toQuery SetQueueAttributes{..} = mconcat- [ toQuery _sqaAttributes- , "QueueUrl" =? _sqaQueueUrl- ]--instance ToHeaders SetQueueAttributes+ toQuery SetQueueAttributes'{..}+ = mconcat+ ["Action" =: ("SetQueueAttributes" :: ByteString),+ "Version" =: ("2012-11-05" :: ByteString),+ "QueueUrl" =: _sqaQueueURL,+ toQueryMap "Attribute" "Name" "Value" _sqaAttributes] -instance AWSRequest SetQueueAttributes where- type Sv SetQueueAttributes = SQS- type Rs SetQueueAttributes = SetQueueAttributesResponse+-- | /See:/ 'setQueueAttributesResponse' smart constructor.+data SetQueueAttributesResponse =+ SetQueueAttributesResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "SetQueueAttributes"- response = nullResponse SetQueueAttributesResponse+-- | Creates a value of 'SetQueueAttributesResponse' with the minimum fields required to make a request.+--+setQueueAttributesResponse+ :: SetQueueAttributesResponse+setQueueAttributesResponse = SetQueueAttributesResponse'
gen/Network/AWS/SQS/Types.hs view
@@ -1,679 +1,242 @@-{-# 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.SQS.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.SQS.Types ( -- * Service SQS- -- ** Error- , RESTError- -- ** XML- , ns - -- * DeleteMessageBatchRequestEntry- , DeleteMessageBatchRequestEntry- , deleteMessageBatchRequestEntry- , dmbreId- , dmbreReceiptHandle+ -- * Errors+ , _InvalidBatchEntryId+ , _TooManyEntriesInBatchRequest+ , _InvalidAttributeName+ , _QueueDeletedRecently+ , _QueueDoesNotExist+ , _UnsupportedOperation+ , _InvalidMessageContents+ , _BatchRequestTooLong+ , _OverLimit+ , _PurgeQueueInProgress+ , _QueueNameExists+ , _InvalidIdFormat+ , _ReceiptHandleIsInvalid+ , _EmptyBatchRequest+ , _MessageNotInflight+ , _BatchEntryIdsNotDistinct - -- * MessageAttributeValue- , MessageAttributeValue- , messageAttributeValue- , mavBinaryListValues- , mavBinaryValue- , mavDataType- , mavStringListValues- , mavStringValue+ -- * QueueAttributeName+ , QueueAttributeName (..) + -- * BatchResultErrorEntry+ , BatchResultErrorEntry+ , batchResultErrorEntry+ , breeMessage+ , breeId+ , breeSenderFault+ , breeCode++ -- * ChangeMessageVisibilityBatchRequestEntry+ , ChangeMessageVisibilityBatchRequestEntry+ , changeMessageVisibilityBatchRequestEntry+ , cVisibilityTimeout+ , cId+ , cReceiptHandle+ -- * ChangeMessageVisibilityBatchResultEntry , ChangeMessageVisibilityBatchResultEntry , changeMessageVisibilityBatchResultEntry , cmvbreId - -- * ChangeMessageVisibilityBatchRequestEntry- , ChangeMessageVisibilityBatchRequestEntry- , changeMessageVisibilityBatchRequestEntry- , cmvbre1Id- , cmvbre1ReceiptHandle- , cmvbre1VisibilityTimeout+ -- * DeleteMessageBatchRequestEntry+ , DeleteMessageBatchRequestEntry+ , deleteMessageBatchRequestEntry+ , dmbreId+ , dmbreReceiptHandle -- * DeleteMessageBatchResultEntry , DeleteMessageBatchResultEntry , deleteMessageBatchResultEntry- , dmbre1Id+ , dId -- * Message , Message , message- , mAttributes- , mBody- , mMD5OfBody- , mMD5OfMessageAttributes , mMessageAttributes+ , mMD5OfBody+ , mBody+ , mAttributes , mMessageId , mReceiptHandle+ , mMD5OfMessageAttributes + -- * MessageAttributeValue+ , MessageAttributeValue+ , messageAttributeValue+ , mavBinaryValue+ , mavStringListValues+ , mavStringValue+ , mavBinaryListValues+ , mavDataType+ -- * SendMessageBatchRequestEntry , SendMessageBatchRequestEntry , sendMessageBatchRequestEntry- , smbreDelaySeconds- , smbreId- , smbreMessageAttributes- , smbreMessageBody+ , sMessageAttributes+ , sDelaySeconds+ , sId+ , sMessageBody -- * SendMessageBatchResultEntry , SendMessageBatchResultEntry , sendMessageBatchResultEntry- , smbre1Id- , smbre1MD5OfMessageAttributes- , smbre1MD5OfMessageBody- , smbre1MessageId-- -- * BatchResultErrorEntry- , BatchResultErrorEntry- , batchResultErrorEntry- , breeCode- , breeId- , breeMessage- , breeSenderFault+ , smbreMD5OfMessageAttributes+ , smbreId+ , smbreMessageId+ , smbreMD5OfMessageBody ) 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.SQS.Types.Product+import Network.AWS.SQS.Types.Sum --- | Version @2012-11-05@ of the Amazon Simple Queue Service service.+-- | Version @2012-11-05@ of the Amazon Simple Queue Service SDK. data SQS instance AWSService SQS where type Sg SQS = V4- type Er SQS = RESTError-- service = service'+ service = const svc where- service' :: Service SQS- service' = Service- { _svcAbbrev = "SQS"- , _svcPrefix = "sqs"- , _svcVersion = "2012-11-05"- , _svcTargetPrefix = Nothing- , _svcJSONVersion = Nothing- , _svcHandle = handle- , _svcRetry = retry+ svc =+ Service+ { _svcAbbrev = "SQS"+ , _svcPrefix = "sqs"+ , _svcVersion = "2012-11-05"+ , _svcEndpoint = defaultEndpoint svc+ , _svcTimeout = Just 70+ , _svcStatus = statusSuccess+ , _svcError = parseXMLError+ , _svcRetry = retry }-- handle :: Status- -> Maybe (LazyByteString -> ServiceError RESTError)- handle = restError statusSuccess service'-- retry :: Retry SQS- retry = Exponential- { _retryBase = 0.05- , _retryGrowth = 2+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2 , _retryAttempts = 5- , _retryCheck = check+ , _retryCheck = check }-- check :: Status- -> RESTError- -> Bool- check (statusCode -> s) (awsErrorCode -> e)- | s == 403 && (Just "RequestThrottled") == e = True -- Request Limit Exceeded- | s == 500 = True -- General Server Error- | s == 509 = True -- Limit Exceeded- | s == 503 = True -- Service Unavailable- | otherwise = False--ns :: Text-ns = "http://queue.amazonaws.com/doc/2012-11-05/"-{-# INLINE ns #-}--data DeleteMessageBatchRequestEntry = DeleteMessageBatchRequestEntry- { _dmbreId :: Text- , _dmbreReceiptHandle :: Text- } deriving (Eq, Ord, Read, Show)---- | 'DeleteMessageBatchRequestEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'dmbreId' @::@ 'Text'------ * 'dmbreReceiptHandle' @::@ 'Text'----deleteMessageBatchRequestEntry :: Text -- ^ 'dmbreId'- -> Text -- ^ 'dmbreReceiptHandle'- -> DeleteMessageBatchRequestEntry-deleteMessageBatchRequestEntry p1 p2 = DeleteMessageBatchRequestEntry- { _dmbreId = p1- , _dmbreReceiptHandle = p2- }---- | An identifier for this particular receipt handle. This is used to communicate--- the result. Note that the 'Id's of a batch request need to be unique within the--- request.-dmbreId :: Lens' DeleteMessageBatchRequestEntry Text-dmbreId = lens _dmbreId (\s a -> s { _dmbreId = a })---- | A receipt handle.-dmbreReceiptHandle :: Lens' DeleteMessageBatchRequestEntry Text-dmbreReceiptHandle =- lens _dmbreReceiptHandle (\s a -> s { _dmbreReceiptHandle = a })--instance FromXML DeleteMessageBatchRequestEntry where- parseXML x = DeleteMessageBatchRequestEntry- <$> x .@ "Id"- <*> x .@ "ReceiptHandle"--instance ToQuery DeleteMessageBatchRequestEntry where- toQuery DeleteMessageBatchRequestEntry{..} = mconcat- [ "Id" =? _dmbreId- , "ReceiptHandle" =? _dmbreReceiptHandle- ]--data MessageAttributeValue = MessageAttributeValue- { _mavBinaryListValues :: List "member" Base64- , _mavBinaryValue :: Maybe Base64- , _mavDataType :: Text- , _mavStringListValues :: List "member" Text- , _mavStringValue :: Maybe Text- } deriving (Eq, Read, Show)---- | 'MessageAttributeValue' constructor.------ The fields accessible through corresponding lenses are:------ * 'mavBinaryListValues' @::@ ['Base64']------ * 'mavBinaryValue' @::@ 'Maybe' 'Base64'------ * 'mavDataType' @::@ 'Text'------ * 'mavStringListValues' @::@ ['Text']------ * 'mavStringValue' @::@ 'Maybe' 'Text'----messageAttributeValue :: Text -- ^ 'mavDataType'- -> MessageAttributeValue-messageAttributeValue p1 = MessageAttributeValue- { _mavDataType = p1- , _mavStringValue = Nothing- , _mavBinaryValue = Nothing- , _mavStringListValues = mempty- , _mavBinaryListValues = mempty- }---- | Not implemented. Reserved for future use.-mavBinaryListValues :: Lens' MessageAttributeValue [Base64]-mavBinaryListValues =- lens _mavBinaryListValues (\s a -> s { _mavBinaryListValues = a })- . _List---- | Binary type attributes can store any binary data, for example, compressed--- data, encrypted data, or images.-mavBinaryValue :: Lens' MessageAttributeValue (Maybe Base64)-mavBinaryValue = lens _mavBinaryValue (\s a -> s { _mavBinaryValue = a })---- | Amazon SQS supports the following logical data types: String, Number, and--- Binary. In addition, you can append your own custom labels. For more--- information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributes.DataTypes Message Attribute Data Types>.-mavDataType :: Lens' MessageAttributeValue Text-mavDataType = lens _mavDataType (\s a -> s { _mavDataType = a })---- | Not implemented. Reserved for future use.-mavStringListValues :: Lens' MessageAttributeValue [Text]-mavStringListValues =- lens _mavStringListValues (\s a -> s { _mavStringListValues = a })- . _List---- | Strings are Unicode with UTF8 binary encoding. For a list of code values, see <http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters>.-mavStringValue :: Lens' MessageAttributeValue (Maybe Text)-mavStringValue = lens _mavStringValue (\s a -> s { _mavStringValue = a })--instance FromXML MessageAttributeValue where- parseXML x = MessageAttributeValue- <$> x .@? "BinaryListValue" .!@ mempty- <*> x .@? "BinaryValue"- <*> x .@ "DataType"- <*> x .@? "StringListValue" .!@ mempty- <*> x .@? "StringValue"--instance ToQuery MessageAttributeValue where- toQuery MessageAttributeValue{..} = mconcat- [ "BinaryListValue" =? _mavBinaryListValues- , "BinaryValue" =? _mavBinaryValue- , "DataType" =? _mavDataType- , "StringListValue" =? _mavStringListValues- , "StringValue" =? _mavStringValue- ]--newtype ChangeMessageVisibilityBatchResultEntry = ChangeMessageVisibilityBatchResultEntry- { _cmvbreId :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)---- | 'ChangeMessageVisibilityBatchResultEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'cmvbreId' @::@ 'Text'----changeMessageVisibilityBatchResultEntry :: Text -- ^ 'cmvbreId'- -> ChangeMessageVisibilityBatchResultEntry-changeMessageVisibilityBatchResultEntry p1 = ChangeMessageVisibilityBatchResultEntry- { _cmvbreId = p1- }---- | Represents a message whose visibility timeout has been changed successfully.-cmvbreId :: Lens' ChangeMessageVisibilityBatchResultEntry Text-cmvbreId = lens _cmvbreId (\s a -> s { _cmvbreId = a })--instance FromXML ChangeMessageVisibilityBatchResultEntry where- parseXML x = ChangeMessageVisibilityBatchResultEntry- <$> x .@ "Id"--instance ToQuery ChangeMessageVisibilityBatchResultEntry where- toQuery ChangeMessageVisibilityBatchResultEntry{..} = mconcat- [ "Id" =? _cmvbreId- ]--data ChangeMessageVisibilityBatchRequestEntry = ChangeMessageVisibilityBatchRequestEntry- { _cmvbre1Id :: Text- , _cmvbre1ReceiptHandle :: Text- , _cmvbre1VisibilityTimeout :: Maybe Int- } deriving (Eq, Ord, Read, Show)---- | 'ChangeMessageVisibilityBatchRequestEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'cmvbre1Id' @::@ 'Text'------ * 'cmvbre1ReceiptHandle' @::@ 'Text'------ * 'cmvbre1VisibilityTimeout' @::@ 'Maybe' 'Int'----changeMessageVisibilityBatchRequestEntry :: Text -- ^ 'cmvbre1Id'- -> Text -- ^ 'cmvbre1ReceiptHandle'- -> ChangeMessageVisibilityBatchRequestEntry-changeMessageVisibilityBatchRequestEntry p1 p2 = ChangeMessageVisibilityBatchRequestEntry- { _cmvbre1Id = p1- , _cmvbre1ReceiptHandle = p2- , _cmvbre1VisibilityTimeout = Nothing- }---- | An identifier for this particular receipt handle. This is used to communicate--- the result. Note that the 'Id's of a batch request need to be unique within the--- request.-cmvbre1Id :: Lens' ChangeMessageVisibilityBatchRequestEntry Text-cmvbre1Id = lens _cmvbre1Id (\s a -> s { _cmvbre1Id = a })---- | A receipt handle.-cmvbre1ReceiptHandle :: Lens' ChangeMessageVisibilityBatchRequestEntry Text-cmvbre1ReceiptHandle =- lens _cmvbre1ReceiptHandle (\s a -> s { _cmvbre1ReceiptHandle = a })---- | The new value (in seconds) for the message's visibility timeout.-cmvbre1VisibilityTimeout :: Lens' ChangeMessageVisibilityBatchRequestEntry (Maybe Int)-cmvbre1VisibilityTimeout =- lens _cmvbre1VisibilityTimeout- (\s a -> s { _cmvbre1VisibilityTimeout = a })--instance FromXML ChangeMessageVisibilityBatchRequestEntry where- parseXML x = ChangeMessageVisibilityBatchRequestEntry- <$> x .@ "Id"- <*> x .@ "ReceiptHandle"- <*> x .@? "VisibilityTimeout"--instance ToQuery ChangeMessageVisibilityBatchRequestEntry where- toQuery ChangeMessageVisibilityBatchRequestEntry{..} = mconcat- [ "Id" =? _cmvbre1Id- , "ReceiptHandle" =? _cmvbre1ReceiptHandle- , "VisibilityTimeout" =? _cmvbre1VisibilityTimeout- ]--newtype DeleteMessageBatchResultEntry = DeleteMessageBatchResultEntry- { _dmbre1Id :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)---- | 'DeleteMessageBatchResultEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'dmbre1Id' @::@ 'Text'----deleteMessageBatchResultEntry :: Text -- ^ 'dmbre1Id'- -> DeleteMessageBatchResultEntry-deleteMessageBatchResultEntry p1 = DeleteMessageBatchResultEntry- { _dmbre1Id = p1- }---- | Represents a successfully deleted message.-dmbre1Id :: Lens' DeleteMessageBatchResultEntry Text-dmbre1Id = lens _dmbre1Id (\s a -> s { _dmbre1Id = a })--instance FromXML DeleteMessageBatchResultEntry where- parseXML x = DeleteMessageBatchResultEntry- <$> x .@ "Id"--instance ToQuery DeleteMessageBatchResultEntry where- toQuery DeleteMessageBatchResultEntry{..} = mconcat- [ "Id" =? _dmbre1Id- ]--data Message = Message- { _mAttributes :: EMap "entry" "Name" "Value" Text Text- , _mBody :: Maybe Text- , _mMD5OfBody :: Maybe Text- , _mMD5OfMessageAttributes :: Maybe Text- , _mMessageAttributes :: EMap "entry" "Name" "Value" Text MessageAttributeValue- , _mMessageId :: Maybe Text- , _mReceiptHandle :: Maybe Text- } deriving (Eq, Read, Show)---- | 'Message' constructor.------ The fields accessible through corresponding lenses are:------ * 'mAttributes' @::@ 'HashMap' 'Text' 'Text'------ * 'mBody' @::@ 'Maybe' 'Text'------ * 'mMD5OfBody' @::@ 'Maybe' 'Text'------ * 'mMD5OfMessageAttributes' @::@ 'Maybe' 'Text'------ * 'mMessageAttributes' @::@ 'HashMap' 'Text' 'MessageAttributeValue'------ * 'mMessageId' @::@ 'Maybe' 'Text'------ * 'mReceiptHandle' @::@ 'Maybe' 'Text'----message :: Message-message = Message- { _mMessageId = Nothing- , _mReceiptHandle = Nothing- , _mMD5OfBody = Nothing- , _mBody = Nothing- , _mAttributes = mempty- , _mMD5OfMessageAttributes = Nothing- , _mMessageAttributes = mempty- }---- | 'SenderId', 'SentTimestamp', 'ApproximateReceiveCount', and/or 'ApproximateFirstReceiveTimestamp'. 'SentTimestamp' and 'ApproximateFirstReceiveTimestamp' are each returned as an--- integer representing the <http://en.wikipedia.org/wiki/Unix_time epoch time> in milliseconds.-mAttributes :: Lens' Message (HashMap Text Text)-mAttributes = lens _mAttributes (\s a -> s { _mAttributes = a }) . _EMap---- | The message's contents (not URL-encoded).-mBody :: Lens' Message (Maybe Text)-mBody = lens _mBody (\s a -> s { _mBody = a })---- | An MD5 digest of the non-URL-encoded message body string.-mMD5OfBody :: Lens' Message (Maybe Text)-mMD5OfBody = lens _mMD5OfBody (\s a -> s { _mMD5OfBody = a })---- | An MD5 digest of the non-URL-encoded message attribute string. This can be--- used to verify that Amazon SQS received the message correctly. Amazon SQS--- first URL decodes the message before creating the MD5 digest. For information--- about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.-mMD5OfMessageAttributes :: Lens' Message (Maybe Text)-mMD5OfMessageAttributes =- lens _mMD5OfMessageAttributes (\s a -> s { _mMD5OfMessageAttributes = a })---- | Each message attribute consists of a Name, Type, and Value. For more--- information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>.-mMessageAttributes :: Lens' Message (HashMap Text MessageAttributeValue)-mMessageAttributes =- lens _mMessageAttributes (\s a -> s { _mMessageAttributes = a })- . _EMap---- | A unique identifier for the message. Message IDs are considered unique across--- all AWS accounts for an extended period of time.-mMessageId :: Lens' Message (Maybe Text)-mMessageId = lens _mMessageId (\s a -> s { _mMessageId = a })---- | An identifier associated with the act of receiving the message. A new receipt--- handle is returned every time you receive a message. When deleting a message,--- you provide the last received receipt handle to delete the message.-mReceiptHandle :: Lens' Message (Maybe Text)-mReceiptHandle = lens _mReceiptHandle (\s a -> s { _mReceiptHandle = a })--instance FromXML Message where- parseXML x = Message- <$> parseXML x- <*> x .@? "Body"- <*> x .@? "MD5OfBody"- <*> x .@? "MD5OfMessageAttributes"- <*> parseXML x- <*> x .@? "MessageId"- <*> x .@? "ReceiptHandle"--instance ToQuery Message where- toQuery Message{..} = mconcat- [ toQuery _mAttributes- , "Body" =? _mBody- , "MD5OfBody" =? _mMD5OfBody- , "MD5OfMessageAttributes" =? _mMD5OfMessageAttributes- , toQuery _mMessageAttributes- , "MessageId" =? _mMessageId- , "ReceiptHandle" =? _mReceiptHandle- ]--data SendMessageBatchRequestEntry = SendMessageBatchRequestEntry- { _smbreDelaySeconds :: Maybe Int- , _smbreId :: Text- , _smbreMessageAttributes :: EMap "entry" "Name" "Value" Text MessageAttributeValue- , _smbreMessageBody :: Text- } deriving (Eq, Read, Show)---- | 'SendMessageBatchRequestEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'smbreDelaySeconds' @::@ 'Maybe' 'Int'------ * 'smbreId' @::@ 'Text'------ * 'smbreMessageAttributes' @::@ 'HashMap' 'Text' 'MessageAttributeValue'------ * 'smbreMessageBody' @::@ 'Text'----sendMessageBatchRequestEntry :: Text -- ^ 'smbreId'- -> Text -- ^ 'smbreMessageBody'- -> SendMessageBatchRequestEntry-sendMessageBatchRequestEntry p1 p2 = SendMessageBatchRequestEntry- { _smbreId = p1- , _smbreMessageBody = p2- , _smbreDelaySeconds = Nothing- , _smbreMessageAttributes = mempty- }---- | The number of seconds for which the message has to be delayed.-smbreDelaySeconds :: Lens' SendMessageBatchRequestEntry (Maybe Int)-smbreDelaySeconds =- lens _smbreDelaySeconds (\s a -> s { _smbreDelaySeconds = a })---- | An identifier for the message in this batch. This is used to communicate the--- result. Note that the 'Id's of a batch request need to be unique within the--- request.-smbreId :: Lens' SendMessageBatchRequestEntry Text-smbreId = lens _smbreId (\s a -> s { _smbreId = a })---- | Each message attribute consists of a Name, Type, and Value. For more--- information, see <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>.-smbreMessageAttributes :: Lens' SendMessageBatchRequestEntry (HashMap Text MessageAttributeValue)-smbreMessageAttributes =- lens _smbreMessageAttributes (\s a -> s { _smbreMessageAttributes = a })- . _EMap---- | Body of the message.-smbreMessageBody :: Lens' SendMessageBatchRequestEntry Text-smbreMessageBody = lens _smbreMessageBody (\s a -> s { _smbreMessageBody = a })--instance FromXML SendMessageBatchRequestEntry where- parseXML x = SendMessageBatchRequestEntry- <$> x .@? "DelaySeconds"- <*> x .@ "Id"- <*> parseXML x- <*> x .@ "MessageBody"--instance ToQuery SendMessageBatchRequestEntry where- toQuery SendMessageBatchRequestEntry{..} = mconcat- [ "DelaySeconds" =? _smbreDelaySeconds- , "Id" =? _smbreId- , toQuery _smbreMessageAttributes- , "MessageBody" =? _smbreMessageBody- ]+ check e+ | has (hasCode "RequestThrottled" . hasStatus 403) e =+ Just "request_limit_exceeded"+ | 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 -data SendMessageBatchResultEntry = SendMessageBatchResultEntry- { _smbre1Id :: Text- , _smbre1MD5OfMessageAttributes :: Maybe Text- , _smbre1MD5OfMessageBody :: Text- , _smbre1MessageId :: Text- } deriving (Eq, Ord, Read, Show)+-- | The 'Id' of a batch entry in a batch request does not abide by the+-- specification.+_InvalidBatchEntryId :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidBatchEntryId =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.InvalidBatchEntryId" --- | 'SendMessageBatchResultEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'smbre1Id' @::@ 'Text'------ * 'smbre1MD5OfMessageAttributes' @::@ 'Maybe' 'Text'------ * 'smbre1MD5OfMessageBody' @::@ 'Text'------ * 'smbre1MessageId' @::@ 'Text'----sendMessageBatchResultEntry :: Text -- ^ 'smbre1Id'- -> Text -- ^ 'smbre1MessageId'- -> Text -- ^ 'smbre1MD5OfMessageBody'- -> SendMessageBatchResultEntry-sendMessageBatchResultEntry p1 p2 p3 = SendMessageBatchResultEntry- { _smbre1Id = p1- , _smbre1MessageId = p2- , _smbre1MD5OfMessageBody = p3- , _smbre1MD5OfMessageAttributes = Nothing- }+-- | Batch request contains more number of entries than permissible.+_TooManyEntriesInBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError+_TooManyEntriesInBatchRequest =+ _ServiceError .+ hasStatus 400 .+ hasCode "AWS.SimpleQueueService.TooManyEntriesInBatchRequest" --- | An identifier for the message in this batch.-smbre1Id :: Lens' SendMessageBatchResultEntry Text-smbre1Id = lens _smbre1Id (\s a -> s { _smbre1Id = a })+-- | The attribute referred to does not exist.+_InvalidAttributeName :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidAttributeName = _ServiceError . hasCode "InvalidAttributeName" --- | An MD5 digest of the non-URL-encoded message attribute string. This can be--- used to verify that Amazon SQS received the message batch correctly. Amazon--- SQS first URL decodes the message before creating the MD5 digest. For--- information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.-smbre1MD5OfMessageAttributes :: Lens' SendMessageBatchResultEntry (Maybe Text)-smbre1MD5OfMessageAttributes =- lens _smbre1MD5OfMessageAttributes- (\s a -> s { _smbre1MD5OfMessageAttributes = a })+-- | You must wait 60 seconds after deleting a queue before you can create+-- another with the same name.+_QueueDeletedRecently :: AsError a => Getting (First ServiceError) a ServiceError+_QueueDeletedRecently =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.QueueDeletedRecently" --- | An MD5 digest of the non-URL-encoded message body string. This can be used to--- verify that Amazon SQS received the message correctly. Amazon SQS first URL--- decodes the message before creating the MD5 digest. For information about--- MD5, go to <http://www.faqs.org/rfcs/rfc1321.html http://www.faqs.org/rfcs/rfc1321.html>.-smbre1MD5OfMessageBody :: Lens' SendMessageBatchResultEntry Text-smbre1MD5OfMessageBody =- lens _smbre1MD5OfMessageBody (\s a -> s { _smbre1MD5OfMessageBody = a })+-- | The queue referred to does not exist.+_QueueDoesNotExist :: AsError a => Getting (First ServiceError) a ServiceError+_QueueDoesNotExist =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.NonExistentQueue" --- | An identifier for the message.-smbre1MessageId :: Lens' SendMessageBatchResultEntry Text-smbre1MessageId = lens _smbre1MessageId (\s a -> s { _smbre1MessageId = a })+-- | Error code 400. Unsupported operation.+_UnsupportedOperation :: AsError a => Getting (First ServiceError) a ServiceError+_UnsupportedOperation =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.UnsupportedOperation" -instance FromXML SendMessageBatchResultEntry where- parseXML x = SendMessageBatchResultEntry- <$> x .@ "Id"- <*> x .@? "MD5OfMessageAttributes"- <*> x .@ "MD5OfMessageBody"- <*> x .@ "MessageId"+-- | The message contains characters outside the allowed set.+_InvalidMessageContents :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidMessageContents = _ServiceError . hasCode "InvalidMessageContents" -instance ToQuery SendMessageBatchResultEntry where- toQuery SendMessageBatchResultEntry{..} = mconcat- [ "Id" =? _smbre1Id- , "MD5OfMessageAttributes" =? _smbre1MD5OfMessageAttributes- , "MD5OfMessageBody" =? _smbre1MD5OfMessageBody- , "MessageId" =? _smbre1MessageId- ]+-- | The length of all the messages put together is more than the limit.+_BatchRequestTooLong :: AsError a => Getting (First ServiceError) a ServiceError+_BatchRequestTooLong =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.BatchRequestTooLong" -data BatchResultErrorEntry = BatchResultErrorEntry- { _breeCode :: Text- , _breeId :: Text- , _breeMessage :: Maybe Text- , _breeSenderFault :: Bool- } deriving (Eq, Ord, Read, Show)+-- | The action that you requested would violate a limit. For example,+-- ReceiveMessage returns this error if the maximum number of messages+-- inflight has already been reached. AddPermission returns this error if+-- the maximum number of permissions for the queue has already been+-- reached.+_OverLimit :: AsError a => Getting (First ServiceError) a ServiceError+_OverLimit = _ServiceError . hasStatus 403 . hasCode "OverLimit" --- | 'BatchResultErrorEntry' constructor.------ The fields accessible through corresponding lenses are:------ * 'breeCode' @::@ 'Text'------ * 'breeId' @::@ 'Text'------ * 'breeMessage' @::@ 'Maybe' 'Text'------ * 'breeSenderFault' @::@ 'Bool'----batchResultErrorEntry :: Text -- ^ 'breeId'- -> Bool -- ^ 'breeSenderFault'- -> Text -- ^ 'breeCode'- -> BatchResultErrorEntry-batchResultErrorEntry p1 p2 p3 = BatchResultErrorEntry- { _breeId = p1- , _breeSenderFault = p2- , _breeCode = p3- , _breeMessage = Nothing- }+-- | Indicates that the specified queue previously received a 'PurgeQueue'+-- request within the last 60 seconds, the time it can take to delete the+-- messages in the queue.+_PurgeQueueInProgress :: AsError a => Getting (First ServiceError) a ServiceError+_PurgeQueueInProgress =+ _ServiceError .+ hasStatus 403 . hasCode "AWS.SimpleQueueService.PurgeQueueInProgress" --- | An error code representing why the action failed on this entry.-breeCode :: Lens' BatchResultErrorEntry Text-breeCode = lens _breeCode (\s a -> s { _breeCode = a })+-- | A queue already exists with this name. Amazon SQS returns this error+-- only if the request includes attributes whose values differ from those+-- of the existing queue.+_QueueNameExists :: AsError a => Getting (First ServiceError) a ServiceError+_QueueNameExists = _ServiceError . hasStatus 400 . hasCode "QueueAlreadyExists" --- | The id of an entry in a batch request.-breeId :: Lens' BatchResultErrorEntry Text-breeId = lens _breeId (\s a -> s { _breeId = a })+-- | The receipt handle is not valid for the current version.+_InvalidIdFormat :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidIdFormat = _ServiceError . hasCode "InvalidIdFormat" --- | A message explaining why the action failed on this entry.-breeMessage :: Lens' BatchResultErrorEntry (Maybe Text)-breeMessage = lens _breeMessage (\s a -> s { _breeMessage = a })+-- | The receipt handle provided is not valid.+_ReceiptHandleIsInvalid :: AsError a => Getting (First ServiceError) a ServiceError+_ReceiptHandleIsInvalid = _ServiceError . hasCode "ReceiptHandleIsInvalid" --- | Whether the error happened due to the sender's fault.-breeSenderFault :: Lens' BatchResultErrorEntry Bool-breeSenderFault = lens _breeSenderFault (\s a -> s { _breeSenderFault = a })+-- | Batch request does not contain an entry.+_EmptyBatchRequest :: AsError a => Getting (First ServiceError) a ServiceError+_EmptyBatchRequest =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.EmptyBatchRequest" -instance FromXML BatchResultErrorEntry where- parseXML x = BatchResultErrorEntry- <$> x .@ "Code"- <*> x .@ "Id"- <*> x .@? "Message"- <*> x .@ "SenderFault"+-- | The message referred to is not in flight.+_MessageNotInflight :: AsError a => Getting (First ServiceError) a ServiceError+_MessageNotInflight =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.MessageNotInflight" -instance ToQuery BatchResultErrorEntry where- toQuery BatchResultErrorEntry{..} = mconcat- [ "Code" =? _breeCode- , "Id" =? _breeId- , "Message" =? _breeMessage- , "SenderFault" =? _breeSenderFault- ]+-- | Two or more batch entries have the same 'Id' in the request.+_BatchEntryIdsNotDistinct :: AsError a => Getting (First ServiceError) a ServiceError+_BatchEntryIdsNotDistinct =+ _ServiceError .+ hasStatus 400 . hasCode "AWS.SimpleQueueService.BatchEntryIdsNotDistinct"
+ gen/Network/AWS/SQS/Types/Product.hs view
@@ -0,0 +1,562 @@+{-# 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.SQS.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.SQS.Types.Product where++import Network.AWS.Prelude+import Network.AWS.SQS.Types.Sum++-- | This is used in the responses of batch API to give a detailed+-- description of the result of an action on each entry in the request.+--+-- /See:/ 'batchResultErrorEntry' smart constructor.+data BatchResultErrorEntry = BatchResultErrorEntry'+ { _breeMessage :: !(Maybe Text)+ , _breeId :: !Text+ , _breeSenderFault :: !Bool+ , _breeCode :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'BatchResultErrorEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'breeMessage'+--+-- * 'breeId'+--+-- * 'breeSenderFault'+--+-- * 'breeCode'+batchResultErrorEntry+ :: Text -- ^ 'breeId'+ -> Bool -- ^ 'breeSenderFault'+ -> Text -- ^ 'breeCode'+ -> BatchResultErrorEntry+batchResultErrorEntry pId_ pSenderFault_ pCode_ =+ BatchResultErrorEntry'+ { _breeMessage = Nothing+ , _breeId = pId_+ , _breeSenderFault = pSenderFault_+ , _breeCode = pCode_+ }++-- | A message explaining why the action failed on this entry.+breeMessage :: Lens' BatchResultErrorEntry (Maybe Text)+breeMessage = lens _breeMessage (\ s a -> s{_breeMessage = a});++-- | The id of an entry in a batch request.+breeId :: Lens' BatchResultErrorEntry Text+breeId = lens _breeId (\ s a -> s{_breeId = a});++-- | Whether the error happened due to the sender\'s fault.+breeSenderFault :: Lens' BatchResultErrorEntry Bool+breeSenderFault = lens _breeSenderFault (\ s a -> s{_breeSenderFault = a});++-- | An error code representing why the action failed on this entry.+breeCode :: Lens' BatchResultErrorEntry Text+breeCode = lens _breeCode (\ s a -> s{_breeCode = a});++instance FromXML BatchResultErrorEntry where+ parseXML x+ = BatchResultErrorEntry' <$>+ (x .@? "Message") <*> (x .@ "Id") <*>+ (x .@ "SenderFault")+ <*> (x .@ "Code")++-- | Encloses a receipt handle and an entry id for each message in+-- ChangeMessageVisibilityBatch.+--+-- All of the following parameters are list parameters that must be+-- prefixed with 'ChangeMessageVisibilityBatchRequestEntry.n', where 'n' is+-- an integer value starting with 1. For example, a parameter list for this+-- action might look like this:+--+-- '&ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2'+--+-- '&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=Your_Receipt_Handle'+--+-- '&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45'+--+-- /See:/ 'changeMessageVisibilityBatchRequestEntry' smart constructor.+data ChangeMessageVisibilityBatchRequestEntry = ChangeMessageVisibilityBatchRequestEntry'+ { _cVisibilityTimeout :: !(Maybe Int)+ , _cId :: !Text+ , _cReceiptHandle :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChangeMessageVisibilityBatchRequestEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cVisibilityTimeout'+--+-- * 'cId'+--+-- * 'cReceiptHandle'+changeMessageVisibilityBatchRequestEntry+ :: Text -- ^ 'cId'+ -> Text -- ^ 'cReceiptHandle'+ -> ChangeMessageVisibilityBatchRequestEntry+changeMessageVisibilityBatchRequestEntry pId_ pReceiptHandle_ =+ ChangeMessageVisibilityBatchRequestEntry'+ { _cVisibilityTimeout = Nothing+ , _cId = pId_+ , _cReceiptHandle = pReceiptHandle_+ }++-- | The new value (in seconds) for the message\'s visibility timeout.+cVisibilityTimeout :: Lens' ChangeMessageVisibilityBatchRequestEntry (Maybe Int)+cVisibilityTimeout = lens _cVisibilityTimeout (\ s a -> s{_cVisibilityTimeout = a});++-- | An identifier for this particular receipt handle. This is used to+-- communicate the result. Note that the 'Id's of a batch request need to+-- be unique within the request.+cId :: Lens' ChangeMessageVisibilityBatchRequestEntry Text+cId = lens _cId (\ s a -> s{_cId = a});++-- | A receipt handle.+cReceiptHandle :: Lens' ChangeMessageVisibilityBatchRequestEntry Text+cReceiptHandle = lens _cReceiptHandle (\ s a -> s{_cReceiptHandle = a});++instance ToQuery+ ChangeMessageVisibilityBatchRequestEntry where+ toQuery ChangeMessageVisibilityBatchRequestEntry'{..}+ = mconcat+ ["VisibilityTimeout" =: _cVisibilityTimeout,+ "Id" =: _cId, "ReceiptHandle" =: _cReceiptHandle]++-- | Encloses the id of an entry in ChangeMessageVisibilityBatch.+--+-- /See:/ 'changeMessageVisibilityBatchResultEntry' smart constructor.+newtype ChangeMessageVisibilityBatchResultEntry = ChangeMessageVisibilityBatchResultEntry'+ { _cmvbreId :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChangeMessageVisibilityBatchResultEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmvbreId'+changeMessageVisibilityBatchResultEntry+ :: Text -- ^ 'cmvbreId'+ -> ChangeMessageVisibilityBatchResultEntry+changeMessageVisibilityBatchResultEntry pId_ =+ ChangeMessageVisibilityBatchResultEntry'+ { _cmvbreId = pId_+ }++-- | Represents a message whose visibility timeout has been changed+-- successfully.+cmvbreId :: Lens' ChangeMessageVisibilityBatchResultEntry Text+cmvbreId = lens _cmvbreId (\ s a -> s{_cmvbreId = a});++instance FromXML+ ChangeMessageVisibilityBatchResultEntry where+ parseXML x+ = ChangeMessageVisibilityBatchResultEntry' <$>+ (x .@ "Id")++-- | Encloses a receipt handle and an identifier for it.+--+-- /See:/ 'deleteMessageBatchRequestEntry' smart constructor.+data DeleteMessageBatchRequestEntry = DeleteMessageBatchRequestEntry'+ { _dmbreId :: !Text+ , _dmbreReceiptHandle :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteMessageBatchRequestEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dmbreId'+--+-- * 'dmbreReceiptHandle'+deleteMessageBatchRequestEntry+ :: Text -- ^ 'dmbreId'+ -> Text -- ^ 'dmbreReceiptHandle'+ -> DeleteMessageBatchRequestEntry+deleteMessageBatchRequestEntry pId_ pReceiptHandle_ =+ DeleteMessageBatchRequestEntry'+ { _dmbreId = pId_+ , _dmbreReceiptHandle = pReceiptHandle_+ }++-- | An identifier for this particular receipt handle. This is used to+-- communicate the result. Note that the 'Id's of a batch request need to+-- be unique within the request.+dmbreId :: Lens' DeleteMessageBatchRequestEntry Text+dmbreId = lens _dmbreId (\ s a -> s{_dmbreId = a});++-- | A receipt handle.+dmbreReceiptHandle :: Lens' DeleteMessageBatchRequestEntry Text+dmbreReceiptHandle = lens _dmbreReceiptHandle (\ s a -> s{_dmbreReceiptHandle = a});++instance ToQuery DeleteMessageBatchRequestEntry where+ toQuery DeleteMessageBatchRequestEntry'{..}+ = mconcat+ ["Id" =: _dmbreId,+ "ReceiptHandle" =: _dmbreReceiptHandle]++-- | Encloses the id an entry in DeleteMessageBatch.+--+-- /See:/ 'deleteMessageBatchResultEntry' smart constructor.+newtype DeleteMessageBatchResultEntry = DeleteMessageBatchResultEntry'+ { _dId :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteMessageBatchResultEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dId'+deleteMessageBatchResultEntry+ :: Text -- ^ 'dId'+ -> DeleteMessageBatchResultEntry+deleteMessageBatchResultEntry pId_ =+ DeleteMessageBatchResultEntry'+ { _dId = pId_+ }++-- | Represents a successfully deleted message.+dId :: Lens' DeleteMessageBatchResultEntry Text+dId = lens _dId (\ s a -> s{_dId = a});++instance FromXML DeleteMessageBatchResultEntry where+ parseXML x+ = DeleteMessageBatchResultEntry' <$> (x .@ "Id")++-- | An Amazon SQS message.+--+-- /See:/ 'message' smart constructor.+data Message = Message'+ { _mMessageAttributes :: !(Maybe (Map Text MessageAttributeValue))+ , _mMD5OfBody :: !(Maybe Text)+ , _mBody :: !(Maybe Text)+ , _mAttributes :: !(Maybe (Map QueueAttributeName Text))+ , _mMessageId :: !(Maybe Text)+ , _mReceiptHandle :: !(Maybe Text)+ , _mMD5OfMessageAttributes :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Message' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mMessageAttributes'+--+-- * 'mMD5OfBody'+--+-- * 'mBody'+--+-- * 'mAttributes'+--+-- * 'mMessageId'+--+-- * 'mReceiptHandle'+--+-- * 'mMD5OfMessageAttributes'+message+ :: Message+message =+ Message'+ { _mMessageAttributes = Nothing+ , _mMD5OfBody = Nothing+ , _mBody = Nothing+ , _mAttributes = Nothing+ , _mMessageId = Nothing+ , _mReceiptHandle = Nothing+ , _mMD5OfMessageAttributes = Nothing+ }++-- | Each message attribute consists of a Name, Type, and Value. For more+-- information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>.+mMessageAttributes :: Lens' Message (HashMap Text MessageAttributeValue)+mMessageAttributes = lens _mMessageAttributes (\ s a -> s{_mMessageAttributes = a}) . _Default . _Map;++-- | An MD5 digest of the non-URL-encoded message body string.+mMD5OfBody :: Lens' Message (Maybe Text)+mMD5OfBody = lens _mMD5OfBody (\ s a -> s{_mMD5OfBody = a});++-- | The message\'s contents (not URL-encoded).+mBody :: Lens' Message (Maybe Text)+mBody = lens _mBody (\ s a -> s{_mBody = a});++-- | 'SenderId', 'SentTimestamp', 'ApproximateReceiveCount', and\/or+-- 'ApproximateFirstReceiveTimestamp'. 'SentTimestamp' and+-- 'ApproximateFirstReceiveTimestamp' are each returned as an integer+-- representing the <http://en.wikipedia.org/wiki/Unix_time epoch time> in+-- milliseconds.+mAttributes :: Lens' Message (HashMap QueueAttributeName Text)+mAttributes = lens _mAttributes (\ s a -> s{_mAttributes = a}) . _Default . _Map;++-- | A unique identifier for the message. Message IDs are considered unique+-- across all AWS accounts for an extended period of time.+mMessageId :: Lens' Message (Maybe Text)+mMessageId = lens _mMessageId (\ s a -> s{_mMessageId = a});++-- | An identifier associated with the act of receiving the message. A new+-- receipt handle is returned every time you receive a message. When+-- deleting a message, you provide the last received receipt handle to+-- delete the message.+mReceiptHandle :: Lens' Message (Maybe Text)+mReceiptHandle = lens _mReceiptHandle (\ s a -> s{_mReceiptHandle = a});++-- | An MD5 digest of the non-URL-encoded message attribute string. This can+-- be used to verify that Amazon SQS received the message correctly. Amazon+-- SQS first URL decodes the message before creating the MD5 digest. For+-- information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html>.+mMD5OfMessageAttributes :: Lens' Message (Maybe Text)+mMD5OfMessageAttributes = lens _mMD5OfMessageAttributes (\ s a -> s{_mMD5OfMessageAttributes = a});++instance FromXML Message where+ parseXML x+ = Message' <$>+ (may (parseXMLMap "MessageAttribute" "Name" "Value")+ x)+ <*> (x .@? "MD5OfBody")+ <*> (x .@? "Body")+ <*> (may (parseXMLMap "Attribute" "Name" "Value") x)+ <*> (x .@? "MessageId")+ <*> (x .@? "ReceiptHandle")+ <*> (x .@? "MD5OfMessageAttributes")++-- | The user-specified message attribute value. For string data types, the+-- value attribute has the same restrictions on the content as the message+-- body. For more information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html SendMessage>.+--+-- Name, type, and value must not be empty or null. In addition, the+-- message body should not be empty or null. All parts of the message+-- attribute, including name, type, and value, are included in the message+-- size restriction, which is currently 256 KB (262,144 bytes).+--+-- /See:/ 'messageAttributeValue' smart constructor.+data MessageAttributeValue = MessageAttributeValue'+ { _mavBinaryValue :: !(Maybe Base64)+ , _mavStringListValues :: !(Maybe [Text])+ , _mavStringValue :: !(Maybe Text)+ , _mavBinaryListValues :: !(Maybe [Base64])+ , _mavDataType :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'MessageAttributeValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mavBinaryValue'+--+-- * 'mavStringListValues'+--+-- * 'mavStringValue'+--+-- * 'mavBinaryListValues'+--+-- * 'mavDataType'+messageAttributeValue+ :: Text -- ^ 'mavDataType'+ -> MessageAttributeValue+messageAttributeValue pDataType_ =+ MessageAttributeValue'+ { _mavBinaryValue = Nothing+ , _mavStringListValues = Nothing+ , _mavStringValue = Nothing+ , _mavBinaryListValues = Nothing+ , _mavDataType = pDataType_+ }++-- | Binary type attributes can store any binary data, for example,+-- compressed data, encrypted data, or images.+mavBinaryValue :: Lens' MessageAttributeValue (Maybe ByteString)+mavBinaryValue = lens _mavBinaryValue (\ s a -> s{_mavBinaryValue = a}) . mapping _Base64;++-- | Not implemented. Reserved for future use.+mavStringListValues :: Lens' MessageAttributeValue [Text]+mavStringListValues = lens _mavStringListValues (\ s a -> s{_mavStringListValues = a}) . _Default . _Coerce;++-- | Strings are Unicode with UTF8 binary encoding. For a list of code+-- values, see+-- <http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters>.+mavStringValue :: Lens' MessageAttributeValue (Maybe Text)+mavStringValue = lens _mavStringValue (\ s a -> s{_mavStringValue = a});++-- | Not implemented. Reserved for future use.+mavBinaryListValues :: Lens' MessageAttributeValue [ByteString]+mavBinaryListValues = lens _mavBinaryListValues (\ s a -> s{_mavBinaryListValues = a}) . _Default . _Coerce;++-- | Amazon SQS supports the following logical data types: String, Number,+-- and Binary. In addition, you can append your own custom labels. For more+-- information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributes.DataTypes Message Attribute Data Types>.+mavDataType :: Lens' MessageAttributeValue Text+mavDataType = lens _mavDataType (\ s a -> s{_mavDataType = a});++instance FromXML MessageAttributeValue where+ parseXML x+ = MessageAttributeValue' <$>+ (x .@? "BinaryValue") <*>+ (x .@? "StringListValue" .!@ mempty >>=+ may (parseXMLList "StringListValue"))+ <*> (x .@? "StringValue")+ <*>+ (x .@? "BinaryListValue" .!@ mempty >>=+ may (parseXMLList "BinaryListValue"))+ <*> (x .@ "DataType")++instance ToQuery MessageAttributeValue where+ toQuery MessageAttributeValue'{..}+ = mconcat+ ["BinaryValue" =: _mavBinaryValue,+ "StringListValue" =:+ toQuery+ (toQueryList "StringListValue" <$>+ _mavStringListValues),+ "StringValue" =: _mavStringValue,+ "BinaryListValue" =:+ toQuery+ (toQueryList "BinaryListValue" <$>+ _mavBinaryListValues),+ "DataType" =: _mavDataType]++-- | Contains the details of a single Amazon SQS message along with a 'Id'.+--+-- /See:/ 'sendMessageBatchRequestEntry' smart constructor.+data SendMessageBatchRequestEntry = SendMessageBatchRequestEntry'+ { _sMessageAttributes :: !(Maybe (Map Text MessageAttributeValue))+ , _sDelaySeconds :: !(Maybe Int)+ , _sId :: !Text+ , _sMessageBody :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SendMessageBatchRequestEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sMessageAttributes'+--+-- * 'sDelaySeconds'+--+-- * 'sId'+--+-- * 'sMessageBody'+sendMessageBatchRequestEntry+ :: Text -- ^ 'sId'+ -> Text -- ^ 'sMessageBody'+ -> SendMessageBatchRequestEntry+sendMessageBatchRequestEntry pId_ pMessageBody_ =+ SendMessageBatchRequestEntry'+ { _sMessageAttributes = Nothing+ , _sDelaySeconds = Nothing+ , _sId = pId_+ , _sMessageBody = pMessageBody_+ }++-- | Each message attribute consists of a Name, Type, and Value. For more+-- information, see+-- <http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV Message Attribute Items>.+sMessageAttributes :: Lens' SendMessageBatchRequestEntry (HashMap Text MessageAttributeValue)+sMessageAttributes = lens _sMessageAttributes (\ s a -> s{_sMessageAttributes = a}) . _Default . _Map;++-- | The number of seconds for which the message has to be delayed.+sDelaySeconds :: Lens' SendMessageBatchRequestEntry (Maybe Int)+sDelaySeconds = lens _sDelaySeconds (\ s a -> s{_sDelaySeconds = a});++-- | An identifier for the message in this batch. This is used to communicate+-- the result. Note that the 'Id's of a batch request need to be unique+-- within the request.+sId :: Lens' SendMessageBatchRequestEntry Text+sId = lens _sId (\ s a -> s{_sId = a});++-- | Body of the message.+sMessageBody :: Lens' SendMessageBatchRequestEntry Text+sMessageBody = lens _sMessageBody (\ s a -> s{_sMessageBody = a});++instance ToQuery SendMessageBatchRequestEntry where+ toQuery SendMessageBatchRequestEntry'{..}+ = mconcat+ [toQuery+ (toQueryMap "MessageAttribute" "Name" "Value" <$>+ _sMessageAttributes),+ "DelaySeconds" =: _sDelaySeconds, "Id" =: _sId,+ "MessageBody" =: _sMessageBody]++-- | Encloses a message ID for successfully enqueued message of a+-- SendMessageBatch.+--+-- /See:/ 'sendMessageBatchResultEntry' smart constructor.+data SendMessageBatchResultEntry = SendMessageBatchResultEntry'+ { _smbreMD5OfMessageAttributes :: !(Maybe Text)+ , _smbreId :: !Text+ , _smbreMessageId :: !Text+ , _smbreMD5OfMessageBody :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SendMessageBatchResultEntry' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'smbreMD5OfMessageAttributes'+--+-- * 'smbreId'+--+-- * 'smbreMessageId'+--+-- * 'smbreMD5OfMessageBody'+sendMessageBatchResultEntry+ :: Text -- ^ 'smbreId'+ -> Text -- ^ 'smbreMessageId'+ -> Text -- ^ 'smbreMD5OfMessageBody'+ -> SendMessageBatchResultEntry+sendMessageBatchResultEntry pId_ pMessageId_ pMD5OfMessageBody_ =+ SendMessageBatchResultEntry'+ { _smbreMD5OfMessageAttributes = Nothing+ , _smbreId = pId_+ , _smbreMessageId = pMessageId_+ , _smbreMD5OfMessageBody = pMD5OfMessageBody_+ }++-- | An MD5 digest of the non-URL-encoded message attribute string. This can+-- be used to verify that Amazon SQS received the message batch correctly.+-- Amazon SQS first URL decodes the message before creating the MD5 digest.+-- For information about MD5, go to+-- <http://www.faqs.org/rfcs/rfc1321.html>.+smbreMD5OfMessageAttributes :: Lens' SendMessageBatchResultEntry (Maybe Text)+smbreMD5OfMessageAttributes = lens _smbreMD5OfMessageAttributes (\ s a -> s{_smbreMD5OfMessageAttributes = a});++-- | An identifier for the message in this batch.+smbreId :: Lens' SendMessageBatchResultEntry Text+smbreId = lens _smbreId (\ s a -> s{_smbreId = a});++-- | An identifier for the message.+smbreMessageId :: Lens' SendMessageBatchResultEntry Text+smbreMessageId = lens _smbreMessageId (\ s a -> s{_smbreMessageId = a});++-- | An MD5 digest of the non-URL-encoded message body string. This can be+-- used to verify that Amazon SQS received the message correctly. Amazon+-- SQS first URL decodes the message before creating the MD5 digest. For+-- information about MD5, go to <http://www.faqs.org/rfcs/rfc1321.html>.+smbreMD5OfMessageBody :: Lens' SendMessageBatchResultEntry Text+smbreMD5OfMessageBody = lens _smbreMD5OfMessageBody (\ s a -> s{_smbreMD5OfMessageBody = a});++instance FromXML SendMessageBatchResultEntry where+ parseXML x+ = SendMessageBatchResultEntry' <$>+ (x .@? "MD5OfMessageAttributes") <*> (x .@ "Id") <*>+ (x .@ "MessageId")+ <*> (x .@ "MD5OfMessageBody")
+ gen/Network/AWS/SQS/Types/Sum.hs view
@@ -0,0 +1,78 @@+{-# 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.SQS.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.SQS.Types.Sum where++import Network.AWS.Prelude++data QueueAttributeName+ = ApproximateNumberOfMessages+ | ApproximateNumberOfMessagesDelayed+ | ApproximateNumberOfMessagesNotVisible+ | CreatedTimestamp+ | DelaySeconds+ | LastModifiedTimestamp+ | MaximumMessageSize+ | MessageRetentionPeriod+ | Policy+ | QueueARN+ | ReceiveMessageWaitTimeSeconds+ | RedrivePolicy+ | VisibilityTimeout+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText QueueAttributeName where+ parser = takeLowerText >>= \case+ "approximatenumberofmessages" -> pure ApproximateNumberOfMessages+ "approximatenumberofmessagesdelayed" -> pure ApproximateNumberOfMessagesDelayed+ "approximatenumberofmessagesnotvisible" -> pure ApproximateNumberOfMessagesNotVisible+ "createdtimestamp" -> pure CreatedTimestamp+ "delayseconds" -> pure DelaySeconds+ "lastmodifiedtimestamp" -> pure LastModifiedTimestamp+ "maximummessagesize" -> pure MaximumMessageSize+ "messageretentionperiod" -> pure MessageRetentionPeriod+ "policy" -> pure Policy+ "queuearn" -> pure QueueARN+ "receivemessagewaittimeseconds" -> pure ReceiveMessageWaitTimeSeconds+ "redrivepolicy" -> pure RedrivePolicy+ "visibilitytimeout" -> pure VisibilityTimeout+ e -> fromTextError $ "Failure parsing QueueAttributeName from value: '" <> e+ <> "'. Accepted values: approximatenumberofmessages, approximatenumberofmessagesdelayed, approximatenumberofmessagesnotvisible, createdtimestamp, delayseconds, lastmodifiedtimestamp, maximummessagesize, messageretentionperiod, policy, queuearn, receivemessagewaittimeseconds, redrivepolicy, visibilitytimeout"++instance ToText QueueAttributeName where+ toText = \case+ ApproximateNumberOfMessages -> "approximatenumberofmessages"+ ApproximateNumberOfMessagesDelayed -> "approximatenumberofmessagesdelayed"+ ApproximateNumberOfMessagesNotVisible -> "approximatenumberofmessagesnotvisible"+ CreatedTimestamp -> "createdtimestamp"+ DelaySeconds -> "delayseconds"+ LastModifiedTimestamp -> "lastmodifiedtimestamp"+ MaximumMessageSize -> "maximummessagesize"+ MessageRetentionPeriod -> "messageretentionperiod"+ Policy -> "policy"+ QueueARN -> "queuearn"+ ReceiveMessageWaitTimeSeconds -> "receivemessagewaittimeseconds"+ RedrivePolicy -> "redrivepolicy"+ VisibilityTimeout -> "visibilitytimeout"++instance Hashable QueueAttributeName+instance ToByteString QueueAttributeName+instance ToQuery QueueAttributeName+instance ToHeader QueueAttributeName++instance FromXML QueueAttributeName where+ parseXML = parseXMLText "QueueAttributeName"
+ gen/Network/AWS/SQS/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.SQS.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.SQS.Waiters where++import Network.AWS.Prelude+import Network.AWS.SQS.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.SQS+import Test.AWS.SQS.Internal++main :: IO ()+main = defaultMain $ testGroup "SQS"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/Gen/SQS.hs view
@@ -0,0 +1,328 @@+{-# 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.SQS+-- 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.SQS where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.SQS+import Test.AWS.SQS.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"+-- [ testGetQueueURL $+-- getQueueURL+--+-- , testPurgeQueue $+-- purgeQueue+--+-- , testSendMessage $+-- sendMessage+--+-- , testChangeMessageVisibilityBatch $+-- changeMessageVisibilityBatch+--+-- , testRemovePermission $+-- removePermission+--+-- , testGetQueueAttributes $+-- getQueueAttributes+--+-- , testListQueues $+-- listQueues+--+-- , testReceiveMessage $+-- receiveMessage+--+-- , testDeleteQueue $+-- deleteQueue+--+-- , testDeleteMessageBatch $+-- deleteMessageBatch+--+-- , testSetQueueAttributes $+-- setQueueAttributes+--+-- , testListDeadLetterSourceQueues $+-- listDeadLetterSourceQueues+--+-- , testAddPermission $+-- addPermission+--+-- , testDeleteMessage $+-- deleteMessage+--+-- , testCreateQueue $+-- createQueue+--+-- , testChangeMessageVisibility $+-- changeMessageVisibility+--+-- , testSendMessageBatch $+-- sendMessageBatch+--+-- ]++-- , testGroup "response"+-- [ testGetQueueURLResponse $+-- getQueueURLResponse+--+-- , testPurgeQueueResponse $+-- purgeQueueResponse+--+-- , testSendMessageResponse $+-- sendMessageResponse+--+-- , testChangeMessageVisibilityBatchResponse $+-- changeMessageVisibilityBatchResponse+--+-- , testRemovePermissionResponse $+-- removePermissionResponse+--+-- , testGetQueueAttributesResponse $+-- getQueueAttributesResponse+--+-- , testListQueuesResponse $+-- listQueuesResponse+--+-- , testReceiveMessageResponse $+-- receiveMessageResponse+--+-- , testDeleteQueueResponse $+-- deleteQueueResponse+--+-- , testDeleteMessageBatchResponse $+-- deleteMessageBatchResponse+--+-- , testSetQueueAttributesResponse $+-- setQueueAttributesResponse+--+-- , testListDeadLetterSourceQueuesResponse $+-- listDeadLetterSourceQueuesResponse+--+-- , testAddPermissionResponse $+-- addPermissionResponse+--+-- , testDeleteMessageResponse $+-- deleteMessageResponse+--+-- , testCreateQueueResponse $+-- createQueueResponse+--+-- , testChangeMessageVisibilityResponse $+-- changeMessageVisibilityResponse+--+-- , testSendMessageBatchResponse $+-- sendMessageBatchResponse+--+-- ]+-- ]++-- Requests++testGetQueueURL :: GetQueueURL -> TestTree+testGetQueueURL = req+ "GetQueueURL"+ "fixture/GetQueueURL"++testPurgeQueue :: PurgeQueue -> TestTree+testPurgeQueue = req+ "PurgeQueue"+ "fixture/PurgeQueue"++testSendMessage :: SendMessage -> TestTree+testSendMessage = req+ "SendMessage"+ "fixture/SendMessage"++testChangeMessageVisibilityBatch :: ChangeMessageVisibilityBatch -> TestTree+testChangeMessageVisibilityBatch = req+ "ChangeMessageVisibilityBatch"+ "fixture/ChangeMessageVisibilityBatch"++testRemovePermission :: RemovePermission -> TestTree+testRemovePermission = req+ "RemovePermission"+ "fixture/RemovePermission"++testGetQueueAttributes :: GetQueueAttributes -> TestTree+testGetQueueAttributes = req+ "GetQueueAttributes"+ "fixture/GetQueueAttributes"++testListQueues :: ListQueues -> TestTree+testListQueues = req+ "ListQueues"+ "fixture/ListQueues"++testReceiveMessage :: ReceiveMessage -> TestTree+testReceiveMessage = req+ "ReceiveMessage"+ "fixture/ReceiveMessage"++testDeleteQueue :: DeleteQueue -> TestTree+testDeleteQueue = req+ "DeleteQueue"+ "fixture/DeleteQueue"++testDeleteMessageBatch :: DeleteMessageBatch -> TestTree+testDeleteMessageBatch = req+ "DeleteMessageBatch"+ "fixture/DeleteMessageBatch"++testSetQueueAttributes :: SetQueueAttributes -> TestTree+testSetQueueAttributes = req+ "SetQueueAttributes"+ "fixture/SetQueueAttributes"++testListDeadLetterSourceQueues :: ListDeadLetterSourceQueues -> TestTree+testListDeadLetterSourceQueues = req+ "ListDeadLetterSourceQueues"+ "fixture/ListDeadLetterSourceQueues"++testAddPermission :: AddPermission -> TestTree+testAddPermission = req+ "AddPermission"+ "fixture/AddPermission"++testDeleteMessage :: DeleteMessage -> TestTree+testDeleteMessage = req+ "DeleteMessage"+ "fixture/DeleteMessage"++testCreateQueue :: CreateQueue -> TestTree+testCreateQueue = req+ "CreateQueue"+ "fixture/CreateQueue"++testChangeMessageVisibility :: ChangeMessageVisibility -> TestTree+testChangeMessageVisibility = req+ "ChangeMessageVisibility"+ "fixture/ChangeMessageVisibility"++testSendMessageBatch :: SendMessageBatch -> TestTree+testSendMessageBatch = req+ "SendMessageBatch"+ "fixture/SendMessageBatch"++-- Responses++testGetQueueURLResponse :: GetQueueURLResponse -> TestTree+testGetQueueURLResponse = res+ "GetQueueURLResponse"+ "fixture/GetQueueURLResponse"+ (Proxy :: Proxy GetQueueURL)++testPurgeQueueResponse :: PurgeQueueResponse -> TestTree+testPurgeQueueResponse = res+ "PurgeQueueResponse"+ "fixture/PurgeQueueResponse"+ (Proxy :: Proxy PurgeQueue)++testSendMessageResponse :: SendMessageResponse -> TestTree+testSendMessageResponse = res+ "SendMessageResponse"+ "fixture/SendMessageResponse"+ (Proxy :: Proxy SendMessage)++testChangeMessageVisibilityBatchResponse :: ChangeMessageVisibilityBatchResponse -> TestTree+testChangeMessageVisibilityBatchResponse = res+ "ChangeMessageVisibilityBatchResponse"+ "fixture/ChangeMessageVisibilityBatchResponse"+ (Proxy :: Proxy ChangeMessageVisibilityBatch)++testRemovePermissionResponse :: RemovePermissionResponse -> TestTree+testRemovePermissionResponse = res+ "RemovePermissionResponse"+ "fixture/RemovePermissionResponse"+ (Proxy :: Proxy RemovePermission)++testGetQueueAttributesResponse :: GetQueueAttributesResponse -> TestTree+testGetQueueAttributesResponse = res+ "GetQueueAttributesResponse"+ "fixture/GetQueueAttributesResponse"+ (Proxy :: Proxy GetQueueAttributes)++testListQueuesResponse :: ListQueuesResponse -> TestTree+testListQueuesResponse = res+ "ListQueuesResponse"+ "fixture/ListQueuesResponse"+ (Proxy :: Proxy ListQueues)++testReceiveMessageResponse :: ReceiveMessageResponse -> TestTree+testReceiveMessageResponse = res+ "ReceiveMessageResponse"+ "fixture/ReceiveMessageResponse"+ (Proxy :: Proxy ReceiveMessage)++testDeleteQueueResponse :: DeleteQueueResponse -> TestTree+testDeleteQueueResponse = res+ "DeleteQueueResponse"+ "fixture/DeleteQueueResponse"+ (Proxy :: Proxy DeleteQueue)++testDeleteMessageBatchResponse :: DeleteMessageBatchResponse -> TestTree+testDeleteMessageBatchResponse = res+ "DeleteMessageBatchResponse"+ "fixture/DeleteMessageBatchResponse"+ (Proxy :: Proxy DeleteMessageBatch)++testSetQueueAttributesResponse :: SetQueueAttributesResponse -> TestTree+testSetQueueAttributesResponse = res+ "SetQueueAttributesResponse"+ "fixture/SetQueueAttributesResponse"+ (Proxy :: Proxy SetQueueAttributes)++testListDeadLetterSourceQueuesResponse :: ListDeadLetterSourceQueuesResponse -> TestTree+testListDeadLetterSourceQueuesResponse = res+ "ListDeadLetterSourceQueuesResponse"+ "fixture/ListDeadLetterSourceQueuesResponse"+ (Proxy :: Proxy ListDeadLetterSourceQueues)++testAddPermissionResponse :: AddPermissionResponse -> TestTree+testAddPermissionResponse = res+ "AddPermissionResponse"+ "fixture/AddPermissionResponse"+ (Proxy :: Proxy AddPermission)++testDeleteMessageResponse :: DeleteMessageResponse -> TestTree+testDeleteMessageResponse = res+ "DeleteMessageResponse"+ "fixture/DeleteMessageResponse"+ (Proxy :: Proxy DeleteMessage)++testCreateQueueResponse :: CreateQueueResponse -> TestTree+testCreateQueueResponse = res+ "CreateQueueResponse"+ "fixture/CreateQueueResponse"+ (Proxy :: Proxy CreateQueue)++testChangeMessageVisibilityResponse :: ChangeMessageVisibilityResponse -> TestTree+testChangeMessageVisibilityResponse = res+ "ChangeMessageVisibilityResponse"+ "fixture/ChangeMessageVisibilityResponse"+ (Proxy :: Proxy ChangeMessageVisibility)++testSendMessageBatchResponse :: SendMessageBatchResponse -> TestTree+testSendMessageBatchResponse = res+ "SendMessageBatchResponse"+ "fixture/SendMessageBatchResponse"+ (Proxy :: Proxy SendMessageBatch)
+ test/Test/AWS/SQS.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE OverloadedStrings #-}++-- |+-- Module : Test.AWS.SQS+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.SQS+ ( tests+ , fixtures+ ) where++import Control.Lens+import qualified Data.HashMap.Strict as Map+import Network.AWS.SQS+import Test.AWS.Gen.SQS+import Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures =+ [ testGroup "request" $+ [ testSendMessage $+ sendMessage "http://sqs.us-east-1.amazonaws.com/123456789012/testQueue/"+ "This+is+a+test+message"+ & smMessageAttributes .~ Map.fromList+ [ ("test_attribute_name_1", messageAttributeValue "String"+ & mavStringValue ?~ "test_attribute_value_1")+ , ("test_attribute_name_2", messageAttributeValue "String"+ & mavStringValue ?~ "test_attribute_value_2")+ ]+ ]++ , testGroup "response"+ [ testGetQueueURLResponse $+ getQueueURLResponse 200 "http://us-east-1.amazonaws.com/123456789012/testQueue"++ , testPurgeQueueResponse $+ purgeQueueResponse++ , testSendMessageResponse $+ sendMessageResponse 200+ & smrsMessageId ?~ "5fea7756-0ea4-451a-a703-a558b933e274"+ & smrsMD5OfMessageBody ?~ "fafb00f5732ab283681e124bf8747ed1"+ & smrsMD5OfMessageAttributes ?~ "3ae8f24a165a8cedc005670c81a27295"++ -- FIXME: waiting on response to https://github.com/boto/botocore/issues/602+ -- , testReceiveMessageResponse $+ -- receiveMessageResponse 200 & rmrMessages .~ message+ -- & mesMessageId ?~ "5fea7756-0ea4-451a-a703-a558b933e274"+ -- & mesReceiptHandle ?~ "MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljTM8tJJg6HRG6PYSasuWXPJB+CwLj1FjgXUv1uSj1gUPAWV66FU/WeR4mq2OKpEGYWbnLmpRCJVAyeMjeU5ZBdtcQ+QEauMZc8ZRv37sIW2iJKq3M9MFx1YvV11A2x/KSbkJ0="+ -- & mesMD5OfBody ?~ "fafb00f5732ab283681e124bf8747ed1"+ -- & mesBody ?~ "This is a test message"+ -- & mesAttributes .~ Map.fromList+ -- [ (SenderId, 195004372649)+ -- , (SentTimestamp, 1238099229000)+ -- , (ApproximateReceiveCount, 5)+ -- , (ApproximateFirstReceiveTimestamp, 1250700979248)+ -- ]+ ]+ ]
+ test/Test/AWS/SQS/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.SQS.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.SQS.Internal where++import Test.AWS.Prelude