{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.Kafka.GetBootstrapBrokers
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- A list of brokers that a client application can use to bootstrap.
module Amazonka.Kafka.GetBootstrapBrokers
  ( -- * Creating a Request
    GetBootstrapBrokers (..),
    newGetBootstrapBrokers,

    -- * Request Lenses
    getBootstrapBrokers_clusterArn,

    -- * Destructuring the Response
    GetBootstrapBrokersResponse (..),
    newGetBootstrapBrokersResponse,

    -- * Response Lenses
    getBootstrapBrokersResponse_bootstrapBrokerString,
    getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslIam,
    getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslScram,
    getBootstrapBrokersResponse_bootstrapBrokerStringPublicTls,
    getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam,
    getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram,
    getBootstrapBrokersResponse_bootstrapBrokerStringTls,
    getBootstrapBrokersResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Kafka.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newGetBootstrapBrokers' smart constructor.
data GetBootstrapBrokers = GetBootstrapBrokers'
  { -- | The Amazon Resource Name (ARN) that uniquely identifies the cluster.
    GetBootstrapBrokers -> Text
clusterArn :: Prelude.Text
  }
  deriving (GetBootstrapBrokers -> GetBootstrapBrokers -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetBootstrapBrokers -> GetBootstrapBrokers -> Bool
$c/= :: GetBootstrapBrokers -> GetBootstrapBrokers -> Bool
== :: GetBootstrapBrokers -> GetBootstrapBrokers -> Bool
$c== :: GetBootstrapBrokers -> GetBootstrapBrokers -> Bool
Prelude.Eq, ReadPrec [GetBootstrapBrokers]
ReadPrec GetBootstrapBrokers
Int -> ReadS GetBootstrapBrokers
ReadS [GetBootstrapBrokers]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetBootstrapBrokers]
$creadListPrec :: ReadPrec [GetBootstrapBrokers]
readPrec :: ReadPrec GetBootstrapBrokers
$creadPrec :: ReadPrec GetBootstrapBrokers
readList :: ReadS [GetBootstrapBrokers]
$creadList :: ReadS [GetBootstrapBrokers]
readsPrec :: Int -> ReadS GetBootstrapBrokers
$creadsPrec :: Int -> ReadS GetBootstrapBrokers
Prelude.Read, Int -> GetBootstrapBrokers -> ShowS
[GetBootstrapBrokers] -> ShowS
GetBootstrapBrokers -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetBootstrapBrokers] -> ShowS
$cshowList :: [GetBootstrapBrokers] -> ShowS
show :: GetBootstrapBrokers -> String
$cshow :: GetBootstrapBrokers -> String
showsPrec :: Int -> GetBootstrapBrokers -> ShowS
$cshowsPrec :: Int -> GetBootstrapBrokers -> ShowS
Prelude.Show, forall x. Rep GetBootstrapBrokers x -> GetBootstrapBrokers
forall x. GetBootstrapBrokers -> Rep GetBootstrapBrokers x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetBootstrapBrokers x -> GetBootstrapBrokers
$cfrom :: forall x. GetBootstrapBrokers -> Rep GetBootstrapBrokers x
Prelude.Generic)

-- |
-- Create a value of 'GetBootstrapBrokers' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'clusterArn', 'getBootstrapBrokers_clusterArn' - The Amazon Resource Name (ARN) that uniquely identifies the cluster.
newGetBootstrapBrokers ::
  -- | 'clusterArn'
  Prelude.Text ->
  GetBootstrapBrokers
newGetBootstrapBrokers :: Text -> GetBootstrapBrokers
newGetBootstrapBrokers Text
pClusterArn_ =
  GetBootstrapBrokers' {$sel:clusterArn:GetBootstrapBrokers' :: Text
clusterArn = Text
pClusterArn_}

