{-# 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.ELB.ModifyLoadBalancerAttributes
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Modifies the attributes of the specified load balancer.
--
-- You can modify the load balancer attributes, such as @AccessLogs@,
-- @ConnectionDraining@, and @CrossZoneLoadBalancing@ by either enabling or
-- disabling them. Or, you can modify the load balancer attribute
-- @ConnectionSettings@ by specifying an idle connection timeout value for
-- your load balancer.
--
-- For more information, see the following in the /Classic Load Balancers
-- Guide/:
--
-- -   <https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html Cross-Zone Load Balancing>
--
-- -   <https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html Connection Draining>
--
-- -   <https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/access-log-collection.html Access Logs>
--
-- -   <https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html Idle Connection Timeout>
module Amazonka.ELB.ModifyLoadBalancerAttributes
  ( -- * Creating a Request
    ModifyLoadBalancerAttributes (..),
    newModifyLoadBalancerAttributes,

    -- * Request Lenses
    modifyLoadBalancerAttributes_loadBalancerName,
    modifyLoadBalancerAttributes_loadBalancerAttributes,

    -- * Destructuring the Response
    ModifyLoadBalancerAttributesResponse (..),
    newModifyLoadBalancerAttributesResponse,

    -- * Response Lenses
    modifyLoadBalancerAttributesResponse_loadBalancerAttributes,
    modifyLoadBalancerAttributesResponse_loadBalancerName,
    modifyLoadBalancerAttributesResponse_httpStatus,
  )
where

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

-- | Contains the parameters for ModifyLoadBalancerAttributes.
--
-- /See:/ 'newModifyLoadBalancerAttributes' smart constructor.
data ModifyLoadBalancerAttributes = ModifyLoadBalancerAttributes'
  { -- | The name of the load balancer.
    ModifyLoadBalancerAttributes -> Text
loadBalancerName :: Prelude.Text,
    -- | The attributes for the load balancer.
    ModifyLoadBalancerAttributes -> LoadBalancerAttributes
loadBalancerAttributes :: LoadBalancerAttributes
  }
  deriving (ModifyLoadBalancerAttributes
-> ModifyLoadBalancerAttributes -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ModifyLoadBalancerAttributes
-> ModifyLoadBalancerAttributes -> Bool
$c/= :: ModifyLoadBalancerAttributes
-> ModifyLoadBalancerAttributes -> Bool
== :: ModifyLoadBalancerAttributes
-> ModifyLoadBalancerAttributes -> Bool
$c== :: ModifyLoadBalancerAttributes
-> ModifyLoadBalancerAttributes -> Bool
Prelude.Eq, ReadPrec [ModifyLoadBalancerAttributes]
ReadPrec ModifyLoadBalancerAttributes
Int -> ReadS ModifyLoadBalancerAttributes
ReadS [ModifyLoadBalancerAttributes]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ModifyLoadBalancerAttributes]
$creadListPrec :: ReadPrec [ModifyLoadBalancerAttributes]
readPrec :: ReadPrec ModifyLoadBalancerAttributes
$creadPrec :: ReadPrec ModifyLoadBalancerAttributes
readList :: ReadS [ModifyLoadBalancerAttributes]
$creadList :: ReadS [ModifyLoadBalancerAttributes]
readsPrec :: Int -> ReadS ModifyLoadBalancerAttributes
$creadsPrec :: Int -> ReadS ModifyLoadBalancerAttributes
Prelude.Read, Int -> ModifyLoadBalancerAttributes -> ShowS
[ModifyLoadBalancerAttributes] -> ShowS
ModifyLoadBalancerAttributes -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ModifyLoadBalancerAttributes] -> ShowS
$cshowList :: [ModifyLoadBalancerAttributes] -> ShowS
show :: ModifyLoadBalancerAttributes -> String
$cshow :: ModifyLoadBalancerAttributes -> String
showsPrec :: Int -> ModifyLoadBalancerAttributes -> ShowS
$cshowsPrec :: Int -> ModifyLoadBalancerAttributes -> ShowS
Prelude.Show, forall x.
Rep ModifyLoadBalancerAttributes x -> ModifyLoadBalancerAttributes
forall x.
ModifyLoadBalancerAttributes -> Rep ModifyLoadBalancerAttributes x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ModifyLoadBalancerAttributes x -> ModifyLoadBalancerAttributes
$cfrom :: forall x.
ModifyLoadBalancerAttributes -> Rep ModifyLoadBalancerAttributes x
Prelude.Generic)

-- |
-- Create a value of 'ModifyLoadBalancerAttributes' 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:
--
-- 'loadBalancerName', 'modifyLoadBalancerAttributes_loadBalancerName' - The name of the load balancer.
--
-- 'loadBalancerAttributes', 'modifyLoadBalancerAttributes_loadBalancerAttributes' - The attributes for the load balancer.
newModifyLoadBalancerAttributes ::
  -- | 'loadBalancerName'
  Prelude.Text ->
  -- | 'loadBalancerAttributes'
  LoadBalancerAttributes ->
  ModifyLoadBalancerAttributes
newModifyLoadBalancerAttributes :: Text -> LoadBalancerAttributes -> ModifyLoadBalancerAttributes
newModifyLoadBalancerAttributes
  Text
pLoadBalancerName_
  LoadBalancerAttributes
pLoadBalancerAttributes_ =
    ModifyLoadBalancerAttributes'
      { $sel:loadBalancerName:ModifyLoadBalancerAttributes' :: Text
loadBalancerName =
          Text
pLoadBalancerName_,
        $sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: LoadBalancerAttributes
loadBalancerAttributes =
          LoadBalancerAttributes
pLoadBalancerAttributes_
      }

-- | The name of the load balancer.
modifyLoadBalancerAttributes_loadBalancerName :: Lens.Lens' ModifyLoadBalancerAttributes Prelude.Text
modifyLoadBalancerAttributes_loadBalancerName :: Lens' ModifyLoadBalancerAttributes Text
modifyLoadBalancerAttributes_loadBalancerName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributes' {Text
loadBalancerName :: Text
$sel:loadBalancerName:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
loadBalancerName} -> Text
loadBalancerName) (\s :: ModifyLoadBalancerAttributes
s@ModifyLoadBalancerAttributes' {} Text
a -> ModifyLoadBalancerAttributes
s {$sel:loadBalancerName:ModifyLoadBalancerAttributes' :: Text
loadBalancerName = Text
a} :: ModifyLoadBalancerAttributes)

-- | The attributes for the load balancer.
modifyLoadBalancerAttributes_loadBalancerAttributes :: Lens.Lens' ModifyLoadBalancerAttributes LoadBalancerAttributes
modifyLoadBalancerAttributes_loadBalancerAttributes :: Lens' ModifyLoadBalancerAttributes LoadBalancerAttributes
modifyLoadBalancerAttributes_loadBalancerAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributes' {LoadBalancerAttributes
loadBalancerAttributes :: LoadBalancerAttributes
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> LoadBalancerAttributes
loadBalancerAttributes} -> LoadBalancerAttributes
loadBalancerAttributes) (\s :: ModifyLoadBalancerAttributes
s@ModifyLoadBalancerAttributes' {} LoadBalancerAttributes
a -> ModifyLoadBalancerAttributes
s {$sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: LoadBalancerAttributes
loadBalancerAttributes = LoadBalancerAttributes
a} :: ModifyLoadBalancerAttributes)

instance Core.AWSRequest ModifyLoadBalancerAttributes where
  type
    AWSResponse ModifyLoadBalancerAttributes =
      ModifyLoadBalancerAttributesResponse
  request :: (Service -> Service)
-> ModifyLoadBalancerAttributes
-> Request ModifyLoadBalancerAttributes
request Service -> Service
overrides =
    forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy ModifyLoadBalancerAttributes
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse ModifyLoadBalancerAttributes)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
    -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
      Text
"ModifyLoadBalancerAttributesResult"
      ( \Int
s ResponseHeaders
h [Node]
x ->
          Maybe LoadBalancerAttributes
-> Maybe Text -> Int -> ModifyLoadBalancerAttributesResponse
ModifyLoadBalancerAttributesResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"LoadBalancerAttributes")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"LoadBalancerName")
            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
    ModifyLoadBalancerAttributes
  where
  hashWithSalt :: Int -> ModifyLoadBalancerAttributes -> Int
