{-# 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.ELBV2.ModifyLoadBalancerAttributes
(
ModifyLoadBalancerAttributes (..),
newModifyLoadBalancerAttributes,
modifyLoadBalancerAttributes_loadBalancerArn,
modifyLoadBalancerAttributes_attributes,
ModifyLoadBalancerAttributesResponse (..),
newModifyLoadBalancerAttributesResponse,
modifyLoadBalancerAttributesResponse_attributes,
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.ELBV2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ModifyLoadBalancerAttributes = ModifyLoadBalancerAttributes'
{
ModifyLoadBalancerAttributes -> Text
loadBalancerArn :: Prelude.Text,
ModifyLoadBalancerAttributes -> [LoadBalancerAttribute]
attributes :: [LoadBalancerAttribute]
}
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)
newModifyLoadBalancerAttributes ::
Prelude.Text ->
ModifyLoadBalancerAttributes
newModifyLoadBalancerAttributes :: Text -> ModifyLoadBalancerAttributes
newModifyLoadBalancerAttributes Text
pLoadBalancerArn_ =
ModifyLoadBalancerAttributes'
{ $sel:loadBalancerArn:ModifyLoadBalancerAttributes' :: Text
loadBalancerArn =
Text
pLoadBalancerArn_,
$sel:attributes:ModifyLoadBalancerAttributes' :: [LoadBalancerAttribute]
attributes = forall a. Monoid a => a
Prelude.mempty
}
modifyLoadBalancerAttributes_loadBalancerArn :: Lens.Lens' ModifyLoadBalancerAttributes Prelude.Text
modifyLoadBalancerAttributes_loadBalancerArn :: Lens' ModifyLoadBalancerAttributes Text
modifyLoadBalancerAttributes_loadBalancerArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributes' {Text
loadBalancerArn :: Text
$sel:loadBalancerArn:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
loadBalancerArn} -> Text
loadBalancerArn) (\s :: ModifyLoadBalancerAttributes
s@ModifyLoadBalancerAttributes' {} Text
a -> ModifyLoadBalancerAttributes
s {$sel:loadBalancerArn:ModifyLoadBalancerAttributes' :: Text
loadBalancerArn = Text
a} :: ModifyLoadBalancerAttributes)
modifyLoadBalancerAttributes_attributes :: Lens.Lens' ModifyLoadBalancerAttributes [LoadBalancerAttribute]
modifyLoadBalancerAttributes_attributes :: Lens' ModifyLoadBalancerAttributes [LoadBalancerAttribute]
modifyLoadBalancerAttributes_attributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributes' {[LoadBalancerAttribute]
attributes :: [LoadBalancerAttribute]
$sel:attributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> [LoadBalancerAttribute]
attributes} -> [LoadBalancerAttribute]
attributes) (\s :: ModifyLoadBalancerAttributes
s@ModifyLoadBalancerAttributes' {} [LoadBalancerAttribute]
a -> ModifyLoadBalancerAttributes
s {$sel:attributes:ModifyLoadBalancerAttributes' :: [LoadBalancerAttribute]
attributes = [LoadBalancerAttribute]
a} :: ModifyLoadBalancerAttributes) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
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 [LoadBalancerAttribute]
-> 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
"Attributes"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member")
)
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' {[LoadBalancerAttribute]
Text
attributes :: [LoadBalancerAttribute]
loadBalancerArn :: Text
$sel:attributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> [LoadBalancerAttribute]
$sel:loadBalancerArn:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
loadBalancerArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [LoadBalancerAttribute]
attributes
instance Prelude.NFData ModifyLoadBalancerAttributes where
rnf :: ModifyLoadBalancerAttributes -> ()
rnf ModifyLoadBalancerAttributes' {[LoadBalancerAttribute]
Text
attributes :: [LoadBalancerAttribute]
loadBalancerArn :: Text
$sel:attributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> [LoadBalancerAttribute]
$sel:loadBalancerArn:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
loadBalancerArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [LoadBalancerAttribute]
attributes
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' {[LoadBalancerAttribute]
Text
attributes :: [LoadBalancerAttribute]
loadBalancerArn :: Text
$sel:attributes:ModifyLoadBalancerAttributes' :: ModifyLoadBalancerAttributes -> [LoadBalancerAttribute]
$sel:loadBalancerArn: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
"2015-12-01" :: Prelude.ByteString),
ByteString
"LoadBalancerArn" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
loadBalancerArn,
ByteString
"Attributes"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"member" [LoadBalancerAttribute]
attributes
]
data ModifyLoadBalancerAttributesResponse = ModifyLoadBalancerAttributesResponse'
{
ModifyLoadBalancerAttributesResponse
-> Maybe [LoadBalancerAttribute]
attributes :: Prelude.Maybe [LoadBalancerAttribute],
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)
newModifyLoadBalancerAttributesResponse ::
Prelude.Int ->
ModifyLoadBalancerAttributesResponse
newModifyLoadBalancerAttributesResponse :: Int -> ModifyLoadBalancerAttributesResponse
newModifyLoadBalancerAttributesResponse Int
pHttpStatus_ =
ModifyLoadBalancerAttributesResponse'
{ $sel:attributes:ModifyLoadBalancerAttributesResponse' :: Maybe [LoadBalancerAttribute]
attributes =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ModifyLoadBalancerAttributesResponse' :: Int
httpStatus = Int
pHttpStatus_
}
modifyLoadBalancerAttributesResponse_attributes :: Lens.Lens' ModifyLoadBalancerAttributesResponse (Prelude.Maybe [LoadBalancerAttribute])
modifyLoadBalancerAttributesResponse_attributes :: Lens'
ModifyLoadBalancerAttributesResponse
(Maybe [LoadBalancerAttribute])
modifyLoadBalancerAttributesResponse_attributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ModifyLoadBalancerAttributesResponse' {Maybe [LoadBalancerAttribute]
attributes :: Maybe [LoadBalancerAttribute]
$sel:attributes:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse
-> Maybe [LoadBalancerAttribute]
attributes} -> Maybe [LoadBalancerAttribute]
attributes) (\s :: ModifyLoadBalancerAttributesResponse
s@ModifyLoadBalancerAttributesResponse' {} Maybe [LoadBalancerAttribute]
a -> ModifyLoadBalancerAttributesResponse
s {$sel:attributes:ModifyLoadBalancerAttributesResponse' :: Maybe [LoadBalancerAttribute]
attributes = Maybe [LoadBalancerAttribute]
a} :: ModifyLoadBalancerAttributesResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
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 [LoadBalancerAttribute]
httpStatus :: Int
attributes :: Maybe [LoadBalancerAttribute]
$sel:httpStatus:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse -> Int
$sel:attributes:ModifyLoadBalancerAttributesResponse' :: ModifyLoadBalancerAttributesResponse
-> Maybe [LoadBalancerAttribute]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [LoadBalancerAttribute]
attributes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus