{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.DataExchange.Types.RequestDetails where
import qualified Amazonka.Core as Core
import Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails
import Amazonka.DataExchange.Types.ExportAssetsToS3RequestDetails
import Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails
import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails
import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails
import Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data RequestDetails = RequestDetails'
{
RequestDetails -> Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3 :: Prelude.Maybe ExportAssetsToS3RequestDetails,
RequestDetails -> Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3 :: Prelude.Maybe ExportRevisionsToS3RequestDetails,
RequestDetails -> Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl :: Prelude.Maybe ImportAssetFromSignedUrlRequestDetails,
RequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares :: Prelude.Maybe ImportAssetsFromRedshiftDataSharesRequestDetails,
RequestDetails -> Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3 :: Prelude.Maybe ImportAssetsFromS3RequestDetails,
RequestDetails -> Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl :: Prelude.Maybe ExportAssetToSignedUrlRequestDetails
}
deriving (RequestDetails -> RequestDetails -> Bool
(RequestDetails -> RequestDetails -> Bool)
-> (RequestDetails -> RequestDetails -> Bool) -> Eq RequestDetails
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RequestDetails -> RequestDetails -> Bool
$c/= :: RequestDetails -> RequestDetails -> Bool
== :: RequestDetails -> RequestDetails -> Bool
$c== :: RequestDetails -> RequestDetails -> Bool
Prelude.Eq, ReadPrec [RequestDetails]
ReadPrec RequestDetails
Int -> ReadS RequestDetails
ReadS [RequestDetails]
(Int -> ReadS RequestDetails)
-> ReadS [RequestDetails]
-> ReadPrec RequestDetails
-> ReadPrec [RequestDetails]
-> Read RequestDetails
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [RequestDetails]
$creadListPrec :: ReadPrec [RequestDetails]
readPrec :: ReadPrec RequestDetails
$creadPrec :: ReadPrec RequestDetails
readList :: ReadS [RequestDetails]
$creadList :: ReadS [RequestDetails]
readsPrec :: Int -> ReadS RequestDetails
$creadsPrec :: Int -> ReadS RequestDetails
Prelude.Read, Int -> RequestDetails -> ShowS
[RequestDetails] -> ShowS
RequestDetails -> String
(Int -> RequestDetails -> ShowS)
-> (RequestDetails -> String)
-> ([RequestDetails] -> ShowS)
-> Show RequestDetails
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [RequestDetails] -> ShowS
$cshowList :: [RequestDetails] -> ShowS
show :: RequestDetails -> String
$cshow :: RequestDetails -> String
showsPrec :: Int -> RequestDetails -> ShowS
$cshowsPrec :: Int -> RequestDetails -> ShowS
Prelude.Show, (forall x. RequestDetails -> Rep RequestDetails x)
-> (forall x. Rep RequestDetails x -> RequestDetails)
-> Generic RequestDetails
forall x. Rep RequestDetails x -> RequestDetails
forall x. RequestDetails -> Rep RequestDetails x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep RequestDetails x -> RequestDetails
$cfrom :: forall x. RequestDetails -> Rep RequestDetails x
Prelude.Generic)
newRequestDetails ::
RequestDetails
newRequestDetails :: RequestDetails
newRequestDetails =
RequestDetails' :: Maybe ExportAssetsToS3RequestDetails
-> Maybe ExportRevisionsToS3RequestDetails
-> Maybe ImportAssetFromSignedUrlRequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
-> Maybe ImportAssetsFromS3RequestDetails
-> Maybe ExportAssetToSignedUrlRequestDetails
-> RequestDetails
RequestDetails'
{ $sel:exportAssetsToS3:RequestDetails' :: Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3 = Maybe ExportAssetsToS3RequestDetails
forall a. Maybe a
Prelude.Nothing,
$sel:exportRevisionsToS3:RequestDetails' :: Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3 = Maybe ExportRevisionsToS3RequestDetails
forall a. Maybe a
Prelude.Nothing,
$sel:importAssetFromSignedUrl:RequestDetails' :: Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl = Maybe ImportAssetFromSignedUrlRequestDetails
forall a. Maybe a
Prelude.Nothing,
$sel:importAssetsFromRedshiftDataShares:RequestDetails' :: Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares = Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
forall a. Maybe a
Prelude.Nothing,
$sel:importAssetsFromS3:RequestDetails' :: Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3 = Maybe ImportAssetsFromS3RequestDetails
forall a. Maybe a
Prelude.Nothing,
$sel:exportAssetToSignedUrl:RequestDetails' :: Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl = Maybe ExportAssetToSignedUrlRequestDetails
forall a. Maybe a
Prelude.Nothing
}
requestDetails_exportAssetsToS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ExportAssetsToS3RequestDetails)
requestDetails_exportAssetsToS3 :: (Maybe ExportAssetsToS3RequestDetails
-> f (Maybe ExportAssetsToS3RequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_exportAssetsToS3 = (RequestDetails -> Maybe ExportAssetsToS3RequestDetails)
-> (RequestDetails
-> Maybe ExportAssetsToS3RequestDetails -> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ExportAssetsToS3RequestDetails)
(Maybe ExportAssetsToS3RequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3 :: Maybe ExportAssetsToS3RequestDetails
$sel:exportAssetsToS3:RequestDetails' :: RequestDetails -> Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3} -> Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3) (\s :: RequestDetails
s@RequestDetails' {} Maybe ExportAssetsToS3RequestDetails
a -> RequestDetails
s {$sel:exportAssetsToS3:RequestDetails' :: Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3 = Maybe ExportAssetsToS3RequestDetails
a} :: RequestDetails)
requestDetails_exportRevisionsToS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ExportRevisionsToS3RequestDetails)
requestDetails_exportRevisionsToS3 :: (Maybe ExportRevisionsToS3RequestDetails
-> f (Maybe ExportRevisionsToS3RequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_exportRevisionsToS3 = (RequestDetails -> Maybe ExportRevisionsToS3RequestDetails)
-> (RequestDetails
-> Maybe ExportRevisionsToS3RequestDetails -> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ExportRevisionsToS3RequestDetails)
(Maybe ExportRevisionsToS3RequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3 :: Maybe ExportRevisionsToS3RequestDetails
$sel:exportRevisionsToS3:RequestDetails' :: RequestDetails -> Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3} -> Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3) (\s :: RequestDetails
s@RequestDetails' {} Maybe ExportRevisionsToS3RequestDetails
a -> RequestDetails
s {$sel:exportRevisionsToS3:RequestDetails' :: Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3 = Maybe ExportRevisionsToS3RequestDetails
a} :: RequestDetails)
requestDetails_importAssetFromSignedUrl :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetFromSignedUrlRequestDetails)
requestDetails_importAssetFromSignedUrl :: (Maybe ImportAssetFromSignedUrlRequestDetails
-> f (Maybe ImportAssetFromSignedUrlRequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_importAssetFromSignedUrl = (RequestDetails -> Maybe ImportAssetFromSignedUrlRequestDetails)
-> (RequestDetails
-> Maybe ImportAssetFromSignedUrlRequestDetails -> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ImportAssetFromSignedUrlRequestDetails)
(Maybe ImportAssetFromSignedUrlRequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl :: Maybe ImportAssetFromSignedUrlRequestDetails
$sel:importAssetFromSignedUrl:RequestDetails' :: RequestDetails -> Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl} -> Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl) (\s :: RequestDetails
s@RequestDetails' {} Maybe ImportAssetFromSignedUrlRequestDetails
a -> RequestDetails
s {$sel:importAssetFromSignedUrl:RequestDetails' :: Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl = Maybe ImportAssetFromSignedUrlRequestDetails
a} :: RequestDetails)
requestDetails_importAssetsFromRedshiftDataShares :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetsFromRedshiftDataSharesRequestDetails)
requestDetails_importAssetsFromRedshiftDataShares :: (Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
-> f (Maybe ImportAssetsFromRedshiftDataSharesRequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_importAssetsFromRedshiftDataShares = (RequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails)
-> (RequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
-> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ImportAssetsFromRedshiftDataSharesRequestDetails)
(Maybe ImportAssetsFromRedshiftDataSharesRequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares :: Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
$sel:importAssetsFromRedshiftDataShares:RequestDetails' :: RequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares} -> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares) (\s :: RequestDetails
s@RequestDetails' {} Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
a -> RequestDetails
s {$sel:importAssetsFromRedshiftDataShares:RequestDetails' :: Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares = Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
a} :: RequestDetails)
requestDetails_importAssetsFromS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetsFromS3RequestDetails)
requestDetails_importAssetsFromS3 :: (Maybe ImportAssetsFromS3RequestDetails
-> f (Maybe ImportAssetsFromS3RequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_importAssetsFromS3 = (RequestDetails -> Maybe ImportAssetsFromS3RequestDetails)
-> (RequestDetails
-> Maybe ImportAssetsFromS3RequestDetails -> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ImportAssetsFromS3RequestDetails)
(Maybe ImportAssetsFromS3RequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3 :: Maybe ImportAssetsFromS3RequestDetails
$sel:importAssetsFromS3:RequestDetails' :: RequestDetails -> Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3} -> Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3) (\s :: RequestDetails
s@RequestDetails' {} Maybe ImportAssetsFromS3RequestDetails
a -> RequestDetails
s {$sel:importAssetsFromS3:RequestDetails' :: Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3 = Maybe ImportAssetsFromS3RequestDetails
a} :: RequestDetails)
requestDetails_exportAssetToSignedUrl :: Lens.Lens' RequestDetails (Prelude.Maybe ExportAssetToSignedUrlRequestDetails)
requestDetails_exportAssetToSignedUrl :: (Maybe ExportAssetToSignedUrlRequestDetails
-> f (Maybe ExportAssetToSignedUrlRequestDetails))
-> RequestDetails -> f RequestDetails
requestDetails_exportAssetToSignedUrl = (RequestDetails -> Maybe ExportAssetToSignedUrlRequestDetails)
-> (RequestDetails
-> Maybe ExportAssetToSignedUrlRequestDetails -> RequestDetails)
-> Lens
RequestDetails
RequestDetails
(Maybe ExportAssetToSignedUrlRequestDetails)
(Maybe ExportAssetToSignedUrlRequestDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RequestDetails' {Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl :: Maybe ExportAssetToSignedUrlRequestDetails
$sel:exportAssetToSignedUrl:RequestDetails' :: RequestDetails -> Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl} -> Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl) (\s :: RequestDetails
s@RequestDetails' {} Maybe ExportAssetToSignedUrlRequestDetails
a -> RequestDetails
s {$sel:exportAssetToSignedUrl:RequestDetails' :: Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl = Maybe ExportAssetToSignedUrlRequestDetails
a} :: RequestDetails)
instance Prelude.Hashable RequestDetails
instance Prelude.NFData RequestDetails
instance Core.ToJSON RequestDetails where
toJSON :: RequestDetails -> Value
toJSON RequestDetails' {Maybe ExportAssetToSignedUrlRequestDetails
Maybe ImportAssetFromSignedUrlRequestDetails
Maybe ImportAssetsFromS3RequestDetails
Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
Maybe ExportRevisionsToS3RequestDetails
Maybe ExportAssetsToS3RequestDetails
exportAssetToSignedUrl :: Maybe ExportAssetToSignedUrlRequestDetails
importAssetsFromS3 :: Maybe ImportAssetsFromS3RequestDetails
importAssetsFromRedshiftDataShares :: Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetFromSignedUrl :: Maybe ImportAssetFromSignedUrlRequestDetails
exportRevisionsToS3 :: Maybe ExportRevisionsToS3RequestDetails
exportAssetsToS3 :: Maybe ExportAssetsToS3RequestDetails
$sel:exportAssetToSignedUrl:RequestDetails' :: RequestDetails -> Maybe ExportAssetToSignedUrlRequestDetails
$sel:importAssetsFromS3:RequestDetails' :: RequestDetails -> Maybe ImportAssetsFromS3RequestDetails
$sel:importAssetsFromRedshiftDataShares:RequestDetails' :: RequestDetails
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
$sel:importAssetFromSignedUrl:RequestDetails' :: RequestDetails -> Maybe ImportAssetFromSignedUrlRequestDetails
$sel:exportRevisionsToS3:RequestDetails' :: RequestDetails -> Maybe ExportRevisionsToS3RequestDetails
$sel:exportAssetsToS3:RequestDetails' :: RequestDetails -> Maybe ExportAssetsToS3RequestDetails
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Text
"ExportAssetsToS3" Text -> ExportAssetsToS3RequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ExportAssetsToS3RequestDetails -> Pair)
-> Maybe ExportAssetsToS3RequestDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ExportAssetsToS3RequestDetails
exportAssetsToS3,
(Text
"ExportRevisionsToS3" Text -> ExportRevisionsToS3RequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ExportRevisionsToS3RequestDetails -> Pair)
-> Maybe ExportRevisionsToS3RequestDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ExportRevisionsToS3RequestDetails
exportRevisionsToS3,
(Text
"ImportAssetFromSignedUrl" Text -> ImportAssetFromSignedUrlRequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ImportAssetFromSignedUrlRequestDetails -> Pair)
-> Maybe ImportAssetFromSignedUrlRequestDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ImportAssetFromSignedUrlRequestDetails
importAssetFromSignedUrl,
(Text
"ImportAssetsFromRedshiftDataShares" Text -> ImportAssetsFromRedshiftDataSharesRequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ImportAssetsFromRedshiftDataSharesRequestDetails -> Pair)
-> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
-> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ImportAssetsFromRedshiftDataSharesRequestDetails
importAssetsFromRedshiftDataShares,
(Text
"ImportAssetsFromS3" Text -> ImportAssetsFromS3RequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ImportAssetsFromS3RequestDetails -> Pair)
-> Maybe ImportAssetsFromS3RequestDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ImportAssetsFromS3RequestDetails
importAssetsFromS3,
(Text
"ExportAssetToSignedUrl" Text -> ExportAssetToSignedUrlRequestDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ExportAssetToSignedUrlRequestDetails -> Pair)
-> Maybe ExportAssetToSignedUrlRequestDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ExportAssetToSignedUrlRequestDetails
exportAssetToSignedUrl
]
)