module Network.AWS.Glue.CreateConnection
(
createConnection
, CreateConnection
, ccCatalogId
, ccConnectionInput
, createConnectionResponse
, CreateConnectionResponse
, crsResponseStatus
) where
import Network.AWS.Glue.Types
import Network.AWS.Glue.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data CreateConnection = CreateConnection'
{ _ccCatalogId :: !(Maybe Text)
, _ccConnectionInput :: !ConnectionInput
} deriving (Eq, Read, Show, Data, Typeable, Generic)
createConnection
:: ConnectionInput
-> CreateConnection
createConnection pConnectionInput_ =
CreateConnection'
{_ccCatalogId = Nothing, _ccConnectionInput = pConnectionInput_}
ccCatalogId :: Lens' CreateConnection (Maybe Text)
ccCatalogId = lens _ccCatalogId (\ s a -> s{_ccCatalogId = a});
ccConnectionInput :: Lens' CreateConnection ConnectionInput
ccConnectionInput = lens _ccConnectionInput (\ s a -> s{_ccConnectionInput = a});
instance AWSRequest CreateConnection where
type Rs CreateConnection = CreateConnectionResponse
request = postJSON glue
response
= receiveEmpty
(\ s h x ->
CreateConnectionResponse' <$> (pure (fromEnum s)))
instance Hashable CreateConnection where
instance NFData CreateConnection where
instance ToHeaders CreateConnection where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSGlue.CreateConnection" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON CreateConnection where
toJSON CreateConnection'{..}
= object
(catMaybes
[("CatalogId" .=) <$> _ccCatalogId,
Just ("ConnectionInput" .= _ccConnectionInput)])
instance ToPath CreateConnection where
toPath = const "/"
instance ToQuery CreateConnection where
toQuery = const mempty
newtype CreateConnectionResponse = CreateConnectionResponse'
{ _crsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
createConnectionResponse
:: Int
-> CreateConnectionResponse
createConnectionResponse pResponseStatus_ =
CreateConnectionResponse' {_crsResponseStatus = pResponseStatus_}
crsResponseStatus :: Lens' CreateConnectionResponse Int
crsResponseStatus = lens _crsResponseStatus (\ s a -> s{_crsResponseStatus = a});
instance NFData CreateConnectionResponse where