{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.IoT.CreateCertificateFromCsr
(
CreateCertificateFromCsr (..),
newCreateCertificateFromCsr,
createCertificateFromCsr_setAsActive,
createCertificateFromCsr_certificateSigningRequest,
CreateCertificateFromCsrResponse (..),
newCreateCertificateFromCsrResponse,
createCertificateFromCsrResponse_certificateArn,
createCertificateFromCsrResponse_certificateId,
createCertificateFromCsrResponse_certificatePem,
createCertificateFromCsrResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IoT.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data CreateCertificateFromCsr = CreateCertificateFromCsr'
{
CreateCertificateFromCsr -> Maybe Bool
setAsActive :: Prelude.Maybe Prelude.Bool,
CreateCertificateFromCsr -> Text
certificateSigningRequest :: Prelude.Text
}
deriving (CreateCertificateFromCsr -> CreateCertificateFromCsr -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateCertificateFromCsr -> CreateCertificateFromCsr -> Bool
$c/= :: CreateCertificateFromCsr -> CreateCertificateFromCsr -> Bool
== :: CreateCertificateFromCsr -> CreateCertificateFromCsr -> Bool
$c== :: CreateCertificateFromCsr -> CreateCertificateFromCsr -> Bool
Prelude.Eq, ReadPrec [CreateCertificateFromCsr]
ReadPrec CreateCertificateFromCsr
Int -> ReadS CreateCertificateFromCsr
ReadS [CreateCertificateFromCsr]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateCertificateFromCsr]
$creadListPrec :: ReadPrec [CreateCertificateFromCsr]
readPrec :: ReadPrec CreateCertificateFromCsr
$creadPrec :: ReadPrec CreateCertificateFromCsr
readList :: ReadS [CreateCertificateFromCsr]
$creadList :: ReadS [CreateCertificateFromCsr]
readsPrec :: Int -> ReadS CreateCertificateFromCsr
$creadsPrec :: Int -> ReadS CreateCertificateFromCsr
Prelude.Read, Int -> CreateCertificateFromCsr -> ShowS
[CreateCertificateFromCsr] -> ShowS
CreateCertificateFromCsr -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateCertificateFromCsr] -> ShowS
$cshowList :: [CreateCertificateFromCsr] -> ShowS
show :: CreateCertificateFromCsr -> String
$cshow :: CreateCertificateFromCsr -> String
showsPrec :: Int -> CreateCertificateFromCsr -> ShowS
$cshowsPrec :: Int -> CreateCertificateFromCsr -> ShowS
Prelude.Show, forall x.
Rep CreateCertificateFromCsr x -> CreateCertificateFromCsr
forall x.
CreateCertificateFromCsr -> Rep CreateCertificateFromCsr x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateCertificateFromCsr x -> CreateCertificateFromCsr
$cfrom :: forall x.
CreateCertificateFromCsr -> Rep CreateCertificateFromCsr x
Prelude.Generic)
newCreateCertificateFromCsr ::
Prelude.Text ->
CreateCertificateFromCsr
newCreateCertificateFromCsr :: Text -> CreateCertificateFromCsr
newCreateCertificateFromCsr
Text
pCertificateSigningRequest_ =
CreateCertificateFromCsr'
{ $sel:setAsActive:CreateCertificateFromCsr' :: Maybe Bool
setAsActive =
forall a. Maybe a
Prelude.Nothing,
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: Text
certificateSigningRequest =
Text
pCertificateSigningRequest_
}
createCertificateFromCsr_setAsActive :: Lens.Lens' CreateCertificateFromCsr (Prelude.Maybe Prelude.Bool)
createCertificateFromCsr_setAsActive :: Lens' CreateCertificateFromCsr (Maybe Bool)
createCertificateFromCsr_setAsActive = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsr' {Maybe Bool
setAsActive :: Maybe Bool
$sel:setAsActive:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Maybe Bool
setAsActive} -> Maybe Bool
setAsActive) (\s :: CreateCertificateFromCsr
s@CreateCertificateFromCsr' {} Maybe Bool
a -> CreateCertificateFromCsr
s {$sel:setAsActive:CreateCertificateFromCsr' :: Maybe Bool
setAsActive = Maybe Bool
a} :: CreateCertificateFromCsr)
createCertificateFromCsr_certificateSigningRequest :: Lens.Lens' CreateCertificateFromCsr Prelude.Text
createCertificateFromCsr_certificateSigningRequest :: Lens' CreateCertificateFromCsr Text
createCertificateFromCsr_certificateSigningRequest = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsr' {Text
certificateSigningRequest :: Text
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Text
certificateSigningRequest} -> Text
certificateSigningRequest) (\s :: CreateCertificateFromCsr
s@CreateCertificateFromCsr' {} Text
a -> CreateCertificateFromCsr
s {$sel:certificateSigningRequest:CreateCertificateFromCsr' :: Text
certificateSigningRequest = Text
a} :: CreateCertificateFromCsr)
instance Core.AWSRequest CreateCertificateFromCsr where
type
AWSResponse CreateCertificateFromCsr =
CreateCertificateFromCsrResponse
request :: (Service -> Service)
-> CreateCertificateFromCsr -> Request CreateCertificateFromCsr
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy CreateCertificateFromCsr
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse CreateCertificateFromCsr)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe Text
-> Maybe Text
-> Maybe Text
-> Int
-> CreateCertificateFromCsrResponse
CreateCertificateFromCsrResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"certificateArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"certificateId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"certificatePem")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable CreateCertificateFromCsr where
hashWithSalt :: Int -> CreateCertificateFromCsr -> Int
hashWithSalt Int
_salt CreateCertificateFromCsr' {Maybe Bool
Text
certificateSigningRequest :: Text
setAsActive :: Maybe Bool
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Text
$sel:setAsActive:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
setAsActive
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
certificateSigningRequest
instance Prelude.NFData CreateCertificateFromCsr where
rnf :: CreateCertificateFromCsr -> ()
rnf CreateCertificateFromCsr' {Maybe Bool
Text
certificateSigningRequest :: Text
setAsActive :: Maybe Bool
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Text
$sel:setAsActive:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
setAsActive
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
certificateSigningRequest
instance Data.ToHeaders CreateCertificateFromCsr where
toHeaders :: CreateCertificateFromCsr -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON CreateCertificateFromCsr where
toJSON :: CreateCertificateFromCsr -> Value
toJSON CreateCertificateFromCsr' {Maybe Bool
Text
certificateSigningRequest :: Text
setAsActive :: Maybe Bool
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Text
$sel:setAsActive:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Maybe Bool
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
( Key
"certificateSigningRequest"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
certificateSigningRequest
)
]
)
instance Data.ToPath CreateCertificateFromCsr where
toPath :: CreateCertificateFromCsr -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/certificates"
instance Data.ToQuery CreateCertificateFromCsr where
toQuery :: CreateCertificateFromCsr -> QueryString
toQuery CreateCertificateFromCsr' {Maybe Bool
Text
certificateSigningRequest :: Text
setAsActive :: Maybe Bool
$sel:certificateSigningRequest:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Text
$sel:setAsActive:CreateCertificateFromCsr' :: CreateCertificateFromCsr -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"setAsActive" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
setAsActive]
data CreateCertificateFromCsrResponse = CreateCertificateFromCsrResponse'
{
CreateCertificateFromCsrResponse -> Maybe Text
certificateArn :: Prelude.Maybe Prelude.Text,
CreateCertificateFromCsrResponse -> Maybe Text
certificateId :: Prelude.Maybe Prelude.Text,
CreateCertificateFromCsrResponse -> Maybe Text
certificatePem :: Prelude.Maybe Prelude.Text,
CreateCertificateFromCsrResponse -> Int
httpStatus :: Prelude.Int
}
deriving (CreateCertificateFromCsrResponse
-> CreateCertificateFromCsrResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateCertificateFromCsrResponse
-> CreateCertificateFromCsrResponse -> Bool
$c/= :: CreateCertificateFromCsrResponse
-> CreateCertificateFromCsrResponse -> Bool
== :: CreateCertificateFromCsrResponse
-> CreateCertificateFromCsrResponse -> Bool
$c== :: CreateCertificateFromCsrResponse
-> CreateCertificateFromCsrResponse -> Bool
Prelude.Eq, ReadPrec [CreateCertificateFromCsrResponse]
ReadPrec CreateCertificateFromCsrResponse
Int -> ReadS CreateCertificateFromCsrResponse
ReadS [CreateCertificateFromCsrResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateCertificateFromCsrResponse]
$creadListPrec :: ReadPrec [CreateCertificateFromCsrResponse]
readPrec :: ReadPrec CreateCertificateFromCsrResponse
$creadPrec :: ReadPrec CreateCertificateFromCsrResponse
readList :: ReadS [CreateCertificateFromCsrResponse]
$creadList :: ReadS [CreateCertificateFromCsrResponse]
readsPrec :: Int -> ReadS CreateCertificateFromCsrResponse
$creadsPrec :: Int -> ReadS CreateCertificateFromCsrResponse
Prelude.Read, Int -> CreateCertificateFromCsrResponse -> ShowS
[CreateCertificateFromCsrResponse] -> ShowS
CreateCertificateFromCsrResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateCertificateFromCsrResponse] -> ShowS
$cshowList :: [CreateCertificateFromCsrResponse] -> ShowS
show :: CreateCertificateFromCsrResponse -> String
$cshow :: CreateCertificateFromCsrResponse -> String
showsPrec :: Int -> CreateCertificateFromCsrResponse -> ShowS
$cshowsPrec :: Int -> CreateCertificateFromCsrResponse -> ShowS
Prelude.Show, forall x.
Rep CreateCertificateFromCsrResponse x
-> CreateCertificateFromCsrResponse
forall x.
CreateCertificateFromCsrResponse
-> Rep CreateCertificateFromCsrResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateCertificateFromCsrResponse x
-> CreateCertificateFromCsrResponse
$cfrom :: forall x.
CreateCertificateFromCsrResponse
-> Rep CreateCertificateFromCsrResponse x
Prelude.Generic)
newCreateCertificateFromCsrResponse ::
Prelude.Int ->
CreateCertificateFromCsrResponse
newCreateCertificateFromCsrResponse :: Int -> CreateCertificateFromCsrResponse
newCreateCertificateFromCsrResponse Int
pHttpStatus_ =
CreateCertificateFromCsrResponse'
{ $sel:certificateArn:CreateCertificateFromCsrResponse' :: Maybe Text
certificateArn =
forall a. Maybe a
Prelude.Nothing,
$sel:certificateId:CreateCertificateFromCsrResponse' :: Maybe Text
certificateId = forall a. Maybe a
Prelude.Nothing,
$sel:certificatePem:CreateCertificateFromCsrResponse' :: Maybe Text
certificatePem = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:CreateCertificateFromCsrResponse' :: Int
httpStatus = Int
pHttpStatus_
}
createCertificateFromCsrResponse_certificateArn :: Lens.Lens' CreateCertificateFromCsrResponse (Prelude.Maybe Prelude.Text)
createCertificateFromCsrResponse_certificateArn :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
createCertificateFromCsrResponse_certificateArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsrResponse' {Maybe Text
certificateArn :: Maybe Text
$sel:certificateArn:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
certificateArn} -> Maybe Text
certificateArn) (\s :: CreateCertificateFromCsrResponse
s@CreateCertificateFromCsrResponse' {} Maybe Text
a -> CreateCertificateFromCsrResponse
s {$sel:certificateArn:CreateCertificateFromCsrResponse' :: Maybe Text
certificateArn = Maybe Text
a} :: CreateCertificateFromCsrResponse)
createCertificateFromCsrResponse_certificateId :: Lens.Lens' CreateCertificateFromCsrResponse (Prelude.Maybe Prelude.Text)
createCertificateFromCsrResponse_certificateId :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
createCertificateFromCsrResponse_certificateId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsrResponse' {Maybe Text
certificateId :: Maybe Text
$sel:certificateId:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
certificateId} -> Maybe Text
certificateId) (\s :: CreateCertificateFromCsrResponse
s@CreateCertificateFromCsrResponse' {} Maybe Text
a -> CreateCertificateFromCsrResponse
s {$sel:certificateId:CreateCertificateFromCsrResponse' :: Maybe Text
certificateId = Maybe Text
a} :: CreateCertificateFromCsrResponse)
createCertificateFromCsrResponse_certificatePem :: Lens.Lens' CreateCertificateFromCsrResponse (Prelude.Maybe Prelude.Text)
createCertificateFromCsrResponse_certificatePem :: Lens' CreateCertificateFromCsrResponse (Maybe Text)
createCertificateFromCsrResponse_certificatePem = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsrResponse' {Maybe Text
certificatePem :: Maybe Text
$sel:certificatePem:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
certificatePem} -> Maybe Text
certificatePem) (\s :: CreateCertificateFromCsrResponse
s@CreateCertificateFromCsrResponse' {} Maybe Text
a -> CreateCertificateFromCsrResponse
s {$sel:certificatePem:CreateCertificateFromCsrResponse' :: Maybe Text
certificatePem = Maybe Text
a} :: CreateCertificateFromCsrResponse)
createCertificateFromCsrResponse_httpStatus :: Lens.Lens' CreateCertificateFromCsrResponse Prelude.Int
createCertificateFromCsrResponse_httpStatus :: Lens' CreateCertificateFromCsrResponse Int
createCertificateFromCsrResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateCertificateFromCsrResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateCertificateFromCsrResponse
s@CreateCertificateFromCsrResponse' {} Int
a -> CreateCertificateFromCsrResponse
s {$sel:httpStatus:CreateCertificateFromCsrResponse' :: Int
httpStatus = Int
a} :: CreateCertificateFromCsrResponse)
instance
Prelude.NFData
CreateCertificateFromCsrResponse
where
rnf :: CreateCertificateFromCsrResponse -> ()
rnf CreateCertificateFromCsrResponse' {Int
Maybe Text
httpStatus :: Int
certificatePem :: Maybe Text
certificateId :: Maybe Text
certificateArn :: Maybe Text
$sel:httpStatus:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Int
$sel:certificatePem:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
$sel:certificateId:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
$sel:certificateArn:CreateCertificateFromCsrResponse' :: CreateCertificateFromCsrResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
certificateArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
certificateId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
certificatePem
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus