{-# 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.Comprehend.DescribeEndpoint
(
DescribeEndpoint (..),
newDescribeEndpoint,
describeEndpoint_endpointArn,
DescribeEndpointResponse (..),
newDescribeEndpointResponse,
describeEndpointResponse_endpointProperties,
describeEndpointResponse_httpStatus,
)
where
import Amazonka.Comprehend.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 DescribeEndpoint = DescribeEndpoint'
{
DescribeEndpoint -> Text
endpointArn :: Prelude.Text
}
deriving (DescribeEndpoint -> DescribeEndpoint -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeEndpoint -> DescribeEndpoint -> Bool
$c/= :: DescribeEndpoint -> DescribeEndpoint -> Bool
== :: DescribeEndpoint -> DescribeEndpoint -> Bool
$c== :: DescribeEndpoint -> DescribeEndpoint -> Bool
Prelude.Eq, ReadPrec [DescribeEndpoint]
ReadPrec DescribeEndpoint
Int -> ReadS DescribeEndpoint
ReadS [DescribeEndpoint]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeEndpoint]
$creadListPrec :: ReadPrec [DescribeEndpoint]
readPrec :: ReadPrec DescribeEndpoint
$creadPrec :: ReadPrec DescribeEndpoint
readList :: ReadS [DescribeEndpoint]
$creadList :: ReadS [DescribeEndpoint]
readsPrec :: Int -> ReadS DescribeEndpoint
$creadsPrec :: Int -> ReadS DescribeEndpoint
Prelude.Read, Int -> DescribeEndpoint -> ShowS
[DescribeEndpoint] -> ShowS
DescribeEndpoint -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeEndpoint] -> ShowS
$cshowList :: [DescribeEndpoint] -> ShowS
show :: DescribeEndpoint -> String
$cshow :: DescribeEndpoint -> String
showsPrec :: Int -> DescribeEndpoint -> ShowS
$cshowsPrec :: Int -> DescribeEndpoint -> ShowS
Prelude.Show, forall x. Rep DescribeEndpoint x -> DescribeEndpoint
forall x. DescribeEndpoint -> Rep DescribeEndpoint x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeEndpoint x -> DescribeEndpoint
$cfrom :: forall x. DescribeEndpoint -> Rep DescribeEndpoint x
Prelude.Generic)
newDescribeEndpoint ::
Prelude.Text ->
DescribeEndpoint
newDescribeEndpoint :: Text -> DescribeEndpoint
newDescribeEndpoint Text
pEndpointArn_ =
DescribeEndpoint' {$sel:endpointArn:DescribeEndpoint' :: Text
endpointArn = Text
pEndpointArn_}
describeEndpoint_endpointArn :: Lens.Lens' DescribeEndpoint Prelude.Text
describeEndpoint_endpointArn :: Lens' DescribeEndpoint Text
describeEndpoint_endpointArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEndpoint' {Text
endpointArn :: Text
$sel:endpointArn:DescribeEndpoint' :: DescribeEndpoint -> Text
endpointArn} -> Text
endpointArn) (\s :: DescribeEndpoint
s@DescribeEndpoint' {} Text
a -> DescribeEndpoint
s {$sel:endpointArn:DescribeEndpoint' :: Text
endpointArn = Text
a} :: DescribeEndpoint)
instance Core.AWSRequest DescribeEndpoint where
type
AWSResponse DescribeEndpoint =
DescribeEndpointResponse
request :: (Service -> Service)
-> DescribeEndpoint -> Request DescribeEndpoint
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 DescribeEndpoint
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DescribeEndpoint)))
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 EndpointProperties -> Int -> DescribeEndpointResponse
DescribeEndpointResponse'
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
"EndpointProperties")
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 DescribeEndpoint where
hashWithSalt :: Int -> DescribeEndpoint -> Int
hashWithSalt Int
_salt DescribeEndpoint' {Text
endpointArn :: Text
$sel:endpointArn:DescribeEndpoint' :: DescribeEndpoint -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
endpointArn
instance Prelude.NFData DescribeEndpoint where
rnf :: DescribeEndpoint -> ()
rnf DescribeEndpoint' {Text
endpointArn :: Text
$sel:endpointArn:DescribeEndpoint' :: DescribeEndpoint -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
endpointArn
instance Data.ToHeaders DescribeEndpoint where
toHeaders :: DescribeEndpoint -> 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
"Comprehend_20171127.DescribeEndpoint" ::
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 DescribeEndpoint where
toJSON :: DescribeEndpoint -> Value
toJSON DescribeEndpoint' {Text
endpointArn :: Text
$sel:endpointArn:DescribeEndpoint' :: DescribeEndpoint -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"EndpointArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
endpointArn)]
)
instance Data.ToPath DescribeEndpoint where
toPath :: DescribeEndpoint -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeEndpoint where
toQuery :: DescribeEndpoint -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeEndpointResponse = DescribeEndpointResponse'
{
DescribeEndpointResponse -> Maybe EndpointProperties
endpointProperties :: Prelude.Maybe EndpointProperties,
DescribeEndpointResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeEndpointResponse -> DescribeEndpointResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeEndpointResponse -> DescribeEndpointResponse -> Bool
$c/= :: DescribeEndpointResponse -> DescribeEndpointResponse -> Bool
== :: DescribeEndpointResponse -> DescribeEndpointResponse -> Bool
$c== :: DescribeEndpointResponse -> DescribeEndpointResponse -> Bool
Prelude.Eq, ReadPrec [DescribeEndpointResponse]
ReadPrec DescribeEndpointResponse
Int -> ReadS DescribeEndpointResponse
ReadS [DescribeEndpointResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeEndpointResponse]
$creadListPrec :: ReadPrec [DescribeEndpointResponse]
readPrec :: ReadPrec DescribeEndpointResponse
$creadPrec :: ReadPrec DescribeEndpointResponse
readList :: ReadS [DescribeEndpointResponse]
$creadList :: ReadS [DescribeEndpointResponse]
readsPrec :: Int -> ReadS DescribeEndpointResponse
$creadsPrec :: Int -> ReadS DescribeEndpointResponse
Prelude.Read, Int -> DescribeEndpointResponse -> ShowS
[DescribeEndpointResponse] -> ShowS
DescribeEndpointResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeEndpointResponse] -> ShowS
$cshowList :: [DescribeEndpointResponse] -> ShowS
show :: DescribeEndpointResponse -> String
$cshow :: DescribeEndpointResponse -> String
showsPrec :: Int -> DescribeEndpointResponse -> ShowS
$cshowsPrec :: Int -> DescribeEndpointResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeEndpointResponse x -> DescribeEndpointResponse
forall x.
DescribeEndpointResponse -> Rep DescribeEndpointResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeEndpointResponse x -> DescribeEndpointResponse
$cfrom :: forall x.
DescribeEndpointResponse -> Rep DescribeEndpointResponse x
Prelude.Generic)
newDescribeEndpointResponse ::
Prelude.Int ->
DescribeEndpointResponse
newDescribeEndpointResponse :: Int -> DescribeEndpointResponse
newDescribeEndpointResponse Int
pHttpStatus_ =
DescribeEndpointResponse'
{ $sel:endpointProperties:DescribeEndpointResponse' :: Maybe EndpointProperties
endpointProperties =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeEndpointResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeEndpointResponse_endpointProperties :: Lens.Lens' DescribeEndpointResponse (Prelude.Maybe EndpointProperties)
describeEndpointResponse_endpointProperties :: Lens' DescribeEndpointResponse (Maybe EndpointProperties)
describeEndpointResponse_endpointProperties = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEndpointResponse' {Maybe EndpointProperties
endpointProperties :: Maybe EndpointProperties
$sel:endpointProperties:DescribeEndpointResponse' :: DescribeEndpointResponse -> Maybe EndpointProperties
endpointProperties} -> Maybe EndpointProperties
endpointProperties) (\s :: DescribeEndpointResponse
s@DescribeEndpointResponse' {} Maybe EndpointProperties
a -> DescribeEndpointResponse
s {$sel:endpointProperties:DescribeEndpointResponse' :: Maybe EndpointProperties
endpointProperties = Maybe EndpointProperties
a} :: DescribeEndpointResponse)
describeEndpointResponse_httpStatus :: Lens.Lens' DescribeEndpointResponse Prelude.Int
describeEndpointResponse_httpStatus :: Lens' DescribeEndpointResponse Int
describeEndpointResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeEndpointResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeEndpointResponse' :: DescribeEndpointResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeEndpointResponse
s@DescribeEndpointResponse' {} Int
a -> DescribeEndpointResponse
s {$sel:httpStatus:DescribeEndpointResponse' :: Int
httpStatus = Int
a} :: DescribeEndpointResponse)
instance Prelude.NFData DescribeEndpointResponse where
rnf :: DescribeEndpointResponse -> ()
rnf DescribeEndpointResponse' {Int
Maybe EndpointProperties
httpStatus :: Int
endpointProperties :: Maybe EndpointProperties
$sel:httpStatus:DescribeEndpointResponse' :: DescribeEndpointResponse -> Int
$sel:endpointProperties:DescribeEndpointResponse' :: DescribeEndpointResponse -> Maybe EndpointProperties
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe EndpointProperties
endpointProperties
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus