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