-- | The Amazon Resource Name (ARN) that uniquely identifies the cluster.
getBootstrapBrokers_clusterArn :: Lens.Lens' GetBootstrapBrokers Prelude.Text
getBootstrapBrokers_clusterArn :: Lens' GetBootstrapBrokers Text
getBootstrapBrokers_clusterArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokers' {Text
clusterArn :: Text
$sel:clusterArn:GetBootstrapBrokers' :: GetBootstrapBrokers -> Text
clusterArn} -> Text
clusterArn) (\s :: GetBootstrapBrokers
s@GetBootstrapBrokers' {} Text
a -> GetBootstrapBrokers
s {$sel:clusterArn:GetBootstrapBrokers' :: Text
clusterArn = Text
a} :: GetBootstrapBrokers)

instance Core.AWSRequest GetBootstrapBrokers where
  type
    AWSResponse GetBootstrapBrokers =
      GetBootstrapBrokersResponse
  request :: (Service -> Service)
-> GetBootstrapBrokers -> Request GetBootstrapBrokers
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 GetBootstrapBrokers
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse GetBootstrapBrokers)))
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
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Int
-> GetBootstrapBrokersResponse
GetBootstrapBrokersResponse'
            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
"bootstrapBrokerString")
            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
"bootstrapBrokerStringPublicSaslIam")
            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
"bootstrapBrokerStringPublicSaslScram")
            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
"bootstrapBrokerStringPublicTls")
            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
"bootstrapBrokerStringSaslIam")
            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
"bootstrapBrokerStringSaslScram")
            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
"bootstrapBrokerStringTls")
            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 GetBootstrapBrokers where
  hashWithSalt :: Int -> GetBootstrapBrokers -> Int
hashWithSalt Int
_salt GetBootstrapBrokers' {Text
clusterArn :: Text
$sel:clusterArn:GetBootstrapBrokers' :: GetBootstrapBrokers -> Text
..} =
    Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clusterArn

instance Prelude.NFData GetBootstrapBrokers where
  rnf :: GetBootstrapBrokers -> ()
rnf GetBootstrapBrokers' {Text
clusterArn :: Text
$sel:clusterArn:GetBootstrapBrokers' :: GetBootstrapBrokers -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
clusterArn

instance Data.ToHeaders GetBootstrapBrokers where
  toHeaders :: GetBootstrapBrokers -> 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 GetBootstrapBrokers where
  toPath :: GetBootstrapBrokers -> ByteString
toPath GetBootstrapBrokers' {Text
clusterArn :: Text
$sel:clusterArn:GetBootstrapBrokers' :: GetBootstrapBrokers -> Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"/v1/clusters/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
clusterArn,
        ByteString
"/bootstrap-brokers"
      ]

instance Data.ToQuery GetBootstrapBrokers where
  toQuery :: GetBootstrapBrokers -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | /See:/ 'newGetBootstrapBrokersResponse' smart constructor.
