{-# 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.Personalize.DescribeEventTracker
(
DescribeEventTracker (..),
newDescribeEventTracker,
describeEventTracker_eventTrackerArn,
DescribeEventTrackerResponse (..),
newDescribeEventTrackerResponse,
describeEventTrackerResponse_eventTracker,
describeEventTrackerResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Personalize.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeEventTracker = DescribeEventTracker'
{
DescribeEventTracker -> Text
eventTrackerArn :: Prelude.Text
}
deriving (DescribeEventTracker -> DescribeEventTracker -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeEventTracker -> DescribeEventTracker -> Bool
$c/= :: DescribeEventTracker -> DescribeEventTracker -> Bool
== :: DescribeEventTracker -> DescribeEventTracker -> Bool
$c== :: DescribeEventTracker -> DescribeEventTracker -> Bool
Prelude.Eq, ReadPrec [DescribeEventTracker]
ReadPrec DescribeEventTracker
Int -> ReadS DescribeEventTracker
ReadS [DescribeEventTracker]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeEventTracker]
$creadListPrec :: ReadPrec [DescribeEventTracker]
readPrec :: ReadPrec DescribeEventTracker
$creadPrec :: ReadPrec DescribeEventTracker
readList :: ReadS [DescribeEventTracker]
$creadList :: ReadS [DescribeEventTracker]
readsPrec :: Int -> ReadS DescribeEventTracker
$creadsPrec :: Int -> ReadS DescribeEventTracker
Prelude.Read, Int -> DescribeEventTracker -> ShowS
[DescribeEventTracker] -> ShowS
DescribeEventTracker -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeEventTracker] -> ShowS
$cshowList :: [DescribeEventTracker] -> ShowS
show :: DescribeEventTracker -> String
$cshow :: DescribeEventTracker -> String
showsPrec :: Int -> DescribeEventTracker -> ShowS
$cshowsPrec :: Int -> DescribeEventTracker -> ShowS
Prelude.Show, forall x. Rep DescribeEventTracker x -> DescribeEventTracker
forall x. DescribeEventTracker -> Rep DescribeEventTracker x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeEventTracker x -> DescribeEventTracker
$cfrom :: forall x. DescribeEventTracker -> Rep DescribeEventTracker x
Prelude.Generic)
newDescribeEventTracker ::
Prelude.Text ->
DescribeEventTracker
newDescribeEventTracker :: Text -> DescribeEventTracker
newDescribeEventTracker Text
pEventTrackerArn_ =
DescribeEventTracker'
{ $sel:eventTrackerArn:DescribeEventTracker' :: Text
eventTrackerArn =
Text
pEventTrackerArn_
}
describeEventTracker_eventTrackerArn :: Lens.Lens' DescribeEventTracker Prelude.Text
describeEventTracker_eventTrackerArn :: Lens' DescribeEventTracker Text
describeEventTracker_eventTrackerArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEventTracker' {Text
eventTrackerArn :: Text
$sel:eventTrackerArn:DescribeEventTracker' :: DescribeEventTracker -> Text
eventTrackerArn} -> Text
eventTrackerArn) (\s :: DescribeEventTracker
s@DescribeEventTracker' {} Text
a -> DescribeEventTracker
s {$sel:eventTrackerArn:DescribeEventTracker' :: Text
eventTrackerArn = Text
a} :: DescribeEventTracker)
instance Core.AWSRequest DescribeEventTracker where
type
AWSResponse DescribeEventTracker =
DescribeEventTrackerResponse
request :: (Service -> Service)
-> DescribeEventTracker -> Request DescribeEventTracker
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 DescribeEventTracker
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeEventTracker)))
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 EventTracker -> Int -> DescribeEventTrackerResponse
DescribeEventTrackerResponse'
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
"eventTracker")
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 DescribeEventTracker where
hashWithSalt :: Int -> DescribeEventTracker -> Int
hashWithSalt Int
_salt DescribeEventTracker' {Text
eventTrackerArn :: Text
$sel:eventTrackerArn:DescribeEventTracker' :: DescribeEventTracker -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
eventTrackerArn
instance Prelude.NFData DescribeEventTracker where
rnf :: DescribeEventTracker -> ()
rnf DescribeEventTracker' {Text
eventTrackerArn :: Text
$sel:eventTrackerArn:DescribeEventTracker' :: DescribeEventTracker -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
eventTrackerArn
instance Data.ToHeaders DescribeEventTracker where
toHeaders :: DescribeEventTracker -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"AmazonPersonalize.DescribeEventTracker" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DescribeEventTracker where
toJSON :: DescribeEventTracker -> Value
toJSON DescribeEventTracker' {Text
eventTrackerArn :: Text
$sel:eventTrackerArn:DescribeEventTracker' :: DescribeEventTracker -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"eventTrackerArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
eventTrackerArn)
]
)
instance Data.ToPath DescribeEventTracker where
toPath :: DescribeEventTracker -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeEventTracker where
toQuery :: DescribeEventTracker -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeEventTrackerResponse = DescribeEventTrackerResponse'
{
DescribeEventTrackerResponse -> Maybe EventTracker
eventTracker :: Prelude.Maybe EventTracker,
DescribeEventTrackerResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeEventTrackerResponse
-> DescribeEventTrackerResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeEventTrackerResponse
-> DescribeEventTrackerResponse -> Bool
$c/= :: DescribeEventTrackerResponse
-> DescribeEventTrackerResponse -> Bool
== :: DescribeEventTrackerResponse
-> DescribeEventTrackerResponse -> Bool
$c== :: DescribeEventTrackerResponse
-> DescribeEventTrackerResponse -> Bool
Prelude.Eq, ReadPrec [DescribeEventTrackerResponse]
ReadPrec DescribeEventTrackerResponse
Int -> ReadS DescribeEventTrackerResponse
ReadS [DescribeEventTrackerResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeEventTrackerResponse]
$creadListPrec :: ReadPrec [DescribeEventTrackerResponse]
readPrec :: ReadPrec DescribeEventTrackerResponse
$creadPrec :: ReadPrec DescribeEventTrackerResponse
readList :: ReadS [DescribeEventTrackerResponse]
$creadList :: ReadS [DescribeEventTrackerResponse]
readsPrec :: Int -> ReadS DescribeEventTrackerResponse
$creadsPrec :: Int -> ReadS DescribeEventTrackerResponse
Prelude.Read, Int -> DescribeEventTrackerResponse -> ShowS
[DescribeEventTrackerResponse] -> ShowS
DescribeEventTrackerResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeEventTrackerResponse] -> ShowS
$cshowList :: [DescribeEventTrackerResponse] -> ShowS
show :: DescribeEventTrackerResponse -> String
$cshow :: DescribeEventTrackerResponse -> String
showsPrec :: Int -> DescribeEventTrackerResponse -> ShowS
$cshowsPrec :: Int -> DescribeEventTrackerResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeEventTrackerResponse x -> DescribeEventTrackerResponse
forall x.
DescribeEventTrackerResponse -> Rep DescribeEventTrackerResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeEventTrackerResponse x -> DescribeEventTrackerResponse
$cfrom :: forall x.
DescribeEventTrackerResponse -> Rep DescribeEventTrackerResponse x
Prelude.Generic)
newDescribeEventTrackerResponse ::
Prelude.Int ->
DescribeEventTrackerResponse
newDescribeEventTrackerResponse :: Int -> DescribeEventTrackerResponse
newDescribeEventTrackerResponse Int
pHttpStatus_ =
DescribeEventTrackerResponse'
{ $sel:eventTracker:DescribeEventTrackerResponse' :: Maybe EventTracker
eventTracker =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeEventTrackerResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeEventTrackerResponse_eventTracker :: Lens.Lens' DescribeEventTrackerResponse (Prelude.Maybe EventTracker)
describeEventTrackerResponse_eventTracker :: Lens' DescribeEventTrackerResponse (Maybe EventTracker)
describeEventTrackerResponse_eventTracker = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEventTrackerResponse' {Maybe EventTracker
eventTracker :: Maybe EventTracker
$sel:eventTracker:DescribeEventTrackerResponse' :: DescribeEventTrackerResponse -> Maybe EventTracker
eventTracker} -> Maybe EventTracker
eventTracker) (\s :: DescribeEventTrackerResponse
s@DescribeEventTrackerResponse' {} Maybe EventTracker
a -> DescribeEventTrackerResponse
s {$sel:eventTracker:DescribeEventTrackerResponse' :: Maybe EventTracker
eventTracker = Maybe EventTracker
a} :: DescribeEventTrackerResponse)
describeEventTrackerResponse_httpStatus :: Lens.Lens' DescribeEventTrackerResponse Prelude.Int
describeEventTrackerResponse_httpStatus :: Lens' DescribeEventTrackerResponse Int
describeEventTrackerResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEventTrackerResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeEventTrackerResponse' :: DescribeEventTrackerResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeEventTrackerResponse
s@DescribeEventTrackerResponse' {} Int
a -> DescribeEventTrackerResponse
s {$sel:httpStatus:DescribeEventTrackerResponse' :: Int
httpStatus = Int
a} :: DescribeEventTrackerResponse)
instance Prelude.NFData DescribeEventTrackerResponse where
rnf :: DescribeEventTrackerResponse -> ()
rnf DescribeEventTrackerResponse' {Int
Maybe EventTracker
httpStatus :: Int
eventTracker :: Maybe EventTracker
$sel:httpStatus:DescribeEventTrackerResponse' :: DescribeEventTrackerResponse -> Int
$sel:eventTracker:DescribeEventTrackerResponse' :: DescribeEventTrackerResponse -> Maybe EventTracker
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe EventTracker
eventTracker
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus