{-# 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.DirectConnect.UpdateLag
(
updateLag
, UpdateLag
, ulMinimumLinks
, ulLagName
, ulLagId
, lag
, Lag
, lagLagId
, lagConnectionsBandwidth
, lagMinimumLinks
, lagLagName
, lagLocation
, lagConnections
, lagAwsDevice
, lagAllowsHostedConnections
, lagNumberOfConnections
, lagLagState
, lagOwnerAccount
, lagRegion
) where
import Network.AWS.DirectConnect.Types
import Network.AWS.DirectConnect.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data UpdateLag = UpdateLag'
{ _ulMinimumLinks :: !(Maybe Int)
, _ulLagName :: !(Maybe Text)
, _ulLagId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateLag
:: Text
-> UpdateLag
updateLag pLagId_ =
UpdateLag'
{_ulMinimumLinks = Nothing, _ulLagName = Nothing, _ulLagId = pLagId_}
ulMinimumLinks :: Lens' UpdateLag (Maybe Int)
ulMinimumLinks = lens _ulMinimumLinks (\ s a -> s{_ulMinimumLinks = a})
ulLagName :: Lens' UpdateLag (Maybe Text)
ulLagName = lens _ulLagName (\ s a -> s{_ulLagName = a})
ulLagId :: Lens' UpdateLag Text
ulLagId = lens _ulLagId (\ s a -> s{_ulLagId = a})
instance AWSRequest UpdateLag where
type Rs UpdateLag = Lag
request = postJSON directConnect
response = receiveJSON (\ s h x -> eitherParseJSON x)
instance Hashable UpdateLag where
instance NFData UpdateLag where
instance ToHeaders UpdateLag where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("OvertureService.UpdateLag" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdateLag where
toJSON UpdateLag'{..}
= object
(catMaybes
[("minimumLinks" .=) <$> _ulMinimumLinks,
("lagName" .=) <$> _ulLagName,
Just ("lagId" .= _ulLagId)])
instance ToPath UpdateLag where
toPath = const "/"
instance ToQuery UpdateLag where
toQuery = const mempty