{-# 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.ResolvedAttributes where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import Amazonka.SageMaker.Types.AutoMLJobCompletionCriteria
import Amazonka.SageMaker.Types.AutoMLJobObjective
import Amazonka.SageMaker.Types.ProblemType
data ResolvedAttributes = ResolvedAttributes'
{
ResolvedAttributes -> Maybe ProblemType
problemType :: Prelude.Maybe ProblemType,
ResolvedAttributes -> Maybe AutoMLJobObjective
autoMLJobObjective :: Prelude.Maybe AutoMLJobObjective,
ResolvedAttributes -> Maybe AutoMLJobCompletionCriteria
completionCriteria :: Prelude.Maybe AutoMLJobCompletionCriteria
}
deriving (ResolvedAttributes -> ResolvedAttributes -> Bool
(ResolvedAttributes -> ResolvedAttributes -> Bool)
-> (ResolvedAttributes -> ResolvedAttributes -> Bool)
-> Eq ResolvedAttributes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ResolvedAttributes -> ResolvedAttributes -> Bool
$c/= :: ResolvedAttributes -> ResolvedAttributes -> Bool
== :: ResolvedAttributes -> ResolvedAttributes -> Bool
$c== :: ResolvedAttributes -> ResolvedAttributes -> Bool
Prelude.Eq, ReadPrec [ResolvedAttributes]
ReadPrec ResolvedAttributes
Int -> ReadS ResolvedAttributes
ReadS [ResolvedAttributes]
(Int -> ReadS ResolvedAttributes)
-> ReadS [ResolvedAttributes]
-> ReadPrec ResolvedAttributes
-> ReadPrec [ResolvedAttributes]
-> Read ResolvedAttributes
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ResolvedAttributes]
$creadListPrec :: ReadPrec [ResolvedAttributes]
readPrec :: ReadPrec ResolvedAttributes
$creadPrec :: ReadPrec ResolvedAttributes
readList :: ReadS [ResolvedAttributes]
$creadList :: ReadS [ResolvedAttributes]
readsPrec :: Int -> ReadS ResolvedAttributes
$creadsPrec :: Int -> ReadS ResolvedAttributes
Prelude.Read, Int -> ResolvedAttributes -> ShowS
[ResolvedAttributes] -> ShowS
ResolvedAttributes -> String
(Int -> ResolvedAttributes -> ShowS)
-> (ResolvedAttributes -> String)
-> ([ResolvedAttributes] -> ShowS)
-> Show ResolvedAttributes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ResolvedAttributes] -> ShowS
$cshowList :: [ResolvedAttributes] -> ShowS
show :: ResolvedAttributes -> String
$cshow :: ResolvedAttributes -> String
showsPrec :: Int -> ResolvedAttributes -> ShowS
$cshowsPrec :: Int -> ResolvedAttributes -> ShowS
Prelude.Show, (forall x. ResolvedAttributes -> Rep ResolvedAttributes x)
-> (forall x. Rep ResolvedAttributes x -> ResolvedAttributes)
-> Generic ResolvedAttributes
forall x. Rep ResolvedAttributes x -> ResolvedAttributes
forall x. ResolvedAttributes -> Rep ResolvedAttributes x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ResolvedAttributes x -> ResolvedAttributes
$cfrom :: forall x. ResolvedAttributes -> Rep ResolvedAttributes x
Prelude.Generic)
newResolvedAttributes ::
ResolvedAttributes
newResolvedAttributes :: ResolvedAttributes
newResolvedAttributes =
ResolvedAttributes' :: Maybe ProblemType
-> Maybe AutoMLJobObjective
-> Maybe AutoMLJobCompletionCriteria
-> ResolvedAttributes
ResolvedAttributes'
{ $sel:problemType:ResolvedAttributes' :: Maybe ProblemType
problemType = Maybe ProblemType
forall a. Maybe a
Prelude.Nothing,
$sel:autoMLJobObjective:ResolvedAttributes' :: Maybe AutoMLJobObjective
autoMLJobObjective = Maybe AutoMLJobObjective
forall a. Maybe a
Prelude.Nothing,
$sel:completionCriteria:ResolvedAttributes' :: Maybe AutoMLJobCompletionCriteria
completionCriteria = Maybe AutoMLJobCompletionCriteria
forall a. Maybe a
Prelude.Nothing
}
resolvedAttributes_problemType :: Lens.Lens' ResolvedAttributes (Prelude.Maybe ProblemType)
resolvedAttributes_problemType :: (Maybe ProblemType -> f (Maybe ProblemType))
-> ResolvedAttributes -> f ResolvedAttributes
resolvedAttributes_problemType = (ResolvedAttributes -> Maybe ProblemType)
-> (ResolvedAttributes -> Maybe ProblemType -> ResolvedAttributes)
-> Lens
ResolvedAttributes
ResolvedAttributes
(Maybe ProblemType)
(Maybe ProblemType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ResolvedAttributes' {Maybe ProblemType
problemType :: Maybe ProblemType
$sel:problemType:ResolvedAttributes' :: ResolvedAttributes -> Maybe ProblemType
problemType} -> Maybe ProblemType
problemType) (\s :: ResolvedAttributes
s@ResolvedAttributes' {} Maybe ProblemType
a -> ResolvedAttributes
s {$sel:problemType:ResolvedAttributes' :: Maybe ProblemType
problemType = Maybe ProblemType
a} :: ResolvedAttributes)
resolvedAttributes_autoMLJobObjective :: Lens.Lens' ResolvedAttributes (Prelude.Maybe AutoMLJobObjective)
resolvedAttributes_autoMLJobObjective :: (Maybe AutoMLJobObjective -> f (Maybe AutoMLJobObjective))
-> ResolvedAttributes -> f ResolvedAttributes
resolvedAttributes_autoMLJobObjective = (ResolvedAttributes -> Maybe AutoMLJobObjective)
-> (ResolvedAttributes
-> Maybe AutoMLJobObjective -> ResolvedAttributes)
-> Lens
ResolvedAttributes
ResolvedAttributes
(Maybe AutoMLJobObjective)
(Maybe AutoMLJobObjective)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ResolvedAttributes' {Maybe AutoMLJobObjective
autoMLJobObjective :: Maybe AutoMLJobObjective
$sel:autoMLJobObjective:ResolvedAttributes' :: ResolvedAttributes -> Maybe AutoMLJobObjective
autoMLJobObjective} -> Maybe AutoMLJobObjective
autoMLJobObjective) (\s :: ResolvedAttributes
s@ResolvedAttributes' {} Maybe AutoMLJobObjective
a -> ResolvedAttributes
s {$sel:autoMLJobObjective:ResolvedAttributes' :: Maybe AutoMLJobObjective
autoMLJobObjective = Maybe AutoMLJobObjective
a} :: ResolvedAttributes)
resolvedAttributes_completionCriteria :: Lens.Lens' ResolvedAttributes (Prelude.Maybe AutoMLJobCompletionCriteria)
resolvedAttributes_completionCriteria :: (Maybe AutoMLJobCompletionCriteria
-> f (Maybe AutoMLJobCompletionCriteria))
-> ResolvedAttributes -> f ResolvedAttributes
resolvedAttributes_completionCriteria = (ResolvedAttributes -> Maybe AutoMLJobCompletionCriteria)
-> (ResolvedAttributes
-> Maybe AutoMLJobCompletionCriteria -> ResolvedAttributes)
-> Lens
ResolvedAttributes
ResolvedAttributes
(Maybe AutoMLJobCompletionCriteria)
(Maybe AutoMLJobCompletionCriteria)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ResolvedAttributes' {Maybe AutoMLJobCompletionCriteria
completionCriteria :: Maybe AutoMLJobCompletionCriteria
$sel:completionCriteria:ResolvedAttributes' :: ResolvedAttributes -> Maybe AutoMLJobCompletionCriteria
completionCriteria} -> Maybe AutoMLJobCompletionCriteria
completionCriteria) (\s :: ResolvedAttributes
s@ResolvedAttributes' {} Maybe AutoMLJobCompletionCriteria
a -> ResolvedAttributes
s {$sel:completionCriteria:ResolvedAttributes' :: Maybe AutoMLJobCompletionCriteria
completionCriteria = Maybe AutoMLJobCompletionCriteria
a} :: ResolvedAttributes)
instance Core.FromJSON ResolvedAttributes where
parseJSON :: Value -> Parser ResolvedAttributes
parseJSON =
String
-> (Object -> Parser ResolvedAttributes)
-> Value
-> Parser ResolvedAttributes
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"ResolvedAttributes"
( \Object
x ->
Maybe ProblemType
-> Maybe AutoMLJobObjective
-> Maybe AutoMLJobCompletionCriteria
-> ResolvedAttributes
ResolvedAttributes'
(Maybe ProblemType
-> Maybe AutoMLJobObjective
-> Maybe AutoMLJobCompletionCriteria
-> ResolvedAttributes)
-> Parser (Maybe ProblemType)
-> Parser
(Maybe AutoMLJobObjective
-> Maybe AutoMLJobCompletionCriteria -> ResolvedAttributes)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe ProblemType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ProblemType")
Parser
(Maybe AutoMLJobObjective
-> Maybe AutoMLJobCompletionCriteria -> ResolvedAttributes)
-> Parser (Maybe AutoMLJobObjective)
-> Parser (Maybe AutoMLJobCompletionCriteria -> ResolvedAttributes)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe AutoMLJobObjective)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AutoMLJobObjective")
Parser (Maybe AutoMLJobCompletionCriteria -> ResolvedAttributes)
-> Parser (Maybe AutoMLJobCompletionCriteria)
-> Parser ResolvedAttributes
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe AutoMLJobCompletionCriteria)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"CompletionCriteria")
)
instance Prelude.Hashable ResolvedAttributes
instance Prelude.NFData ResolvedAttributes