{-# 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.MediaLive.DescribeInput
(
describeInput
, DescribeInput
, dInputId
, describeInputResponse
, DescribeInputResponse
, diirsState
, diirsSecurityGroups
, diirsARN
, diirsSources
, diirsDestinations
, diirsName
, diirsAttachedChannels
, diirsId
, diirsType
, diirsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MediaLive.Types
import Network.AWS.MediaLive.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DescribeInput = DescribeInput'
{ _dInputId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeInput
:: Text
-> DescribeInput
describeInput pInputId_ = DescribeInput' {_dInputId = pInputId_}
dInputId :: Lens' DescribeInput Text
dInputId = lens _dInputId (\ s a -> s{_dInputId = a})
instance AWSRequest DescribeInput where
type Rs DescribeInput = DescribeInputResponse
request = get mediaLive
response
= receiveJSON
(\ s h x ->
DescribeInputResponse' <$>
(x .?> "state") <*>
(x .?> "securityGroups" .!@ mempty)
<*> (x .?> "arn")
<*> (x .?> "sources" .!@ mempty)
<*> (x .?> "destinations" .!@ mempty)
<*> (x .?> "name")
<*> (x .?> "attachedChannels" .!@ mempty)
<*> (x .?> "id")
<*> (x .?> "type")
<*> (pure (fromEnum s)))
instance Hashable DescribeInput where
instance NFData DescribeInput where
instance ToHeaders DescribeInput where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath DescribeInput where
toPath DescribeInput'{..}
= mconcat ["/prod/inputs/", toBS _dInputId]
instance ToQuery DescribeInput where
toQuery = const mempty
data DescribeInputResponse = DescribeInputResponse'
{ _diirsState :: !(Maybe InputState)
, _diirsSecurityGroups :: !(Maybe [Text])
, _diirsARN :: !(Maybe Text)
, _diirsSources :: !(Maybe [InputSource])
, _diirsDestinations :: !(Maybe [InputDestination])
, _diirsName :: !(Maybe Text)
, _diirsAttachedChannels :: !(Maybe [Text])
, _diirsId :: !(Maybe Text)
, _diirsType :: !(Maybe InputType)
, _diirsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeInputResponse
:: Int
-> DescribeInputResponse
describeInputResponse pResponseStatus_ =
DescribeInputResponse'
{ _diirsState = Nothing
, _diirsSecurityGroups = Nothing
, _diirsARN = Nothing
, _diirsSources = Nothing
, _diirsDestinations = Nothing
, _diirsName = Nothing
, _diirsAttachedChannels = Nothing
, _diirsId = Nothing
, _diirsType = Nothing
, _diirsResponseStatus = pResponseStatus_
}
diirsState :: Lens' DescribeInputResponse (Maybe InputState)
diirsState = lens _diirsState (\ s a -> s{_diirsState = a})
diirsSecurityGroups :: Lens' DescribeInputResponse [Text]
diirsSecurityGroups = lens _diirsSecurityGroups (\ s a -> s{_diirsSecurityGroups = a}) . _Default . _Coerce
diirsARN :: Lens' DescribeInputResponse (Maybe Text)
diirsARN = lens _diirsARN (\ s a -> s{_diirsARN = a})
diirsSources :: Lens' DescribeInputResponse [InputSource]
diirsSources = lens _diirsSources (\ s a -> s{_diirsSources = a}) . _Default . _Coerce
diirsDestinations :: Lens' DescribeInputResponse [InputDestination]
diirsDestinations = lens _diirsDestinations (\ s a -> s{_diirsDestinations = a}) . _Default . _Coerce
diirsName :: Lens' DescribeInputResponse (Maybe Text)
diirsName = lens _diirsName (\ s a -> s{_diirsName = a})
diirsAttachedChannels :: Lens' DescribeInputResponse [Text]
diirsAttachedChannels = lens _diirsAttachedChannels (\ s a -> s{_diirsAttachedChannels = a}) . _Default . _Coerce
diirsId :: Lens' DescribeInputResponse (Maybe Text)
diirsId = lens _diirsId (\ s a -> s{_diirsId = a})
diirsType :: Lens' DescribeInputResponse (Maybe InputType)
diirsType = lens _diirsType (\ s a -> s{_diirsType = a})
diirsResponseStatus :: Lens' DescribeInputResponse Int
diirsResponseStatus = lens _diirsResponseStatus (\ s a -> s{_diirsResponseStatus = a})
instance NFData DescribeInputResponse where