module Network.AWS.StorageGateway.DeleteBandwidthRateLimit
(
DeleteBandwidthRateLimit
, deleteBandwidthRateLimit
, dbrl1BandwidthType
, dbrl1GatewayARN
, DeleteBandwidthRateLimitResponse
, deleteBandwidthRateLimitResponse
, dbrlr1GatewayARN
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.StorageGateway.Types
import qualified GHC.Exts
data DeleteBandwidthRateLimit = DeleteBandwidthRateLimit
{ _dbrl1BandwidthType :: Text
, _dbrl1GatewayARN :: Text
} deriving (Eq, Ord, Show)
deleteBandwidthRateLimit :: Text
-> Text
-> DeleteBandwidthRateLimit
deleteBandwidthRateLimit p1 p2 = DeleteBandwidthRateLimit
{ _dbrl1GatewayARN = p1
, _dbrl1BandwidthType = p2
}
dbrl1BandwidthType :: Lens' DeleteBandwidthRateLimit Text
dbrl1BandwidthType =
lens _dbrl1BandwidthType (\s a -> s { _dbrl1BandwidthType = a })
dbrl1GatewayARN :: Lens' DeleteBandwidthRateLimit Text
dbrl1GatewayARN = lens _dbrl1GatewayARN (\s a -> s { _dbrl1GatewayARN = a })
newtype DeleteBandwidthRateLimitResponse = DeleteBandwidthRateLimitResponse
{ _dbrlr1GatewayARN :: Maybe Text
} deriving (Eq, Ord, Show, Monoid)
deleteBandwidthRateLimitResponse :: DeleteBandwidthRateLimitResponse
deleteBandwidthRateLimitResponse = DeleteBandwidthRateLimitResponse
{ _dbrlr1GatewayARN = Nothing
}
dbrlr1GatewayARN :: Lens' DeleteBandwidthRateLimitResponse (Maybe Text)
dbrlr1GatewayARN = lens _dbrlr1GatewayARN (\s a -> s { _dbrlr1GatewayARN = a })
instance ToPath DeleteBandwidthRateLimit where
toPath = const "/"
instance ToQuery DeleteBandwidthRateLimit where
toQuery = const mempty
instance ToHeaders DeleteBandwidthRateLimit
instance ToJSON DeleteBandwidthRateLimit where
toJSON DeleteBandwidthRateLimit{..} = object
[ "GatewayARN" .= _dbrl1GatewayARN
, "BandwidthType" .= _dbrl1BandwidthType
]
instance AWSRequest DeleteBandwidthRateLimit where
type Sv DeleteBandwidthRateLimit = StorageGateway
type Rs DeleteBandwidthRateLimit = DeleteBandwidthRateLimitResponse
request = post "DeleteBandwidthRateLimit"
response = jsonResponse
instance FromJSON DeleteBandwidthRateLimitResponse where
parseJSON = withObject "DeleteBandwidthRateLimitResponse" $ \o -> DeleteBandwidthRateLimitResponse
<$> o .:? "GatewayARN"