{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.EC2.ImportClientVpnClientCertificateRevocationList
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Uploads a client certificate revocation list to the specified Client VPN
-- endpoint. Uploading a client certificate revocation list overwrites the
-- existing client certificate revocation list.
--
-- Uploading a client certificate revocation list resets existing client
-- connections.
module Amazonka.EC2.ImportClientVpnClientCertificateRevocationList
  ( -- * Creating a Request
    ImportClientVpnClientCertificateRevocationList (..),
    newImportClientVpnClientCertificateRevocationList,

    -- * Request Lenses
    importClientVpnClientCertificateRevocationList_dryRun,
    importClientVpnClientCertificateRevocationList_clientVpnEndpointId,
    importClientVpnClientCertificateRevocationList_certificateRevocationList,

    -- * Destructuring the Response
    ImportClientVpnClientCertificateRevocationListResponse (..),
    newImportClientVpnClientCertificateRevocationListResponse,

    -- * Response Lenses
    importClientVpnClientCertificateRevocationListResponse_return,
    importClientVpnClientCertificateRevocationListResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newImportClientVpnClientCertificateRevocationList' smart constructor.
data ImportClientVpnClientCertificateRevocationList = ImportClientVpnClientCertificateRevocationList'
  { -- | Checks whether you have the required permissions for the action, without
    -- actually making the request, and provides an error response. If you have
    -- the required permissions, the error response is @DryRunOperation@.
    -- Otherwise, it is @UnauthorizedOperation@.
    ImportClientVpnClientCertificateRevocationList -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
    -- | The ID of the Client VPN endpoint to which the client certificate
    -- revocation list applies.
    ImportClientVpnClientCertificateRevocationList -> Text
clientVpnEndpointId :: Prelude.Text,
    -- | The client certificate revocation list file. For more information, see
    -- <https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-certificates.html#cvpn-working-certificates-generate Generate a Client Certificate Revocation List>
    -- in the /Client VPN Administrator Guide/.
    ImportClientVpnClientCertificateRevocationList -> Text
certificateRevocationList :: Prelude.Text
  }
  deriving (ImportClientVpnClientCertificateRevocationList
-> ImportClientVpnClientCertificateRevocationList -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ImportClientVpnClientCertificateRevocationList
-> ImportClientVpnClientCertificateRevocationList -> Bool
$c/= :: ImportClientVpnClientCertificateRevocationList
-> ImportClientVpnClientCertificateRevocationList -> Bool
== :: ImportClientVpnClientCertificateRevocationList
-> ImportClientVpnClientCertificateRevocationList -> Bool
$c== :: ImportClientVpnClientCertificateRevocationList
-> ImportClientVpnClientCertificateRevocationList -> Bool
Prelude.Eq, ReadPrec [ImportClientVpnClientCertificateRevocationList]
ReadPrec ImportClientVpnClientCertificateRevocationList
Int -> ReadS ImportClientVpnClientCertificateRevocationList
ReadS [ImportClientVpnClientCertificateRevocationList]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ImportClientVpnClientCertificateRevocationList]
$creadListPrec :: ReadPrec [ImportClientVpnClientCertificateRevocationList]
readPrec :: ReadPrec ImportClientVpnClientCertificateRevocationList
$creadPrec :: ReadPrec ImportClientVpnClientCertificateRevocationList
readList :: ReadS [ImportClientVpnClientCertificateRevocationList]
$creadList :: ReadS [ImportClientVpnClientCertificateRevocationList]
readsPrec :: Int -> ReadS ImportClientVpnClientCertificateRevocationList
$creadsPrec :: Int -> ReadS ImportClientVpnClientCertificateRevocationList
Prelude.Read, Int -> ImportClientVpnClientCertificateRevocationList -> ShowS
[ImportClientVpnClientCertificateRevocationList] -> ShowS
ImportClientVpnClientCertificateRevocationList -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ImportClientVpnClientCertificateRevocationList] -> ShowS
$cshowList :: [ImportClientVpnClientCertificateRevocationList] -> ShowS
show :: ImportClientVpnClientCertificateRevocationList -> String
$cshow :: ImportClientVpnClientCertificateRevocationList -> String
showsPrec :: Int -> ImportClientVpnClientCertificateRevocationList -> ShowS
$cshowsPrec :: Int -> ImportClientVpnClientCertificateRevocationList -> ShowS
Prelude.Show, forall x.
Rep ImportClientVpnClientCertificateRevocationList x
-> ImportClientVpnClientCertificateRevocationList
forall x.
ImportClientVpnClientCertificateRevocationList
-> Rep ImportClientVpnClientCertificateRevocationList x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ImportClientVpnClientCertificateRevocationList x
-> ImportClientVpnClientCertificateRevocationList
$cfrom :: forall x.
ImportClientVpnClientCertificateRevocationList
-> Rep ImportClientVpnClientCertificateRevocationList x
Prelude.Generic)

-- |
-- Create a value of 'ImportClientVpnClientCertificateRevocationList' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'dryRun', 'importClientVpnClientCertificateRevocationList_dryRun' - Checks whether you have the required permissions for the action, without
-- actually making the request, and provides an error response. If you have
-- the required permissions, the error response is @DryRunOperation@.
-- Otherwise, it is @UnauthorizedOperation@.
--
-- 'clientVpnEndpointId', 'importClientVpnClientCertificateRevocationList_clientVpnEndpointId' - The ID of the Client VPN endpoint to which the client certificate
-- revocation list applies.
--
-- 'certificateRevocationList', 'importClientVpnClientCertificateRevocationList_certificateRevocationList' - The client certificate revocation list file. For more information, see
-- <https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-certificates.html#cvpn-working-certificates-generate Generate a Client Certificate Revocation List>
-- in the /Client VPN Administrator Guide/.
newImportClientVpnClientCertificateRevocationList ::
  -- | 'clientVpnEndpointId'
  Prelude.Text ->
  -- | 'certificateRevocationList'
  Prelude.Text ->
  ImportClientVpnClientCertificateRevocationList
newImportClientVpnClientCertificateRevocationList :: Text -> Text -> ImportClientVpnClientCertificateRevocationList
newImportClientVpnClientCertificateRevocationList
  Text
pClientVpnEndpointId_
  Text
pCertificateRevocationList_ =
    ImportClientVpnClientCertificateRevocationList'
      { $sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: Maybe Bool
dryRun =
          forall a. Maybe a
Prelude.Nothing,
        $sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: Text
clientVpnEndpointId =
          Text
pClientVpnEndpointId_,
        $sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: Text
certificateRevocationList =
          Text
pCertificateRevocationList_
      }

-- | Checks whether you have the required permissions for the action, without
-- actually making the request, and provides an error response. If you have
-- the required permissions, the error response is @DryRunOperation@.
-- Otherwise, it is @UnauthorizedOperation@.
importClientVpnClientCertificateRevocationList_dryRun :: Lens.Lens' ImportClientVpnClientCertificateRevocationList (Prelude.Maybe Prelude.Bool)
importClientVpnClientCertificateRevocationList_dryRun :: Lens' ImportClientVpnClientCertificateRevocationList (Maybe Bool)
importClientVpnClientCertificateRevocationList_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportClientVpnClientCertificateRevocationList' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: ImportClientVpnClientCertificateRevocationList
s@ImportClientVpnClientCertificateRevocationList' {} Maybe Bool
a -> ImportClientVpnClientCertificateRevocationList
s {$sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: Maybe Bool
dryRun = Maybe Bool
a} :: ImportClientVpnClientCertificateRevocationList)

-- | The ID of the Client VPN endpoint to which the client certificate
-- revocation list applies.
importClientVpnClientCertificateRevocationList_clientVpnEndpointId :: Lens.Lens' ImportClientVpnClientCertificateRevocationList Prelude.Text
importClientVpnClientCertificateRevocationList_clientVpnEndpointId :: Lens' ImportClientVpnClientCertificateRevocationList Text
importClientVpnClientCertificateRevocationList_clientVpnEndpointId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportClientVpnClientCertificateRevocationList' {Text
clientVpnEndpointId :: Text
$sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
clientVpnEndpointId} -> Text
clientVpnEndpointId) (\s :: ImportClientVpnClientCertificateRevocationList
s@ImportClientVpnClientCertificateRevocationList' {} Text
a -> ImportClientVpnClientCertificateRevocationList
s {$sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: Text
clientVpnEndpointId = Text
a} :: ImportClientVpnClientCertificateRevocationList)

-- | The client certificate revocation list file. For more information, see
-- <https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-certificates.html#cvpn-working-certificates-generate Generate a Client Certificate Revocation List>
-- in the /Client VPN Administrator Guide/.
importClientVpnClientCertificateRevocationList_certificateRevocationList :: Lens.Lens' ImportClientVpnClientCertificateRevocationList Prelude.Text
importClientVpnClientCertificateRevocationList_certificateRevocationList :: Lens' ImportClientVpnClientCertificateRevocationList Text
importClientVpnClientCertificateRevocationList_certificateRevocationList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportClientVpnClientCertificateRevocationList' {Text
certificateRevocationList :: Text
$sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
certificateRevocationList} -> Text
certificateRevocationList) (\s :: ImportClientVpnClientCertificateRevocationList
s@ImportClientVpnClientCertificateRevocationList' {} Text
a -> ImportClientVpnClientCertificateRevocationList
s {$sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: Text
certificateRevocationList = Text
a} :: ImportClientVpnClientCertificateRevocationList)

instance
  Core.AWSRequest
    ImportClientVpnClientCertificateRevocationList
  where
  type
    AWSResponse
      ImportClientVpnClientCertificateRevocationList =
      ImportClientVpnClientCertificateRevocationListResponse
  request :: (Service -> Service)
-> ImportClientVpnClientCertificateRevocationList
-> Request ImportClientVpnClientCertificateRevocationList
request Service -> Service
overrides =
    forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy ImportClientVpnClientCertificateRevocationList
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse
           (AWSResponse ImportClientVpnClientCertificateRevocationList)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXML
      ( \Int
s ResponseHeaders
h [Node]
x ->
          Maybe Bool
-> Int -> ImportClientVpnClientCertificateRevocationListResponse
ImportClientVpnClientCertificateRevocationListResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"return")
            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
    ImportClientVpnClientCertificateRevocationList
  where
  hashWithSalt :: Int -> ImportClientVpnClientCertificateRevocationList -> Int
hashWithSalt
    Int
_salt
    ImportClientVpnClientCertificateRevocationList' {Maybe Bool
Text
certificateRevocationList :: Text
clientVpnEndpointId :: Text
dryRun :: Maybe Bool
$sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Maybe Bool
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clientVpnEndpointId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
certificateRevocationList

instance
  Prelude.NFData
    ImportClientVpnClientCertificateRevocationList
  where
  rnf :: ImportClientVpnClientCertificateRevocationList -> ()
rnf
    ImportClientVpnClientCertificateRevocationList' {Maybe Bool
Text
certificateRevocationList :: Text
clientVpnEndpointId :: Text
dryRun :: Maybe Bool
$sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Maybe Bool
..} =
      forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
        seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
clientVpnEndpointId
        seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
certificateRevocationList

instance
  Data.ToHeaders
    ImportClientVpnClientCertificateRevocationList
  where
  toHeaders :: ImportClientVpnClientCertificateRevocationList -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

instance
  Data.ToPath
    ImportClientVpnClientCertificateRevocationList
  where
  toPath :: ImportClientVpnClientCertificateRevocationList -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"

instance
  Data.ToQuery
    ImportClientVpnClientCertificateRevocationList
  where
  toQuery :: ImportClientVpnClientCertificateRevocationList -> QueryString
toQuery
    ImportClientVpnClientCertificateRevocationList' {Maybe Bool
Text
certificateRevocationList :: Text
clientVpnEndpointId :: Text
dryRun :: Maybe Bool
$sel:certificateRevocationList:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:clientVpnEndpointId:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Text
$sel:dryRun:ImportClientVpnClientCertificateRevocationList' :: ImportClientVpnClientCertificateRevocationList -> Maybe Bool
..} =
      forall a. Monoid a => [a] -> a
