{-# 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.Pinpoint.VerifyOTPMessage
(
VerifyOTPMessage (..),
newVerifyOTPMessage,
verifyOTPMessage_applicationId,
verifyOTPMessage_verifyOTPMessageRequestParameters,
VerifyOTPMessageResponse (..),
newVerifyOTPMessageResponse,
verifyOTPMessageResponse_httpStatus,
verifyOTPMessageResponse_verificationResponse,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Pinpoint.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data VerifyOTPMessage = VerifyOTPMessage'
{
VerifyOTPMessage -> Text
applicationId :: Prelude.Text,
VerifyOTPMessage -> VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
}
deriving (VerifyOTPMessage -> VerifyOTPMessage -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VerifyOTPMessage -> VerifyOTPMessage -> Bool
$c/= :: VerifyOTPMessage -> VerifyOTPMessage -> Bool
== :: VerifyOTPMessage -> VerifyOTPMessage -> Bool
$c== :: VerifyOTPMessage -> VerifyOTPMessage -> Bool
Prelude.Eq, ReadPrec [VerifyOTPMessage]
ReadPrec VerifyOTPMessage
Int -> ReadS VerifyOTPMessage
ReadS [VerifyOTPMessage]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [VerifyOTPMessage]
$creadListPrec :: ReadPrec [VerifyOTPMessage]
readPrec :: ReadPrec VerifyOTPMessage
$creadPrec :: ReadPrec VerifyOTPMessage
readList :: ReadS [VerifyOTPMessage]
$creadList :: ReadS [VerifyOTPMessage]
readsPrec :: Int -> ReadS VerifyOTPMessage
$creadsPrec :: Int -> ReadS VerifyOTPMessage
Prelude.Read, Int -> VerifyOTPMessage -> ShowS
[VerifyOTPMessage] -> ShowS
VerifyOTPMessage -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [VerifyOTPMessage] -> ShowS
$cshowList :: [VerifyOTPMessage] -> ShowS
show :: VerifyOTPMessage -> String
$cshow :: VerifyOTPMessage -> String
showsPrec :: Int -> VerifyOTPMessage -> ShowS
$cshowsPrec :: Int -> VerifyOTPMessage -> ShowS
Prelude.Show, forall x. Rep VerifyOTPMessage x -> VerifyOTPMessage
forall x. VerifyOTPMessage -> Rep VerifyOTPMessage x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep VerifyOTPMessage x -> VerifyOTPMessage
$cfrom :: forall x. VerifyOTPMessage -> Rep VerifyOTPMessage x
Prelude.Generic)
newVerifyOTPMessage ::
Prelude.Text ->
VerifyOTPMessageRequestParameters ->
VerifyOTPMessage
newVerifyOTPMessage :: Text -> VerifyOTPMessageRequestParameters -> VerifyOTPMessage
newVerifyOTPMessage
Text
pApplicationId_
VerifyOTPMessageRequestParameters
pVerifyOTPMessageRequestParameters_ =
VerifyOTPMessage'
{ $sel:applicationId:VerifyOTPMessage' :: Text
applicationId = Text
pApplicationId_,
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters =
VerifyOTPMessageRequestParameters
pVerifyOTPMessageRequestParameters_
}
verifyOTPMessage_applicationId :: Lens.Lens' VerifyOTPMessage Prelude.Text
verifyOTPMessage_applicationId :: Lens' VerifyOTPMessage Text
verifyOTPMessage_applicationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifyOTPMessage' {Text
applicationId :: Text
$sel:applicationId:VerifyOTPMessage' :: VerifyOTPMessage -> Text
applicationId} -> Text
applicationId) (\s :: VerifyOTPMessage
s@VerifyOTPMessage' {} Text
a -> VerifyOTPMessage
s {$sel:applicationId:VerifyOTPMessage' :: Text
applicationId = Text
a} :: VerifyOTPMessage)
verifyOTPMessage_verifyOTPMessageRequestParameters :: Lens.Lens' VerifyOTPMessage VerifyOTPMessageRequestParameters
verifyOTPMessage_verifyOTPMessageRequestParameters :: Lens' VerifyOTPMessage VerifyOTPMessageRequestParameters
verifyOTPMessage_verifyOTPMessageRequestParameters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifyOTPMessage' {VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessage -> VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters} -> VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters) (\s :: VerifyOTPMessage
s@VerifyOTPMessage' {} VerifyOTPMessageRequestParameters
a -> VerifyOTPMessage
s {$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters = VerifyOTPMessageRequestParameters
a} :: VerifyOTPMessage)
instance Core.AWSRequest VerifyOTPMessage where
type
AWSResponse VerifyOTPMessage =
VerifyOTPMessageResponse
request :: (Service -> Service)
-> VerifyOTPMessage -> Request VerifyOTPMessage
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy VerifyOTPMessage
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse VerifyOTPMessage)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Int -> VerificationResponse -> VerifyOTPMessageResponse
VerifyOTPMessageResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall a. FromJSON a => Object -> Either String a
Data.eitherParseJSON Object
x)
)
instance Prelude.Hashable VerifyOTPMessage where
hashWithSalt :: Int -> VerifyOTPMessage -> Int
hashWithSalt Int
_salt VerifyOTPMessage' {Text
VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
applicationId :: Text
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessage -> VerifyOTPMessageRequestParameters
$sel:applicationId:VerifyOTPMessage' :: VerifyOTPMessage -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters
instance Prelude.NFData VerifyOTPMessage where
rnf :: VerifyOTPMessage -> ()
rnf VerifyOTPMessage' {Text
VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
applicationId :: Text
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessage -> VerifyOTPMessageRequestParameters
$sel:applicationId:VerifyOTPMessage' :: VerifyOTPMessage -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
applicationId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters
instance Data.ToHeaders VerifyOTPMessage where
toHeaders :: VerifyOTPMessage -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON VerifyOTPMessage where
toJSON :: VerifyOTPMessage -> Value
toJSON VerifyOTPMessage' {Text
VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
applicationId :: Text
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessage -> VerifyOTPMessageRequestParameters
$sel:applicationId:VerifyOTPMessage' :: VerifyOTPMessage -> Text
..} =
forall a. ToJSON a => a -> Value
Data.toJSON VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters
instance Data.ToPath VerifyOTPMessage where
toPath :: VerifyOTPMessage -> ByteString
toPath VerifyOTPMessage' {Text
VerifyOTPMessageRequestParameters
verifyOTPMessageRequestParameters :: VerifyOTPMessageRequestParameters
applicationId :: Text
$sel:verifyOTPMessageRequestParameters:VerifyOTPMessage' :: VerifyOTPMessage -> VerifyOTPMessageRequestParameters
$sel:applicationId:VerifyOTPMessage' :: VerifyOTPMessage -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/v1/apps/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
applicationId, ByteString
"/verify-otp"]
instance Data.ToQuery VerifyOTPMessage where
toQuery :: VerifyOTPMessage -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data VerifyOTPMessageResponse = VerifyOTPMessageResponse'
{
VerifyOTPMessageResponse -> Int
httpStatus :: Prelude.Int,
VerifyOTPMessageResponse -> VerificationResponse
verificationResponse :: VerificationResponse
}
deriving (VerifyOTPMessageResponse -> VerifyOTPMessageResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VerifyOTPMessageResponse -> VerifyOTPMessageResponse -> Bool
$c/= :: VerifyOTPMessageResponse -> VerifyOTPMessageResponse -> Bool
== :: VerifyOTPMessageResponse -> VerifyOTPMessageResponse -> Bool
$c== :: VerifyOTPMessageResponse -> VerifyOTPMessageResponse -> Bool
Prelude.Eq, ReadPrec [VerifyOTPMessageResponse]
ReadPrec VerifyOTPMessageResponse
Int -> ReadS VerifyOTPMessageResponse
ReadS [VerifyOTPMessageResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [VerifyOTPMessageResponse]
$creadListPrec :: ReadPrec [VerifyOTPMessageResponse]
readPrec :: ReadPrec VerifyOTPMessageResponse
$creadPrec :: ReadPrec VerifyOTPMessageResponse
readList :: ReadS [VerifyOTPMessageResponse]
$creadList :: ReadS [VerifyOTPMessageResponse]
readsPrec :: Int -> ReadS VerifyOTPMessageResponse
$creadsPrec :: Int -> ReadS VerifyOTPMessageResponse
Prelude.Read, Int -> VerifyOTPMessageResponse -> ShowS
[VerifyOTPMessageResponse] -> ShowS
VerifyOTPMessageResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [VerifyOTPMessageResponse] -> ShowS
$cshowList :: [VerifyOTPMessageResponse] -> ShowS
show :: VerifyOTPMessageResponse -> String
$cshow :: VerifyOTPMessageResponse -> String
showsPrec :: Int -> VerifyOTPMessageResponse -> ShowS
$cshowsPrec :: Int -> VerifyOTPMessageResponse -> ShowS
Prelude.Show, forall x.
Rep VerifyOTPMessageResponse x -> VerifyOTPMessageResponse
forall x.
VerifyOTPMessageResponse -> Rep VerifyOTPMessageResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep VerifyOTPMessageResponse x -> VerifyOTPMessageResponse
$cfrom :: forall x.
VerifyOTPMessageResponse -> Rep VerifyOTPMessageResponse x
Prelude.Generic)
newVerifyOTPMessageResponse ::
Prelude.Int ->
VerificationResponse ->
VerifyOTPMessageResponse
newVerifyOTPMessageResponse :: Int -> VerificationResponse -> VerifyOTPMessageResponse
newVerifyOTPMessageResponse
Int
pHttpStatus_
VerificationResponse
pVerificationResponse_ =
VerifyOTPMessageResponse'
{ $sel:httpStatus:VerifyOTPMessageResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:verificationResponse:VerifyOTPMessageResponse' :: VerificationResponse
verificationResponse = VerificationResponse
pVerificationResponse_
}
verifyOTPMessageResponse_httpStatus :: Lens.Lens' VerifyOTPMessageResponse Prelude.Int
verifyOTPMessageResponse_httpStatus :: Lens' VerifyOTPMessageResponse Int
verifyOTPMessageResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifyOTPMessageResponse' {Int
httpStatus :: Int
$sel:httpStatus:VerifyOTPMessageResponse' :: VerifyOTPMessageResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: VerifyOTPMessageResponse
s@VerifyOTPMessageResponse' {} Int
a -> VerifyOTPMessageResponse
s {$sel:httpStatus:VerifyOTPMessageResponse' :: Int
httpStatus = Int
a} :: VerifyOTPMessageResponse)
verifyOTPMessageResponse_verificationResponse :: Lens.Lens' VerifyOTPMessageResponse VerificationResponse
verifyOTPMessageResponse_verificationResponse :: Lens' VerifyOTPMessageResponse VerificationResponse
verifyOTPMessageResponse_verificationResponse = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VerifyOTPMessageResponse' {VerificationResponse
verificationResponse :: VerificationResponse
$sel:verificationResponse:VerifyOTPMessageResponse' :: VerifyOTPMessageResponse -> VerificationResponse
verificationResponse} -> VerificationResponse
verificationResponse) (\s :: VerifyOTPMessageResponse
s@VerifyOTPMessageResponse' {} VerificationResponse
a -> VerifyOTPMessageResponse
s {$sel:verificationResponse:VerifyOTPMessageResponse' :: VerificationResponse
verificationResponse = VerificationResponse
a} :: VerifyOTPMessageResponse)
instance Prelude.NFData VerifyOTPMessageResponse where
rnf :: VerifyOTPMessageResponse -> ()
rnf VerifyOTPMessageResponse' {Int
VerificationResponse
verificationResponse :: VerificationResponse
httpStatus :: Int
$sel:verificationResponse:VerifyOTPMessageResponse' :: VerifyOTPMessageResponse -> VerificationResponse
$sel:httpStatus:VerifyOTPMessageResponse' :: VerifyOTPMessageResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf VerificationResponse
verificationResponse