data GetBootstrapBrokersResponse = GetBootstrapBrokersResponse'
  { -- | A string containing one or more hostname:port pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerString :: Prelude.Maybe Prelude.Text,
    -- | A string that contains one or more DNS names (or IP addresses) and SASL
    -- IAM port pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicSaslIam :: Prelude.Maybe Prelude.Text,
    -- | A string containing one or more DNS names (or IP) and Sasl Scram port
    -- pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicSaslScram :: Prelude.Maybe Prelude.Text,
    -- | A string containing one or more DNS names (or IP) and TLS port pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicTls :: Prelude.Maybe Prelude.Text,
    -- | A string that contains one or more DNS names (or IP addresses) and SASL
    -- IAM port pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringSaslIam :: Prelude.Maybe Prelude.Text,
    -- | A string containing one or more DNS names (or IP) and Sasl Scram port
    -- pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringSaslScram :: Prelude.Maybe Prelude.Text,
    -- | A string containing one or more DNS names (or IP) and TLS port pairs.
    GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringTls :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    GetBootstrapBrokersResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
$c/= :: GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
== :: GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
$c== :: GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
Prelude.Eq, ReadPrec [GetBootstrapBrokersResponse]
ReadPrec GetBootstrapBrokersResponse
Int -> ReadS GetBootstrapBrokersResponse
ReadS [GetBootstrapBrokersResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetBootstrapBrokersResponse]
$creadListPrec :: ReadPrec [GetBootstrapBrokersResponse]
readPrec :: ReadPrec GetBootstrapBrokersResponse
$creadPrec :: ReadPrec GetBootstrapBrokersResponse
readList :: ReadS [GetBootstrapBrokersResponse]
$creadList :: ReadS [GetBootstrapBrokersResponse]
readsPrec :: Int -> ReadS GetBootstrapBrokersResponse
$creadsPrec :: Int -> ReadS GetBootstrapBrokersResponse
Prelude.Read, Int -> GetBootstrapBrokersResponse -> ShowS
[GetBootstrapBrokersResponse] -> ShowS
GetBootstrapBrokersResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetBootstrapBrokersResponse] -> ShowS
$cshowList :: [GetBootstrapBrokersResponse] -> ShowS
show :: GetBootstrapBrokersResponse -> String
$cshow :: GetBootstrapBrokersResponse -> String
showsPrec :: Int -> GetBootstrapBrokersResponse -> ShowS
$cshowsPrec :: Int -> GetBootstrapBrokersResponse -> ShowS
Prelude.Show, forall x.
Rep GetBootstrapBrokersResponse x -> GetBootstrapBrokersResponse
forall x.
GetBootstrapBrokersResponse -> Rep GetBootstrapBrokersResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetBootstrapBrokersResponse x -> GetBootstrapBrokersResponse
$cfrom :: forall x.
GetBootstrapBrokersResponse -> Rep GetBootstrapBrokersResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetBootstrapBrokersResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'bootstrapBrokerString', 'getBootstrapBrokersResponse_bootstrapBrokerString' - A string containing one or more hostname:port pairs.
--
-- 'bootstrapBrokerStringPublicSaslIam', 'getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslIam' - A string that contains one or more DNS names (or IP addresses) and SASL
-- IAM port pairs.
--
-- 'bootstrapBrokerStringPublicSaslScram', 'getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslScram' - A string containing one or more DNS names (or IP) and Sasl Scram port
-- pairs.
--
-- 'bootstrapBrokerStringPublicTls', 'getBootstrapBrokersResponse_bootstrapBrokerStringPublicTls' - A string containing one or more DNS names (or IP) and TLS port pairs.
--
-- 'bootstrapBrokerStringSaslIam', 'getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam' - A string that contains one or more DNS names (or IP addresses) and SASL
-- IAM port pairs.
--
-- 'bootstrapBrokerStringSaslScram', 'getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram' - A string containing one or more DNS names (or IP) and Sasl Scram port
-- pairs.
--
-- 'bootstrapBrokerStringTls', 'getBootstrapBrokersResponse_bootstrapBrokerStringTls' - A string containing one or more DNS names (or IP) and TLS port pairs.
--
-- 'httpStatus', 'getBootstrapBrokersResponse_httpStatus' - The response's http status code.
newGetBootstrapBrokersResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetBootstrapBrokersResponse
newGetBootstrapBrokersResponse :: Int -> GetBootstrapBrokersResponse
newGetBootstrapBrokersResponse Int
pHttpStatus_ =
  GetBootstrapBrokersResponse'
    { $sel:bootstrapBrokerString:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerString =
        forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringPublicSaslIam:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicSaslIam =
        forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringPublicSaslScram:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicSaslScram =
        forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringPublicTls:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicTls =
        forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringSaslIam:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslIam = forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringSaslScram:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslScram =
        forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringTls:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringTls = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:GetBootstrapBrokersResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | A string containing one or more hostname:port pairs.
getBootstrapBrokersResponse_bootstrapBrokerString :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerString :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerString = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerString :: Maybe Text
$sel:bootstrapBrokerString:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerString} -> Maybe Text
bootstrapBrokerString) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerString:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerString = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string that contains one or more DNS names (or IP addresses) and SASL
-- IAM port pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslIam :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslIam :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslIam = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringPublicSaslIam :: Maybe Text
$sel:bootstrapBrokerStringPublicSaslIam:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicSaslIam} -> Maybe Text
bootstrapBrokerStringPublicSaslIam) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringPublicSaslIam:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicSaslIam = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string containing one or more DNS names (or IP) and Sasl Scram port
-- pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslScram :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslScram :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicSaslScram = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringPublicSaslScram :: Maybe Text
$sel:bootstrapBrokerStringPublicSaslScram:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicSaslScram} -> Maybe Text
bootstrapBrokerStringPublicSaslScram) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringPublicSaslScram:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicSaslScram = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string containing one or more DNS names (or IP) and TLS port pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringPublicTls :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicTls :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringPublicTls = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringPublicTls :: Maybe Text
$sel:bootstrapBrokerStringPublicTls:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringPublicTls} -> Maybe Text
bootstrapBrokerStringPublicTls) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringPublicTls:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringPublicTls = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string that contains one or more DNS names (or IP addresses) and SASL
-- IAM port pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringSaslIam :: Maybe Text
$sel:bootstrapBrokerStringSaslIam:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringSaslIam} -> Maybe Text
bootstrapBrokerStringSaslIam) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringSaslIam:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslIam = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string containing one or more DNS names (or IP) and Sasl Scram port
-- pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringSaslScram :: Maybe Text
$sel:bootstrapBrokerStringSaslScram:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringSaslScram} -> Maybe Text
bootstrapBrokerStringSaslScram) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringSaslScram:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslScram = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | A string containing one or more DNS names (or IP) and TLS port pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringTls :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringTls :: Lens' GetBootstrapBrokersResponse (Maybe Text)
getBootstrapBrokersResponse_bootstrapBrokerStringTls = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Maybe Text
bootstrapBrokerStringTls :: Maybe Text
$sel:bootstrapBrokerStringTls:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
bootstrapBrokerStringTls} -> Maybe Text
bootstrapBrokerStringTls) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Maybe Text
a -> GetBootstrapBrokersResponse
s {$sel:bootstrapBrokerStringTls:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringTls = Maybe Text
a} :: GetBootstrapBrokersResponse)

