{-# 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-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- 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_bootstrapBrokerStringSaslScram,
    getBootstrapBrokersResponse_bootstrapBrokerStringTls,
    getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam,
    getBootstrapBrokersResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import Amazonka.Kafka.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

-- | /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
(GetBootstrapBrokers -> GetBootstrapBrokers -> Bool)
-> (GetBootstrapBrokers -> GetBootstrapBrokers -> Bool)
-> Eq GetBootstrapBrokers
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]
(Int -> ReadS GetBootstrapBrokers)
-> ReadS [GetBootstrapBrokers]
-> ReadPrec GetBootstrapBrokers
-> ReadPrec [GetBootstrapBrokers]
-> Read 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
(Int -> GetBootstrapBrokers -> ShowS)
-> (GetBootstrapBrokers -> String)
-> ([GetBootstrapBrokers] -> ShowS)
-> Show GetBootstrapBrokers
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. GetBootstrapBrokers -> Rep GetBootstrapBrokers x)
-> (forall x. Rep GetBootstrapBrokers x -> GetBootstrapBrokers)
-> Generic GetBootstrapBrokers
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' :: Text -> GetBootstrapBrokers
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 :: (Text -> f Text) -> GetBootstrapBrokers -> f GetBootstrapBrokers
getBootstrapBrokers_clusterArn = (GetBootstrapBrokers -> Text)
-> (GetBootstrapBrokers -> Text -> GetBootstrapBrokers)
-> Lens GetBootstrapBrokers GetBootstrapBrokers Text Text
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 :: GetBootstrapBrokers -> Request GetBootstrapBrokers
request = Service -> GetBootstrapBrokers -> Request GetBootstrapBrokers
forall a. ToRequest a => Service -> a -> Request a
Request.get Service
defaultService
  response :: Logger
-> Service
-> Proxy GetBootstrapBrokers
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse GetBootstrapBrokers)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either String (AWSResponse GetBootstrapBrokers))
-> Logger
-> Service
-> Proxy GetBootstrapBrokers
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse GetBootstrapBrokers)))
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 Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Int
-> GetBootstrapBrokersResponse
GetBootstrapBrokersResponse'
            (Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Int
 -> GetBootstrapBrokersResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text
      -> Maybe Text -> Maybe Text -> Int -> GetBootstrapBrokersResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"bootstrapBrokerString")
            Either
  String
  (Maybe Text
   -> Maybe Text -> Maybe Text -> Int -> GetBootstrapBrokersResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text -> Maybe Text -> Int -> GetBootstrapBrokersResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"bootstrapBrokerStringSaslScram")
            Either
  String
  (Maybe Text -> Maybe Text -> Int -> GetBootstrapBrokersResponse)
-> Either String (Maybe Text)
-> Either String (Maybe Text -> Int -> GetBootstrapBrokersResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"bootstrapBrokerStringTls")
            Either String (Maybe Text -> Int -> GetBootstrapBrokersResponse)
-> Either String (Maybe Text)
-> Either String (Int -> GetBootstrapBrokersResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"bootstrapBrokerStringSaslIam")
            Either String (Int -> GetBootstrapBrokersResponse)
-> Either String Int -> Either String GetBootstrapBrokersResponse
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 GetBootstrapBrokers

instance Prelude.NFData GetBootstrapBrokers

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

instance Core.ToQuery GetBootstrapBrokers where
  toQuery :: GetBootstrapBrokers -> QueryString
toQuery = QueryString -> GetBootstrapBrokers -> QueryString
forall a b. a -> b -> a
Prelude.const QueryString
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 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,
    -- | 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,
    -- | The response's http status code.
    GetBootstrapBrokersResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetBootstrapBrokersResponse -> GetBootstrapBrokersResponse -> Bool
(GetBootstrapBrokersResponse
 -> GetBootstrapBrokersResponse -> Bool)
-> (GetBootstrapBrokersResponse
    -> GetBootstrapBrokersResponse -> Bool)
-> Eq GetBootstrapBrokersResponse
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]
(Int -> ReadS GetBootstrapBrokersResponse)
-> ReadS [GetBootstrapBrokersResponse]
-> ReadPrec GetBootstrapBrokersResponse
-> ReadPrec [GetBootstrapBrokersResponse]
-> Read 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
(Int -> GetBootstrapBrokersResponse -> ShowS)
-> (GetBootstrapBrokersResponse -> String)
-> ([GetBootstrapBrokersResponse] -> ShowS)
-> Show GetBootstrapBrokersResponse
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.
 GetBootstrapBrokersResponse -> Rep GetBootstrapBrokersResponse x)
