{-# 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.DirectConnect.DescribeHostedConnections
(
DescribeHostedConnections (..),
newDescribeHostedConnections,
describeHostedConnections_connectionId,
Connections (..),
newConnections,
connections_connections,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.DirectConnect.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeHostedConnections = DescribeHostedConnections'
{
DescribeHostedConnections -> Text
connectionId :: Prelude.Text
}
deriving (DescribeHostedConnections -> DescribeHostedConnections -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeHostedConnections -> DescribeHostedConnections -> Bool
$c/= :: DescribeHostedConnections -> DescribeHostedConnections -> Bool
== :: DescribeHostedConnections -> DescribeHostedConnections -> Bool
$c== :: DescribeHostedConnections -> DescribeHostedConnections -> Bool
Prelude.Eq, ReadPrec [DescribeHostedConnections]
ReadPrec DescribeHostedConnections
Int -> ReadS DescribeHostedConnections
ReadS [DescribeHostedConnections]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeHostedConnections]
$creadListPrec :: ReadPrec [DescribeHostedConnections]
readPrec :: ReadPrec DescribeHostedConnections
$creadPrec :: ReadPrec DescribeHostedConnections
readList :: ReadS [DescribeHostedConnections]
$creadList :: ReadS [DescribeHostedConnections]
readsPrec :: Int -> ReadS DescribeHostedConnections
$creadsPrec :: Int -> ReadS DescribeHostedConnections
Prelude.Read, Int -> DescribeHostedConnections -> ShowS
[DescribeHostedConnections] -> ShowS
DescribeHostedConnections -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeHostedConnections] -> ShowS
$cshowList :: [DescribeHostedConnections] -> ShowS
show :: DescribeHostedConnections -> String
$cshow :: DescribeHostedConnections -> String
showsPrec :: Int -> DescribeHostedConnections -> ShowS
$cshowsPrec :: Int -> DescribeHostedConnections -> ShowS
Prelude.Show, forall x.
Rep DescribeHostedConnections x -> DescribeHostedConnections
forall x.
DescribeHostedConnections -> Rep DescribeHostedConnections x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeHostedConnections x -> DescribeHostedConnections
$cfrom :: forall x.
DescribeHostedConnections -> Rep DescribeHostedConnections x
Prelude.Generic)
newDescribeHostedConnections ::
Prelude.Text ->
DescribeHostedConnections
newDescribeHostedConnections :: Text -> DescribeHostedConnections
newDescribeHostedConnections Text
pConnectionId_ =
DescribeHostedConnections'
{ $sel:connectionId:DescribeHostedConnections' :: Text
connectionId =
Text
pConnectionId_
}
describeHostedConnections_connectionId :: Lens.Lens' DescribeHostedConnections Prelude.Text
describeHostedConnections_connectionId :: Lens' DescribeHostedConnections Text
describeHostedConnections_connectionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeHostedConnections' {Text
connectionId :: Text
$sel:connectionId:DescribeHostedConnections' :: DescribeHostedConnections -> Text
connectionId} -> Text
connectionId) (\s :: DescribeHostedConnections
s@DescribeHostedConnections' {} Text
a -> DescribeHostedConnections
s {$sel:connectionId:DescribeHostedConnections' :: Text
connectionId = Text
a} :: DescribeHostedConnections)
instance Core.AWSRequest DescribeHostedConnections where
type
AWSResponse DescribeHostedConnections =
Connections
request :: (Service -> Service)
-> DescribeHostedConnections -> Request DescribeHostedConnections
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 DescribeHostedConnections
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeHostedConnections)))
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 -> forall a. FromJSON a => Object -> Either String a
Data.eitherParseJSON Object
x)
instance Prelude.Hashable DescribeHostedConnections where
hashWithSalt :: Int -> DescribeHostedConnections -> Int
hashWithSalt Int
_salt DescribeHostedConnections' {Text
connectionId :: Text
$sel:connectionId:DescribeHostedConnections' :: DescribeHostedConnections -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
connectionId
instance Prelude.NFData DescribeHostedConnections where
rnf :: DescribeHostedConnections -> ()
rnf DescribeHostedConnections' {Text
connectionId :: Text
$sel:connectionId:DescribeHostedConnections' :: DescribeHostedConnections -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
connectionId
instance Data.ToHeaders DescribeHostedConnections where
toHeaders :: DescribeHostedConnections -> 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
"OvertureService.DescribeHostedConnections" ::
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 DescribeHostedConnections where
toJSON :: DescribeHostedConnections -> Value
toJSON DescribeHostedConnections' {Text
connectionId :: Text
$sel:connectionId:DescribeHostedConnections' :: DescribeHostedConnections -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"connectionId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
connectionId)]
)
instance Data.ToPath DescribeHostedConnections where
toPath :: DescribeHostedConnections -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeHostedConnections where
toQuery :: DescribeHostedConnections -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty