{-# 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.MacieV2.PutClassificationExportConfiguration
(
PutClassificationExportConfiguration (..),
newPutClassificationExportConfiguration,
putClassificationExportConfiguration_configuration,
PutClassificationExportConfigurationResponse (..),
newPutClassificationExportConfigurationResponse,
putClassificationExportConfigurationResponse_configuration,
putClassificationExportConfigurationResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MacieV2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data PutClassificationExportConfiguration = PutClassificationExportConfiguration'
{
PutClassificationExportConfiguration
-> ClassificationExportConfiguration
configuration :: ClassificationExportConfiguration
}
deriving (PutClassificationExportConfiguration
-> PutClassificationExportConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutClassificationExportConfiguration
-> PutClassificationExportConfiguration -> Bool
$c/= :: PutClassificationExportConfiguration
-> PutClassificationExportConfiguration -> Bool
== :: PutClassificationExportConfiguration
-> PutClassificationExportConfiguration -> Bool
$c== :: PutClassificationExportConfiguration
-> PutClassificationExportConfiguration -> Bool
Prelude.Eq, ReadPrec [PutClassificationExportConfiguration]
ReadPrec PutClassificationExportConfiguration
Int -> ReadS PutClassificationExportConfiguration
ReadS [PutClassificationExportConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutClassificationExportConfiguration]
$creadListPrec :: ReadPrec [PutClassificationExportConfiguration]
readPrec :: ReadPrec PutClassificationExportConfiguration
$creadPrec :: ReadPrec PutClassificationExportConfiguration
readList :: ReadS [PutClassificationExportConfiguration]
$creadList :: ReadS [PutClassificationExportConfiguration]
readsPrec :: Int -> ReadS PutClassificationExportConfiguration
$creadsPrec :: Int -> ReadS PutClassificationExportConfiguration
Prelude.Read, Int -> PutClassificationExportConfiguration -> ShowS
[PutClassificationExportConfiguration] -> ShowS
PutClassificationExportConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutClassificationExportConfiguration] -> ShowS
$cshowList :: [PutClassificationExportConfiguration] -> ShowS
show :: PutClassificationExportConfiguration -> String
$cshow :: PutClassificationExportConfiguration -> String
showsPrec :: Int -> PutClassificationExportConfiguration -> ShowS
$cshowsPrec :: Int -> PutClassificationExportConfiguration -> ShowS
Prelude.Show, forall x.
Rep PutClassificationExportConfiguration x
-> PutClassificationExportConfiguration
forall x.
PutClassificationExportConfiguration
-> Rep PutClassificationExportConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutClassificationExportConfiguration x
-> PutClassificationExportConfiguration
$cfrom :: forall x.
PutClassificationExportConfiguration
-> Rep PutClassificationExportConfiguration x
Prelude.Generic)
newPutClassificationExportConfiguration ::
ClassificationExportConfiguration ->
PutClassificationExportConfiguration
newPutClassificationExportConfiguration :: ClassificationExportConfiguration
-> PutClassificationExportConfiguration
newPutClassificationExportConfiguration
ClassificationExportConfiguration
pConfiguration_ =
PutClassificationExportConfiguration'
{ $sel:configuration:PutClassificationExportConfiguration' :: ClassificationExportConfiguration
configuration =
ClassificationExportConfiguration
pConfiguration_
}
putClassificationExportConfiguration_configuration :: Lens.Lens' PutClassificationExportConfiguration ClassificationExportConfiguration
putClassificationExportConfiguration_configuration :: Lens'
PutClassificationExportConfiguration
ClassificationExportConfiguration
putClassificationExportConfiguration_configuration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutClassificationExportConfiguration' {ClassificationExportConfiguration
configuration :: ClassificationExportConfiguration
$sel:configuration:PutClassificationExportConfiguration' :: PutClassificationExportConfiguration
-> ClassificationExportConfiguration
configuration} -> ClassificationExportConfiguration
configuration) (\s :: PutClassificationExportConfiguration
s@PutClassificationExportConfiguration' {} ClassificationExportConfiguration
a -> PutClassificationExportConfiguration
s {$sel:configuration:PutClassificationExportConfiguration' :: ClassificationExportConfiguration
configuration = ClassificationExportConfiguration
a} :: PutClassificationExportConfiguration)
instance
Core.AWSRequest
PutClassificationExportConfiguration
where
type
AWSResponse PutClassificationExportConfiguration =
PutClassificationExportConfigurationResponse
request :: (Service -> Service)
-> PutClassificationExportConfiguration
-> Request PutClassificationExportConfiguration
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 PutClassificationExportConfiguration
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse PutClassificationExportConfiguration)))
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 ClassificationExportConfiguration
-> Int -> PutClassificationExportConfigurationResponse
PutClassificationExportConfigurationResponse'
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
"configuration")
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
PutClassificationExportConfiguration
where
hashWithSalt :: Int -> PutClassificationExportConfiguration -> Int
hashWithSalt
Int
_salt
PutClassificationExportConfiguration' {ClassificationExportConfiguration
configuration :: ClassificationExportConfiguration
$sel:configuration:PutClassificationExportConfiguration' :: PutClassificationExportConfiguration
-> ClassificationExportConfiguration
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ClassificationExportConfiguration
configuration
instance
Prelude.NFData
PutClassificationExportConfiguration
where
rnf :: PutClassificationExportConfiguration -> ()
rnf PutClassificationExportConfiguration' {ClassificationExportConfiguration
configuration :: ClassificationExportConfiguration
$sel:configuration:PutClassificationExportConfiguration' :: PutClassificationExportConfiguration
-> ClassificationExportConfiguration
..} =
forall a. NFData a => a -> ()
Prelude.rnf ClassificationExportConfiguration
configuration
instance
Data.ToHeaders
PutClassificationExportConfiguration
where
toHeaders :: PutClassificationExportConfiguration -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance
Data.ToJSON
PutClassificationExportConfiguration
where
toJSON :: PutClassificationExportConfiguration -> Value
toJSON PutClassificationExportConfiguration' {ClassificationExportConfiguration
configuration :: ClassificationExportConfiguration
$sel:configuration:PutClassificationExportConfiguration' :: PutClassificationExportConfiguration
-> ClassificationExportConfiguration
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"configuration" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= ClassificationExportConfiguration
configuration)
]
)
instance
Data.ToPath
PutClassificationExportConfiguration
where
toPath :: PutClassificationExportConfiguration -> ByteString
toPath =
forall a b. a -> b -> a
Prelude.const
ByteString
"/classification-export-configuration"
instance
Data.ToQuery
PutClassificationExportConfiguration
where
toQuery :: PutClassificationExportConfiguration -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data PutClassificationExportConfigurationResponse = PutClassificationExportConfigurationResponse'
{
PutClassificationExportConfigurationResponse
-> Maybe ClassificationExportConfiguration
configuration :: Prelude.Maybe ClassificationExportConfiguration,
PutClassificationExportConfigurationResponse -> Int
httpStatus :: Prelude.Int
}
deriving (PutClassificationExportConfigurationResponse
-> PutClassificationExportConfigurationResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutClassificationExportConfigurationResponse
-> PutClassificationExportConfigurationResponse -> Bool
$c/= :: PutClassificationExportConfigurationResponse
-> PutClassificationExportConfigurationResponse -> Bool
== :: PutClassificationExportConfigurationResponse
-> PutClassificationExportConfigurationResponse -> Bool
$c== :: PutClassificationExportConfigurationResponse
-> PutClassificationExportConfigurationResponse -> Bool
Prelude.Eq, ReadPrec [PutClassificationExportConfigurationResponse]
ReadPrec PutClassificationExportConfigurationResponse
Int -> ReadS PutClassificationExportConfigurationResponse
ReadS [PutClassificationExportConfigurationResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutClassificationExportConfigurationResponse]
$creadListPrec :: ReadPrec [PutClassificationExportConfigurationResponse]
readPrec :: ReadPrec PutClassificationExportConfigurationResponse
$creadPrec :: ReadPrec PutClassificationExportConfigurationResponse
readList :: ReadS [PutClassificationExportConfigurationResponse]
$creadList :: ReadS [PutClassificationExportConfigurationResponse]
readsPrec :: Int -> ReadS PutClassificationExportConfigurationResponse
$creadsPrec :: Int -> ReadS PutClassificationExportConfigurationResponse
Prelude.Read, Int -> PutClassificationExportConfigurationResponse -> ShowS
[PutClassificationExportConfigurationResponse] -> ShowS
PutClassificationExportConfigurationResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutClassificationExportConfigurationResponse] -> ShowS
$cshowList :: [PutClassificationExportConfigurationResponse] -> ShowS
show :: PutClassificationExportConfigurationResponse -> String
$cshow :: PutClassificationExportConfigurationResponse -> String
showsPrec :: Int -> PutClassificationExportConfigurationResponse -> ShowS
$cshowsPrec :: Int -> PutClassificationExportConfigurationResponse -> ShowS
Prelude.Show, forall x.
Rep PutClassificationExportConfigurationResponse x
-> PutClassificationExportConfigurationResponse
forall x.
PutClassificationExportConfigurationResponse
-> Rep PutClassificationExportConfigurationResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutClassificationExportConfigurationResponse x
-> PutClassificationExportConfigurationResponse
$cfrom :: forall x.
PutClassificationExportConfigurationResponse
-> Rep PutClassificationExportConfigurationResponse x
Prelude.Generic)
newPutClassificationExportConfigurationResponse ::
Prelude.Int ->
PutClassificationExportConfigurationResponse
newPutClassificationExportConfigurationResponse :: Int -> PutClassificationExportConfigurationResponse
newPutClassificationExportConfigurationResponse
Int
pHttpStatus_ =
PutClassificationExportConfigurationResponse'
{ $sel:configuration:PutClassificationExportConfigurationResponse' :: Maybe ClassificationExportConfiguration
configuration =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:PutClassificationExportConfigurationResponse' :: Int
httpStatus = Int
pHttpStatus_
}
putClassificationExportConfigurationResponse_configuration :: Lens.Lens' PutClassificationExportConfigurationResponse (Prelude.Maybe ClassificationExportConfiguration)
putClassificationExportConfigurationResponse_configuration :: Lens'
PutClassificationExportConfigurationResponse
(Maybe ClassificationExportConfiguration)
putClassificationExportConfigurationResponse_configuration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutClassificationExportConfigurationResponse' {Maybe ClassificationExportConfiguration
configuration :: Maybe ClassificationExportConfiguration
$sel:configuration:PutClassificationExportConfigurationResponse' :: PutClassificationExportConfigurationResponse
-> Maybe ClassificationExportConfiguration
configuration} -> Maybe ClassificationExportConfiguration
configuration) (\s :: PutClassificationExportConfigurationResponse
s@PutClassificationExportConfigurationResponse' {} Maybe ClassificationExportConfiguration
a -> PutClassificationExportConfigurationResponse
s {$sel:configuration:PutClassificationExportConfigurationResponse' :: Maybe ClassificationExportConfiguration
configuration = Maybe ClassificationExportConfiguration
a} :: PutClassificationExportConfigurationResponse)
putClassificationExportConfigurationResponse_httpStatus :: Lens.Lens' PutClassificationExportConfigurationResponse Prelude.Int
putClassificationExportConfigurationResponse_httpStatus :: Lens' PutClassificationExportConfigurationResponse Int
putClassificationExportConfigurationResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutClassificationExportConfigurationResponse' {Int
httpStatus :: Int
$sel:httpStatus:PutClassificationExportConfigurationResponse' :: PutClassificationExportConfigurationResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: PutClassificationExportConfigurationResponse
s@PutClassificationExportConfigurationResponse' {} Int
a -> PutClassificationExportConfigurationResponse
s {$sel:httpStatus:PutClassificationExportConfigurationResponse' :: Int
httpStatus = Int
a} :: PutClassificationExportConfigurationResponse)
instance
Prelude.NFData
PutClassificationExportConfigurationResponse
where
rnf :: PutClassificationExportConfigurationResponse -> ()
rnf PutClassificationExportConfigurationResponse' {Int
Maybe ClassificationExportConfiguration
httpStatus :: Int
configuration :: Maybe ClassificationExportConfiguration
$sel:httpStatus:PutClassificationExportConfigurationResponse' :: PutClassificationExportConfigurationResponse -> Int
$sel:configuration:PutClassificationExportConfigurationResponse' :: PutClassificationExportConfigurationResponse
-> Maybe ClassificationExportConfiguration
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ClassificationExportConfiguration
configuration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus