{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.ELBv2.SetRulePriorities
(
setRulePriorities
, SetRulePriorities
, srpRulePriorities
, setRulePrioritiesResponse
, SetRulePrioritiesResponse
, srprsRules
, srprsResponseStatus
) where
import Network.AWS.ELBv2.Types
import Network.AWS.ELBv2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype SetRulePriorities = SetRulePriorities'
{ _srpRulePriorities :: [RulePriorityPair]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
setRulePriorities
:: SetRulePriorities
setRulePriorities = SetRulePriorities' {_srpRulePriorities = mempty}
srpRulePriorities :: Lens' SetRulePriorities [RulePriorityPair]
srpRulePriorities = lens _srpRulePriorities (\ s a -> s{_srpRulePriorities = a}) . _Coerce
instance AWSRequest SetRulePriorities where
type Rs SetRulePriorities = SetRulePrioritiesResponse
request = postQuery eLBv2
response
= receiveXMLWrapper "SetRulePrioritiesResult"
(\ s h x ->
SetRulePrioritiesResponse' <$>
(x .@? "Rules" .!@ mempty >>=
may (parseXMLList "member"))
<*> (pure (fromEnum s)))
instance Hashable SetRulePriorities where
instance NFData SetRulePriorities where
instance ToHeaders SetRulePriorities where
toHeaders = const mempty
instance ToPath SetRulePriorities where
toPath = const "/"
instance ToQuery SetRulePriorities where
toQuery SetRulePriorities'{..}
= mconcat
["Action" =: ("SetRulePriorities" :: ByteString),
"Version" =: ("2015-12-01" :: ByteString),
"RulePriorities" =:
toQueryList "member" _srpRulePriorities]
data SetRulePrioritiesResponse = SetRulePrioritiesResponse'
{ _srprsRules :: !(Maybe [Rule])
, _srprsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
setRulePrioritiesResponse
:: Int
-> SetRulePrioritiesResponse
setRulePrioritiesResponse pResponseStatus_ =
SetRulePrioritiesResponse'
{_srprsRules = Nothing, _srprsResponseStatus = pResponseStatus_}
srprsRules :: Lens' SetRulePrioritiesResponse [Rule]
srprsRules = lens _srprsRules (\ s a -> s{_srprsRules = a}) . _Default . _Coerce
srprsResponseStatus :: Lens' SetRulePrioritiesResponse Int
srprsResponseStatus = lens _srprsResponseStatus (\ s a -> s{_srprsResponseStatus = a})
instance NFData SetRulePrioritiesResponse where