-> (forall x.
    Rep GetBootstrapBrokersResponse x -> GetBootstrapBrokersResponse)
-> Generic GetBootstrapBrokersResponse
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.
--
-- '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.
--
-- 'bootstrapBrokerStringSaslIam', 'getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam' - A string that contains one or more DNS names (or IP addresses) and SASL
-- IAM port pairs.
--
-- 'httpStatus', 'getBootstrapBrokersResponse_httpStatus' - The response's http status code.
newGetBootstrapBrokersResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetBootstrapBrokersResponse
newGetBootstrapBrokersResponse :: Int -> GetBootstrapBrokersResponse
newGetBootstrapBrokersResponse Int
pHttpStatus_ =
  GetBootstrapBrokersResponse' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Int
-> GetBootstrapBrokersResponse
GetBootstrapBrokersResponse'
    { $sel:bootstrapBrokerString:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerString =
        Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringSaslScram:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslScram =
        Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringTls:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringTls = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:bootstrapBrokerStringSaslIam:GetBootstrapBrokersResponse' :: Maybe Text
bootstrapBrokerStringSaslIam = Maybe Text
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 :: (Maybe Text -> f (Maybe Text))
-> GetBootstrapBrokersResponse -> f GetBootstrapBrokersResponse
getBootstrapBrokersResponse_bootstrapBrokerString = (GetBootstrapBrokersResponse -> Maybe Text)
-> (GetBootstrapBrokersResponse
    -> Maybe Text -> GetBootstrapBrokersResponse)
-> Lens
     GetBootstrapBrokersResponse
     GetBootstrapBrokersResponse
     (Maybe Text)
     (Maybe Text)
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 containing one or more DNS names (or IP) and Sasl Scram port
-- pairs.
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram :: Lens.Lens' GetBootstrapBrokersResponse (Prelude.Maybe Prelude.Text)
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram :: (Maybe Text -> f (Maybe Text))
-> GetBootstrapBrokersResponse -> f GetBootstrapBrokersResponse
getBootstrapBrokersResponse_bootstrapBrokerStringSaslScram = (GetBootstrapBrokersResponse -> Maybe Text)
-> (GetBootstrapBrokersResponse
    -> Maybe Text -> GetBootstrapBrokersResponse)
-> Lens
     GetBootstrapBrokersResponse
     GetBootstrapBrokersResponse
     (Maybe Text)
     (Maybe Text)
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 :: (Maybe Text -> f (Maybe Text))
-> GetBootstrapBrokersResponse -> f GetBootstrapBrokersResponse
getBootstrapBrokersResponse_bootstrapBrokerStringTls = (GetBootstrapBrokersResponse -> Maybe Text)
-> (GetBootstrapBrokersResponse
    -> Maybe Text -> GetBootstrapBrokersResponse)
-> Lens
     GetBootstrapBrokersResponse
     GetBootstrapBrokersResponse
     (Maybe Text)
     (Maybe Text)
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)

-- | 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 :: (Maybe Text -> f (Maybe Text))
-> GetBootstrapBrokersResponse -> f GetBootstrapBrokersResponse
getBootstrapBrokersResponse_bootstrapBrokerStringSaslIam = (GetBootstrapBrokersResponse -> Maybe Text)
-> (GetBootstrapBrokersResponse
    -> Maybe Text -> GetBootstrapBrokersResponse)
-> Lens
     GetBootstrapBrokersResponse
     GetBootstrapBrokersResponse
     (Maybe Text)
     (Maybe Text)
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)

-- | The response's http status code.
getBootstrapBrokersResponse_httpStatus :: Lens.Lens' GetBootstrapBrokersResponse Prelude.Int
getBootstrapBrokersResponse_httpStatus :: (Int -> f Int)
-> GetBootstrapBrokersResponse -> f GetBootstrapBrokersResponse
getBootstrapBrokersResponse_httpStatus = (GetBootstrapBrokersResponse -> Int)
-> (GetBootstrapBrokersResponse
    -> Int -> GetBootstrapBrokersResponse)
-> Lens
     GetBootstrapBrokersResponse GetBootstrapBrokersResponse Int Int
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