module Network.AWS.IoT.CreateCertificateFromCsr
(
createCertificateFromCsr
, CreateCertificateFromCsr
, ccfcSetAsActive
, ccfcCertificateSigningRequest
, createCertificateFromCsrResponse
, CreateCertificateFromCsrResponse
, ccfcrsCertificatePem
, ccfcrsCertificateARN
, ccfcrsCertificateId
, ccfcrsResponseStatus
) where
import Network.AWS.IoT.Types
import Network.AWS.IoT.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data CreateCertificateFromCsr = CreateCertificateFromCsr'
{ _ccfcSetAsActive :: !(Maybe Bool)
, _ccfcCertificateSigningRequest :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
createCertificateFromCsr
:: Text
-> CreateCertificateFromCsr
createCertificateFromCsr pCertificateSigningRequest_ =
CreateCertificateFromCsr'
{ _ccfcSetAsActive = Nothing
, _ccfcCertificateSigningRequest = pCertificateSigningRequest_
}
ccfcSetAsActive :: Lens' CreateCertificateFromCsr (Maybe Bool)
ccfcSetAsActive = lens _ccfcSetAsActive (\ s a -> s{_ccfcSetAsActive = a});
ccfcCertificateSigningRequest :: Lens' CreateCertificateFromCsr Text
ccfcCertificateSigningRequest = lens _ccfcCertificateSigningRequest (\ s a -> s{_ccfcCertificateSigningRequest = a});
instance AWSRequest CreateCertificateFromCsr where
type Rs CreateCertificateFromCsr =
CreateCertificateFromCsrResponse
request = postJSON ioT
response
= receiveJSON
(\ s h x ->
CreateCertificateFromCsrResponse' <$>
(x .?> "certificatePem") <*> (x .?> "certificateArn")
<*> (x .?> "certificateId")
<*> (pure (fromEnum s)))
instance ToHeaders CreateCertificateFromCsr where
toHeaders = const mempty
instance ToJSON CreateCertificateFromCsr where
toJSON CreateCertificateFromCsr'{..}
= object
(catMaybes
[Just
("certificateSigningRequest" .=
_ccfcCertificateSigningRequest)])
instance ToPath CreateCertificateFromCsr where
toPath = const "/certificates"
instance ToQuery CreateCertificateFromCsr where
toQuery CreateCertificateFromCsr'{..}
= mconcat ["setAsActive" =: _ccfcSetAsActive]
data CreateCertificateFromCsrResponse = CreateCertificateFromCsrResponse'
{ _ccfcrsCertificatePem :: !(Maybe Text)
, _ccfcrsCertificateARN :: !(Maybe Text)
, _ccfcrsCertificateId :: !(Maybe Text)
, _ccfcrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
createCertificateFromCsrResponse
:: Int
-> CreateCertificateFromCsrResponse
createCertificateFromCsrResponse pResponseStatus_ =
CreateCertificateFromCsrResponse'
{ _ccfcrsCertificatePem = Nothing
, _ccfcrsCertificateARN = Nothing
, _ccfcrsCertificateId = Nothing
, _ccfcrsResponseStatus = pResponseStatus_
}
ccfcrsCertificatePem :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
ccfcrsCertificatePem = lens _ccfcrsCertificatePem (\ s a -> s{_ccfcrsCertificatePem = a});
ccfcrsCertificateARN :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
ccfcrsCertificateARN = lens _ccfcrsCertificateARN (\ s a -> s{_ccfcrsCertificateARN = a});
ccfcrsCertificateId :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
ccfcrsCertificateId = lens _ccfcrsCertificateId (\ s a -> s{_ccfcrsCertificateId = a});
ccfcrsResponseStatus :: Lens' CreateCertificateFromCsrResponse Int
ccfcrsResponseStatus = lens _ccfcrsResponseStatus (\ s a -> s{_ccfcrsResponseStatus = a});