{-# 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.UpdateCACertificate
(
UpdateCACertificate (..),
newUpdateCACertificate,
updateCACertificate_newAutoRegistrationStatus,
updateCACertificate_newStatus,
updateCACertificate_registrationConfig,
updateCACertificate_removeAutoRegistration,
updateCACertificate_certificateId,
UpdateCACertificateResponse (..),
newUpdateCACertificateResponse,
)
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 UpdateCACertificate = UpdateCACertificate'
{
UpdateCACertificate -> Maybe AutoRegistrationStatus
newAutoRegistrationStatus' :: Prelude.Maybe AutoRegistrationStatus,
UpdateCACertificate -> Maybe CACertificateStatus
newStatus' :: Prelude.Maybe CACertificateStatus,
UpdateCACertificate -> Maybe RegistrationConfig
registrationConfig :: Prelude.Maybe RegistrationConfig,
UpdateCACertificate -> Maybe Bool
removeAutoRegistration :: Prelude.Maybe Prelude.Bool,
UpdateCACertificate -> Text
certificateId :: Prelude.Text
}
deriving (UpdateCACertificate -> UpdateCACertificate -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateCACertificate -> UpdateCACertificate -> Bool
$c/= :: UpdateCACertificate -> UpdateCACertificate -> Bool
== :: UpdateCACertificate -> UpdateCACertificate -> Bool
$c== :: UpdateCACertificate -> UpdateCACertificate -> Bool
Prelude.Eq, ReadPrec [UpdateCACertificate]
ReadPrec UpdateCACertificate
Int -> ReadS UpdateCACertificate
ReadS [UpdateCACertificate]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateCACertificate]
$creadListPrec :: ReadPrec [UpdateCACertificate]
readPrec :: ReadPrec UpdateCACertificate
$creadPrec :: ReadPrec UpdateCACertificate
readList :: ReadS [UpdateCACertificate]
$creadList :: ReadS [UpdateCACertificate]
readsPrec :: Int -> ReadS UpdateCACertificate
$creadsPrec :: Int -> ReadS UpdateCACertificate
Prelude.Read, Int -> UpdateCACertificate -> ShowS
[UpdateCACertificate] -> ShowS
UpdateCACertificate -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateCACertificate] -> ShowS
$cshowList :: [UpdateCACertificate] -> ShowS
show :: UpdateCACertificate -> String
$cshow :: UpdateCACertificate -> String
showsPrec :: Int -> UpdateCACertificate -> ShowS
$cshowsPrec :: Int -> UpdateCACertificate -> ShowS
Prelude.Show, forall x. Rep UpdateCACertificate x -> UpdateCACertificate
forall x. UpdateCACertificate -> Rep UpdateCACertificate x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdateCACertificate x -> UpdateCACertificate
$cfrom :: forall x. UpdateCACertificate -> Rep UpdateCACertificate x
Prelude.Generic)
newUpdateCACertificate ::
Prelude.Text ->
UpdateCACertificate
newUpdateCACertificate :: Text -> UpdateCACertificate
newUpdateCACertificate Text
pCertificateId_ =
UpdateCACertificate'
{ $sel:newAutoRegistrationStatus':UpdateCACertificate' :: Maybe AutoRegistrationStatus
newAutoRegistrationStatus' =
forall a. Maybe a
Prelude.Nothing,
$sel:newStatus':UpdateCACertificate' :: Maybe CACertificateStatus
newStatus' = forall a. Maybe a
Prelude.Nothing,
$sel:registrationConfig:UpdateCACertificate' :: Maybe RegistrationConfig
registrationConfig = forall a. Maybe a
Prelude.Nothing,
$sel:removeAutoRegistration:UpdateCACertificate' :: Maybe Bool
removeAutoRegistration = forall a. Maybe a
Prelude.Nothing,
$sel:certificateId:UpdateCACertificate' :: Text
certificateId = Text
pCertificateId_
}
updateCACertificate_newAutoRegistrationStatus :: Lens.Lens' UpdateCACertificate (Prelude.Maybe AutoRegistrationStatus)
updateCACertificate_newAutoRegistrationStatus :: Lens' UpdateCACertificate (Maybe AutoRegistrationStatus)
updateCACertificate_newAutoRegistrationStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateCACertificate' {Maybe AutoRegistrationStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
newAutoRegistrationStatus'} -> Maybe AutoRegistrationStatus
newAutoRegistrationStatus') (\s :: UpdateCACertificate
s@UpdateCACertificate' {} Maybe AutoRegistrationStatus
a -> UpdateCACertificate
s {$sel:newAutoRegistrationStatus':UpdateCACertificate' :: Maybe AutoRegistrationStatus
newAutoRegistrationStatus' = Maybe AutoRegistrationStatus
a} :: UpdateCACertificate)
updateCACertificate_newStatus :: Lens.Lens' UpdateCACertificate (Prelude.Maybe CACertificateStatus)
updateCACertificate_newStatus :: Lens' UpdateCACertificate (Maybe CACertificateStatus)
updateCACertificate_newStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateCACertificate' {Maybe CACertificateStatus
newStatus' :: Maybe CACertificateStatus
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
newStatus'} -> Maybe CACertificateStatus
newStatus') (\s :: UpdateCACertificate
s@UpdateCACertificate' {} Maybe CACertificateStatus
a -> UpdateCACertificate
s {$sel:newStatus':UpdateCACertificate' :: Maybe CACertificateStatus
newStatus' = Maybe CACertificateStatus
a} :: UpdateCACertificate)
updateCACertificate_registrationConfig :: Lens.Lens' UpdateCACertificate (Prelude.Maybe RegistrationConfig)
updateCACertificate_registrationConfig :: Lens' UpdateCACertificate (Maybe RegistrationConfig)
updateCACertificate_registrationConfig = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateCACertificate' {Maybe RegistrationConfig
registrationConfig :: Maybe RegistrationConfig
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
registrationConfig} -> Maybe RegistrationConfig
registrationConfig) (\s :: UpdateCACertificate
s@UpdateCACertificate' {} Maybe RegistrationConfig
a -> UpdateCACertificate
s {$sel:registrationConfig:UpdateCACertificate' :: Maybe RegistrationConfig
registrationConfig = Maybe RegistrationConfig
a} :: UpdateCACertificate)
updateCACertificate_removeAutoRegistration :: Lens.Lens' UpdateCACertificate (Prelude.Maybe Prelude.Bool)
updateCACertificate_removeAutoRegistration :: Lens' UpdateCACertificate (Maybe Bool)
updateCACertificate_removeAutoRegistration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateCACertificate' {Maybe Bool
removeAutoRegistration :: Maybe Bool
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
removeAutoRegistration} -> Maybe Bool
removeAutoRegistration) (\s :: UpdateCACertificate
s@UpdateCACertificate' {} Maybe Bool
a -> UpdateCACertificate
s {$sel:removeAutoRegistration:UpdateCACertificate' :: Maybe Bool
removeAutoRegistration = Maybe Bool
a} :: UpdateCACertificate)
updateCACertificate_certificateId :: Lens.Lens' UpdateCACertificate Prelude.Text
updateCACertificate_certificateId :: Lens' UpdateCACertificate Text
updateCACertificate_certificateId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateCACertificate' {Text
certificateId :: Text
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
certificateId} -> Text
certificateId) (\s :: UpdateCACertificate
s@UpdateCACertificate' {} Text
a -> UpdateCACertificate
s {$sel:certificateId:UpdateCACertificate' :: Text
certificateId = Text
a} :: UpdateCACertificate)
instance Core.AWSRequest UpdateCACertificate where
type
AWSResponse UpdateCACertificate =
UpdateCACertificateResponse
request :: (Service -> Service)
-> UpdateCACertificate -> Request UpdateCACertificate
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.putJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy UpdateCACertificate
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdateCACertificate)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull UpdateCACertificateResponse
UpdateCACertificateResponse'
instance Prelude.Hashable UpdateCACertificate where
hashWithSalt :: Int -> UpdateCACertificate -> Int
hashWithSalt Int
_salt UpdateCACertificate' {Maybe Bool
Maybe AutoRegistrationStatus
Maybe CACertificateStatus
Maybe RegistrationConfig
Text
certificateId :: Text
removeAutoRegistration :: Maybe Bool
registrationConfig :: Maybe RegistrationConfig
newStatus' :: Maybe CACertificateStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AutoRegistrationStatus
newAutoRegistrationStatus'
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CACertificateStatus
newStatus'
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RegistrationConfig
registrationConfig
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
removeAutoRegistration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
certificateId
instance Prelude.NFData UpdateCACertificate where
rnf :: UpdateCACertificate -> ()
rnf UpdateCACertificate' {Maybe Bool
Maybe AutoRegistrationStatus
Maybe CACertificateStatus
Maybe RegistrationConfig
Text
certificateId :: Text
removeAutoRegistration :: Maybe Bool
registrationConfig :: Maybe RegistrationConfig
newStatus' :: Maybe CACertificateStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe AutoRegistrationStatus
newAutoRegistrationStatus'
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CACertificateStatus
newStatus'
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RegistrationConfig
registrationConfig
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
removeAutoRegistration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
certificateId
instance Data.ToHeaders UpdateCACertificate where
toHeaders :: UpdateCACertificate -> [Header]
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON UpdateCACertificate where
toJSON :: UpdateCACertificate -> Value
toJSON UpdateCACertificate' {Maybe Bool
Maybe AutoRegistrationStatus
Maybe CACertificateStatus
Maybe RegistrationConfig
Text
certificateId :: Text
removeAutoRegistration :: Maybe Bool
registrationConfig :: Maybe RegistrationConfig
newStatus' :: Maybe CACertificateStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"registrationConfig" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RegistrationConfig
registrationConfig,
(Key
"removeAutoRegistration" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Bool
removeAutoRegistration
]
)
instance Data.ToPath UpdateCACertificate where
toPath :: UpdateCACertificate -> ByteString
toPath UpdateCACertificate' {Maybe Bool
Maybe AutoRegistrationStatus
Maybe CACertificateStatus
Maybe RegistrationConfig
Text
certificateId :: Text
removeAutoRegistration :: Maybe Bool
registrationConfig :: Maybe RegistrationConfig
newStatus' :: Maybe CACertificateStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/cacertificate/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
certificateId]
instance Data.ToQuery UpdateCACertificate where
toQuery :: UpdateCACertificate -> QueryString
toQuery UpdateCACertificate' {Maybe Bool
Maybe AutoRegistrationStatus
Maybe CACertificateStatus
Maybe RegistrationConfig
Text
certificateId :: Text
removeAutoRegistration :: Maybe Bool
registrationConfig :: Maybe RegistrationConfig
newStatus' :: Maybe CACertificateStatus
newAutoRegistrationStatus' :: Maybe AutoRegistrationStatus
$sel:certificateId:UpdateCACertificate' :: UpdateCACertificate -> Text
$sel:removeAutoRegistration:UpdateCACertificate' :: UpdateCACertificate -> Maybe Bool
$sel:registrationConfig:UpdateCACertificate' :: UpdateCACertificate -> Maybe RegistrationConfig
$sel:newStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe CACertificateStatus
$sel:newAutoRegistrationStatus':UpdateCACertificate' :: UpdateCACertificate -> Maybe AutoRegistrationStatus
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"newAutoRegistrationStatus"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe AutoRegistrationStatus
newAutoRegistrationStatus',
ByteString
"newStatus" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe CACertificateStatus
newStatus'
]
data UpdateCACertificateResponse = UpdateCACertificateResponse'
{
}
deriving (UpdateCACertificateResponse -> UpdateCACertificateResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateCACertificateResponse -> UpdateCACertificateResponse -> Bool
$c/= :: UpdateCACertificateResponse -> UpdateCACertificateResponse -> Bool
== :: UpdateCACertificateResponse -> UpdateCACertificateResponse -> Bool
$c== :: UpdateCACertificateResponse -> UpdateCACertificateResponse -> Bool
Prelude.Eq, ReadPrec [UpdateCACertificateResponse]
ReadPrec UpdateCACertificateResponse
Int -> ReadS UpdateCACertificateResponse
ReadS [UpdateCACertificateResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateCACertificateResponse]
$creadListPrec :: ReadPrec [UpdateCACertificateResponse]
readPrec :: ReadPrec UpdateCACertificateResponse
$creadPrec :: ReadPrec UpdateCACertificateResponse
readList :: ReadS [UpdateCACertificateResponse]
$creadList :: ReadS [UpdateCACertificateResponse]
readsPrec :: Int -> ReadS UpdateCACertificateResponse
$creadsPrec :: Int -> ReadS UpdateCACertificateResponse
Prelude.Read, Int -> UpdateCACertificateResponse -> ShowS
[UpdateCACertificateResponse] -> ShowS
UpdateCACertificateResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateCACertificateResponse] -> ShowS
$cshowList :: [UpdateCACertificateResponse] -> ShowS
show :: UpdateCACertificateResponse -> String
$cshow :: UpdateCACertificateResponse -> String
showsPrec :: Int -> UpdateCACertificateResponse -> ShowS
$cshowsPrec :: Int -> UpdateCACertificateResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateCACertificateResponse x -> UpdateCACertificateResponse
forall x.
UpdateCACertificateResponse -> Rep UpdateCACertificateResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateCACertificateResponse x -> UpdateCACertificateResponse
$cfrom :: forall x.
UpdateCACertificateResponse -> Rep UpdateCACertificateResponse x
Prelude.Generic)
newUpdateCACertificateResponse ::
UpdateCACertificateResponse
newUpdateCACertificateResponse :: UpdateCACertificateResponse
newUpdateCACertificateResponse =
UpdateCACertificateResponse
UpdateCACertificateResponse'
instance Prelude.NFData UpdateCACertificateResponse where
rnf :: UpdateCACertificateResponse -> ()
rnf UpdateCACertificateResponse
_ = ()