Prelude.mconcat
        [ ByteString
"Action"
            forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"ImportClientVpnClientCertificateRevocationList" ::
                        Prelude.ByteString
                    ),
          ByteString
"Version"
            forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
          ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
          ByteString
"ClientVpnEndpointId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
clientVpnEndpointId,
          ByteString
"CertificateRevocationList"
            forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
certificateRevocationList
        ]

-- | /See:/ 'newImportClientVpnClientCertificateRevocationListResponse' smart constructor.
data ImportClientVpnClientCertificateRevocationListResponse = ImportClientVpnClientCertificateRevocationListResponse'
  { -- | Returns @true@ if the request succeeds; otherwise, it returns an error.
    ImportClientVpnClientCertificateRevocationListResponse
-> Maybe Bool
return' :: Prelude.Maybe Prelude.Bool,
    -- | The response's http status code.
    ImportClientVpnClientCertificateRevocationListResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (ImportClientVpnClientCertificateRevocationListResponse
-> ImportClientVpnClientCertificateRevocationListResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ImportClientVpnClientCertificateRevocationListResponse
-> ImportClientVpnClientCertificateRevocationListResponse -> Bool
$c/= :: ImportClientVpnClientCertificateRevocationListResponse
-> ImportClientVpnClientCertificateRevocationListResponse -> Bool
== :: ImportClientVpnClientCertificateRevocationListResponse
-> ImportClientVpnClientCertificateRevocationListResponse -> Bool
$c== :: ImportClientVpnClientCertificateRevocationListResponse
-> ImportClientVpnClientCertificateRevocationListResponse -> Bool
Prelude.Eq, ReadPrec [ImportClientVpnClientCertificateRevocationListResponse]
ReadPrec ImportClientVpnClientCertificateRevocationListResponse
Int -> ReadS ImportClientVpnClientCertificateRevocationListResponse
ReadS [ImportClientVpnClientCertificateRevocationListResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ImportClientVpnClientCertificateRevocationListResponse]
$creadListPrec :: ReadPrec [ImportClientVpnClientCertificateRevocationListResponse]
readPrec :: ReadPrec ImportClientVpnClientCertificateRevocationListResponse
$creadPrec :: ReadPrec ImportClientVpnClientCertificateRevocationListResponse
readList :: ReadS [ImportClientVpnClientCertificateRevocationListResponse]
$creadList :: ReadS [ImportClientVpnClientCertificateRevocationListResponse]
readsPrec :: Int -> ReadS ImportClientVpnClientCertificateRevocationListResponse
$creadsPrec :: Int -> ReadS ImportClientVpnClientCertificateRevocationListResponse
Prelude.Read, Int
-> ImportClientVpnClientCertificateRevocationListResponse -> ShowS
[ImportClientVpnClientCertificateRevocationListResponse] -> ShowS
ImportClientVpnClientCertificateRevocationListResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ImportClientVpnClientCertificateRevocationListResponse] -> ShowS
$cshowList :: [ImportClientVpnClientCertificateRevocationListResponse] -> ShowS
show :: ImportClientVpnClientCertificateRevocationListResponse -> String
$cshow :: ImportClientVpnClientCertificateRevocationListResponse -> String
showsPrec :: Int
-> ImportClientVpnClientCertificateRevocationListResponse -> ShowS
$cshowsPrec :: Int
-> ImportClientVpnClientCertificateRevocationListResponse -> ShowS
Prelude.Show, forall x.
Rep ImportClientVpnClientCertificateRevocationListResponse x
-> ImportClientVpnClientCertificateRevocationListResponse
forall x.
ImportClientVpnClientCertificateRevocationListResponse
-> Rep ImportClientVpnClientCertificateRevocationListResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ImportClientVpnClientCertificateRevocationListResponse x
-> ImportClientVpnClientCertificateRevocationListResponse
$cfrom :: forall x.
ImportClientVpnClientCertificateRevocationListResponse
-> Rep ImportClientVpnClientCertificateRevocationListResponse x
Prelude.Generic)

