module Network.AWS.MigrationHub.AssociateDiscoveredResource
(
associateDiscoveredResource
, AssociateDiscoveredResource
, adrDryRun
, adrProgressUpdateStream
, adrMigrationTaskName
, adrDiscoveredResource
, associateDiscoveredResourceResponse
, AssociateDiscoveredResourceResponse
, adrrsResponseStatus
) 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 AssociateDiscoveredResource = AssociateDiscoveredResource'
{ _adrDryRun :: !(Maybe Bool)
, _adrProgressUpdateStream :: !Text
, _adrMigrationTaskName :: !Text
, _adrDiscoveredResource :: !DiscoveredResource
} deriving (Eq, Read, Show, Data, Typeable, Generic)
associateDiscoveredResource
:: Text
-> Text
-> DiscoveredResource
-> AssociateDiscoveredResource
associateDiscoveredResource pProgressUpdateStream_ pMigrationTaskName_ pDiscoveredResource_ =
AssociateDiscoveredResource'
{ _adrDryRun = Nothing
, _adrProgressUpdateStream = pProgressUpdateStream_
, _adrMigrationTaskName = pMigrationTaskName_
, _adrDiscoveredResource = pDiscoveredResource_
}
adrDryRun :: Lens' AssociateDiscoveredResource (Maybe Bool)
adrDryRun = lens _adrDryRun (\ s a -> s{_adrDryRun = a});
adrProgressUpdateStream :: Lens' AssociateDiscoveredResource Text
adrProgressUpdateStream = lens _adrProgressUpdateStream (\ s a -> s{_adrProgressUpdateStream = a});
adrMigrationTaskName :: Lens' AssociateDiscoveredResource Text
adrMigrationTaskName = lens _adrMigrationTaskName (\ s a -> s{_adrMigrationTaskName = a});
adrDiscoveredResource :: Lens' AssociateDiscoveredResource DiscoveredResource
adrDiscoveredResource = lens _adrDiscoveredResource (\ s a -> s{_adrDiscoveredResource = a});
instance AWSRequest AssociateDiscoveredResource where
type Rs AssociateDiscoveredResource =
AssociateDiscoveredResourceResponse
request = postJSON migrationHub
response
= receiveEmpty
(\ s h x ->
AssociateDiscoveredResourceResponse' <$>
(pure (fromEnum s)))
instance Hashable AssociateDiscoveredResource where
instance NFData AssociateDiscoveredResource where
instance ToHeaders AssociateDiscoveredResource where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSMigrationHub.AssociateDiscoveredResource" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON AssociateDiscoveredResource where
toJSON AssociateDiscoveredResource'{..}
= object
(catMaybes
[("DryRun" .=) <$> _adrDryRun,
Just
("ProgressUpdateStream" .= _adrProgressUpdateStream),
Just ("MigrationTaskName" .= _adrMigrationTaskName),
Just
("DiscoveredResource" .= _adrDiscoveredResource)])
instance ToPath AssociateDiscoveredResource where
toPath = const "/"
instance ToQuery AssociateDiscoveredResource where
toQuery = const mempty
newtype AssociateDiscoveredResourceResponse = AssociateDiscoveredResourceResponse'
{ _adrrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
associateDiscoveredResourceResponse
:: Int
-> AssociateDiscoveredResourceResponse
associateDiscoveredResourceResponse pResponseStatus_ =
AssociateDiscoveredResourceResponse' {_adrrsResponseStatus = pResponseStatus_}
adrrsResponseStatus :: Lens' AssociateDiscoveredResourceResponse Int
adrrsResponseStatus = lens _adrrsResponseStatus (\ s a -> s{_adrrsResponseStatus = a});
instance NFData AssociateDiscoveredResourceResponse
where