{-# 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.AddPermission
(
AddPermission (..),
newAddPermission,
addPermission_queueUrl,
addPermission_label,
addPermission_aWSAccountIds,
addPermission_actions,
AddPermissionResponse (..),
newAddPermissionResponse,
)
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 AddPermission = AddPermission'
{
AddPermission -> Text
queueUrl :: Prelude.Text,
AddPermission -> Text
label :: Prelude.Text,
AddPermission -> [Text]
aWSAccountIds :: [Prelude.Text],
AddPermission -> [Text]
actions :: [Prelude.Text]
}
deriving (AddPermission -> AddPermission -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AddPermission -> AddPermission -> Bool
$c/= :: AddPermission -> AddPermission -> Bool
== :: AddPermission -> AddPermission -> Bool
$c== :: AddPermission -> AddPermission -> Bool
Prelude.Eq, ReadPrec [AddPermission]
ReadPrec AddPermission
Int -> ReadS AddPermission
ReadS [AddPermission]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AddPermission]
$creadListPrec :: ReadPrec [AddPermission]
readPrec :: ReadPrec AddPermission
$creadPrec :: ReadPrec AddPermission
readList :: ReadS [AddPermission]
$creadList :: ReadS [AddPermission]
readsPrec :: Int -> ReadS AddPermission
$creadsPrec :: Int -> ReadS AddPermission
Prelude.Read, Int -> AddPermission -> ShowS
[AddPermission] -> ShowS
AddPermission -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AddPermission] -> ShowS
$cshowList :: [AddPermission] -> ShowS
show :: AddPermission -> String
$cshow :: AddPermission -> String
showsPrec :: Int -> AddPermission -> ShowS
$cshowsPrec :: Int -> AddPermission -> ShowS
Prelude.Show, forall x. Rep AddPermission x -> AddPermission
forall x. AddPermission -> Rep AddPermission x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AddPermission x -> AddPermission
$cfrom :: forall x. AddPermission -> Rep AddPermission x
Prelude.Generic)
newAddPermission ::
Prelude.Text ->
Prelude.Text ->
AddPermission
newAddPermission :: Text -> Text -> AddPermission
newAddPermission Text
pQueueUrl_ Text
pLabel_ =
AddPermission'
{ $sel:queueUrl:AddPermission' :: Text
queueUrl = Text
pQueueUrl_,
$sel:label:AddPermission' :: Text
label = Text
pLabel_,
$sel:aWSAccountIds:AddPermission' :: [Text]
aWSAccountIds = forall a. Monoid a => a
Prelude.mempty,
$sel:actions:AddPermission' :: [Text]
actions = forall a. Monoid a => a
Prelude.mempty
}
addPermission_queueUrl :: Lens.Lens' AddPermission Prelude.Text
addPermission_queueUrl :: Lens' AddPermission Text
addPermission_queueUrl = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AddPermission' {Text
queueUrl :: Text
$sel:queueUrl:AddPermission' :: AddPermission -> Text
queueUrl} -> Text
queueUrl) (\s :: AddPermission
s@AddPermission' {} Text
a -> AddPermission
s {$sel:queueUrl:AddPermission' :: Text
queueUrl = Text
a} :: AddPermission)
addPermission_label :: Lens.Lens' AddPermission Prelude.Text
addPermission_label :: Lens' AddPermission Text
addPermission_label = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AddPermission' {Text
label :: Text
$sel:label:AddPermission' :: AddPermission -> Text
label} -> Text
label) (\s :: AddPermission
s@AddPermission' {} Text
a -> AddPermission
s {$sel:label:AddPermission' :: Text
label = Text
a} :: AddPermission)
addPermission_aWSAccountIds :: Lens.Lens' AddPermission [Prelude.Text]
addPermission_aWSAccountIds :: Lens' AddPermission [Text]
addPermission_aWSAccountIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AddPermission' {[Text]
aWSAccountIds :: [Text]
$sel:aWSAccountIds:AddPermission' :: AddPermission -> [Text]
aWSAccountIds} -> [Text]
aWSAccountIds) (\s :: AddPermission
s@AddPermission' {} [Text]
a -> AddPermission
s {$sel:aWSAccountIds:AddPermission' :: [Text]
aWSAccountIds = [Text]
a} :: AddPermission) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
addPermission_actions :: Lens.Lens' AddPermission [Prelude.Text]
addPermission_actions :: Lens' AddPermission [Text]
addPermission_actions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AddPermission' {[Text]
actions :: [Text]
$sel:actions:AddPermission' :: AddPermission -> [Text]
actions} -> [Text]
actions) (\s :: AddPermission
s@AddPermission' {} [Text]
a -> AddPermission
s {$sel:actions:AddPermission' :: [Text]
actions = [Text]
a} :: AddPermission) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Core.AWSRequest AddPermission where
type
AWSResponse AddPermission =
AddPermissionResponse
request :: (Service -> Service) -> AddPermission -> Request AddPermission
request Service -> Service
overrides =
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 AddPermission
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse AddPermission)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull AddPermissionResponse
AddPermissionResponse'
instance Prelude.Hashable AddPermission where
hashWithSalt :: Int -> AddPermission -> Int
hashWithSalt Int
_salt AddPermission' {[Text]
Text
actions :: [Text]
aWSAccountIds :: [Text]
label :: Text
queueUrl :: Text
$sel:actions:AddPermission' :: AddPermission -> [Text]
$sel:aWSAccountIds:AddPermission' :: AddPermission -> [Text]
$sel:label:AddPermission' :: AddPermission -> Text
$sel:queueUrl:AddPermission' :: AddPermission -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
queueUrl
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
label
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Text]
aWSAccountIds
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Text]
actions
instance Prelude.NFData AddPermission where
rnf :: AddPermission -> ()
rnf AddPermission' {[Text]
Text
actions :: [Text]
aWSAccountIds :: [Text]
label :: Text
queueUrl :: Text
$sel:actions:AddPermission' :: AddPermission -> [Text]
$sel:aWSAccountIds:AddPermission' :: AddPermission -> [Text]
$sel:label:AddPermission' :: AddPermission -> Text
$sel:queueUrl:AddPermission' :: AddPermission -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
queueUrl
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
label
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [Text]
aWSAccountIds
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [Text]
actions
instance Data.ToHeaders AddPermission where
toHeaders :: AddPermission -> [Header]
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath AddPermission where
toPath :: AddPermission -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery AddPermission where
toQuery :: AddPermission -> QueryString
toQuery AddPermission' {[Text]
Text
actions :: [Text]
aWSAccountIds :: [Text]
label :: Text
queueUrl :: Text
$sel:actions:AddPermission' :: AddPermission -> [Text]
$sel:aWSAccountIds:AddPermission' :: AddPermission -> [Text]
$sel:label:AddPermission' :: AddPermission -> Text
$sel:queueUrl:AddPermission' :: AddPermission -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"AddPermission" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-11-05" :: Prelude.ByteString),
ByteString
"QueueUrl" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
queueUrl,
ByteString
"Label" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
label,
forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"AWSAccountId" [Text]
aWSAccountIds,
forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"ActionName" [Text]
actions
]
data AddPermissionResponse = AddPermissionResponse'
{
}
deriving (AddPermissionResponse -> AddPermissionResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AddPermissionResponse -> AddPermissionResponse -> Bool
$c/= :: AddPermissionResponse -> AddPermissionResponse -> Bool
== :: AddPermissionResponse -> AddPermissionResponse -> Bool
$c== :: AddPermissionResponse -> AddPermissionResponse -> Bool
Prelude.Eq, ReadPrec [AddPermissionResponse]
ReadPrec AddPermissionResponse
Int -> ReadS AddPermissionResponse
ReadS [AddPermissionResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AddPermissionResponse]
$creadListPrec :: ReadPrec [AddPermissionResponse]
readPrec :: ReadPrec AddPermissionResponse
$creadPrec :: ReadPrec AddPermissionResponse
readList :: ReadS [AddPermissionResponse]
$creadList :: ReadS [AddPermissionResponse]
readsPrec :: Int -> ReadS AddPermissionResponse
$creadsPrec :: Int -> ReadS AddPermissionResponse
Prelude.Read, Int -> AddPermissionResponse -> ShowS
[AddPermissionResponse] -> ShowS
AddPermissionResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AddPermissionResponse] -> ShowS
$cshowList :: [AddPermissionResponse] -> ShowS
show :: AddPermissionResponse -> String
$cshow :: AddPermissionResponse -> String
showsPrec :: Int -> AddPermissionResponse -> ShowS
$cshowsPrec :: Int -> AddPermissionResponse -> ShowS
Prelude.Show, forall x. Rep AddPermissionResponse x -> AddPermissionResponse
forall x. AddPermissionResponse -> Rep AddPermissionResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AddPermissionResponse x -> AddPermissionResponse
$cfrom :: forall x. AddPermissionResponse -> Rep AddPermissionResponse x
Prelude.Generic)
newAddPermissionResponse ::
AddPermissionResponse
newAddPermissionResponse :: AddPermissionResponse
newAddPermissionResponse = AddPermissionResponse
AddPermissionResponse'
instance Prelude.NFData AddPermissionResponse where
rnf :: AddPermissionResponse -> ()
rnf AddPermissionResponse
_ = ()