{-# 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.StepFunctions.DescribeActivity
(
describeActivity
, DescribeActivity
, dActivityARN
, describeActivityResponse
, DescribeActivityResponse
, desrsResponseStatus
, desrsActivityARN
, desrsName
, desrsCreationDate
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.StepFunctions.Types
import Network.AWS.StepFunctions.Types.Product
newtype DescribeActivity = DescribeActivity'
{ _dActivityARN :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeActivity
:: Text
-> DescribeActivity
describeActivity pActivityARN_ =
DescribeActivity' {_dActivityARN = pActivityARN_}
dActivityARN :: Lens' DescribeActivity Text
dActivityARN = lens _dActivityARN (\ s a -> s{_dActivityARN = a})
instance AWSRequest DescribeActivity where
type Rs DescribeActivity = DescribeActivityResponse
request = postJSON stepFunctions
response
= receiveJSON
(\ s h x ->
DescribeActivityResponse' <$>
(pure (fromEnum s)) <*> (x .:> "activityArn") <*>
(x .:> "name")
<*> (x .:> "creationDate"))
instance Hashable DescribeActivity where
instance NFData DescribeActivity where
instance ToHeaders DescribeActivity where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSStepFunctions.DescribeActivity" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.0" :: ByteString)])
instance ToJSON DescribeActivity where
toJSON DescribeActivity'{..}
= object
(catMaybes [Just ("activityArn" .= _dActivityARN)])
instance ToPath DescribeActivity where
toPath = const "/"
instance ToQuery DescribeActivity where
toQuery = const mempty
data DescribeActivityResponse = DescribeActivityResponse'
{ _desrsResponseStatus :: !Int
, _desrsActivityARN :: !Text
, _desrsName :: !Text
, _desrsCreationDate :: !POSIX
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeActivityResponse
:: Int
-> Text
-> Text
-> UTCTime
-> DescribeActivityResponse
describeActivityResponse pResponseStatus_ pActivityARN_ pName_ pCreationDate_ =
DescribeActivityResponse'
{ _desrsResponseStatus = pResponseStatus_
, _desrsActivityARN = pActivityARN_
, _desrsName = pName_
, _desrsCreationDate = _Time # pCreationDate_
}
desrsResponseStatus :: Lens' DescribeActivityResponse Int
desrsResponseStatus = lens _desrsResponseStatus (\ s a -> s{_desrsResponseStatus = a})
desrsActivityARN :: Lens' DescribeActivityResponse Text
desrsActivityARN = lens _desrsActivityARN (\ s a -> s{_desrsActivityARN = a})
desrsName :: Lens' DescribeActivityResponse Text
desrsName = lens _desrsName (\ s a -> s{_desrsName = a})
desrsCreationDate :: Lens' DescribeActivityResponse UTCTime
desrsCreationDate = lens _desrsCreationDate (\ s a -> s{_desrsCreationDate = a}) . _Time
instance NFData DescribeActivityResponse where