{-# 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.GetInAppMessages
(
GetInAppMessages (..),
newGetInAppMessages,
getInAppMessages_applicationId,
getInAppMessages_endpointId,
GetInAppMessagesResponse (..),
newGetInAppMessagesResponse,
getInAppMessagesResponse_httpStatus,
getInAppMessagesResponse_inAppMessagesResponse,
)
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 GetInAppMessages = GetInAppMessages'
{
GetInAppMessages -> Text
applicationId :: Prelude.Text,
GetInAppMessages -> Text
endpointId :: Prelude.Text
}
deriving (GetInAppMessages -> GetInAppMessages -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetInAppMessages -> GetInAppMessages -> Bool
$c/= :: GetInAppMessages -> GetInAppMessages -> Bool
== :: GetInAppMessages -> GetInAppMessages -> Bool
$c== :: GetInAppMessages -> GetInAppMessages -> Bool
Prelude.Eq, ReadPrec [GetInAppMessages]
ReadPrec GetInAppMessages
Int -> ReadS GetInAppMessages
ReadS [GetInAppMessages]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetInAppMessages]
$creadListPrec :: ReadPrec [GetInAppMessages]
readPrec :: ReadPrec GetInAppMessages
$creadPrec :: ReadPrec GetInAppMessages
readList :: ReadS [GetInAppMessages]
$creadList :: ReadS [GetInAppMessages]
readsPrec :: Int -> ReadS GetInAppMessages
$creadsPrec :: Int -> ReadS GetInAppMessages
Prelude.Read, Int -> GetInAppMessages -> ShowS
[GetInAppMessages] -> ShowS
GetInAppMessages -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetInAppMessages] -> ShowS
$cshowList :: [GetInAppMessages] -> ShowS
show :: GetInAppMessages -> String
$cshow :: GetInAppMessages -> String
showsPrec :: Int -> GetInAppMessages -> ShowS
$cshowsPrec :: Int -> GetInAppMessages -> ShowS
Prelude.Show, forall x. Rep GetInAppMessages x -> GetInAppMessages
forall x. GetInAppMessages -> Rep GetInAppMessages x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetInAppMessages x -> GetInAppMessages
$cfrom :: forall x. GetInAppMessages -> Rep GetInAppMessages x
Prelude.Generic)
newGetInAppMessages ::
Prelude.Text ->
Prelude.Text ->
GetInAppMessages
newGetInAppMessages :: Text -> Text -> GetInAppMessages
newGetInAppMessages Text
pApplicationId_ Text
pEndpointId_ =
GetInAppMessages'
{ $sel:applicationId:GetInAppMessages' :: Text
applicationId = Text
pApplicationId_,
$sel:endpointId:GetInAppMessages' :: Text
endpointId = Text
pEndpointId_
}
getInAppMessages_applicationId :: Lens.Lens' GetInAppMessages Prelude.Text
getInAppMessages_applicationId :: Lens' GetInAppMessages Text
getInAppMessages_applicationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetInAppMessages' {Text
applicationId :: Text
$sel:applicationId:GetInAppMessages' :: GetInAppMessages -> Text
applicationId} -> Text
applicationId) (\s :: GetInAppMessages
s@GetInAppMessages' {} Text
a -> GetInAppMessages
s {$sel:applicationId:GetInAppMessages' :: Text
applicationId = Text
a} :: GetInAppMessages)
getInAppMessages_endpointId :: Lens.Lens' GetInAppMessages Prelude.Text
getInAppMessages_endpointId :: Lens' GetInAppMessages Text
getInAppMessages_endpointId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetInAppMessages' {Text
endpointId :: Text
$sel:endpointId:GetInAppMessages' :: GetInAppMessages -> Text
endpointId} -> Text
endpointId) (\s :: GetInAppMessages
s@GetInAppMessages' {} Text
a -> GetInAppMessages
s {$sel:endpointId:GetInAppMessages' :: Text
endpointId = Text
a} :: GetInAppMessages)
instance Core.AWSRequest GetInAppMessages where
type
AWSResponse GetInAppMessages =
GetInAppMessagesResponse
request :: (Service -> Service)
-> GetInAppMessages -> Request GetInAppMessages
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 GetInAppMessages
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetInAppMessages)))
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 -> InAppMessagesResponse -> GetInAppMessagesResponse
GetInAppMessagesResponse'
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 GetInAppMessages where
hashWithSalt :: Int -> GetInAppMessages -> Int
hashWithSalt Int
_salt GetInAppMessages' {Text
endpointId :: Text
applicationId :: Text
$sel:endpointId:GetInAppMessages' :: GetInAppMessages -> Text
$sel:applicationId:GetInAppMessages' :: GetInAppMessages -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
endpointId
instance Prelude.NFData GetInAppMessages where
rnf :: GetInAppMessages -> ()
rnf GetInAppMessages' {Text
endpointId :: Text
applicationId :: Text
$sel:endpointId:GetInAppMessages' :: GetInAppMessages -> Text
$sel:applicationId:GetInAppMessages' :: GetInAppMessages -> 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 Text
endpointId
instance Data.ToHeaders GetInAppMessages where
toHeaders :: GetInAppMessages -> 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 GetInAppMessages where
toPath :: GetInAppMessages -> ByteString
toPath GetInAppMessages' {Text
endpointId :: Text
applicationId :: Text
$sel:endpointId:GetInAppMessages' :: GetInAppMessages -> Text
$sel:applicationId:GetInAppMessages' :: GetInAppMessages -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/v1/apps/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
applicationId,
ByteString
"/endpoints/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
endpointId,
ByteString
"/inappmessages"
]
instance Data.ToQuery GetInAppMessages where
toQuery :: GetInAppMessages -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetInAppMessagesResponse = GetInAppMessagesResponse'
{
GetInAppMessagesResponse -> Int
httpStatus :: Prelude.Int,
GetInAppMessagesResponse -> InAppMessagesResponse
inAppMessagesResponse :: InAppMessagesResponse
}
deriving (GetInAppMessagesResponse -> GetInAppMessagesResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetInAppMessagesResponse -> GetInAppMessagesResponse -> Bool
$c/= :: GetInAppMessagesResponse -> GetInAppMessagesResponse -> Bool
== :: GetInAppMessagesResponse -> GetInAppMessagesResponse -> Bool
$c== :: GetInAppMessagesResponse -> GetInAppMessagesResponse -> Bool
Prelude.Eq, ReadPrec [GetInAppMessagesResponse]
ReadPrec GetInAppMessagesResponse
Int -> ReadS GetInAppMessagesResponse
ReadS [GetInAppMessagesResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetInAppMessagesResponse]
$creadListPrec :: ReadPrec [GetInAppMessagesResponse]
readPrec :: ReadPrec GetInAppMessagesResponse
$creadPrec :: ReadPrec GetInAppMessagesResponse
readList :: ReadS [GetInAppMessagesResponse]
$creadList :: ReadS [GetInAppMessagesResponse]
readsPrec :: Int -> ReadS GetInAppMessagesResponse
$creadsPrec :: Int -> ReadS GetInAppMessagesResponse
Prelude.Read, Int -> GetInAppMessagesResponse -> ShowS
[GetInAppMessagesResponse] -> ShowS
GetInAppMessagesResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetInAppMessagesResponse] -> ShowS
$cshowList :: [GetInAppMessagesResponse] -> ShowS
show :: GetInAppMessagesResponse -> String
$cshow :: GetInAppMessagesResponse -> String
showsPrec :: Int -> GetInAppMessagesResponse -> ShowS
$cshowsPrec :: Int -> GetInAppMessagesResponse -> ShowS
Prelude.Show, forall x.
Rep GetInAppMessagesResponse x -> GetInAppMessagesResponse
forall x.
GetInAppMessagesResponse -> Rep GetInAppMessagesResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetInAppMessagesResponse x -> GetInAppMessagesResponse
$cfrom :: forall x.
GetInAppMessagesResponse -> Rep GetInAppMessagesResponse x
Prelude.Generic)
newGetInAppMessagesResponse ::
Prelude.Int ->
InAppMessagesResponse ->
GetInAppMessagesResponse
newGetInAppMessagesResponse :: Int -> InAppMessagesResponse -> GetInAppMessagesResponse
newGetInAppMessagesResponse
Int
pHttpStatus_
InAppMessagesResponse
pInAppMessagesResponse_ =
GetInAppMessagesResponse'
{ $sel:httpStatus:GetInAppMessagesResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:inAppMessagesResponse:GetInAppMessagesResponse' :: InAppMessagesResponse
inAppMessagesResponse = InAppMessagesResponse
pInAppMessagesResponse_
}
getInAppMessagesResponse_httpStatus :: Lens.Lens' GetInAppMessagesResponse Prelude.Int
getInAppMessagesResponse_httpStatus :: Lens' GetInAppMessagesResponse Int
getInAppMessagesResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetInAppMessagesResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetInAppMessagesResponse' :: GetInAppMessagesResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetInAppMessagesResponse
s@GetInAppMessagesResponse' {} Int
a -> GetInAppMessagesResponse
s {$sel:httpStatus:GetInAppMessagesResponse' :: Int
httpStatus = Int
a} :: GetInAppMessagesResponse)
getInAppMessagesResponse_inAppMessagesResponse :: Lens.Lens' GetInAppMessagesResponse InAppMessagesResponse
getInAppMessagesResponse_inAppMessagesResponse :: Lens' GetInAppMessagesResponse InAppMessagesResponse
getInAppMessagesResponse_inAppMessagesResponse = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetInAppMessagesResponse' {InAppMessagesResponse
inAppMessagesResponse :: InAppMessagesResponse
$sel:inAppMessagesResponse:GetInAppMessagesResponse' :: GetInAppMessagesResponse -> InAppMessagesResponse
inAppMessagesResponse} -> InAppMessagesResponse
inAppMessagesResponse) (\s :: GetInAppMessagesResponse
s@GetInAppMessagesResponse' {} InAppMessagesResponse
a -> GetInAppMessagesResponse
s {$sel:inAppMessagesResponse:GetInAppMessagesResponse' :: InAppMessagesResponse
inAppMessagesResponse = InAppMessagesResponse
a} :: GetInAppMessagesResponse)
instance Prelude.NFData GetInAppMessagesResponse where
rnf :: GetInAppMessagesResponse -> ()
rnf GetInAppMessagesResponse' {Int
InAppMessagesResponse
inAppMessagesResponse :: InAppMessagesResponse
httpStatus :: Int
$sel:inAppMessagesResponse:GetInAppMessagesResponse' :: GetInAppMessagesResponse -> InAppMessagesResponse
$sel:httpStatus:GetInAppMessagesResponse' :: GetInAppMessagesResponse -> 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 InAppMessagesResponse
inAppMessagesResponse