{-# 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.AmplifyBackend.GetToken
(
GetToken (..),
newGetToken,
getToken_sessionId,
getToken_appId,
GetTokenResponse (..),
newGetTokenResponse,
getTokenResponse_appId,
getTokenResponse_challengeCode,
getTokenResponse_sessionId,
getTokenResponse_ttl,
getTokenResponse_httpStatus,
)
where
import Amazonka.AmplifyBackend.Types
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
data GetToken = GetToken'
{
GetToken -> Text
sessionId :: Prelude.Text,
GetToken -> Text
appId :: Prelude.Text
}
deriving (GetToken -> GetToken -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetToken -> GetToken -> Bool
$c/= :: GetToken -> GetToken -> Bool
== :: GetToken -> GetToken -> Bool
$c== :: GetToken -> GetToken -> Bool
Prelude.Eq, ReadPrec [GetToken]
ReadPrec GetToken
Int -> ReadS GetToken
ReadS [GetToken]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetToken]
$creadListPrec :: ReadPrec [GetToken]
readPrec :: ReadPrec GetToken
$creadPrec :: ReadPrec GetToken
readList :: ReadS [GetToken]
$creadList :: ReadS [GetToken]
readsPrec :: Int -> ReadS GetToken
$creadsPrec :: Int -> ReadS GetToken
Prelude.Read, Int -> GetToken -> ShowS
[GetToken] -> ShowS
GetToken -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetToken] -> ShowS
$cshowList :: [GetToken] -> ShowS
show :: GetToken -> String
$cshow :: GetToken -> String
showsPrec :: Int -> GetToken -> ShowS
$cshowsPrec :: Int -> GetToken -> ShowS
Prelude.Show, forall x. Rep GetToken x -> GetToken
forall x. GetToken -> Rep GetToken x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetToken x -> GetToken
$cfrom :: forall x. GetToken -> Rep GetToken x
Prelude.Generic)
newGetToken ::
Prelude.Text ->
Prelude.Text ->
GetToken
newGetToken :: Text -> Text -> GetToken
newGetToken Text
pSessionId_ Text
pAppId_ =
GetToken' {$sel:sessionId:GetToken' :: Text
sessionId = Text
pSessionId_, $sel:appId:GetToken' :: Text
appId = Text
pAppId_}
getToken_sessionId :: Lens.Lens' GetToken Prelude.Text
getToken_sessionId :: Lens' GetToken Text
getToken_sessionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetToken' {Text
sessionId :: Text
$sel:sessionId:GetToken' :: GetToken -> Text
sessionId} -> Text
sessionId) (\s :: GetToken
s@GetToken' {} Text
a -> GetToken
s {$sel:sessionId:GetToken' :: Text
sessionId = Text
a} :: GetToken)
getToken_appId :: Lens.Lens' GetToken Prelude.Text
getToken_appId :: Lens' GetToken Text
getToken_appId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetToken' {Text
appId :: Text
$sel:appId:GetToken' :: GetToken -> Text
appId} -> Text
appId) (\s :: GetToken
s@GetToken' {} Text
a -> GetToken
s {$sel:appId:GetToken' :: Text
appId = Text
a} :: GetToken)
instance Core.AWSRequest GetToken where
type AWSResponse GetToken = GetTokenResponse
request :: (Service -> Service) -> GetToken -> Request GetToken
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetToken
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetToken)))
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 ->
Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Int
-> GetTokenResponse
GetTokenResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"appId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"challengeCode")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"sessionId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"ttl")
forall (f :: * -> *) a b. Applicative f => 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))
)
instance Prelude.Hashable GetToken where
hashWithSalt :: Int -> GetToken -> Int
hashWithSalt Int
_salt GetToken' {Text
appId :: Text
sessionId :: Text
$sel:appId:GetToken' :: GetToken -> Text
$sel:sessionId:GetToken' :: GetToken -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
sessionId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
appId
instance Prelude.NFData GetToken where
rnf :: GetToken -> ()
rnf GetToken' {Text
appId :: Text
sessionId :: Text
$sel:appId:GetToken' :: GetToken -> Text
$sel:sessionId:GetToken' :: GetToken -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
sessionId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
appId
instance Data.ToHeaders GetToken where
toHeaders :: GetToken -> 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.ToPath GetToken where
toPath :: GetToken -> ByteString
toPath GetToken' {Text
appId :: Text
sessionId :: Text
$sel:appId:GetToken' :: GetToken -> Text
$sel:sessionId:GetToken' :: GetToken -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/backend/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
appId,
ByteString
"/challenge/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
sessionId
]
instance Data.ToQuery GetToken where
toQuery :: GetToken -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetTokenResponse = GetTokenResponse'
{
GetTokenResponse -> Maybe Text
appId :: Prelude.Maybe Prelude.Text,
GetTokenResponse -> Maybe Text
challengeCode :: Prelude.Maybe Prelude.Text,
GetTokenResponse -> Maybe Text
sessionId :: Prelude.Maybe Prelude.Text,
GetTokenResponse -> Maybe Text
ttl :: Prelude.Maybe Prelude.Text,
GetTokenResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetTokenResponse -> GetTokenResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetTokenResponse -> GetTokenResponse -> Bool
$c/= :: GetTokenResponse -> GetTokenResponse -> Bool
== :: GetTokenResponse -> GetTokenResponse -> Bool
$c== :: GetTokenResponse -> GetTokenResponse -> Bool
Prelude.Eq, ReadPrec [GetTokenResponse]
ReadPrec GetTokenResponse
Int -> ReadS GetTokenResponse
ReadS [GetTokenResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetTokenResponse]
$creadListPrec :: ReadPrec [GetTokenResponse]
readPrec :: ReadPrec GetTokenResponse
$creadPrec :: ReadPrec GetTokenResponse
readList :: ReadS [GetTokenResponse]
$creadList :: ReadS [GetTokenResponse]
readsPrec :: Int -> ReadS GetTokenResponse
$creadsPrec :: Int -> ReadS GetTokenResponse
Prelude.Read, Int -> GetTokenResponse -> ShowS
[GetTokenResponse] -> ShowS
GetTokenResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetTokenResponse] -> ShowS
$cshowList :: [GetTokenResponse] -> ShowS
show :: GetTokenResponse -> String
$cshow :: GetTokenResponse -> String
showsPrec :: Int -> GetTokenResponse -> ShowS
$cshowsPrec :: Int -> GetTokenResponse -> ShowS
Prelude.Show, forall x. Rep GetTokenResponse x -> GetTokenResponse
forall x. GetTokenResponse -> Rep GetTokenResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetTokenResponse x -> GetTokenResponse
$cfrom :: forall x. GetTokenResponse -> Rep GetTokenResponse x
Prelude.Generic)
newGetTokenResponse ::
Prelude.Int ->
GetTokenResponse
newGetTokenResponse :: Int -> GetTokenResponse
newGetTokenResponse Int
pHttpStatus_ =
GetTokenResponse'
{ $sel:appId:GetTokenResponse' :: Maybe Text
appId = forall a. Maybe a
Prelude.Nothing,
$sel:challengeCode:GetTokenResponse' :: Maybe Text
challengeCode = forall a. Maybe a
Prelude.Nothing,
$sel:sessionId:GetTokenResponse' :: Maybe Text
sessionId = forall a. Maybe a
Prelude.Nothing,
$sel:ttl:GetTokenResponse' :: Maybe Text
ttl = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetTokenResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getTokenResponse_appId :: Lens.Lens' GetTokenResponse (Prelude.Maybe Prelude.Text)
getTokenResponse_appId :: Lens' GetTokenResponse (Maybe Text)
getTokenResponse_appId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetTokenResponse' {Maybe Text
appId :: Maybe Text
$sel:appId:GetTokenResponse' :: GetTokenResponse -> Maybe Text
appId} -> Maybe Text
appId) (\s :: GetTokenResponse
s@GetTokenResponse' {} Maybe Text
a -> GetTokenResponse
s {$sel:appId:GetTokenResponse' :: Maybe Text
appId = Maybe Text
a} :: GetTokenResponse)
getTokenResponse_challengeCode :: Lens.Lens' GetTokenResponse (Prelude.Maybe Prelude.Text)
getTokenResponse_challengeCode :: Lens' GetTokenResponse (Maybe Text)
getTokenResponse_challengeCode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetTokenResponse' {Maybe Text
challengeCode :: Maybe Text
$sel:challengeCode:GetTokenResponse' :: GetTokenResponse -> Maybe Text
challengeCode} -> Maybe Text
challengeCode) (\s :: GetTokenResponse
s@GetTokenResponse' {} Maybe Text
a -> GetTokenResponse
s {$sel:challengeCode:GetTokenResponse' :: Maybe Text
challengeCode = Maybe Text
a} :: GetTokenResponse)
getTokenResponse_sessionId :: Lens.Lens' GetTokenResponse (Prelude.Maybe Prelude.Text)
getTokenResponse_sessionId :: Lens' GetTokenResponse (Maybe Text)
getTokenResponse_sessionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetTokenResponse' {Maybe Text
sessionId :: Maybe Text
$sel:sessionId:GetTokenResponse' :: GetTokenResponse -> Maybe Text
sessionId} -> Maybe Text
sessionId) (\s :: GetTokenResponse
s@GetTokenResponse' {} Maybe Text
a -> GetTokenResponse
s {$sel:sessionId:GetTokenResponse' :: Maybe Text
sessionId = Maybe Text
a} :: GetTokenResponse)
getTokenResponse_ttl :: Lens.Lens' GetTokenResponse (Prelude.Maybe Prelude.Text)
getTokenResponse_ttl :: Lens' GetTokenResponse (Maybe Text)
getTokenResponse_ttl = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetTokenResponse' {Maybe Text
ttl :: Maybe Text
$sel:ttl:GetTokenResponse' :: GetTokenResponse -> Maybe Text
ttl} -> Maybe Text
ttl) (\s :: GetTokenResponse
s@GetTokenResponse' {} Maybe Text
a -> GetTokenResponse
s {$sel:ttl:GetTokenResponse' :: Maybe Text
ttl = Maybe Text
a} :: GetTokenResponse)
getTokenResponse_httpStatus :: Lens.Lens' GetTokenResponse Prelude.Int
getTokenResponse_httpStatus :: Lens' GetTokenResponse Int
getTokenResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetTokenResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetTokenResponse' :: GetTokenResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetTokenResponse
s@GetTokenResponse' {} Int
a -> GetTokenResponse
s {$sel:httpStatus:GetTokenResponse' :: Int
httpStatus = Int
a} :: GetTokenResponse)
instance Prelude.NFData GetTokenResponse where
rnf :: GetTokenResponse -> ()
rnf GetTokenResponse' {Int
Maybe Text
httpStatus :: Int
ttl :: Maybe Text
sessionId :: Maybe Text
challengeCode :: Maybe Text
appId :: Maybe Text
$sel:httpStatus:GetTokenResponse' :: GetTokenResponse -> Int
$sel:ttl:GetTokenResponse' :: GetTokenResponse -> Maybe Text
$sel:sessionId:GetTokenResponse' :: GetTokenResponse -> Maybe Text
$sel:challengeCode:GetTokenResponse' :: GetTokenResponse -> Maybe Text
$sel:appId:GetTokenResponse' :: GetTokenResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
appId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
challengeCode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
sessionId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ttl
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus