{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.SQS.DeleteMessage
(
DeleteMessage (..),
newDeleteMessage,
deleteMessage_queueUrl,
deleteMessage_receiptHandle,
DeleteMessageResponse (..),
newDeleteMessageResponse,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.SQS.Types
data DeleteMessage = DeleteMessage'
{
DeleteMessage -> Text
queueUrl :: Prelude.Text,
DeleteMessage -> Text
receiptHandle :: Prelude.Text
}
deriving (DeleteMessage -> DeleteMessage -> Bool
(DeleteMessage -> DeleteMessage -> Bool)
-> (DeleteMessage -> DeleteMessage -> Bool) -> Eq DeleteMessage
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DeleteMessage -> DeleteMessage -> Bool
== :: DeleteMessage -> DeleteMessage -> Bool
$c/= :: DeleteMessage -> DeleteMessage -> Bool
/= :: DeleteMessage -> DeleteMessage -> Bool
Prelude.Eq, ReadPrec [DeleteMessage]
ReadPrec DeleteMessage
Int -> ReadS DeleteMessage
ReadS [DeleteMessage]
(Int -> ReadS DeleteMessage)
-> ReadS [DeleteMessage]
-> ReadPrec DeleteMessage
-> ReadPrec [DeleteMessage]
-> Read DeleteMessage
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS DeleteMessage
readsPrec :: Int -> ReadS DeleteMessage
$creadList :: ReadS [DeleteMessage]
readList :: ReadS [DeleteMessage]
$creadPrec :: ReadPrec DeleteMessage
readPrec :: ReadPrec DeleteMessage
$creadListPrec :: ReadPrec [DeleteMessage]
readListPrec :: ReadPrec [DeleteMessage]
Prelude.Read, Int -> DeleteMessage -> ShowS
[DeleteMessage] -> ShowS
DeleteMessage -> String
(Int -> DeleteMessage -> ShowS)
-> (DeleteMessage -> String)
-> ([DeleteMessage] -> ShowS)
-> Show DeleteMessage
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DeleteMessage -> ShowS
showsPrec :: Int -> DeleteMessage -> ShowS
$cshow :: DeleteMessage -> String
show :: DeleteMessage -> String
$cshowList :: [DeleteMessage] -> ShowS
showList :: [DeleteMessage] -> ShowS
Prelude.Show, (forall x. DeleteMessage -> Rep DeleteMessage x)
-> (forall x. Rep DeleteMessage x -> DeleteMessage)
-> Generic DeleteMessage
forall x. Rep DeleteMessage x -> DeleteMessage
forall x. DeleteMessage -> Rep DeleteMessage x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. DeleteMessage -> Rep DeleteMessage x
from :: forall x. DeleteMessage -> Rep DeleteMessage x
$cto :: forall x. Rep DeleteMessage x -> DeleteMessage
to :: forall x. Rep DeleteMessage x -> DeleteMessage
Prelude.Generic)
newDeleteMessage ::
Prelude.Text ->
Prelude.Text ->
DeleteMessage
newDeleteMessage :: Text -> Text -> DeleteMessage
newDeleteMessage Text
pQueueUrl_ Text
pReceiptHandle_ =
DeleteMessage'
{ $sel:queueUrl:DeleteMessage' :: Text
queueUrl = Text
pQueueUrl_,
$sel:receiptHandle:DeleteMessage' :: Text
receiptHandle = Text
pReceiptHandle_
}
deleteMessage_queueUrl :: Lens.Lens' DeleteMessage Prelude.Text
deleteMessage_queueUrl :: Lens' DeleteMessage Text
deleteMessage_queueUrl = (DeleteMessage -> Text)
-> (DeleteMessage -> Text -> DeleteMessage)
-> Lens' DeleteMessage Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteMessage' {Text
$sel:queueUrl:DeleteMessage' :: DeleteMessage -> Text
queueUrl :: Text
queueUrl} -> Text
queueUrl) (\s :: DeleteMessage
s@DeleteMessage' {} Text
a -> DeleteMessage
s {queueUrl = a} :: DeleteMessage)
deleteMessage_receiptHandle :: Lens.Lens' DeleteMessage Prelude.Text
deleteMessage_receiptHandle :: Lens' DeleteMessage Text
deleteMessage_receiptHandle = (DeleteMessage -> Text)
-> (DeleteMessage -> Text -> DeleteMessage)
-> Lens' DeleteMessage Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteMessage' {Text
$sel:receiptHandle:DeleteMessage' :: DeleteMessage -> Text
receiptHandle :: Text
receiptHandle} -> Text
receiptHandle) (\s :: DeleteMessage
s@DeleteMessage' {} Text
a -> DeleteMessage
s {receiptHandle = a} :: DeleteMessage)
instance Core.AWSRequest DeleteMessage where
type
AWSResponse DeleteMessage =
DeleteMessageResponse
request :: (Service -> Service) -> DeleteMessage -> Request DeleteMessage
request Service -> Service
overrides =
Service -> DeleteMessage -> Request DeleteMessage
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeleteMessage
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeleteMessage)))
response =
AWSResponse DeleteMessage
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeleteMessage
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeleteMessage)))
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull AWSResponse DeleteMessage
DeleteMessageResponse
DeleteMessageResponse'
instance Prelude.Hashable DeleteMessage where
hashWithSalt :: Int -> DeleteMessage -> Int
hashWithSalt Int
_salt DeleteMessage' {Text
$sel:queueUrl:DeleteMessage' :: DeleteMessage -> Text
$sel:receiptHandle:DeleteMessage' :: DeleteMessage -> Text
queueUrl :: Text
receiptHandle :: Text
..} =
Int
_salt
Int -> Text -> Int
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
queueUrl
Int -> Text -> Int
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
receiptHandle
instance Prelude.NFData DeleteMessage where
rnf :: DeleteMessage -> ()
rnf DeleteMessage' {Text
$sel:queueUrl:DeleteMessage' :: DeleteMessage -> Text
$sel:receiptHandle:DeleteMessage' :: DeleteMessage -> Text
queueUrl :: Text
receiptHandle :: Text
..} =
Text -> ()
forall a. NFData a => a -> ()
Prelude.rnf Text
queueUrl
() -> () -> ()
forall a b. a -> b -> b
`Prelude.seq` Text -> ()
forall a. NFData a => a -> ()
Prelude.rnf Text
receiptHandle
instance Data.ToHeaders DeleteMessage where
toHeaders :: DeleteMessage -> [Header]
toHeaders = [Header] -> DeleteMessage -> [Header]
forall a b. a -> b -> a
Prelude.const [Header]
forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DeleteMessage where
toPath :: DeleteMessage -> ByteString
toPath = ByteString -> DeleteMessage -> ByteString
forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteMessage where
toQuery :: DeleteMessage -> QueryString
toQuery DeleteMessage' {Text
$sel:queueUrl:DeleteMessage' :: DeleteMessage -> Text
$sel:receiptHandle:DeleteMessage' :: DeleteMessage -> Text
queueUrl :: Text
receiptHandle :: Text
..} =
[QueryString] -> QueryString
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
ByteString -> ByteString -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"DeleteMessage" :: Prelude.ByteString),
ByteString
"Version"
ByteString -> ByteString -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-11-05" :: Prelude.ByteString),
ByteString
"QueueUrl" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
queueUrl,
ByteString
"ReceiptHandle" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
receiptHandle
]
data DeleteMessageResponse = DeleteMessageResponse'
{
}
deriving (DeleteMessageResponse -> DeleteMessageResponse -> Bool
(DeleteMessageResponse -> DeleteMessageResponse -> Bool)
-> (DeleteMessageResponse -> DeleteMessageResponse -> Bool)
-> Eq DeleteMessageResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DeleteMessageResponse -> DeleteMessageResponse -> Bool
== :: DeleteMessageResponse -> DeleteMessageResponse -> Bool
$c/= :: DeleteMessageResponse -> DeleteMessageResponse -> Bool
/= :: DeleteMessageResponse -> DeleteMessageResponse -> Bool
Prelude.Eq, ReadPrec [DeleteMessageResponse]
ReadPrec DeleteMessageResponse
Int -> ReadS DeleteMessageResponse
ReadS [DeleteMessageResponse]
(Int -> ReadS DeleteMessageResponse)
-> ReadS [DeleteMessageResponse]
-> ReadPrec DeleteMessageResponse
-> ReadPrec [DeleteMessageResponse]
-> Read DeleteMessageResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS DeleteMessageResponse
readsPrec :: Int -> ReadS DeleteMessageResponse
$creadList :: ReadS [DeleteMessageResponse]
readList :: ReadS [DeleteMessageResponse]
$creadPrec :: ReadPrec DeleteMessageResponse
readPrec :: ReadPrec DeleteMessageResponse
$creadListPrec :: ReadPrec [DeleteMessageResponse]
readListPrec :: ReadPrec [DeleteMessageResponse]
Prelude.Read, Int -> DeleteMessageResponse -> ShowS
[DeleteMessageResponse] -> ShowS
DeleteMessageResponse -> String
(Int -> DeleteMessageResponse -> ShowS)
-> (DeleteMessageResponse -> String)
-> ([DeleteMessageResponse] -> ShowS)
-> Show DeleteMessageResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DeleteMessageResponse -> ShowS
showsPrec :: Int -> DeleteMessageResponse -> ShowS
$cshow :: DeleteMessageResponse -> String
show :: DeleteMessageResponse -> String
$cshowList :: [DeleteMessageResponse] -> ShowS
showList :: [DeleteMessageResponse] -> ShowS
Prelude.Show, (forall x. DeleteMessageResponse -> Rep DeleteMessageResponse x)
-> (forall x. Rep DeleteMessageResponse x -> DeleteMessageResponse)
-> Generic DeleteMessageResponse
forall x. Rep DeleteMessageResponse x -> DeleteMessageResponse
forall x. DeleteMessageResponse -> Rep DeleteMessageResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. DeleteMessageResponse -> Rep DeleteMessageResponse x
from :: forall x. DeleteMessageResponse -> Rep DeleteMessageResponse x
$cto :: forall x. Rep DeleteMessageResponse x -> DeleteMessageResponse
to :: forall x. Rep DeleteMessageResponse x -> DeleteMessageResponse
Prelude.Generic)
newDeleteMessageResponse ::
DeleteMessageResponse
newDeleteMessageResponse :: DeleteMessageResponse
newDeleteMessageResponse = DeleteMessageResponse
DeleteMessageResponse'
instance Prelude.NFData DeleteMessageResponse where
rnf :: DeleteMessageResponse -> ()
rnf DeleteMessageResponse
_ = ()