{-# 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.GlobalAccelerator.DescribeCustomRoutingEndpointGroup
(
DescribeCustomRoutingEndpointGroup (..),
newDescribeCustomRoutingEndpointGroup,
describeCustomRoutingEndpointGroup_endpointGroupArn,
DescribeCustomRoutingEndpointGroupResponse (..),
newDescribeCustomRoutingEndpointGroupResponse,
describeCustomRoutingEndpointGroupResponse_endpointGroup,
describeCustomRoutingEndpointGroupResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import Amazonka.GlobalAccelerator.Types
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeCustomRoutingEndpointGroup = DescribeCustomRoutingEndpointGroup'
{
DescribeCustomRoutingEndpointGroup -> Text
endpointGroupArn :: Prelude.Text
}
deriving (DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool
(DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool)
-> (DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool)
-> Eq DescribeCustomRoutingEndpointGroup
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool
$c/= :: DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool
== :: DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool
$c== :: DescribeCustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroup -> Bool
Prelude.Eq, ReadPrec [DescribeCustomRoutingEndpointGroup]
ReadPrec DescribeCustomRoutingEndpointGroup
Int -> ReadS DescribeCustomRoutingEndpointGroup
ReadS [DescribeCustomRoutingEndpointGroup]
(Int -> ReadS DescribeCustomRoutingEndpointGroup)
-> ReadS [DescribeCustomRoutingEndpointGroup]
-> ReadPrec DescribeCustomRoutingEndpointGroup
-> ReadPrec [DescribeCustomRoutingEndpointGroup]
-> Read DescribeCustomRoutingEndpointGroup
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeCustomRoutingEndpointGroup]
$creadListPrec :: ReadPrec [DescribeCustomRoutingEndpointGroup]
readPrec :: ReadPrec DescribeCustomRoutingEndpointGroup
$creadPrec :: ReadPrec DescribeCustomRoutingEndpointGroup
readList :: ReadS [DescribeCustomRoutingEndpointGroup]
$creadList :: ReadS [DescribeCustomRoutingEndpointGroup]
readsPrec :: Int -> ReadS DescribeCustomRoutingEndpointGroup
$creadsPrec :: Int -> ReadS DescribeCustomRoutingEndpointGroup
Prelude.Read, Int -> DescribeCustomRoutingEndpointGroup -> ShowS
[DescribeCustomRoutingEndpointGroup] -> ShowS
DescribeCustomRoutingEndpointGroup -> String
(Int -> DescribeCustomRoutingEndpointGroup -> ShowS)
-> (DescribeCustomRoutingEndpointGroup -> String)
-> ([DescribeCustomRoutingEndpointGroup] -> ShowS)
-> Show DescribeCustomRoutingEndpointGroup
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeCustomRoutingEndpointGroup] -> ShowS
$cshowList :: [DescribeCustomRoutingEndpointGroup] -> ShowS
show :: DescribeCustomRoutingEndpointGroup -> String
$cshow :: DescribeCustomRoutingEndpointGroup -> String
showsPrec :: Int -> DescribeCustomRoutingEndpointGroup -> ShowS
$cshowsPrec :: Int -> DescribeCustomRoutingEndpointGroup -> ShowS
Prelude.Show, (forall x.
DescribeCustomRoutingEndpointGroup
-> Rep DescribeCustomRoutingEndpointGroup x)
-> (forall x.
Rep DescribeCustomRoutingEndpointGroup x
-> DescribeCustomRoutingEndpointGroup)
-> Generic DescribeCustomRoutingEndpointGroup
forall x.
Rep DescribeCustomRoutingEndpointGroup x
-> DescribeCustomRoutingEndpointGroup
forall x.
DescribeCustomRoutingEndpointGroup
-> Rep DescribeCustomRoutingEndpointGroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeCustomRoutingEndpointGroup x
-> DescribeCustomRoutingEndpointGroup
$cfrom :: forall x.
DescribeCustomRoutingEndpointGroup
-> Rep DescribeCustomRoutingEndpointGroup x
Prelude.Generic)
newDescribeCustomRoutingEndpointGroup ::
Prelude.Text ->
DescribeCustomRoutingEndpointGroup
newDescribeCustomRoutingEndpointGroup :: Text -> DescribeCustomRoutingEndpointGroup
newDescribeCustomRoutingEndpointGroup
Text
pEndpointGroupArn_ =
DescribeCustomRoutingEndpointGroup' :: Text -> DescribeCustomRoutingEndpointGroup
DescribeCustomRoutingEndpointGroup'
{ $sel:endpointGroupArn:DescribeCustomRoutingEndpointGroup' :: Text
endpointGroupArn =
Text
pEndpointGroupArn_
}
describeCustomRoutingEndpointGroup_endpointGroupArn :: Lens.Lens' DescribeCustomRoutingEndpointGroup Prelude.Text
describeCustomRoutingEndpointGroup_endpointGroupArn :: (Text -> f Text)
-> DescribeCustomRoutingEndpointGroup
-> f DescribeCustomRoutingEndpointGroup
describeCustomRoutingEndpointGroup_endpointGroupArn = (DescribeCustomRoutingEndpointGroup -> Text)
-> (DescribeCustomRoutingEndpointGroup
-> Text -> DescribeCustomRoutingEndpointGroup)
-> Lens
DescribeCustomRoutingEndpointGroup
DescribeCustomRoutingEndpointGroup
Text
Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeCustomRoutingEndpointGroup' {Text
endpointGroupArn :: Text
$sel:endpointGroupArn:DescribeCustomRoutingEndpointGroup' :: DescribeCustomRoutingEndpointGroup -> Text
endpointGroupArn} -> Text
endpointGroupArn) (\s :: DescribeCustomRoutingEndpointGroup
s@DescribeCustomRoutingEndpointGroup' {} Text
a -> DescribeCustomRoutingEndpointGroup
s {$sel:endpointGroupArn:DescribeCustomRoutingEndpointGroup' :: Text
endpointGroupArn = Text
a} :: DescribeCustomRoutingEndpointGroup)
instance
Core.AWSRequest
DescribeCustomRoutingEndpointGroup
where
type
AWSResponse DescribeCustomRoutingEndpointGroup =
DescribeCustomRoutingEndpointGroupResponse
request :: DescribeCustomRoutingEndpointGroup
-> Request DescribeCustomRoutingEndpointGroup
request = Service
-> DescribeCustomRoutingEndpointGroup
-> Request DescribeCustomRoutingEndpointGroup
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
response :: Logger
-> Service
-> Proxy DescribeCustomRoutingEndpointGroup
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DescribeCustomRoutingEndpointGroup)))
response =
(Int
-> ResponseHeaders
-> Object
-> Either String (AWSResponse DescribeCustomRoutingEndpointGroup))
-> Logger
-> Service
-> Proxy DescribeCustomRoutingEndpointGroup
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DescribeCustomRoutingEndpointGroup)))
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe CustomRoutingEndpointGroup
-> Int -> DescribeCustomRoutingEndpointGroupResponse
DescribeCustomRoutingEndpointGroupResponse'
(Maybe CustomRoutingEndpointGroup
-> Int -> DescribeCustomRoutingEndpointGroupResponse)
-> Either String (Maybe CustomRoutingEndpointGroup)
-> Either
String (Int -> DescribeCustomRoutingEndpointGroupResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Either String (Maybe CustomRoutingEndpointGroup)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"EndpointGroup")
Either String (Int -> DescribeCustomRoutingEndpointGroupResponse)
-> Either String Int
-> Either String DescribeCustomRoutingEndpointGroupResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance
Prelude.Hashable
DescribeCustomRoutingEndpointGroup
instance
Prelude.NFData
DescribeCustomRoutingEndpointGroup
instance
Core.ToHeaders
DescribeCustomRoutingEndpointGroup
where
toHeaders :: DescribeCustomRoutingEndpointGroup -> ResponseHeaders
toHeaders =
ResponseHeaders
-> DescribeCustomRoutingEndpointGroup -> ResponseHeaders
forall a b. a -> b -> a
Prelude.const
( [ResponseHeaders] -> ResponseHeaders
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"GlobalAccelerator_V20180706.DescribeCustomRoutingEndpointGroup" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance
Core.ToJSON
DescribeCustomRoutingEndpointGroup
where
toJSON :: DescribeCustomRoutingEndpointGroup -> Value
toJSON DescribeCustomRoutingEndpointGroup' {Text
endpointGroupArn :: Text
$sel:endpointGroupArn:DescribeCustomRoutingEndpointGroup' :: DescribeCustomRoutingEndpointGroup -> Text
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just
(Text
"EndpointGroupArn" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
endpointGroupArn)
]
)
instance
Core.ToPath
DescribeCustomRoutingEndpointGroup
where
toPath :: DescribeCustomRoutingEndpointGroup -> ByteString
toPath = ByteString -> DescribeCustomRoutingEndpointGroup -> ByteString
forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Core.ToQuery
DescribeCustomRoutingEndpointGroup
where
toQuery :: DescribeCustomRoutingEndpointGroup -> QueryString
toQuery = QueryString -> DescribeCustomRoutingEndpointGroup -> QueryString
forall a b. a -> b -> a
Prelude.const QueryString
forall a. Monoid a => a
Prelude.mempty
data DescribeCustomRoutingEndpointGroupResponse = DescribeCustomRoutingEndpointGroupResponse'
{
DescribeCustomRoutingEndpointGroupResponse
-> Maybe CustomRoutingEndpointGroup
endpointGroup :: Prelude.Maybe CustomRoutingEndpointGroup,
DescribeCustomRoutingEndpointGroupResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool
(DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool)
-> (DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool)
-> Eq DescribeCustomRoutingEndpointGroupResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool
$c/= :: DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool
== :: DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool
$c== :: DescribeCustomRoutingEndpointGroupResponse
-> DescribeCustomRoutingEndpointGroupResponse -> Bool
Prelude.Eq, ReadPrec [DescribeCustomRoutingEndpointGroupResponse]
ReadPrec DescribeCustomRoutingEndpointGroupResponse
Int -> ReadS DescribeCustomRoutingEndpointGroupResponse
ReadS [DescribeCustomRoutingEndpointGroupResponse]
(Int -> ReadS DescribeCustomRoutingEndpointGroupResponse)
-> ReadS [DescribeCustomRoutingEndpointGroupResponse]
-> ReadPrec DescribeCustomRoutingEndpointGroupResponse
-> ReadPrec [DescribeCustomRoutingEndpointGroupResponse]
-> Read DescribeCustomRoutingEndpointGroupResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeCustomRoutingEndpointGroupResponse]
$creadListPrec :: ReadPrec [DescribeCustomRoutingEndpointGroupResponse]
readPrec :: ReadPrec DescribeCustomRoutingEndpointGroupResponse
$creadPrec :: ReadPrec DescribeCustomRoutingEndpointGroupResponse
readList :: ReadS [DescribeCustomRoutingEndpointGroupResponse]
$creadList :: ReadS [DescribeCustomRoutingEndpointGroupResponse]
readsPrec :: Int -> ReadS DescribeCustomRoutingEndpointGroupResponse
$creadsPrec :: Int -> ReadS DescribeCustomRoutingEndpointGroupResponse
Prelude.Read, Int -> DescribeCustomRoutingEndpointGroupResponse -> ShowS
[DescribeCustomRoutingEndpointGroupResponse] -> ShowS
DescribeCustomRoutingEndpointGroupResponse -> String
(Int -> DescribeCustomRoutingEndpointGroupResponse -> ShowS)
-> (DescribeCustomRoutingEndpointGroupResponse -> String)
-> ([DescribeCustomRoutingEndpointGroupResponse] -> ShowS)
-> Show DescribeCustomRoutingEndpointGroupResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeCustomRoutingEndpointGroupResponse] -> ShowS
$cshowList :: [DescribeCustomRoutingEndpointGroupResponse] -> ShowS
show :: DescribeCustomRoutingEndpointGroupResponse -> String
$cshow :: DescribeCustomRoutingEndpointGroupResponse -> String
showsPrec :: Int -> DescribeCustomRoutingEndpointGroupResponse -> ShowS
$cshowsPrec :: Int -> DescribeCustomRoutingEndpointGroupResponse -> ShowS
Prelude.Show, (forall x.
DescribeCustomRoutingEndpointGroupResponse
-> Rep DescribeCustomRoutingEndpointGroupResponse x)
-> (forall x.
Rep DescribeCustomRoutingEndpointGroupResponse x
-> DescribeCustomRoutingEndpointGroupResponse)
-> Generic DescribeCustomRoutingEndpointGroupResponse
forall x.
Rep DescribeCustomRoutingEndpointGroupResponse x
-> DescribeCustomRoutingEndpointGroupResponse
forall x.
DescribeCustomRoutingEndpointGroupResponse
-> Rep DescribeCustomRoutingEndpointGroupResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeCustomRoutingEndpointGroupResponse x
-> DescribeCustomRoutingEndpointGroupResponse
$cfrom :: forall x.
DescribeCustomRoutingEndpointGroupResponse
-> Rep DescribeCustomRoutingEndpointGroupResponse x
Prelude.Generic)
newDescribeCustomRoutingEndpointGroupResponse ::
Prelude.Int ->
DescribeCustomRoutingEndpointGroupResponse
newDescribeCustomRoutingEndpointGroupResponse :: Int -> DescribeCustomRoutingEndpointGroupResponse
newDescribeCustomRoutingEndpointGroupResponse
Int
pHttpStatus_ =
DescribeCustomRoutingEndpointGroupResponse' :: Maybe CustomRoutingEndpointGroup
-> Int -> DescribeCustomRoutingEndpointGroupResponse
DescribeCustomRoutingEndpointGroupResponse'
{ $sel:endpointGroup:DescribeCustomRoutingEndpointGroupResponse' :: Maybe CustomRoutingEndpointGroup
endpointGroup =
Maybe CustomRoutingEndpointGroup
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeCustomRoutingEndpointGroupResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeCustomRoutingEndpointGroupResponse_endpointGroup :: Lens.Lens' DescribeCustomRoutingEndpointGroupResponse (Prelude.Maybe CustomRoutingEndpointGroup)
describeCustomRoutingEndpointGroupResponse_endpointGroup :: (Maybe CustomRoutingEndpointGroup
-> f (Maybe CustomRoutingEndpointGroup))
-> DescribeCustomRoutingEndpointGroupResponse
-> f DescribeCustomRoutingEndpointGroupResponse
describeCustomRoutingEndpointGroupResponse_endpointGroup = (DescribeCustomRoutingEndpointGroupResponse
-> Maybe CustomRoutingEndpointGroup)
-> (DescribeCustomRoutingEndpointGroupResponse
-> Maybe CustomRoutingEndpointGroup
-> DescribeCustomRoutingEndpointGroupResponse)
-> Lens
DescribeCustomRoutingEndpointGroupResponse
DescribeCustomRoutingEndpointGroupResponse
(Maybe CustomRoutingEndpointGroup)
(Maybe CustomRoutingEndpointGroup)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeCustomRoutingEndpointGroupResponse' {Maybe CustomRoutingEndpointGroup
endpointGroup :: Maybe CustomRoutingEndpointGroup
$sel:endpointGroup:DescribeCustomRoutingEndpointGroupResponse' :: DescribeCustomRoutingEndpointGroupResponse
-> Maybe CustomRoutingEndpointGroup
endpointGroup} -> Maybe CustomRoutingEndpointGroup
endpointGroup) (\s :: DescribeCustomRoutingEndpointGroupResponse
s@DescribeCustomRoutingEndpointGroupResponse' {} Maybe CustomRoutingEndpointGroup
a -> DescribeCustomRoutingEndpointGroupResponse
s {$sel:endpointGroup:DescribeCustomRoutingEndpointGroupResponse' :: Maybe CustomRoutingEndpointGroup
endpointGroup = Maybe CustomRoutingEndpointGroup
a} :: DescribeCustomRoutingEndpointGroupResponse)
describeCustomRoutingEndpointGroupResponse_httpStatus :: Lens.Lens' DescribeCustomRoutingEndpointGroupResponse Prelude.Int
describeCustomRoutingEndpointGroupResponse_httpStatus :: (Int -> f Int)
-> DescribeCustomRoutingEndpointGroupResponse
-> f DescribeCustomRoutingEndpointGroupResponse
describeCustomRoutingEndpointGroupResponse_httpStatus = (DescribeCustomRoutingEndpointGroupResponse -> Int)
-> (DescribeCustomRoutingEndpointGroupResponse
-> Int -> DescribeCustomRoutingEndpointGroupResponse)
-> Lens
DescribeCustomRoutingEndpointGroupResponse
DescribeCustomRoutingEndpointGroupResponse
Int
Int
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeCustomRoutingEndpointGroupResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeCustomRoutingEndpointGroupResponse' :: DescribeCustomRoutingEndpointGroupResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeCustomRoutingEndpointGroupResponse
s@DescribeCustomRoutingEndpointGroupResponse' {} Int
a -> DescribeCustomRoutingEndpointGroupResponse
s {$sel:httpStatus:DescribeCustomRoutingEndpointGroupResponse' :: Int
httpStatus = Int
a} :: DescribeCustomRoutingEndpointGroupResponse)
instance
Prelude.NFData
DescribeCustomRoutingEndpointGroupResponse