{-# 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.SageMaker.Types.TransformJobDefinition where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.SageMaker.Types.BatchStrategy
import Amazonka.SageMaker.Types.TransformInput
import Amazonka.SageMaker.Types.TransformOutput
import Amazonka.SageMaker.Types.TransformResources
data TransformJobDefinition = TransformJobDefinition'
{
TransformJobDefinition -> Maybe BatchStrategy
batchStrategy :: Prelude.Maybe BatchStrategy,
TransformJobDefinition -> Maybe (HashMap Text Text)
environment :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
TransformJobDefinition -> Maybe Natural
maxConcurrentTransforms :: Prelude.Maybe Prelude.Natural,
TransformJobDefinition -> Maybe Natural
maxPayloadInMB :: Prelude.Maybe Prelude.Natural,
TransformJobDefinition -> TransformInput
transformInput :: TransformInput,
TransformJobDefinition -> TransformOutput
transformOutput :: TransformOutput,
TransformJobDefinition -> TransformResources
transformResources :: TransformResources
}
deriving (TransformJobDefinition -> TransformJobDefinition -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TransformJobDefinition -> TransformJobDefinition -> Bool
$c/= :: TransformJobDefinition -> TransformJobDefinition -> Bool
== :: TransformJobDefinition -> TransformJobDefinition -> Bool
$c== :: TransformJobDefinition -> TransformJobDefinition -> Bool
Prelude.Eq, ReadPrec [TransformJobDefinition]
ReadPrec TransformJobDefinition
Int -> ReadS TransformJobDefinition
ReadS [TransformJobDefinition]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [TransformJobDefinition]
$creadListPrec :: ReadPrec [TransformJobDefinition]
readPrec :: ReadPrec TransformJobDefinition
$creadPrec :: ReadPrec TransformJobDefinition
readList :: ReadS [TransformJobDefinition]
$creadList :: ReadS [TransformJobDefinition]
readsPrec :: Int -> ReadS TransformJobDefinition
$creadsPrec :: Int -> ReadS TransformJobDefinition
Prelude.Read, Int -> TransformJobDefinition -> ShowS
[TransformJobDefinition] -> ShowS
TransformJobDefinition -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TransformJobDefinition] -> ShowS
$cshowList :: [TransformJobDefinition] -> ShowS
show :: TransformJobDefinition -> String
$cshow :: TransformJobDefinition -> String
showsPrec :: Int -> TransformJobDefinition -> ShowS
$cshowsPrec :: Int -> TransformJobDefinition -> ShowS
Prelude.Show, forall x. Rep TransformJobDefinition x -> TransformJobDefinition
forall x. TransformJobDefinition -> Rep TransformJobDefinition x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep TransformJobDefinition x -> TransformJobDefinition
$cfrom :: forall x. TransformJobDefinition -> Rep TransformJobDefinition x
Prelude.Generic)
newTransformJobDefinition ::
TransformInput ->
TransformOutput ->
TransformResources ->
TransformJobDefinition
newTransformJobDefinition :: TransformInput
-> TransformOutput -> TransformResources -> TransformJobDefinition
newTransformJobDefinition
TransformInput
pTransformInput_
TransformOutput
pTransformOutput_
TransformResources
pTransformResources_ =
TransformJobDefinition'
{ $sel:batchStrategy:TransformJobDefinition' :: Maybe BatchStrategy
batchStrategy =
forall a. Maybe a
Prelude.Nothing,
$sel:environment:TransformJobDefinition' :: Maybe (HashMap Text Text)
environment = forall a. Maybe a
Prelude.Nothing,
$sel:maxConcurrentTransforms:TransformJobDefinition' :: Maybe Natural
maxConcurrentTransforms = forall a. Maybe a
Prelude.Nothing,
$sel:maxPayloadInMB:TransformJobDefinition' :: Maybe Natural
maxPayloadInMB = forall a. Maybe a
Prelude.Nothing,
$sel:transformInput:TransformJobDefinition' :: TransformInput
transformInput = TransformInput
pTransformInput_,
$sel:transformOutput:TransformJobDefinition' :: TransformOutput
transformOutput = TransformOutput
pTransformOutput_,
$sel:transformResources:TransformJobDefinition' :: TransformResources
transformResources = TransformResources
pTransformResources_
}
transformJobDefinition_batchStrategy :: Lens.Lens' TransformJobDefinition (Prelude.Maybe BatchStrategy)
transformJobDefinition_batchStrategy :: Lens' TransformJobDefinition (Maybe BatchStrategy)
transformJobDefinition_batchStrategy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {Maybe BatchStrategy
batchStrategy :: Maybe BatchStrategy
$sel:batchStrategy:TransformJobDefinition' :: TransformJobDefinition -> Maybe BatchStrategy
batchStrategy} -> Maybe BatchStrategy
batchStrategy) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} Maybe BatchStrategy
a -> TransformJobDefinition
s {$sel:batchStrategy:TransformJobDefinition' :: Maybe BatchStrategy
batchStrategy = Maybe BatchStrategy
a} :: TransformJobDefinition)
transformJobDefinition_environment :: Lens.Lens' TransformJobDefinition (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
transformJobDefinition_environment :: Lens' TransformJobDefinition (Maybe (HashMap Text Text))
transformJobDefinition_environment = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {Maybe (HashMap Text Text)
environment :: Maybe (HashMap Text Text)
$sel:environment:TransformJobDefinition' :: TransformJobDefinition -> Maybe (HashMap Text Text)
environment} -> Maybe (HashMap Text Text)
environment) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} Maybe (HashMap Text Text)
a -> TransformJobDefinition
s {$sel:environment:TransformJobDefinition' :: Maybe (HashMap Text Text)
environment = Maybe (HashMap Text Text)
a} :: TransformJobDefinition) 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
transformJobDefinition_maxConcurrentTransforms :: Lens.Lens' TransformJobDefinition (Prelude.Maybe Prelude.Natural)
transformJobDefinition_maxConcurrentTransforms :: Lens' TransformJobDefinition (Maybe Natural)
transformJobDefinition_maxConcurrentTransforms = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {Maybe Natural
maxConcurrentTransforms :: Maybe Natural
$sel:maxConcurrentTransforms:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
maxConcurrentTransforms} -> Maybe Natural
maxConcurrentTransforms) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} Maybe Natural
a -> TransformJobDefinition
s {$sel:maxConcurrentTransforms:TransformJobDefinition' :: Maybe Natural
maxConcurrentTransforms = Maybe Natural
a} :: TransformJobDefinition)
transformJobDefinition_maxPayloadInMB :: Lens.Lens' TransformJobDefinition (Prelude.Maybe Prelude.Natural)
transformJobDefinition_maxPayloadInMB :: Lens' TransformJobDefinition (Maybe Natural)
transformJobDefinition_maxPayloadInMB = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {Maybe Natural
maxPayloadInMB :: Maybe Natural
$sel:maxPayloadInMB:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
maxPayloadInMB} -> Maybe Natural
maxPayloadInMB) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} Maybe Natural
a -> TransformJobDefinition
s {$sel:maxPayloadInMB:TransformJobDefinition' :: Maybe Natural
maxPayloadInMB = Maybe Natural
a} :: TransformJobDefinition)
transformJobDefinition_transformInput :: Lens.Lens' TransformJobDefinition TransformInput
transformJobDefinition_transformInput :: Lens' TransformJobDefinition TransformInput
transformJobDefinition_transformInput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {TransformInput
transformInput :: TransformInput
$sel:transformInput:TransformJobDefinition' :: TransformJobDefinition -> TransformInput
transformInput} -> TransformInput
transformInput) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} TransformInput
a -> TransformJobDefinition
s {$sel:transformInput:TransformJobDefinition' :: TransformInput
transformInput = TransformInput
a} :: TransformJobDefinition)
transformJobDefinition_transformOutput :: Lens.Lens' TransformJobDefinition TransformOutput
transformJobDefinition_transformOutput :: Lens' TransformJobDefinition TransformOutput
transformJobDefinition_transformOutput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {TransformOutput
transformOutput :: TransformOutput
$sel:transformOutput:TransformJobDefinition' :: TransformJobDefinition -> TransformOutput
transformOutput} -> TransformOutput
transformOutput) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} TransformOutput
a -> TransformJobDefinition
s {$sel:transformOutput:TransformJobDefinition' :: TransformOutput
transformOutput = TransformOutput
a} :: TransformJobDefinition)
transformJobDefinition_transformResources :: Lens.Lens' TransformJobDefinition TransformResources
transformJobDefinition_transformResources :: Lens' TransformJobDefinition TransformResources
transformJobDefinition_transformResources = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\TransformJobDefinition' {TransformResources
transformResources :: TransformResources
$sel:transformResources:TransformJobDefinition' :: TransformJobDefinition -> TransformResources
transformResources} -> TransformResources
transformResources) (\s :: TransformJobDefinition
s@TransformJobDefinition' {} TransformResources
a -> TransformJobDefinition
s {$sel:transformResources:TransformJobDefinition' :: TransformResources
transformResources = TransformResources
a} :: TransformJobDefinition)
instance Data.FromJSON TransformJobDefinition where
parseJSON :: Value -> Parser TransformJobDefinition
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"TransformJobDefinition"
( \Object
x ->
Maybe BatchStrategy
-> Maybe (HashMap Text Text)
-> Maybe Natural
-> Maybe Natural
-> TransformInput
-> TransformOutput
-> TransformResources
-> TransformJobDefinition
TransformJobDefinition'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BatchStrategy")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Environment" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MaxConcurrentTransforms")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MaxPayloadInMB")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"TransformInput")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"TransformOutput")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"TransformResources")
)
instance Prelude.Hashable TransformJobDefinition where
hashWithSalt :: Int -> TransformJobDefinition -> Int
hashWithSalt Int
_salt TransformJobDefinition' {Maybe Natural
Maybe (HashMap Text Text)
Maybe BatchStrategy
TransformOutput
TransformResources
TransformInput
transformResources :: TransformResources
transformOutput :: TransformOutput
transformInput :: TransformInput
maxPayloadInMB :: Maybe Natural
maxConcurrentTransforms :: Maybe Natural
environment :: Maybe (HashMap Text Text)
batchStrategy :: Maybe BatchStrategy
$sel:transformResources:TransformJobDefinition' :: TransformJobDefinition -> TransformResources
$sel:transformOutput:TransformJobDefinition' :: TransformJobDefinition -> TransformOutput
$sel:transformInput:TransformJobDefinition' :: TransformJobDefinition -> TransformInput
$sel:maxPayloadInMB:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:maxConcurrentTransforms:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:environment:TransformJobDefinition' :: TransformJobDefinition -> Maybe (HashMap Text Text)
$sel:batchStrategy:TransformJobDefinition' :: TransformJobDefinition -> Maybe BatchStrategy
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchStrategy
batchStrategy
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (HashMap Text Text)
environment
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxConcurrentTransforms
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxPayloadInMB
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` TransformInput
transformInput
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` TransformOutput
transformOutput
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` TransformResources
transformResources
instance Prelude.NFData TransformJobDefinition where
rnf :: TransformJobDefinition -> ()
rnf TransformJobDefinition' {Maybe Natural
Maybe (HashMap Text Text)
Maybe BatchStrategy
TransformOutput
TransformResources
TransformInput
transformResources :: TransformResources
transformOutput :: TransformOutput
transformInput :: TransformInput
maxPayloadInMB :: Maybe Natural
maxConcurrentTransforms :: Maybe Natural
environment :: Maybe (HashMap Text Text)
batchStrategy :: Maybe BatchStrategy
$sel:transformResources:TransformJobDefinition' :: TransformJobDefinition -> TransformResources
$sel:transformOutput:TransformJobDefinition' :: TransformJobDefinition -> TransformOutput
$sel:transformInput:TransformJobDefinition' :: TransformJobDefinition -> TransformInput
$sel:maxPayloadInMB:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:maxConcurrentTransforms:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:environment:TransformJobDefinition' :: TransformJobDefinition -> Maybe (HashMap Text Text)
$sel:batchStrategy:TransformJobDefinition' :: TransformJobDefinition -> Maybe BatchStrategy
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchStrategy
batchStrategy
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap Text Text)
environment
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
maxConcurrentTransforms
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
maxPayloadInMB
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf TransformInput
transformInput
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf TransformOutput
transformOutput
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf TransformResources
transformResources
instance Data.ToJSON TransformJobDefinition where
toJSON :: TransformJobDefinition -> Value
toJSON TransformJobDefinition' {Maybe Natural
Maybe (HashMap Text Text)
Maybe BatchStrategy
TransformOutput
TransformResources
TransformInput
transformResources :: TransformResources
transformOutput :: TransformOutput
transformInput :: TransformInput
maxPayloadInMB :: Maybe Natural
maxConcurrentTransforms :: Maybe Natural
environment :: Maybe (HashMap Text Text)
batchStrategy :: Maybe BatchStrategy
$sel:transformResources:TransformJobDefinition' :: TransformJobDefinition -> TransformResources
$sel:transformOutput:TransformJobDefinition' :: TransformJobDefinition -> TransformOutput
$sel:transformInput:TransformJobDefinition' :: TransformJobDefinition -> TransformInput
$sel:maxPayloadInMB:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:maxConcurrentTransforms:TransformJobDefinition' :: TransformJobDefinition -> Maybe Natural
$sel:environment:TransformJobDefinition' :: TransformJobDefinition -> Maybe (HashMap Text Text)
$sel:batchStrategy:TransformJobDefinition' :: TransformJobDefinition -> Maybe BatchStrategy
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"BatchStrategy" 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 BatchStrategy
batchStrategy,
(Key
"Environment" 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)
environment,
(Key
"MaxConcurrentTransforms" 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
maxConcurrentTransforms,
(Key
"MaxPayloadInMB" 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
maxPayloadInMB,
forall a. a -> Maybe a
Prelude.Just
(Key
"TransformInput" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= TransformInput
transformInput),
forall a. a -> Maybe a
Prelude.Just
(Key
"TransformOutput" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= TransformOutput
transformOutput),
forall a. a -> Maybe a
Prelude.Just
(Key
"TransformResources" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= TransformResources
transformResources)
]
)