hashWithSalt Int
_salt ModifyLoadBalancerAttributes' {Text
LoadBalancerAttributes
loadBalancerAttributes :: LoadBalancerAttributes
loadBalancerName :: Text
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> LoadBalancerAttributes
$sel:loadBalancerName:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
loadBalancerName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` LoadBalancerAttributes
loadBalancerAttributes

instance Prelude.NFData ModifyLoadBalancerAttributes where
  rnf :: ModifyLoadBalancerAttributes -> ()
rnf ModifyLoadBalancerAttributes' {Text
LoadBalancerAttributes
loadBalancerAttributes :: LoadBalancerAttributes
loadBalancerName :: Text
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> LoadBalancerAttributes
$sel:loadBalancerName:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Text
loadBalancerName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf LoadBalancerAttributes
loadBalancerAttributes

instance Data.ToHeaders ModifyLoadBalancerAttributes where
  toHeaders :: ModifyLoadBalancerAttributes -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

instance Data.ToPath ModifyLoadBalancerAttributes where
  toPath :: ModifyLoadBalancerAttributes -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"

instance Data.ToQuery ModifyLoadBalancerAttributes where
  toQuery :: ModifyLoadBalancerAttributes -> QueryString
toQuery ModifyLoadBalancerAttributes' {Text
LoadBalancerAttributes
loadBalancerAttributes :: LoadBalancerAttributes
loadBalancerName :: Text
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> LoadBalancerAttributes
$sel:loadBalancerName:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"Action"
          forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"ModifyLoadBalancerAttributes" ::
                      Prelude.ByteString
                  ),
        ByteString
"Version"
          forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-06-01" :: Prelude.ByteString),
        ByteString
"LoadBalancerName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
loadBalancerName,
        ByteString
"LoadBalancerAttributes"
          forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: LoadBalancerAttributes
loadBalancerAttributes
      ]

-- | Contains the output of ModifyLoadBalancerAttributes.
--
-- /See:/ 'newModifyLoadBalancerAttributesResponse' smart constructor.
data ModifyLoadBalancerAttributesResponse = ModifyLoadBalancerAttributesResponse'
  { -- | Information about the load balancer attributes.
    ModifyLoadBalancerAttributesResponse
-> Maybe LoadBalancerAttributes
loadBalancerAttributes :: Prelude.Maybe LoadBalancerAttributes,
    -- | The name of the load balancer.
    ModifyLoadBalancerAttributesResponse -> Maybe Text
loadBalancerName :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    ModifyLoadBalancerAttributesResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (ModifyLoadBalancerAttributesResponse
-> ModifyLoadBalancerAttributesResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ModifyLoadBalancerAttributesResponse
-> ModifyLoadBalancerAttributesResponse -> Bool
$c/= :: ModifyLoadBalancerAttributesResponse
-> ModifyLoadBalancerAttributesResponse -> Bool
== :: ModifyLoadBalancerAttributesResponse
-> ModifyLoadBalancerAttributesResponse -> Bool
$c== :: ModifyLoadBalancerAttributesResponse
-> ModifyLoadBalancerAttributesResponse -> Bool
Prelude.Eq, ReadPrec [ModifyLoadBalancerAttributesResponse]
ReadPrec ModifyLoadBalancerAttributesResponse
Int -> ReadS ModifyLoadBalancerAttributesResponse
ReadS [ModifyLoadBalancerAttributesResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ModifyLoadBalancerAttributesResponse]
$creadListPrec :: ReadPrec [ModifyLoadBalancerAttributesResponse]
readPrec :: ReadPrec ModifyLoadBalancerAttributesResponse
$creadPrec :: ReadPrec ModifyLoadBalancerAttributesResponse
readList :: ReadS [ModifyLoadBalancerAttributesResponse]
$creadList :: ReadS [ModifyLoadBalancerAttributesResponse]
readsPrec :: Int -> ReadS ModifyLoadBalancerAttributesResponse
$creadsPrec :: Int -> ReadS ModifyLoadBalancerAttributesResponse
Prelude.Read, Int -> ModifyLoadBalancerAttributesResponse -> ShowS
[ModifyLoadBalancerAttributesResponse] -> ShowS
ModifyLoadBalancerAttributesResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ModifyLoadBalancerAttributesResponse] -> ShowS
$cshowList :: [ModifyLoadBalancerAttributesResponse] -> ShowS
show :: ModifyLoadBalancerAttributesResponse -> String
$cshow :: ModifyLoadBalancerAttributesResponse -> String
showsPrec :: Int -> ModifyLoadBalancerAttributesResponse -> ShowS
$cshowsPrec :: Int -> ModifyLoadBalancerAttributesResponse -> ShowS
Prelude.Show, forall x.
Rep ModifyLoadBalancerAttributesResponse x
-> ModifyLoadBalancerAttributesResponse
forall x.
ModifyLoadBalancerAttributesResponse
-> Rep ModifyLoadBalancerAttributesResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ModifyLoadBalancerAttributesResponse x
-> ModifyLoadBalancerAttributesResponse
$cfrom :: forall x.
ModifyLoadBalancerAttributesResponse
-> Rep ModifyLoadBalancerAttributesResponse x
Prelude.Generic)

-- |
-- Create a value of 'ModifyLoadBalancerAttributesResponse' 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:
--
-- 'loadBalancerAttributes', 'modifyLoadBalancerAttributesResponse_loadBalancerAttributes' - Information about the load balancer attributes.
--
-- 'loadBalancerName', 'modifyLoadBalancerAttributesResponse_loadBalancerName' - The name of the load balancer.
--
-- 'httpStatus', 'modifyLoadBalancerAttributesResponse_httpStatus' - The response's http status code.
newModifyLoadBalancerAttributesResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ModifyLoadBalancerAttributesResponse
newModifyLoadBalancerAttributesResponse :: Int -> ModifyLoadBalancerAttributesResponse
newModifyLoadBalancerAttributesResponse Int
pHttpStatus_ =
  ModifyLoadBalancerAttributesResponse'
    { $sel:loadBalancerAttributes:ModifyLoadBalancerAttributesResponse' :: Maybe LoadBalancerAttributes
loadBalancerAttributes =
        forall a. Maybe a
Prelude.Nothing,
      $sel:loadBalancerName:ModifyLoadBalancerAttributesResponse' :: Maybe Text
loadBalancerName = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:ModifyLoadBalancerAttributesResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | Information about the load balancer attributes.
modifyLoadBalancerAttributesResponse_loadBalancerAttributes :: Lens.Lens' ModifyLoadBalancerAttributesResponse (Prelude.Maybe LoadBalancerAttributes)
modifyLoadBalancerAttributesResponse_loadBalancerAttributes :: Lens'
  ModifyLoadBalancerAttributesResponse (Maybe LoadBalancerAttributes)
modifyLoadBalancerAttributesResponse_loadBalancerAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributesResponse' {Maybe LoadBalancerAttributes
loadBalancerAttributes :: Maybe LoadBalancerAttributes
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse
-> Maybe LoadBalancerAttributes
loadBalancerAttributes} -> Maybe LoadBalancerAttributes
loadBalancerAttributes) (\s :: ModifyLoadBalancerAttributesResponse
s@ModifyLoadBalancerAttributesResponse' {} Maybe LoadBalancerAttributes
a -> ModifyLoadBalancerAttributesResponse
s {$sel:loadBalancerAttributes:ModifyLoadBalancerAttributesResponse' :: Maybe LoadBalancerAttributes
loadBalancerAttributes = Maybe LoadBalancerAttributes
a} :: ModifyLoadBalancerAttributesResponse)

-- | The name of the load balancer.
modifyLoadBalancerAttributesResponse_loadBalancerName :: Lens.Lens' ModifyLoadBalancerAttributesResponse (Prelude.Maybe Prelude.Text)
modifyLoadBalancerAttributesResponse_loadBalancerName :: Lens' ModifyLoadBalancerAttributesResponse (Maybe Text)
modifyLoadBalancerAttributesResponse_loadBalancerName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributesResponse' {Maybe Text
loadBalancerName :: Maybe Text
$sel:loadBalancerName:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse -> Maybe Text
loadBalancerName} -> Maybe Text
loadBalancerName) (\s :: ModifyLoadBalancerAttributesResponse
s@ModifyLoadBalancerAttributesResponse' {} Maybe Text
a -> ModifyLoadBalancerAttributesResponse
s {$sel:loadBalancerName:ModifyLoadBalancerAttributesResponse' :: Maybe Text
loadBalancerName = Maybe Text
a} :: ModifyLoadBalancerAttributesResponse)

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

instance
  Prelude.NFData
    ModifyLoadBalancerAttributesResponse
  where
  rnf :: ModifyLoadBalancerAttributesResponse -> ()
rnf ModifyLoadBalancerAttributesResponse' {Int
Maybe Text
Maybe LoadBalancerAttributes
httpStatus :: Int
loadBalancerName :: Maybe Text
loadBalancerAttributes :: Maybe LoadBalancerAttributes
$sel:httpStatus:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse -> Int
$sel:loadBalancerName:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse -> Maybe Text
$sel:loadBalancerAttributes:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse
-> Maybe LoadBalancerAttributes
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe LoadBalancerAttributes
loadBalancerAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
loadBalancerName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus