module Network.AWS.MigrationHub.DescribeMigrationTask
(
describeMigrationTask
, DescribeMigrationTask
, dmtProgressUpdateStream
, dmtMigrationTaskName
, describeMigrationTaskResponse
, DescribeMigrationTaskResponse
, dmtrsMigrationTask
, dmtrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MigrationHub.Types
import Network.AWS.MigrationHub.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeMigrationTask = DescribeMigrationTask'
{ _dmtProgressUpdateStream :: !Text
, _dmtMigrationTaskName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeMigrationTask
:: Text
-> Text
-> DescribeMigrationTask
describeMigrationTask pProgressUpdateStream_ pMigrationTaskName_ =
DescribeMigrationTask'
{ _dmtProgressUpdateStream = pProgressUpdateStream_
, _dmtMigrationTaskName = pMigrationTaskName_
}
dmtProgressUpdateStream :: Lens' DescribeMigrationTask Text
dmtProgressUpdateStream = lens _dmtProgressUpdateStream (\ s a -> s{_dmtProgressUpdateStream = a});
dmtMigrationTaskName :: Lens' DescribeMigrationTask Text
dmtMigrationTaskName = lens _dmtMigrationTaskName (\ s a -> s{_dmtMigrationTaskName = a});
instance AWSRequest DescribeMigrationTask where
type Rs DescribeMigrationTask =
DescribeMigrationTaskResponse
request = postJSON migrationHub
response
= receiveJSON
(\ s h x ->
DescribeMigrationTaskResponse' <$>
(x .?> "MigrationTask") <*> (pure (fromEnum s)))
instance Hashable DescribeMigrationTask where
instance NFData DescribeMigrationTask where
instance ToHeaders DescribeMigrationTask where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSMigrationHub.DescribeMigrationTask" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeMigrationTask where
toJSON DescribeMigrationTask'{..}
= object
(catMaybes
[Just
("ProgressUpdateStream" .= _dmtProgressUpdateStream),
Just ("MigrationTaskName" .= _dmtMigrationTaskName)])
instance ToPath DescribeMigrationTask where
toPath = const "/"
instance ToQuery DescribeMigrationTask where
toQuery = const mempty
data DescribeMigrationTaskResponse = DescribeMigrationTaskResponse'
{ _dmtrsMigrationTask :: !(Maybe MigrationTask)
, _dmtrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeMigrationTaskResponse
:: Int
-> DescribeMigrationTaskResponse
describeMigrationTaskResponse pResponseStatus_ =
DescribeMigrationTaskResponse'
{_dmtrsMigrationTask = Nothing, _dmtrsResponseStatus = pResponseStatus_}
dmtrsMigrationTask :: Lens' DescribeMigrationTaskResponse (Maybe MigrationTask)
dmtrsMigrationTask = lens _dmtrsMigrationTask (\ s a -> s{_dmtrsMigrationTask = a});
dmtrsResponseStatus :: Lens' DescribeMigrationTaskResponse Int
dmtrsResponseStatus = lens _dmtrsResponseStatus (\ s a -> s{_dmtrsResponseStatus = a});
instance NFData DescribeMigrationTaskResponse where