-- |
-- Create a value of 'ImportClientVpnClientCertificateRevocationListResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'return'', 'importClientVpnClientCertificateRevocationListResponse_return' - Returns @true@ if the request succeeds; otherwise, it returns an error.
--
-- 'httpStatus', 'importClientVpnClientCertificateRevocationListResponse_httpStatus' - The response's http status code.
newImportClientVpnClientCertificateRevocationListResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ImportClientVpnClientCertificateRevocationListResponse
newImportClientVpnClientCertificateRevocationListResponse :: Int -> ImportClientVpnClientCertificateRevocationListResponse
newImportClientVpnClientCertificateRevocationListResponse
  Int
pHttpStatus_ =
    ImportClientVpnClientCertificateRevocationListResponse'
      { $sel:return':ImportClientVpnClientCertificateRevocationListResponse' :: Maybe Bool
return' =
          forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:ImportClientVpnClientCertificateRevocationListResponse' :: Int
httpStatus =
          Int
pHttpStatus_
      }

-- | Returns @true@ if the request succeeds; otherwise, it returns an error.
importClientVpnClientCertificateRevocationListResponse_return :: Lens.Lens' ImportClientVpnClientCertificateRevocationListResponse (Prelude.Maybe Prelude.Bool)
importClientVpnClientCertificateRevocationListResponse_return :: Lens'
  ImportClientVpnClientCertificateRevocationListResponse (Maybe Bool)
importClientVpnClientCertificateRevocationListResponse_return = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportClientVpnClientCertificateRevocationListResponse' {Maybe Bool
return' :: Maybe Bool
$sel:return':ImportClientVpnClientCertificateRevocationListResponse' :: ImportClientVpnClientCertificateRevocationListResponse
-> Maybe Bool
return'} -> Maybe Bool
return') (\s :: ImportClientVpnClientCertificateRevocationListResponse
s@ImportClientVpnClientCertificateRevocationListResponse' {} Maybe Bool
a -> ImportClientVpnClientCertificateRevocationListResponse
s {$sel:return':ImportClientVpnClientCertificateRevocationListResponse' :: Maybe Bool
return' = Maybe Bool
a} :: ImportClientVpnClientCertificateRevocationListResponse)

-- | The response's http status code.
importClientVpnClientCertificateRevocationListResponse_httpStatus :: Lens.Lens' ImportClientVpnClientCertificateRevocationListResponse Prelude.Int
importClientVpnClientCertificateRevocationListResponse_httpStatus :: Lens' ImportClientVpnClientCertificateRevocationListResponse Int
importClientVpnClientCertificateRevocationListResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportClientVpnClientCertificateRevocationListResponse' {Int
httpStatus :: Int
$sel:httpStatus:ImportClientVpnClientCertificateRevocationListResponse' :: ImportClientVpnClientCertificateRevocationListResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ImportClientVpnClientCertificateRevocationListResponse
s@ImportClientVpnClientCertificateRevocationListResponse' {} Int
a -> ImportClientVpnClientCertificateRevocationListResponse
s {$sel:httpStatus:ImportClientVpnClientCertificateRevocationListResponse' :: Int
httpStatus = Int
a} :: ImportClientVpnClientCertificateRevocationListResponse)

instance
  Prelude.NFData
    ImportClientVpnClientCertificateRevocationListResponse
  where
  rnf :: ImportClientVpnClientCertificateRevocationListResponse -> ()
rnf
    ImportClientVpnClientCertificateRevocationListResponse' {Int
Maybe Bool
httpStatus :: Int
return' :: Maybe Bool
$sel:httpStatus:ImportClientVpnClientCertificateRevocationListResponse' :: ImportClientVpnClientCertificateRevocationListResponse -> Int
$sel:return':ImportClientVpnClientCertificateRevocationListResponse' :: ImportClientVpnClientCertificateRevocationListResponse
-> Maybe Bool
..} =
      forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
return'
        seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus