{-# 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.EKS.DescribeNodegroup
(
DescribeNodegroup (..),
newDescribeNodegroup,
describeNodegroup_clusterName,
describeNodegroup_nodegroupName,
DescribeNodegroupResponse (..),
newDescribeNodegroupResponse,
describeNodegroupResponse_nodegroup,
describeNodegroupResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EKS.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeNodegroup = DescribeNodegroup'
{
DescribeNodegroup -> Text
clusterName :: Prelude.Text,
DescribeNodegroup -> Text
nodegroupName :: Prelude.Text
}
deriving (DescribeNodegroup -> DescribeNodegroup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeNodegroup -> DescribeNodegroup -> Bool
$c/= :: DescribeNodegroup -> DescribeNodegroup -> Bool
== :: DescribeNodegroup -> DescribeNodegroup -> Bool
$c== :: DescribeNodegroup -> DescribeNodegroup -> Bool
Prelude.Eq, ReadPrec [DescribeNodegroup]
ReadPrec DescribeNodegroup
Int -> ReadS DescribeNodegroup
ReadS [DescribeNodegroup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeNodegroup]
$creadListPrec :: ReadPrec [DescribeNodegroup]
readPrec :: ReadPrec DescribeNodegroup
$creadPrec :: ReadPrec DescribeNodegroup
readList :: ReadS [DescribeNodegroup]
$creadList :: ReadS [DescribeNodegroup]
readsPrec :: Int -> ReadS DescribeNodegroup
$creadsPrec :: Int -> ReadS DescribeNodegroup
Prelude.Read, Int -> DescribeNodegroup -> ShowS
[DescribeNodegroup] -> ShowS
DescribeNodegroup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeNodegroup] -> ShowS
$cshowList :: [DescribeNodegroup] -> ShowS
show :: DescribeNodegroup -> String
$cshow :: DescribeNodegroup -> String
showsPrec :: Int -> DescribeNodegroup -> ShowS
$cshowsPrec :: Int -> DescribeNodegroup -> ShowS
Prelude.Show, forall x. Rep DescribeNodegroup x -> DescribeNodegroup
forall x. DescribeNodegroup -> Rep DescribeNodegroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeNodegroup x -> DescribeNodegroup
$cfrom :: forall x. DescribeNodegroup -> Rep DescribeNodegroup x
Prelude.Generic)
newDescribeNodegroup ::
Prelude.Text ->
Prelude.Text ->
DescribeNodegroup
newDescribeNodegroup :: Text -> Text -> DescribeNodegroup
newDescribeNodegroup Text
pClusterName_ Text
pNodegroupName_ =
DescribeNodegroup'
{ $sel:clusterName:DescribeNodegroup' :: Text
clusterName = Text
pClusterName_,
$sel:nodegroupName:DescribeNodegroup' :: Text
nodegroupName = Text
pNodegroupName_
}
describeNodegroup_clusterName :: Lens.Lens' DescribeNodegroup Prelude.Text
describeNodegroup_clusterName :: Lens' DescribeNodegroup Text
describeNodegroup_clusterName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeNodegroup' {Text
clusterName :: Text
$sel:clusterName:DescribeNodegroup' :: DescribeNodegroup -> Text
clusterName} -> Text
clusterName) (\s :: DescribeNodegroup
s@DescribeNodegroup' {} Text
a -> DescribeNodegroup
s {$sel:clusterName:DescribeNodegroup' :: Text
clusterName = Text
a} :: DescribeNodegroup)
describeNodegroup_nodegroupName :: Lens.Lens' DescribeNodegroup Prelude.Text
describeNodegroup_nodegroupName :: Lens' DescribeNodegroup Text
describeNodegroup_nodegroupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeNodegroup' {Text
nodegroupName :: Text
$sel:nodegroupName:DescribeNodegroup' :: DescribeNodegroup -> Text
nodegroupName} -> Text
nodegroupName) (\s :: DescribeNodegroup
s@DescribeNodegroup' {} Text
a -> DescribeNodegroup
s {$sel:nodegroupName:DescribeNodegroup' :: Text
nodegroupName = Text
a} :: DescribeNodegroup)
instance Core.AWSRequest DescribeNodegroup where
type
AWSResponse DescribeNodegroup =
DescribeNodegroupResponse
request :: (Service -> Service)
-> DescribeNodegroup -> Request DescribeNodegroup
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeNodegroup
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeNodegroup)))
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 Nodegroup -> Int -> DescribeNodegroupResponse
DescribeNodegroupResponse'
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
"nodegroup")
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 DescribeNodegroup where
hashWithSalt :: Int -> DescribeNodegroup -> Int
hashWithSalt Int
_salt DescribeNodegroup' {Text
nodegroupName :: Text
clusterName :: Text
$sel:nodegroupName:DescribeNodegroup' :: DescribeNodegroup -> Text
$sel:clusterName:DescribeNodegroup' :: DescribeNodegroup -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clusterName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
nodegroupName
instance Prelude.NFData DescribeNodegroup where
rnf :: DescribeNodegroup -> ()
rnf DescribeNodegroup' {Text
nodegroupName :: Text
clusterName :: Text
$sel:nodegroupName:DescribeNodegroup' :: DescribeNodegroup -> Text
$sel:clusterName:DescribeNodegroup' :: DescribeNodegroup -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
clusterName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
nodegroupName
instance Data.ToHeaders DescribeNodegroup where
toHeaders :: DescribeNodegroup -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath DescribeNodegroup where
toPath :: DescribeNodegroup -> ByteString
toPath DescribeNodegroup' {Text
nodegroupName :: Text
clusterName :: Text
$sel:nodegroupName:DescribeNodegroup' :: DescribeNodegroup -> Text
$sel:clusterName:DescribeNodegroup' :: DescribeNodegroup -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/clusters/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
clusterName,
ByteString
"/node-groups/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
nodegroupName
]
instance Data.ToQuery DescribeNodegroup where
toQuery :: DescribeNodegroup -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeNodegroupResponse = DescribeNodegroupResponse'
{
DescribeNodegroupResponse -> Maybe Nodegroup
nodegroup :: Prelude.Maybe Nodegroup,
DescribeNodegroupResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeNodegroupResponse -> DescribeNodegroupResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeNodegroupResponse -> DescribeNodegroupResponse -> Bool
$c/= :: DescribeNodegroupResponse -> DescribeNodegroupResponse -> Bool
== :: DescribeNodegroupResponse -> DescribeNodegroupResponse -> Bool
$c== :: DescribeNodegroupResponse -> DescribeNodegroupResponse -> Bool
Prelude.Eq, ReadPrec [DescribeNodegroupResponse]
ReadPrec DescribeNodegroupResponse
Int -> ReadS DescribeNodegroupResponse
ReadS [DescribeNodegroupResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeNodegroupResponse]
$creadListPrec :: ReadPrec [DescribeNodegroupResponse]
readPrec :: ReadPrec DescribeNodegroupResponse
$creadPrec :: ReadPrec DescribeNodegroupResponse
readList :: ReadS [DescribeNodegroupResponse]
$creadList :: ReadS [DescribeNodegroupResponse]
readsPrec :: Int -> ReadS DescribeNodegroupResponse
$creadsPrec :: Int -> ReadS DescribeNodegroupResponse
Prelude.Read, Int -> DescribeNodegroupResponse -> ShowS
[DescribeNodegroupResponse] -> ShowS
DescribeNodegroupResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeNodegroupResponse] -> ShowS
$cshowList :: [DescribeNodegroupResponse] -> ShowS
show :: DescribeNodegroupResponse -> String
$cshow :: DescribeNodegroupResponse -> String
showsPrec :: Int -> DescribeNodegroupResponse -> ShowS
$cshowsPrec :: Int -> DescribeNodegroupResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeNodegroupResponse x -> DescribeNodegroupResponse
forall x.
DescribeNodegroupResponse -> Rep DescribeNodegroupResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeNodegroupResponse x -> DescribeNodegroupResponse
$cfrom :: forall x.
DescribeNodegroupResponse -> Rep DescribeNodegroupResponse x
Prelude.Generic)
newDescribeNodegroupResponse ::
Prelude.Int ->
DescribeNodegroupResponse
newDescribeNodegroupResponse :: Int -> DescribeNodegroupResponse
newDescribeNodegroupResponse Int
pHttpStatus_ =
DescribeNodegroupResponse'
{ $sel:nodegroup:DescribeNodegroupResponse' :: Maybe Nodegroup
nodegroup =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeNodegroupResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeNodegroupResponse_nodegroup :: Lens.Lens' DescribeNodegroupResponse (Prelude.Maybe Nodegroup)
describeNodegroupResponse_nodegroup :: Lens' DescribeNodegroupResponse (Maybe Nodegroup)
describeNodegroupResponse_nodegroup = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeNodegroupResponse' {Maybe Nodegroup
nodegroup :: Maybe Nodegroup
$sel:nodegroup:DescribeNodegroupResponse' :: DescribeNodegroupResponse -> Maybe Nodegroup
nodegroup} -> Maybe Nodegroup
nodegroup) (\s :: DescribeNodegroupResponse
s@DescribeNodegroupResponse' {} Maybe Nodegroup
a -> DescribeNodegroupResponse
s {$sel:nodegroup:DescribeNodegroupResponse' :: Maybe Nodegroup
nodegroup = Maybe Nodegroup
a} :: DescribeNodegroupResponse)
describeNodegroupResponse_httpStatus :: Lens.Lens' DescribeNodegroupResponse Prelude.Int
describeNodegroupResponse_httpStatus :: Lens' DescribeNodegroupResponse Int
describeNodegroupResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeNodegroupResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeNodegroupResponse' :: DescribeNodegroupResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeNodegroupResponse
s@DescribeNodegroupResponse' {} Int
a -> DescribeNodegroupResponse
s {$sel:httpStatus:DescribeNodegroupResponse' :: Int
httpStatus = Int
a} :: DescribeNodegroupResponse)
instance Prelude.NFData DescribeNodegroupResponse where
rnf :: DescribeNodegroupResponse -> ()
rnf DescribeNodegroupResponse' {Int
Maybe Nodegroup
httpStatus :: Int
nodegroup :: Maybe Nodegroup
$sel:httpStatus:DescribeNodegroupResponse' :: DescribeNodegroupResponse -> Int
$sel:nodegroup:DescribeNodegroupResponse' :: DescribeNodegroupResponse -> Maybe Nodegroup
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Nodegroup
nodegroup
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus