{-# 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.SES.TestRenderTemplate
(
TestRenderTemplate (..),
newTestRenderTemplate,
testRenderTemplate_templateName,
testRenderTemplate_templateData,
TestRenderTemplateResponse (..),
newTestRenderTemplateResponse,
testRenderTemplateResponse_renderedTemplate,
testRenderTemplateResponse_httpStatus,
)
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.SES.Types
data TestRenderTemplate = TestRenderTemplate'
{
TestRenderTemplate -> Text
templateName :: Prelude.Text,
TestRenderTemplate -> Text
templateData :: Prelude.Text
}
deriving (TestRenderTemplate -> TestRenderTemplate -> Bool
(TestRenderTemplate -> TestRenderTemplate -> Bool)
-> (TestRenderTemplate -> TestRenderTemplate -> Bool)
-> Eq TestRenderTemplate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TestRenderTemplate -> TestRenderTemplate -> Bool
== :: TestRenderTemplate -> TestRenderTemplate -> Bool
$c/= :: TestRenderTemplate -> TestRenderTemplate -> Bool
/= :: TestRenderTemplate -> TestRenderTemplate -> Bool
Prelude.Eq, ReadPrec [TestRenderTemplate]
ReadPrec TestRenderTemplate
Int -> ReadS TestRenderTemplate
ReadS [TestRenderTemplate]
(Int -> ReadS TestRenderTemplate)
-> ReadS [TestRenderTemplate]
-> ReadPrec TestRenderTemplate
-> ReadPrec [TestRenderTemplate]
-> Read TestRenderTemplate
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS TestRenderTemplate
readsPrec :: Int -> ReadS TestRenderTemplate
$creadList :: ReadS [TestRenderTemplate]
readList :: ReadS [TestRenderTemplate]
$creadPrec :: ReadPrec TestRenderTemplate
readPrec :: ReadPrec TestRenderTemplate
$creadListPrec :: ReadPrec [TestRenderTemplate]
readListPrec :: ReadPrec [TestRenderTemplate]
Prelude.Read, Int -> TestRenderTemplate -> ShowS
[TestRenderTemplate] -> ShowS
TestRenderTemplate -> String
(Int -> TestRenderTemplate -> ShowS)
-> (TestRenderTemplate -> String)
-> ([TestRenderTemplate] -> ShowS)
-> Show TestRenderTemplate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TestRenderTemplate -> ShowS
showsPrec :: Int -> TestRenderTemplate -> ShowS
$cshow :: TestRenderTemplate -> String
show :: TestRenderTemplate -> String
$cshowList :: [TestRenderTemplate] -> ShowS
showList :: [TestRenderTemplate] -> ShowS
Prelude.Show, (forall x. TestRenderTemplate -> Rep TestRenderTemplate x)
-> (forall x. Rep TestRenderTemplate x -> TestRenderTemplate)
-> Generic TestRenderTemplate
forall x. Rep TestRenderTemplate x -> TestRenderTemplate
forall x. TestRenderTemplate -> Rep TestRenderTemplate x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. TestRenderTemplate -> Rep TestRenderTemplate x
from :: forall x. TestRenderTemplate -> Rep TestRenderTemplate x
$cto :: forall x. Rep TestRenderTemplate x -> TestRenderTemplate
to :: forall x. Rep TestRenderTemplate x -> TestRenderTemplate
Prelude.Generic)
newTestRenderTemplate ::
Prelude.Text ->
Prelude.Text ->
TestRenderTemplate
newTestRenderTemplate :: Text -> Text -> TestRenderTemplate
newTestRenderTemplate Text
pTemplateName_ Text
pTemplateData_ =
TestRenderTemplate'
{ $sel:templateName:TestRenderTemplate' :: Text
templateName = Text
pTemplateName_,
$sel:templateData:TestRenderTemplate' :: Text
templateData = Text
pTemplateData_
}
testRenderTemplate_templateName :: Lens.Lens' TestRenderTemplate Prelude.Text
testRenderTemplate_templateName :: Lens' TestRenderTemplate Text
testRenderTemplate_templateName = (TestRenderTemplate -> Text)
-> (TestRenderTemplate -> Text -> TestRenderTemplate)
-> Lens' TestRenderTemplate Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TestRenderTemplate' {Text
$sel:templateName:TestRenderTemplate' :: TestRenderTemplate -> Text
templateName :: Text
templateName} -> Text
templateName) (\s :: TestRenderTemplate
s@TestRenderTemplate' {} Text
a -> TestRenderTemplate
s {templateName = a} :: TestRenderTemplate)
testRenderTemplate_templateData :: Lens.Lens' TestRenderTemplate Prelude.Text
testRenderTemplate_templateData :: Lens' TestRenderTemplate Text
testRenderTemplate_templateData = (TestRenderTemplate -> Text)
-> (TestRenderTemplate -> Text -> TestRenderTemplate)
-> Lens' TestRenderTemplate Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TestRenderTemplate' {Text
$sel:templateData:TestRenderTemplate' :: TestRenderTemplate -> Text
templateData :: Text
templateData} -> Text
templateData) (\s :: TestRenderTemplate
s@TestRenderTemplate' {} Text
a -> TestRenderTemplate
s {templateData = a} :: TestRenderTemplate)
instance Core.AWSRequest TestRenderTemplate where
type
AWSResponse TestRenderTemplate =
TestRenderTemplateResponse
request :: (Service -> Service)
-> TestRenderTemplate -> Request TestRenderTemplate
request Service -> Service
overrides =
Service -> TestRenderTemplate -> Request TestRenderTemplate
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 TestRenderTemplate
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse TestRenderTemplate)))
response =
Text
-> (Int
-> ResponseHeaders
-> [Node]
-> Either String (AWSResponse TestRenderTemplate))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy TestRenderTemplate
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse TestRenderTemplate)))
forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
-> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
Text
"TestRenderTemplateResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe Text -> Int -> TestRenderTemplateResponse
TestRenderTemplateResponse'
(Maybe Text -> Int -> TestRenderTemplateResponse)
-> Either String (Maybe Text)
-> Either String (Int -> TestRenderTemplateResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x [Node] -> Text -> Either String (Maybe Text)
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"RenderedTemplate")
Either String (Int -> TestRenderTemplateResponse)
-> Either String Int -> Either String TestRenderTemplateResponse
forall a b.
Either String (a -> b) -> Either String a -> Either String b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall a. a -> Either String a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable TestRenderTemplate where
hashWithSalt :: Int -> TestRenderTemplate -> Int
hashWithSalt Int
_salt TestRenderTemplate' {Text
$sel:templateName:TestRenderTemplate' :: TestRenderTemplate -> Text
$sel:templateData:TestRenderTemplate' :: TestRenderTemplate -> Text
templateName :: Text
templateData :: Text
..} =
Int
_salt
Int -> Text -> Int
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
templateName
Int -> Text -> Int
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
templateData
instance Prelude.NFData TestRenderTemplate where
rnf :: TestRenderTemplate -> ()
rnf TestRenderTemplate' {Text
$sel:templateName:TestRenderTemplate' :: TestRenderTemplate -> Text
$sel:templateData:TestRenderTemplate' :: TestRenderTemplate -> Text
templateName :: Text
templateData :: Text
..} =
Text -> ()
forall a. NFData a => a -> ()
Prelude.rnf Text
templateName
() -> () -> ()
forall a b. a -> b -> b
`Prelude.seq` Text -> ()
forall a. NFData a => a -> ()
Prelude.rnf Text
templateData
instance Data.ToHeaders TestRenderTemplate where
toHeaders :: TestRenderTemplate -> ResponseHeaders
toHeaders = ResponseHeaders -> TestRenderTemplate -> ResponseHeaders
forall a b. a -> b -> a
Prelude.const ResponseHeaders
forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath TestRenderTemplate where
toPath :: TestRenderTemplate -> ByteString
toPath = ByteString -> TestRenderTemplate -> ByteString
forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery TestRenderTemplate where
toQuery :: TestRenderTemplate -> QueryString
toQuery TestRenderTemplate' {Text
$sel:templateName:TestRenderTemplate' :: TestRenderTemplate -> Text
$sel:templateData:TestRenderTemplate' :: TestRenderTemplate -> Text
templateName :: Text
templateData :: 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
"TestRenderTemplate" :: Prelude.ByteString),
ByteString
"Version"
ByteString -> ByteString -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2010-12-01" :: Prelude.ByteString),
ByteString
"TemplateName" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
templateName,
ByteString
"TemplateData" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
templateData
]
data TestRenderTemplateResponse = TestRenderTemplateResponse'
{
TestRenderTemplateResponse -> Maybe Text
renderedTemplate :: Prelude.Maybe Prelude.Text,
TestRenderTemplateResponse -> Int
httpStatus :: Prelude.Int
}
deriving (TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool
(TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool)
-> (TestRenderTemplateResponse
-> TestRenderTemplateResponse -> Bool)
-> Eq TestRenderTemplateResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool
== :: TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool
$c/= :: TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool
/= :: TestRenderTemplateResponse -> TestRenderTemplateResponse -> Bool
Prelude.Eq, ReadPrec [TestRenderTemplateResponse]
ReadPrec TestRenderTemplateResponse
Int -> ReadS TestRenderTemplateResponse
ReadS [TestRenderTemplateResponse]
(Int -> ReadS TestRenderTemplateResponse)
-> ReadS [TestRenderTemplateResponse]
-> ReadPrec TestRenderTemplateResponse
-> ReadPrec [TestRenderTemplateResponse]
-> Read TestRenderTemplateResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS TestRenderTemplateResponse
readsPrec :: Int -> ReadS TestRenderTemplateResponse
$creadList :: ReadS [TestRenderTemplateResponse]
readList :: ReadS [TestRenderTemplateResponse]
$creadPrec :: ReadPrec TestRenderTemplateResponse
readPrec :: ReadPrec TestRenderTemplateResponse
$creadListPrec :: ReadPrec [TestRenderTemplateResponse]
readListPrec :: ReadPrec [TestRenderTemplateResponse]
Prelude.Read, Int -> TestRenderTemplateResponse -> ShowS
[TestRenderTemplateResponse] -> ShowS
TestRenderTemplateResponse -> String
(Int -> TestRenderTemplateResponse -> ShowS)
-> (TestRenderTemplateResponse -> String)
-> ([TestRenderTemplateResponse] -> ShowS)
-> Show TestRenderTemplateResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TestRenderTemplateResponse -> ShowS
showsPrec :: Int -> TestRenderTemplateResponse -> ShowS
$cshow :: TestRenderTemplateResponse -> String
show :: TestRenderTemplateResponse -> String
$cshowList :: [TestRenderTemplateResponse] -> ShowS
showList :: [TestRenderTemplateResponse] -> ShowS
Prelude.Show, (forall x.
TestRenderTemplateResponse -> Rep TestRenderTemplateResponse x)
-> (forall x.
Rep TestRenderTemplateResponse x -> TestRenderTemplateResponse)
-> Generic TestRenderTemplateResponse
forall x.
Rep TestRenderTemplateResponse x -> TestRenderTemplateResponse
forall x.
TestRenderTemplateResponse -> Rep TestRenderTemplateResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
TestRenderTemplateResponse -> Rep TestRenderTemplateResponse x
from :: forall x.
TestRenderTemplateResponse -> Rep TestRenderTemplateResponse x
$cto :: forall x.
Rep TestRenderTemplateResponse x -> TestRenderTemplateResponse
to :: forall x.
Rep TestRenderTemplateResponse x -> TestRenderTemplateResponse
Prelude.Generic)
newTestRenderTemplateResponse ::
Prelude.Int ->
TestRenderTemplateResponse
newTestRenderTemplateResponse :: Int -> TestRenderTemplateResponse
newTestRenderTemplateResponse Int
pHttpStatus_ =
TestRenderTemplateResponse'
{ $sel:renderedTemplate:TestRenderTemplateResponse' :: Maybe Text
renderedTemplate =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:TestRenderTemplateResponse' :: Int
httpStatus = Int
pHttpStatus_
}
testRenderTemplateResponse_renderedTemplate :: Lens.Lens' TestRenderTemplateResponse (Prelude.Maybe Prelude.Text)
testRenderTemplateResponse_renderedTemplate :: Lens' TestRenderTemplateResponse (Maybe Text)
testRenderTemplateResponse_renderedTemplate = (TestRenderTemplateResponse -> Maybe Text)
-> (TestRenderTemplateResponse
-> Maybe Text -> TestRenderTemplateResponse)
-> Lens' TestRenderTemplateResponse (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TestRenderTemplateResponse' {Maybe Text
$sel:renderedTemplate:TestRenderTemplateResponse' :: TestRenderTemplateResponse -> Maybe Text
renderedTemplate :: Maybe Text
renderedTemplate} -> Maybe Text
renderedTemplate) (\s :: TestRenderTemplateResponse
s@TestRenderTemplateResponse' {} Maybe Text
a -> TestRenderTemplateResponse
s {renderedTemplate = a} :: TestRenderTemplateResponse)
testRenderTemplateResponse_httpStatus :: Lens.Lens' TestRenderTemplateResponse Prelude.Int
testRenderTemplateResponse_httpStatus :: Lens' TestRenderTemplateResponse Int
testRenderTemplateResponse_httpStatus = (TestRenderTemplateResponse -> Int)
-> (TestRenderTemplateResponse
-> Int -> TestRenderTemplateResponse)
-> Lens' TestRenderTemplateResponse Int
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TestRenderTemplateResponse' {Int
$sel:httpStatus:TestRenderTemplateResponse' :: TestRenderTemplateResponse -> Int
httpStatus :: Int
httpStatus} -> Int
httpStatus) (\s :: TestRenderTemplateResponse
s@TestRenderTemplateResponse' {} Int
a -> TestRenderTemplateResponse
s {httpStatus = a} :: TestRenderTemplateResponse)
instance Prelude.NFData TestRenderTemplateResponse where
rnf :: TestRenderTemplateResponse -> ()
rnf TestRenderTemplateResponse' {Int
Maybe Text
$sel:renderedTemplate:TestRenderTemplateResponse' :: TestRenderTemplateResponse -> Maybe Text
$sel:httpStatus:TestRenderTemplateResponse' :: TestRenderTemplateResponse -> Int
renderedTemplate :: Maybe Text
httpStatus :: Int
..} =
Maybe Text -> ()
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
renderedTemplate
() -> () -> ()
forall a b. a -> b -> b
`Prelude.seq` Int -> ()
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus