{-# 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.SNS.SetSubscriptionAttributes
(
SetSubscriptionAttributes (..),
newSetSubscriptionAttributes,
setSubscriptionAttributes_attributeValue,
setSubscriptionAttributes_subscriptionArn,
setSubscriptionAttributes_attributeName,
SetSubscriptionAttributesResponse (..),
newSetSubscriptionAttributesResponse,
)
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.SNS.Types
data SetSubscriptionAttributes = SetSubscriptionAttributes'
{
SetSubscriptionAttributes -> Maybe Text
attributeValue :: Prelude.Maybe Prelude.Text,
SetSubscriptionAttributes -> Text
subscriptionArn :: Prelude.Text,
SetSubscriptionAttributes -> Text
attributeName :: Prelude.Text
}
deriving (SetSubscriptionAttributes -> SetSubscriptionAttributes -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SetSubscriptionAttributes -> SetSubscriptionAttributes -> Bool
$c/= :: SetSubscriptionAttributes -> SetSubscriptionAttributes -> Bool
== :: SetSubscriptionAttributes -> SetSubscriptionAttributes -> Bool
$c== :: SetSubscriptionAttributes -> SetSubscriptionAttributes -> Bool
Prelude.Eq, ReadPrec [SetSubscriptionAttributes]
ReadPrec SetSubscriptionAttributes
Int -> ReadS SetSubscriptionAttributes
ReadS [SetSubscriptionAttributes]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SetSubscriptionAttributes]
$creadListPrec :: ReadPrec [SetSubscriptionAttributes]
readPrec :: ReadPrec SetSubscriptionAttributes
$creadPrec :: ReadPrec SetSubscriptionAttributes
readList :: ReadS [SetSubscriptionAttributes]
$creadList :: ReadS [SetSubscriptionAttributes]
readsPrec :: Int -> ReadS SetSubscriptionAttributes
$creadsPrec :: Int -> ReadS SetSubscriptionAttributes
Prelude.Read, Int -> SetSubscriptionAttributes -> ShowS
[SetSubscriptionAttributes] -> ShowS
SetSubscriptionAttributes -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SetSubscriptionAttributes] -> ShowS
$cshowList :: [SetSubscriptionAttributes] -> ShowS
show :: SetSubscriptionAttributes -> String
$cshow :: SetSubscriptionAttributes -> String
showsPrec :: Int -> SetSubscriptionAttributes -> ShowS
$cshowsPrec :: Int -> SetSubscriptionAttributes -> ShowS
Prelude.Show, forall x.
Rep SetSubscriptionAttributes x -> SetSubscriptionAttributes
forall x.
SetSubscriptionAttributes -> Rep SetSubscriptionAttributes x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SetSubscriptionAttributes x -> SetSubscriptionAttributes
$cfrom :: forall x.
SetSubscriptionAttributes -> Rep SetSubscriptionAttributes x
Prelude.Generic)
newSetSubscriptionAttributes ::
Prelude.Text ->
Prelude.Text ->
SetSubscriptionAttributes
newSetSubscriptionAttributes :: Text -> Text -> SetSubscriptionAttributes
newSetSubscriptionAttributes
Text
pSubscriptionArn_
Text
pAttributeName_ =
SetSubscriptionAttributes'
{ $sel:attributeValue:SetSubscriptionAttributes' :: Maybe Text
attributeValue =
forall a. Maybe a
Prelude.Nothing,
$sel:subscriptionArn:SetSubscriptionAttributes' :: Text
subscriptionArn = Text
pSubscriptionArn_,
$sel:attributeName:SetSubscriptionAttributes' :: Text
attributeName = Text
pAttributeName_
}
setSubscriptionAttributes_attributeValue :: Lens.Lens' SetSubscriptionAttributes (Prelude.Maybe Prelude.Text)
setSubscriptionAttributes_attributeValue :: Lens' SetSubscriptionAttributes (Maybe Text)
setSubscriptionAttributes_attributeValue = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SetSubscriptionAttributes' {Maybe Text
attributeValue :: Maybe Text
$sel:attributeValue:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Maybe Text
attributeValue} -> Maybe Text
attributeValue) (\s :: SetSubscriptionAttributes
s@SetSubscriptionAttributes' {} Maybe Text
a -> SetSubscriptionAttributes
s {$sel:attributeValue:SetSubscriptionAttributes' :: Maybe Text
attributeValue = Maybe Text
a} :: SetSubscriptionAttributes)
setSubscriptionAttributes_subscriptionArn :: Lens.Lens' SetSubscriptionAttributes Prelude.Text
setSubscriptionAttributes_subscriptionArn :: Lens' SetSubscriptionAttributes Text
setSubscriptionAttributes_subscriptionArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SetSubscriptionAttributes' {Text
subscriptionArn :: Text
$sel:subscriptionArn:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
subscriptionArn} -> Text
subscriptionArn) (\s :: SetSubscriptionAttributes
s@SetSubscriptionAttributes' {} Text
a -> SetSubscriptionAttributes
s {$sel:subscriptionArn:SetSubscriptionAttributes' :: Text
subscriptionArn = Text
a} :: SetSubscriptionAttributes)
setSubscriptionAttributes_attributeName :: Lens.Lens' SetSubscriptionAttributes Prelude.Text
setSubscriptionAttributes_attributeName :: Lens' SetSubscriptionAttributes Text
setSubscriptionAttributes_attributeName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SetSubscriptionAttributes' {Text
attributeName :: Text
$sel:attributeName:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
attributeName} -> Text
attributeName) (\s :: SetSubscriptionAttributes
s@SetSubscriptionAttributes' {} Text
a -> SetSubscriptionAttributes
s {$sel:attributeName:SetSubscriptionAttributes' :: Text
attributeName = Text
a} :: SetSubscriptionAttributes)
instance Core.AWSRequest SetSubscriptionAttributes where
type
AWSResponse SetSubscriptionAttributes =
SetSubscriptionAttributesResponse
request :: (Service -> Service)
-> SetSubscriptionAttributes -> Request SetSubscriptionAttributes
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 SetSubscriptionAttributes
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse SetSubscriptionAttributes)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull
SetSubscriptionAttributesResponse
SetSubscriptionAttributesResponse'
instance Prelude.Hashable SetSubscriptionAttributes where
hashWithSalt :: Int -> SetSubscriptionAttributes -> Int
hashWithSalt Int
_salt SetSubscriptionAttributes' {Maybe Text
Text
attributeName :: Text
subscriptionArn :: Text
attributeValue :: Maybe Text
$sel:attributeName:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:subscriptionArn:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:attributeValue:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
attributeValue
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
subscriptionArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
attributeName
instance Prelude.NFData SetSubscriptionAttributes where
rnf :: SetSubscriptionAttributes -> ()
rnf SetSubscriptionAttributes' {Maybe Text
Text
attributeName :: Text
subscriptionArn :: Text
attributeValue :: Maybe Text
$sel:attributeName:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:subscriptionArn:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:attributeValue:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
attributeValue
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
subscriptionArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
attributeName
instance Data.ToHeaders SetSubscriptionAttributes where
toHeaders :: SetSubscriptionAttributes -> [Header]
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath SetSubscriptionAttributes where
toPath :: SetSubscriptionAttributes -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery SetSubscriptionAttributes where
toQuery :: SetSubscriptionAttributes -> QueryString
toQuery SetSubscriptionAttributes' {Maybe Text
Text
attributeName :: Text
subscriptionArn :: Text
attributeValue :: Maybe Text
$sel:attributeName:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:subscriptionArn:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Text
$sel:attributeValue:SetSubscriptionAttributes' :: SetSubscriptionAttributes -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"SetSubscriptionAttributes" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-03-31" :: Prelude.ByteString),
ByteString
"AttributeValue" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
attributeValue,
ByteString
"SubscriptionArn" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
subscriptionArn,
ByteString
"AttributeName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
attributeName
]
data SetSubscriptionAttributesResponse = SetSubscriptionAttributesResponse'
{
}
deriving (SetSubscriptionAttributesResponse
-> SetSubscriptionAttributesResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SetSubscriptionAttributesResponse
-> SetSubscriptionAttributesResponse -> Bool
$c/= :: SetSubscriptionAttributesResponse
-> SetSubscriptionAttributesResponse -> Bool
== :: SetSubscriptionAttributesResponse
-> SetSubscriptionAttributesResponse -> Bool
$c== :: SetSubscriptionAttributesResponse
-> SetSubscriptionAttributesResponse -> Bool
Prelude.Eq, ReadPrec [SetSubscriptionAttributesResponse]
ReadPrec SetSubscriptionAttributesResponse
Int -> ReadS SetSubscriptionAttributesResponse
ReadS [SetSubscriptionAttributesResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SetSubscriptionAttributesResponse]
$creadListPrec :: ReadPrec [SetSubscriptionAttributesResponse]
readPrec :: ReadPrec SetSubscriptionAttributesResponse
$creadPrec :: ReadPrec SetSubscriptionAttributesResponse
readList :: ReadS [SetSubscriptionAttributesResponse]
$creadList :: ReadS [SetSubscriptionAttributesResponse]
readsPrec :: Int -> ReadS SetSubscriptionAttributesResponse
$creadsPrec :: Int -> ReadS SetSubscriptionAttributesResponse
Prelude.Read, Int -> SetSubscriptionAttributesResponse -> ShowS
[SetSubscriptionAttributesResponse] -> ShowS
SetSubscriptionAttributesResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SetSubscriptionAttributesResponse] -> ShowS
$cshowList :: [SetSubscriptionAttributesResponse] -> ShowS
show :: SetSubscriptionAttributesResponse -> String
$cshow :: SetSubscriptionAttributesResponse -> String
showsPrec :: Int -> SetSubscriptionAttributesResponse -> ShowS
$cshowsPrec :: Int -> SetSubscriptionAttributesResponse -> ShowS
Prelude.Show, forall x.
Rep SetSubscriptionAttributesResponse x
-> SetSubscriptionAttributesResponse
forall x.
SetSubscriptionAttributesResponse
-> Rep SetSubscriptionAttributesResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SetSubscriptionAttributesResponse x
-> SetSubscriptionAttributesResponse
$cfrom :: forall x.
SetSubscriptionAttributesResponse
-> Rep SetSubscriptionAttributesResponse x
Prelude.Generic)
newSetSubscriptionAttributesResponse ::
SetSubscriptionAttributesResponse
newSetSubscriptionAttributesResponse :: SetSubscriptionAttributesResponse
newSetSubscriptionAttributesResponse =
SetSubscriptionAttributesResponse
SetSubscriptionAttributesResponse'
instance
Prelude.NFData
SetSubscriptionAttributesResponse
where
rnf :: SetSubscriptionAttributesResponse -> ()
rnf SetSubscriptionAttributesResponse
_ = ()