-- | The response's http status code.
getBootstrapBrokersResponse_httpStatus :: Lens.Lens' GetBootstrapBrokersResponse Prelude.Int
getBootstrapBrokersResponse_httpStatus :: Lens' GetBootstrapBrokersResponse Int
getBootstrapBrokersResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetBootstrapBrokersResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetBootstrapBrokersResponse
s@GetBootstrapBrokersResponse' {} Int
a -> GetBootstrapBrokersResponse
s {$sel:httpStatus:GetBootstrapBrokersResponse' :: Int
httpStatus = Int
a} :: GetBootstrapBrokersResponse)

instance Prelude.NFData GetBootstrapBrokersResponse where
  rnf :: GetBootstrapBrokersResponse -> ()
rnf GetBootstrapBrokersResponse' {Int
Maybe Text
httpStatus :: Int
bootstrapBrokerStringTls :: Maybe Text
bootstrapBrokerStringSaslScram :: Maybe Text
bootstrapBrokerStringSaslIam :: Maybe Text
bootstrapBrokerStringPublicTls :: Maybe Text
bootstrapBrokerStringPublicSaslScram :: Maybe Text
bootstrapBrokerStringPublicSaslIam :: Maybe Text
bootstrapBrokerString :: Maybe Text
$sel:httpStatus:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Int
$sel:bootstrapBrokerStringTls:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerStringSaslScram:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerStringSaslIam:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerStringPublicTls:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerStringPublicSaslScram:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerStringPublicSaslIam:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
$sel:bootstrapBrokerString:GetBootstrapBrokersResponse' :: GetBootstrapBrokersResponse -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerString
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringPublicSaslIam
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringPublicSaslScram
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringPublicTls
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringSaslIam
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringSaslScram
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bootstrapBrokerStringTls
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus