{-# 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.KMS.GenerateDataKey
(
GenerateDataKey (..),
newGenerateDataKey,
generateDataKey_encryptionContext,
generateDataKey_grantTokens,
generateDataKey_keySpec,
generateDataKey_numberOfBytes,
generateDataKey_keyId,
GenerateDataKeyResponse (..),
newGenerateDataKeyResponse,
generateDataKeyResponse_httpStatus,
generateDataKeyResponse_keyId,
generateDataKeyResponse_plaintext,
generateDataKeyResponse_ciphertextBlob,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.KMS.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GenerateDataKey = GenerateDataKey'
{
GenerateDataKey -> Maybe (HashMap Text Text)
encryptionContext :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
GenerateDataKey -> Maybe [Text]
grantTokens :: Prelude.Maybe [Prelude.Text],
GenerateDataKey -> Maybe DataKeySpec
keySpec :: Prelude.Maybe DataKeySpec,
GenerateDataKey -> Maybe Natural
numberOfBytes :: Prelude.Maybe Prelude.Natural,
GenerateDataKey -> Text
keyId :: Prelude.Text
}
deriving (GenerateDataKey -> GenerateDataKey -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GenerateDataKey -> GenerateDataKey -> Bool
$c/= :: GenerateDataKey -> GenerateDataKey -> Bool
== :: GenerateDataKey -> GenerateDataKey -> Bool
$c== :: GenerateDataKey -> GenerateDataKey -> Bool
Prelude.Eq, ReadPrec [GenerateDataKey]
ReadPrec GenerateDataKey
Int -> ReadS GenerateDataKey
ReadS [GenerateDataKey]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GenerateDataKey]
$creadListPrec :: ReadPrec [GenerateDataKey]
readPrec :: ReadPrec GenerateDataKey
$creadPrec :: ReadPrec GenerateDataKey
readList :: ReadS [GenerateDataKey]
$creadList :: ReadS [GenerateDataKey]
readsPrec :: Int -> ReadS GenerateDataKey
$creadsPrec :: Int -> ReadS GenerateDataKey
Prelude.Read, Int -> GenerateDataKey -> ShowS
[GenerateDataKey] -> ShowS
GenerateDataKey -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GenerateDataKey] -> ShowS
$cshowList :: [GenerateDataKey] -> ShowS
show :: GenerateDataKey -> String
$cshow :: GenerateDataKey -> String
showsPrec :: Int -> GenerateDataKey -> ShowS
$cshowsPrec :: Int -> GenerateDataKey -> ShowS
Prelude.Show, forall x. Rep GenerateDataKey x -> GenerateDataKey
forall x. GenerateDataKey -> Rep GenerateDataKey x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GenerateDataKey x -> GenerateDataKey
$cfrom :: forall x. GenerateDataKey -> Rep GenerateDataKey x
Prelude.Generic)
newGenerateDataKey ::
Prelude.Text ->
GenerateDataKey
newGenerateDataKey :: Text -> GenerateDataKey
newGenerateDataKey Text
pKeyId_ =
GenerateDataKey'
{ $sel:encryptionContext:GenerateDataKey' :: Maybe (HashMap Text Text)
encryptionContext =
forall a. Maybe a
Prelude.Nothing,
$sel:grantTokens:GenerateDataKey' :: Maybe [Text]
grantTokens = forall a. Maybe a
Prelude.Nothing,
$sel:keySpec:GenerateDataKey' :: Maybe DataKeySpec
keySpec = forall a. Maybe a
Prelude.Nothing,
$sel:numberOfBytes:GenerateDataKey' :: Maybe Natural
numberOfBytes = forall a. Maybe a
Prelude.Nothing,
$sel:keyId:GenerateDataKey' :: Text
keyId = Text
pKeyId_
}
generateDataKey_encryptionContext :: Lens.Lens' GenerateDataKey (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
generateDataKey_encryptionContext :: Lens' GenerateDataKey (Maybe (HashMap Text Text))
generateDataKey_encryptionContext = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKey' {Maybe (HashMap Text Text)
encryptionContext :: Maybe (HashMap Text Text)
$sel:encryptionContext:GenerateDataKey' :: GenerateDataKey -> Maybe (HashMap Text Text)
encryptionContext} -> Maybe (HashMap Text Text)
encryptionContext) (\s :: GenerateDataKey
s@GenerateDataKey' {} Maybe (HashMap Text Text)
a -> GenerateDataKey
s {$sel:encryptionContext:GenerateDataKey' :: Maybe (HashMap Text Text)
encryptionContext = Maybe (HashMap Text Text)
a} :: GenerateDataKey) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
generateDataKey_grantTokens :: Lens.Lens' GenerateDataKey (Prelude.Maybe [Prelude.Text])
generateDataKey_grantTokens :: Lens' GenerateDataKey (Maybe [Text])
generateDataKey_grantTokens = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKey' {Maybe [Text]
grantTokens :: Maybe [Text]
$sel:grantTokens:GenerateDataKey' :: GenerateDataKey -> Maybe [Text]
grantTokens} -> Maybe [Text]
grantTokens) (\s :: GenerateDataKey
s@GenerateDataKey' {} Maybe [Text]
a -> GenerateDataKey
s {$sel:grantTokens:GenerateDataKey' :: Maybe [Text]
grantTokens = Maybe [Text]
a} :: GenerateDataKey) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
generateDataKey_keySpec :: Lens.Lens' GenerateDataKey (Prelude.Maybe DataKeySpec)
generateDataKey_keySpec :: Lens' GenerateDataKey (Maybe DataKeySpec)
generateDataKey_keySpec = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKey' {Maybe DataKeySpec
keySpec :: Maybe DataKeySpec
$sel:keySpec:GenerateDataKey' :: GenerateDataKey -> Maybe DataKeySpec
keySpec} -> Maybe DataKeySpec
keySpec) (\s :: GenerateDataKey
s@GenerateDataKey' {} Maybe DataKeySpec
a -> GenerateDataKey
s {$sel:keySpec:GenerateDataKey' :: Maybe DataKeySpec
keySpec = Maybe DataKeySpec
a} :: GenerateDataKey)
generateDataKey_numberOfBytes :: Lens.Lens' GenerateDataKey (Prelude.Maybe Prelude.Natural)
generateDataKey_numberOfBytes :: Lens' GenerateDataKey (Maybe Natural)
generateDataKey_numberOfBytes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKey' {Maybe Natural
numberOfBytes :: Maybe Natural
$sel:numberOfBytes:GenerateDataKey' :: GenerateDataKey -> Maybe Natural
numberOfBytes} -> Maybe Natural
numberOfBytes) (\s :: GenerateDataKey
s@GenerateDataKey' {} Maybe Natural
a -> GenerateDataKey
s {$sel:numberOfBytes:GenerateDataKey' :: Maybe Natural
numberOfBytes = Maybe Natural
a} :: GenerateDataKey)
generateDataKey_keyId :: Lens.Lens' GenerateDataKey Prelude.Text
generateDataKey_keyId :: Lens' GenerateDataKey Text
generateDataKey_keyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKey' {Text
keyId :: Text
$sel:keyId:GenerateDataKey' :: GenerateDataKey -> Text
keyId} -> Text
keyId) (\s :: GenerateDataKey
s@GenerateDataKey' {} Text
a -> GenerateDataKey
s {$sel:keyId:GenerateDataKey' :: Text
keyId = Text
a} :: GenerateDataKey)
instance Core.AWSRequest GenerateDataKey where
type
AWSResponse GenerateDataKey =
GenerateDataKeyResponse
request :: (Service -> Service) -> GenerateDataKey -> Request GenerateDataKey
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 GenerateDataKey
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GenerateDataKey)))
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 ->
Int
-> Text -> Sensitive Base64 -> Base64 -> GenerateDataKeyResponse
GenerateDataKeyResponse'
forall (f :: * -> *) a b. Functor 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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"KeyId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"Plaintext")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"CiphertextBlob")
)
instance Prelude.Hashable GenerateDataKey where
hashWithSalt :: Int -> GenerateDataKey -> Int
hashWithSalt Int
_salt GenerateDataKey' {Maybe Natural
Maybe [Text]
Maybe (HashMap Text Text)
Maybe DataKeySpec
Text
keyId :: Text
numberOfBytes :: Maybe Natural
keySpec :: Maybe DataKeySpec
grantTokens :: Maybe [Text]
encryptionContext :: Maybe (HashMap Text Text)
$sel:keyId:GenerateDataKey' :: GenerateDataKey -> Text
$sel:numberOfBytes:GenerateDataKey' :: GenerateDataKey -> Maybe Natural
$sel:keySpec:GenerateDataKey' :: GenerateDataKey -> Maybe DataKeySpec
$sel:grantTokens:GenerateDataKey' :: GenerateDataKey -> Maybe [Text]
$sel:encryptionContext:GenerateDataKey' :: GenerateDataKey -> Maybe (HashMap Text Text)
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (HashMap Text Text)
encryptionContext
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
grantTokens
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DataKeySpec
keySpec
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
numberOfBytes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
keyId
instance Prelude.NFData GenerateDataKey where
rnf :: GenerateDataKey -> ()
rnf GenerateDataKey' {Maybe Natural
Maybe [Text]
Maybe (HashMap Text Text)
Maybe DataKeySpec
Text
keyId :: Text
numberOfBytes :: Maybe Natural
keySpec :: Maybe DataKeySpec
grantTokens :: Maybe [Text]
encryptionContext :: Maybe (HashMap Text Text)
$sel:keyId:GenerateDataKey' :: GenerateDataKey -> Text
$sel:numberOfBytes:GenerateDataKey' :: GenerateDataKey -> Maybe Natural
$sel:keySpec:GenerateDataKey' :: GenerateDataKey -> Maybe DataKeySpec
$sel:grantTokens:GenerateDataKey' :: GenerateDataKey -> Maybe [Text]
$sel:encryptionContext:GenerateDataKey' :: GenerateDataKey -> Maybe (HashMap Text Text)
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap Text Text)
encryptionContext
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
grantTokens
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DataKeySpec
keySpec
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
numberOfBytes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
keyId
instance Data.ToHeaders GenerateDataKey where
toHeaders :: GenerateDataKey -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"TrentService.GenerateDataKey" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON GenerateDataKey where
toJSON :: GenerateDataKey -> Value
toJSON GenerateDataKey' {Maybe Natural
Maybe [Text]
Maybe (HashMap Text Text)
Maybe DataKeySpec
Text
keyId :: Text
numberOfBytes :: Maybe Natural
keySpec :: Maybe DataKeySpec
grantTokens :: Maybe [Text]
encryptionContext :: Maybe (HashMap Text Text)
$sel:keyId:GenerateDataKey' :: GenerateDataKey -> Text
$sel:numberOfBytes:GenerateDataKey' :: GenerateDataKey -> Maybe Natural
$sel:keySpec:GenerateDataKey' :: GenerateDataKey -> Maybe DataKeySpec
$sel:grantTokens:GenerateDataKey' :: GenerateDataKey -> Maybe [Text]
$sel:encryptionContext:GenerateDataKey' :: GenerateDataKey -> Maybe (HashMap Text Text)
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"EncryptionContext" 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 (HashMap Text Text)
encryptionContext,
(Key
"GrantTokens" 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 [Text]
grantTokens,
(Key
"KeySpec" 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 DataKeySpec
keySpec,
(Key
"NumberOfBytes" 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 Natural
numberOfBytes,
forall a. a -> Maybe a
Prelude.Just (Key
"KeyId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
keyId)
]
)
instance Data.ToPath GenerateDataKey where
toPath :: GenerateDataKey -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GenerateDataKey where
toQuery :: GenerateDataKey -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GenerateDataKeyResponse = GenerateDataKeyResponse'
{
GenerateDataKeyResponse -> Int
httpStatus :: Prelude.Int,
GenerateDataKeyResponse -> Text
keyId :: Prelude.Text,
GenerateDataKeyResponse -> Sensitive Base64
plaintext :: Data.Sensitive Data.Base64,
GenerateDataKeyResponse -> Base64
ciphertextBlob :: Data.Base64
}
deriving (GenerateDataKeyResponse -> GenerateDataKeyResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GenerateDataKeyResponse -> GenerateDataKeyResponse -> Bool
$c/= :: GenerateDataKeyResponse -> GenerateDataKeyResponse -> Bool
== :: GenerateDataKeyResponse -> GenerateDataKeyResponse -> Bool
$c== :: GenerateDataKeyResponse -> GenerateDataKeyResponse -> Bool
Prelude.Eq, Int -> GenerateDataKeyResponse -> ShowS
[GenerateDataKeyResponse] -> ShowS
GenerateDataKeyResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GenerateDataKeyResponse] -> ShowS
$cshowList :: [GenerateDataKeyResponse] -> ShowS
show :: GenerateDataKeyResponse -> String
$cshow :: GenerateDataKeyResponse -> String
showsPrec :: Int -> GenerateDataKeyResponse -> ShowS
$cshowsPrec :: Int -> GenerateDataKeyResponse -> ShowS
Prelude.Show, forall x. Rep GenerateDataKeyResponse x -> GenerateDataKeyResponse
forall x. GenerateDataKeyResponse -> Rep GenerateDataKeyResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GenerateDataKeyResponse x -> GenerateDataKeyResponse
$cfrom :: forall x. GenerateDataKeyResponse -> Rep GenerateDataKeyResponse x
Prelude.Generic)
newGenerateDataKeyResponse ::
Prelude.Int ->
Prelude.Text ->
Prelude.ByteString ->
Prelude.ByteString ->
GenerateDataKeyResponse
newGenerateDataKeyResponse :: Int -> Text -> ByteString -> ByteString -> GenerateDataKeyResponse
newGenerateDataKeyResponse
Int
pHttpStatus_
Text
pKeyId_
ByteString
pPlaintext_
ByteString
pCiphertextBlob_ =
GenerateDataKeyResponse'
{ $sel:httpStatus:GenerateDataKeyResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:keyId:GenerateDataKeyResponse' :: Text
keyId = Text
pKeyId_,
$sel:plaintext:GenerateDataKeyResponse' :: Sensitive Base64
plaintext =
forall a. Iso' (Sensitive a) a
Data._Sensitive
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Iso' Base64 ByteString
Data._Base64
forall t b. AReview t b -> b -> t
Lens.# ByteString
pPlaintext_,
$sel:ciphertextBlob:GenerateDataKeyResponse' :: Base64
ciphertextBlob =
Iso' Base64 ByteString
Data._Base64 forall t b. AReview t b -> b -> t
Lens.# ByteString
pCiphertextBlob_
}
generateDataKeyResponse_httpStatus :: Lens.Lens' GenerateDataKeyResponse Prelude.Int
generateDataKeyResponse_httpStatus :: Lens' GenerateDataKeyResponse Int
generateDataKeyResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKeyResponse' {Int
httpStatus :: Int
$sel:httpStatus:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GenerateDataKeyResponse
s@GenerateDataKeyResponse' {} Int
a -> GenerateDataKeyResponse
s {$sel:httpStatus:GenerateDataKeyResponse' :: Int
httpStatus = Int
a} :: GenerateDataKeyResponse)
generateDataKeyResponse_keyId :: Lens.Lens' GenerateDataKeyResponse Prelude.Text
generateDataKeyResponse_keyId :: Lens' GenerateDataKeyResponse Text
generateDataKeyResponse_keyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKeyResponse' {Text
keyId :: Text
$sel:keyId:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Text
keyId} -> Text
keyId) (\s :: GenerateDataKeyResponse
s@GenerateDataKeyResponse' {} Text
a -> GenerateDataKeyResponse
s {$sel:keyId:GenerateDataKeyResponse' :: Text
keyId = Text
a} :: GenerateDataKeyResponse)
generateDataKeyResponse_plaintext :: Lens.Lens' GenerateDataKeyResponse Prelude.ByteString
generateDataKeyResponse_plaintext :: Lens' GenerateDataKeyResponse ByteString
generateDataKeyResponse_plaintext = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKeyResponse' {Sensitive Base64
plaintext :: Sensitive Base64
$sel:plaintext:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Sensitive Base64
plaintext} -> Sensitive Base64
plaintext) (\s :: GenerateDataKeyResponse
s@GenerateDataKeyResponse' {} Sensitive Base64
a -> GenerateDataKeyResponse
s {$sel:plaintext:GenerateDataKeyResponse' :: Sensitive Base64
plaintext = Sensitive Base64
a} :: GenerateDataKeyResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a. Iso' (Sensitive a) a
Data._Sensitive forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Iso' Base64 ByteString
Data._Base64
generateDataKeyResponse_ciphertextBlob :: Lens.Lens' GenerateDataKeyResponse Prelude.ByteString
generateDataKeyResponse_ciphertextBlob :: Lens' GenerateDataKeyResponse ByteString
generateDataKeyResponse_ciphertextBlob = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GenerateDataKeyResponse' {Base64
ciphertextBlob :: Base64
$sel:ciphertextBlob:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Base64
ciphertextBlob} -> Base64
ciphertextBlob) (\s :: GenerateDataKeyResponse
s@GenerateDataKeyResponse' {} Base64
a -> GenerateDataKeyResponse
s {$sel:ciphertextBlob:GenerateDataKeyResponse' :: Base64
ciphertextBlob = Base64
a} :: GenerateDataKeyResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Iso' Base64 ByteString
Data._Base64
instance Prelude.NFData GenerateDataKeyResponse where
rnf :: GenerateDataKeyResponse -> ()
rnf GenerateDataKeyResponse' {Int
Text
Base64
Sensitive Base64
ciphertextBlob :: Base64
plaintext :: Sensitive Base64
keyId :: Text
httpStatus :: Int
$sel:ciphertextBlob:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Base64
$sel:plaintext:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Sensitive Base64
$sel:keyId:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Text
$sel:httpStatus:GenerateDataKeyResponse' :: GenerateDataKeyResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
keyId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Sensitive Base64
plaintext
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Base64
ciphertextBlob