{-# 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.MediaPackage.CreateOriginEndpoint
(
createOriginEndpoint
, CreateOriginEndpoint
, coeWhitelist
, coeHlsPackage
, coeManifestName
, coeStartoverWindowSeconds
, coeDashPackage
, coeMssPackage
, coeTimeDelaySeconds
, coeCmafPackage
, coeDescription
, coeChannelId
, coeId
, createOriginEndpointResponse
, CreateOriginEndpointResponse
, coersWhitelist
, coersHlsPackage
, coersARN
, coersManifestName
, coersURL
, coersChannelId
, coersStartoverWindowSeconds
, coersDashPackage
, coersMssPackage
, coersId
, coersTimeDelaySeconds
, coersCmafPackage
, coersDescription
, coersResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MediaPackage.Types
import Network.AWS.MediaPackage.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data CreateOriginEndpoint = CreateOriginEndpoint'
{ _coeWhitelist :: !(Maybe [Text])
, _coeHlsPackage :: !(Maybe HlsPackage)
, _coeManifestName :: !(Maybe Text)
, _coeStartoverWindowSeconds :: !(Maybe Int)
, _coeDashPackage :: !(Maybe DashPackage)
, _coeMssPackage :: !(Maybe MssPackage)
, _coeTimeDelaySeconds :: !(Maybe Int)
, _coeCmafPackage :: !(Maybe CmafPackageCreateOrUpdateParameters)
, _coeDescription :: !(Maybe Text)
, _coeChannelId :: !Text
, _coeId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
createOriginEndpoint
:: Text
-> Text
-> CreateOriginEndpoint
createOriginEndpoint pChannelId_ pId_ =
CreateOriginEndpoint'
{ _coeWhitelist = Nothing
, _coeHlsPackage = Nothing
, _coeManifestName = Nothing
, _coeStartoverWindowSeconds = Nothing
, _coeDashPackage = Nothing
, _coeMssPackage = Nothing
, _coeTimeDelaySeconds = Nothing
, _coeCmafPackage = Nothing
, _coeDescription = Nothing
, _coeChannelId = pChannelId_
, _coeId = pId_
}
coeWhitelist :: Lens' CreateOriginEndpoint [Text]
coeWhitelist = lens _coeWhitelist (\ s a -> s{_coeWhitelist = a}) . _Default . _Coerce
coeHlsPackage :: Lens' CreateOriginEndpoint (Maybe HlsPackage)
coeHlsPackage = lens _coeHlsPackage (\ s a -> s{_coeHlsPackage = a})
coeManifestName :: Lens' CreateOriginEndpoint (Maybe Text)
coeManifestName = lens _coeManifestName (\ s a -> s{_coeManifestName = a})
coeStartoverWindowSeconds :: Lens' CreateOriginEndpoint (Maybe Int)
coeStartoverWindowSeconds = lens _coeStartoverWindowSeconds (\ s a -> s{_coeStartoverWindowSeconds = a})
coeDashPackage :: Lens' CreateOriginEndpoint (Maybe DashPackage)
coeDashPackage = lens _coeDashPackage (\ s a -> s{_coeDashPackage = a})
coeMssPackage :: Lens' CreateOriginEndpoint (Maybe MssPackage)
coeMssPackage = lens _coeMssPackage (\ s a -> s{_coeMssPackage = a})
coeTimeDelaySeconds :: Lens' CreateOriginEndpoint (Maybe Int)
coeTimeDelaySeconds = lens _coeTimeDelaySeconds (\ s a -> s{_coeTimeDelaySeconds = a})
coeCmafPackage :: Lens' CreateOriginEndpoint (Maybe CmafPackageCreateOrUpdateParameters)
coeCmafPackage = lens _coeCmafPackage (\ s a -> s{_coeCmafPackage = a})
coeDescription :: Lens' CreateOriginEndpoint (Maybe Text)
coeDescription = lens _coeDescription (\ s a -> s{_coeDescription = a})
coeChannelId :: Lens' CreateOriginEndpoint Text
coeChannelId = lens _coeChannelId (\ s a -> s{_coeChannelId = a})
coeId :: Lens' CreateOriginEndpoint Text
coeId = lens _coeId (\ s a -> s{_coeId = a})
instance AWSRequest CreateOriginEndpoint where
type Rs CreateOriginEndpoint =
CreateOriginEndpointResponse
request = postJSON mediaPackage
response
= receiveJSON
(\ s h x ->
CreateOriginEndpointResponse' <$>
(x .?> "whitelist" .!@ mempty) <*>
(x .?> "hlsPackage")
<*> (x .?> "arn")
<*> (x .?> "manifestName")
<*> (x .?> "url")
<*> (x .?> "channelId")
<*> (x .?> "startoverWindowSeconds")
<*> (x .?> "dashPackage")
<*> (x .?> "mssPackage")
<*> (x .?> "id")
<*> (x .?> "timeDelaySeconds")
<*> (x .?> "cmafPackage")
<*> (x .?> "description")
<*> (pure (fromEnum s)))
instance Hashable CreateOriginEndpoint where
instance NFData CreateOriginEndpoint where
instance ToHeaders CreateOriginEndpoint where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON CreateOriginEndpoint where
toJSON CreateOriginEndpoint'{..}
= object
(catMaybes
[("whitelist" .=) <$> _coeWhitelist,
("hlsPackage" .=) <$> _coeHlsPackage,
("manifestName" .=) <$> _coeManifestName,
("startoverWindowSeconds" .=) <$>
_coeStartoverWindowSeconds,
("dashPackage" .=) <$> _coeDashPackage,
("mssPackage" .=) <$> _coeMssPackage,
("timeDelaySeconds" .=) <$> _coeTimeDelaySeconds,
("cmafPackage" .=) <$> _coeCmafPackage,
("description" .=) <$> _coeDescription,
Just ("channelId" .= _coeChannelId),
Just ("id" .= _coeId)])
instance ToPath CreateOriginEndpoint where
toPath = const "/origin_endpoints"
instance ToQuery CreateOriginEndpoint where
toQuery = const mempty
data CreateOriginEndpointResponse = CreateOriginEndpointResponse'
{ _coersWhitelist :: !(Maybe [Text])
, _coersHlsPackage :: !(Maybe HlsPackage)
, _coersARN :: !(Maybe Text)
, _coersManifestName :: !(Maybe Text)
, _coersURL :: !(Maybe Text)
, _coersChannelId :: !(Maybe Text)
, _coersStartoverWindowSeconds :: !(Maybe Int)
, _coersDashPackage :: !(Maybe DashPackage)
, _coersMssPackage :: !(Maybe MssPackage)
, _coersId :: !(Maybe Text)
, _coersTimeDelaySeconds :: !(Maybe Int)
, _coersCmafPackage :: !(Maybe CmafPackage)
, _coersDescription :: !(Maybe Text)
, _coersResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
createOriginEndpointResponse
:: Int
-> CreateOriginEndpointResponse
createOriginEndpointResponse pResponseStatus_ =
CreateOriginEndpointResponse'
{ _coersWhitelist = Nothing
, _coersHlsPackage = Nothing
, _coersARN = Nothing
, _coersManifestName = Nothing
, _coersURL = Nothing
, _coersChannelId = Nothing
, _coersStartoverWindowSeconds = Nothing
, _coersDashPackage = Nothing
, _coersMssPackage = Nothing
, _coersId = Nothing
, _coersTimeDelaySeconds = Nothing
, _coersCmafPackage = Nothing
, _coersDescription = Nothing
, _coersResponseStatus = pResponseStatus_
}
coersWhitelist :: Lens' CreateOriginEndpointResponse [Text]
coersWhitelist = lens _coersWhitelist (\ s a -> s{_coersWhitelist = a}) . _Default . _Coerce
coersHlsPackage :: Lens' CreateOriginEndpointResponse (Maybe HlsPackage)
coersHlsPackage = lens _coersHlsPackage (\ s a -> s{_coersHlsPackage = a})
coersARN :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersARN = lens _coersARN (\ s a -> s{_coersARN = a})
coersManifestName :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersManifestName = lens _coersManifestName (\ s a -> s{_coersManifestName = a})
coersURL :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersURL = lens _coersURL (\ s a -> s{_coersURL = a})
coersChannelId :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersChannelId = lens _coersChannelId (\ s a -> s{_coersChannelId = a})
coersStartoverWindowSeconds :: Lens' CreateOriginEndpointResponse (Maybe Int)
coersStartoverWindowSeconds = lens _coersStartoverWindowSeconds (\ s a -> s{_coersStartoverWindowSeconds = a})
coersDashPackage :: Lens' CreateOriginEndpointResponse (Maybe DashPackage)
coersDashPackage = lens _coersDashPackage (\ s a -> s{_coersDashPackage = a})
coersMssPackage :: Lens' CreateOriginEndpointResponse (Maybe MssPackage)
coersMssPackage = lens _coersMssPackage (\ s a -> s{_coersMssPackage = a})
coersId :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersId = lens _coersId (\ s a -> s{_coersId = a})
coersTimeDelaySeconds :: Lens' CreateOriginEndpointResponse (Maybe Int)
coersTimeDelaySeconds = lens _coersTimeDelaySeconds (\ s a -> s{_coersTimeDelaySeconds = a})
coersCmafPackage :: Lens' CreateOriginEndpointResponse (Maybe CmafPackage)
coersCmafPackage = lens _coersCmafPackage (\ s a -> s{_coersCmafPackage = a})
coersDescription :: Lens' CreateOriginEndpointResponse (Maybe Text)
coersDescription = lens _coersDescription (\ s a -> s{_coersDescription = a})
coersResponseStatus :: Lens' CreateOriginEndpointResponse Int
coersResponseStatus = lens _coersResponseStatus (\ s a -> s{_coersResponseStatus = a})
instance NFData CreateOriginEndpointResponse where