module Network.AWS.ECS.DescribeTaskDefinition
(
DescribeTaskDefinition
, describeTaskDefinition
, dtdTaskDefinition
, DescribeTaskDefinitionResponse
, describeTaskDefinitionResponse
, dtdr1TaskDefinition
) where
import Network.AWS.Data (Object)
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.ECS.Types
import qualified GHC.Exts
newtype DescribeTaskDefinition = DescribeTaskDefinition
{ _dtdTaskDefinition :: Text
} deriving (Eq, Ord, Read, Show, Monoid, IsString)
describeTaskDefinition :: Text
-> DescribeTaskDefinition
describeTaskDefinition p1 = DescribeTaskDefinition
{ _dtdTaskDefinition = p1
}
dtdTaskDefinition :: Lens' DescribeTaskDefinition Text
dtdTaskDefinition =
lens _dtdTaskDefinition (\s a -> s { _dtdTaskDefinition = a })
newtype DescribeTaskDefinitionResponse = DescribeTaskDefinitionResponse
{ _dtdr1TaskDefinition :: Maybe TaskDefinition
} deriving (Eq, Read, Show)
describeTaskDefinitionResponse :: DescribeTaskDefinitionResponse
describeTaskDefinitionResponse = DescribeTaskDefinitionResponse
{ _dtdr1TaskDefinition = Nothing
}
dtdr1TaskDefinition :: Lens' DescribeTaskDefinitionResponse (Maybe TaskDefinition)
dtdr1TaskDefinition =
lens _dtdr1TaskDefinition (\s a -> s { _dtdr1TaskDefinition = a })
instance ToPath DescribeTaskDefinition where
toPath = const "/"
instance ToQuery DescribeTaskDefinition where
toQuery = const mempty
instance ToHeaders DescribeTaskDefinition
instance ToJSON DescribeTaskDefinition where
toJSON DescribeTaskDefinition{..} = object
[ "taskDefinition" .= _dtdTaskDefinition
]
instance AWSRequest DescribeTaskDefinition where
type Sv DescribeTaskDefinition = ECS
type Rs DescribeTaskDefinition = DescribeTaskDefinitionResponse
request = post "DescribeTaskDefinition"
response = jsonResponse
instance FromJSON DescribeTaskDefinitionResponse where
parseJSON = withObject "DescribeTaskDefinitionResponse" $ \o -> DescribeTaskDefinitionResponse
<$> o .:? "taskDefinition"