module Network.AWS.CloudFront.GetStreamingDistribution
(
GetStreamingDistribution
, getStreamingDistribution
, gsdId
, GetStreamingDistributionResponse
, getStreamingDistributionResponse
, gsdrETag
, gsdrStreamingDistribution
) where
import Network.AWS.Prelude
import Network.AWS.Request.RestXML
import Network.AWS.CloudFront.Types
import qualified GHC.Exts
newtype GetStreamingDistribution = GetStreamingDistribution
{ _gsdId :: Text
} deriving (Eq, Ord, Read, Show, Monoid, IsString)
getStreamingDistribution :: Text
-> GetStreamingDistribution
getStreamingDistribution p1 = GetStreamingDistribution
{ _gsdId = p1
}
gsdId :: Lens' GetStreamingDistribution Text
gsdId = lens _gsdId (\s a -> s { _gsdId = a })
data GetStreamingDistributionResponse = GetStreamingDistributionResponse
{ _gsdrETag :: Maybe Text
, _gsdrStreamingDistribution :: Maybe StreamingDistribution
} deriving (Eq, Read, Show)
getStreamingDistributionResponse :: GetStreamingDistributionResponse
getStreamingDistributionResponse = GetStreamingDistributionResponse
{ _gsdrStreamingDistribution = Nothing
, _gsdrETag = Nothing
}
gsdrETag :: Lens' GetStreamingDistributionResponse (Maybe Text)
gsdrETag = lens _gsdrETag (\s a -> s { _gsdrETag = a })
gsdrStreamingDistribution :: Lens' GetStreamingDistributionResponse (Maybe StreamingDistribution)
gsdrStreamingDistribution =
lens _gsdrStreamingDistribution
(\s a -> s { _gsdrStreamingDistribution = a })
instance ToPath GetStreamingDistribution where
toPath GetStreamingDistribution{..} = mconcat
[ "/2014-11-06/streaming-distribution/"
, toText _gsdId
]
instance ToQuery GetStreamingDistribution where
toQuery = const mempty
instance ToHeaders GetStreamingDistribution
instance ToXMLRoot GetStreamingDistribution where
toXMLRoot = const (namespaced ns "GetStreamingDistribution" [])
instance ToXML GetStreamingDistribution
instance AWSRequest GetStreamingDistribution where
type Sv GetStreamingDistribution = CloudFront
type Rs GetStreamingDistribution = GetStreamingDistributionResponse
request = get
response = xmlHeaderResponse $ \h x -> GetStreamingDistributionResponse
<$> h ~:? "ETag"
<*> x .@? "StreamingDistribution"