{-# 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.CloudFront.DeleteStreamingDistribution
(
deleteStreamingDistribution
, DeleteStreamingDistribution
, dsdIfMatch
, dsdId
, deleteStreamingDistributionResponse
, DeleteStreamingDistributionResponse
) where
import Network.AWS.CloudFront.Types
import Network.AWS.CloudFront.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteStreamingDistribution = DeleteStreamingDistribution'
{ _dsdIfMatch :: !(Maybe Text)
, _dsdId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteStreamingDistribution
:: Text
-> DeleteStreamingDistribution
deleteStreamingDistribution pId_ =
DeleteStreamingDistribution'
{ _dsdIfMatch = Nothing
, _dsdId = pId_
}
dsdIfMatch :: Lens' DeleteStreamingDistribution (Maybe Text)
dsdIfMatch = lens _dsdIfMatch (\ s a -> s{_dsdIfMatch = a});
dsdId :: Lens' DeleteStreamingDistribution Text
dsdId = lens _dsdId (\ s a -> s{_dsdId = a});
instance AWSRequest DeleteStreamingDistribution where
type Rs DeleteStreamingDistribution =
DeleteStreamingDistributionResponse
request = delete cloudFront
response
= receiveNull DeleteStreamingDistributionResponse'
instance Hashable DeleteStreamingDistribution
instance NFData DeleteStreamingDistribution
instance ToHeaders DeleteStreamingDistribution where
toHeaders DeleteStreamingDistribution'{..}
= mconcat ["If-Match" =# _dsdIfMatch]
instance ToPath DeleteStreamingDistribution where
toPath DeleteStreamingDistribution'{..}
= mconcat
["/2016-09-07/streaming-distribution/", toBS _dsdId]
instance ToQuery DeleteStreamingDistribution where
toQuery = const mempty
data DeleteStreamingDistributionResponse =
DeleteStreamingDistributionResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteStreamingDistributionResponse
:: DeleteStreamingDistributionResponse
deleteStreamingDistributionResponse = DeleteStreamingDistributionResponse'
instance NFData DeleteStreamingDistributionResponse