{-# 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.ECS.DiscoverPollEndpoint
(
DiscoverPollEndpoint (..),
newDiscoverPollEndpoint,
discoverPollEndpoint_cluster,
discoverPollEndpoint_containerInstance,
DiscoverPollEndpointResponse (..),
newDiscoverPollEndpointResponse,
discoverPollEndpointResponse_endpoint,
discoverPollEndpointResponse_serviceConnectEndpoint,
discoverPollEndpointResponse_telemetryEndpoint,
discoverPollEndpointResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ECS.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DiscoverPollEndpoint = DiscoverPollEndpoint'
{
DiscoverPollEndpoint -> Maybe Text
cluster :: Prelude.Maybe Prelude.Text,
DiscoverPollEndpoint -> Maybe Text
containerInstance :: Prelude.Maybe Prelude.Text
}
deriving (DiscoverPollEndpoint -> DiscoverPollEndpoint -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DiscoverPollEndpoint -> DiscoverPollEndpoint -> Bool
$c/= :: DiscoverPollEndpoint -> DiscoverPollEndpoint -> Bool
== :: DiscoverPollEndpoint -> DiscoverPollEndpoint -> Bool
$c== :: DiscoverPollEndpoint -> DiscoverPollEndpoint -> Bool
Prelude.Eq, ReadPrec [DiscoverPollEndpoint]
ReadPrec DiscoverPollEndpoint
Int -> ReadS DiscoverPollEndpoint
ReadS [DiscoverPollEndpoint]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DiscoverPollEndpoint]
$creadListPrec :: ReadPrec [DiscoverPollEndpoint]
readPrec :: ReadPrec DiscoverPollEndpoint
$creadPrec :: ReadPrec DiscoverPollEndpoint
readList :: ReadS [DiscoverPollEndpoint]
$creadList :: ReadS [DiscoverPollEndpoint]
readsPrec :: Int -> ReadS DiscoverPollEndpoint
$creadsPrec :: Int -> ReadS DiscoverPollEndpoint
Prelude.Read, Int -> DiscoverPollEndpoint -> ShowS
[DiscoverPollEndpoint] -> ShowS
DiscoverPollEndpoint -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DiscoverPollEndpoint] -> ShowS
$cshowList :: [DiscoverPollEndpoint] -> ShowS
show :: DiscoverPollEndpoint -> String
$cshow :: DiscoverPollEndpoint -> String
showsPrec :: Int -> DiscoverPollEndpoint -> ShowS
$cshowsPrec :: Int -> DiscoverPollEndpoint -> ShowS
Prelude.Show, forall x. Rep DiscoverPollEndpoint x -> DiscoverPollEndpoint
forall x. DiscoverPollEndpoint -> Rep DiscoverPollEndpoint x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DiscoverPollEndpoint x -> DiscoverPollEndpoint
$cfrom :: forall x. DiscoverPollEndpoint -> Rep DiscoverPollEndpoint x
Prelude.Generic)
newDiscoverPollEndpoint ::
DiscoverPollEndpoint
newDiscoverPollEndpoint :: DiscoverPollEndpoint
newDiscoverPollEndpoint =
DiscoverPollEndpoint'
{ $sel:cluster:DiscoverPollEndpoint' :: Maybe Text
cluster = forall a. Maybe a
Prelude.Nothing,
$sel:containerInstance:DiscoverPollEndpoint' :: Maybe Text
containerInstance = forall a. Maybe a
Prelude.Nothing
}
discoverPollEndpoint_cluster :: Lens.Lens' DiscoverPollEndpoint (Prelude.Maybe Prelude.Text)
discoverPollEndpoint_cluster :: Lens' DiscoverPollEndpoint (Maybe Text)
discoverPollEndpoint_cluster = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpoint' {Maybe Text
cluster :: Maybe Text
$sel:cluster:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
cluster} -> Maybe Text
cluster) (\s :: DiscoverPollEndpoint
s@DiscoverPollEndpoint' {} Maybe Text
a -> DiscoverPollEndpoint
s {$sel:cluster:DiscoverPollEndpoint' :: Maybe Text
cluster = Maybe Text
a} :: DiscoverPollEndpoint)
discoverPollEndpoint_containerInstance :: Lens.Lens' DiscoverPollEndpoint (Prelude.Maybe Prelude.Text)
discoverPollEndpoint_containerInstance :: Lens' DiscoverPollEndpoint (Maybe Text)
discoverPollEndpoint_containerInstance = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpoint' {Maybe Text
containerInstance :: Maybe Text
$sel:containerInstance:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
containerInstance} -> Maybe Text
containerInstance) (\s :: DiscoverPollEndpoint
s@DiscoverPollEndpoint' {} Maybe Text
a -> DiscoverPollEndpoint
s {$sel:containerInstance:DiscoverPollEndpoint' :: Maybe Text
containerInstance = Maybe Text
a} :: DiscoverPollEndpoint)
instance Core.AWSRequest DiscoverPollEndpoint where
type
AWSResponse DiscoverPollEndpoint =
DiscoverPollEndpointResponse
request :: (Service -> Service)
-> DiscoverPollEndpoint -> Request DiscoverPollEndpoint
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 DiscoverPollEndpoint
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DiscoverPollEndpoint)))
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 Text
-> Maybe Text -> Maybe Text -> Int -> DiscoverPollEndpointResponse
DiscoverPollEndpointResponse'
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
"endpoint")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"serviceConnectEndpoint")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"telemetryEndpoint")
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 DiscoverPollEndpoint where
hashWithSalt :: Int -> DiscoverPollEndpoint -> Int
hashWithSalt Int
_salt DiscoverPollEndpoint' {Maybe Text
containerInstance :: Maybe Text
cluster :: Maybe Text
$sel:containerInstance:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
$sel:cluster:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
cluster
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
containerInstance
instance Prelude.NFData DiscoverPollEndpoint where
rnf :: DiscoverPollEndpoint -> ()
rnf DiscoverPollEndpoint' {Maybe Text
containerInstance :: Maybe Text
cluster :: Maybe Text
$sel:containerInstance:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
$sel:cluster:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
cluster
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
containerInstance
instance Data.ToHeaders DiscoverPollEndpoint where
toHeaders :: DiscoverPollEndpoint -> 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
"AmazonEC2ContainerServiceV20141113.DiscoverPollEndpoint" ::
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 DiscoverPollEndpoint where
toJSON :: DiscoverPollEndpoint -> Value
toJSON DiscoverPollEndpoint' {Maybe Text
containerInstance :: Maybe Text
cluster :: Maybe Text
$sel:containerInstance:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
$sel:cluster:DiscoverPollEndpoint' :: DiscoverPollEndpoint -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"cluster" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
cluster,
(Key
"containerInstance" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
containerInstance
]
)
instance Data.ToPath DiscoverPollEndpoint where
toPath :: DiscoverPollEndpoint -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DiscoverPollEndpoint where
toQuery :: DiscoverPollEndpoint -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DiscoverPollEndpointResponse = DiscoverPollEndpointResponse'
{
DiscoverPollEndpointResponse -> Maybe Text
endpoint :: Prelude.Maybe Prelude.Text,
DiscoverPollEndpointResponse -> Maybe Text
serviceConnectEndpoint :: Prelude.Maybe Prelude.Text,
DiscoverPollEndpointResponse -> Maybe Text
telemetryEndpoint :: Prelude.Maybe Prelude.Text,
DiscoverPollEndpointResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DiscoverPollEndpointResponse
-> DiscoverPollEndpointResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DiscoverPollEndpointResponse
-> DiscoverPollEndpointResponse -> Bool
$c/= :: DiscoverPollEndpointResponse
-> DiscoverPollEndpointResponse -> Bool
== :: DiscoverPollEndpointResponse
-> DiscoverPollEndpointResponse -> Bool
$c== :: DiscoverPollEndpointResponse
-> DiscoverPollEndpointResponse -> Bool
Prelude.Eq, ReadPrec [DiscoverPollEndpointResponse]
ReadPrec DiscoverPollEndpointResponse
Int -> ReadS DiscoverPollEndpointResponse
ReadS [DiscoverPollEndpointResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DiscoverPollEndpointResponse]
$creadListPrec :: ReadPrec [DiscoverPollEndpointResponse]
readPrec :: ReadPrec DiscoverPollEndpointResponse
$creadPrec :: ReadPrec DiscoverPollEndpointResponse
readList :: ReadS [DiscoverPollEndpointResponse]
$creadList :: ReadS [DiscoverPollEndpointResponse]
readsPrec :: Int -> ReadS DiscoverPollEndpointResponse
$creadsPrec :: Int -> ReadS DiscoverPollEndpointResponse
Prelude.Read, Int -> DiscoverPollEndpointResponse -> ShowS
[DiscoverPollEndpointResponse] -> ShowS
DiscoverPollEndpointResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DiscoverPollEndpointResponse] -> ShowS
$cshowList :: [DiscoverPollEndpointResponse] -> ShowS
show :: DiscoverPollEndpointResponse -> String
$cshow :: DiscoverPollEndpointResponse -> String
showsPrec :: Int -> DiscoverPollEndpointResponse -> ShowS
$cshowsPrec :: Int -> DiscoverPollEndpointResponse -> ShowS
Prelude.Show, forall x.
Rep DiscoverPollEndpointResponse x -> DiscoverPollEndpointResponse
forall x.
DiscoverPollEndpointResponse -> Rep DiscoverPollEndpointResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DiscoverPollEndpointResponse x -> DiscoverPollEndpointResponse
$cfrom :: forall x.
DiscoverPollEndpointResponse -> Rep DiscoverPollEndpointResponse x
Prelude.Generic)
newDiscoverPollEndpointResponse ::
Prelude.Int ->
DiscoverPollEndpointResponse
newDiscoverPollEndpointResponse :: Int -> DiscoverPollEndpointResponse
newDiscoverPollEndpointResponse Int
pHttpStatus_ =
DiscoverPollEndpointResponse'
{ $sel:endpoint:DiscoverPollEndpointResponse' :: Maybe Text
endpoint =
forall a. Maybe a
Prelude.Nothing,
$sel:serviceConnectEndpoint:DiscoverPollEndpointResponse' :: Maybe Text
serviceConnectEndpoint = forall a. Maybe a
Prelude.Nothing,
$sel:telemetryEndpoint:DiscoverPollEndpointResponse' :: Maybe Text
telemetryEndpoint = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DiscoverPollEndpointResponse' :: Int
httpStatus = Int
pHttpStatus_
}
discoverPollEndpointResponse_endpoint :: Lens.Lens' DiscoverPollEndpointResponse (Prelude.Maybe Prelude.Text)
discoverPollEndpointResponse_endpoint :: Lens' DiscoverPollEndpointResponse (Maybe Text)
discoverPollEndpointResponse_endpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpointResponse' {Maybe Text
endpoint :: Maybe Text
$sel:endpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
endpoint} -> Maybe Text
endpoint) (\s :: DiscoverPollEndpointResponse
s@DiscoverPollEndpointResponse' {} Maybe Text
a -> DiscoverPollEndpointResponse
s {$sel:endpoint:DiscoverPollEndpointResponse' :: Maybe Text
endpoint = Maybe Text
a} :: DiscoverPollEndpointResponse)
discoverPollEndpointResponse_serviceConnectEndpoint :: Lens.Lens' DiscoverPollEndpointResponse (Prelude.Maybe Prelude.Text)
discoverPollEndpointResponse_serviceConnectEndpoint :: Lens' DiscoverPollEndpointResponse (Maybe Text)
discoverPollEndpointResponse_serviceConnectEndpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpointResponse' {Maybe Text
serviceConnectEndpoint :: Maybe Text
$sel:serviceConnectEndpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
serviceConnectEndpoint} -> Maybe Text
serviceConnectEndpoint) (\s :: DiscoverPollEndpointResponse
s@DiscoverPollEndpointResponse' {} Maybe Text
a -> DiscoverPollEndpointResponse
s {$sel:serviceConnectEndpoint:DiscoverPollEndpointResponse' :: Maybe Text
serviceConnectEndpoint = Maybe Text
a} :: DiscoverPollEndpointResponse)
discoverPollEndpointResponse_telemetryEndpoint :: Lens.Lens' DiscoverPollEndpointResponse (Prelude.Maybe Prelude.Text)
discoverPollEndpointResponse_telemetryEndpoint :: Lens' DiscoverPollEndpointResponse (Maybe Text)
discoverPollEndpointResponse_telemetryEndpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpointResponse' {Maybe Text
telemetryEndpoint :: Maybe Text
$sel:telemetryEndpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
telemetryEndpoint} -> Maybe Text
telemetryEndpoint) (\s :: DiscoverPollEndpointResponse
s@DiscoverPollEndpointResponse' {} Maybe Text
a -> DiscoverPollEndpointResponse
s {$sel:telemetryEndpoint:DiscoverPollEndpointResponse' :: Maybe Text
telemetryEndpoint = Maybe Text
a} :: DiscoverPollEndpointResponse)
discoverPollEndpointResponse_httpStatus :: Lens.Lens' DiscoverPollEndpointResponse Prelude.Int
discoverPollEndpointResponse_httpStatus :: Lens' DiscoverPollEndpointResponse Int
discoverPollEndpointResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DiscoverPollEndpointResponse' {Int
httpStatus :: Int
$sel:httpStatus:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DiscoverPollEndpointResponse
s@DiscoverPollEndpointResponse' {} Int
a -> DiscoverPollEndpointResponse
s {$sel:httpStatus:DiscoverPollEndpointResponse' :: Int
httpStatus = Int
a} :: DiscoverPollEndpointResponse)
instance Prelude.NFData DiscoverPollEndpointResponse where
rnf :: DiscoverPollEndpointResponse -> ()
rnf DiscoverPollEndpointResponse' {Int
Maybe Text
httpStatus :: Int
telemetryEndpoint :: Maybe Text
serviceConnectEndpoint :: Maybe Text
endpoint :: Maybe Text
$sel:httpStatus:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Int
$sel:telemetryEndpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
$sel:serviceConnectEndpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
$sel:endpoint:DiscoverPollEndpointResponse' :: DiscoverPollEndpointResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
endpoint
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
serviceConnectEndpoint
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
telemetryEndpoint
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus