module Stratosphere.Personalize.Solution.HpoConfigProperty (
module Exports, HpoConfigProperty(..), mkHpoConfigProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Personalize.Solution.AlgorithmHyperParameterRangesProperty as Exports
import {-# SOURCE #-} Stratosphere.Personalize.Solution.HpoObjectiveProperty as Exports
import {-# SOURCE #-} Stratosphere.Personalize.Solution.HpoResourceConfigProperty as Exports
import Stratosphere.ResourceProperties
data HpoConfigProperty
=
HpoConfigProperty {HpoConfigProperty -> ()
haddock_workaround_ :: (),
HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
algorithmHyperParameterRanges :: (Prelude.Maybe AlgorithmHyperParameterRangesProperty),
HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoObjective :: (Prelude.Maybe HpoObjectiveProperty),
HpoConfigProperty -> Maybe HpoResourceConfigProperty
hpoResourceConfig :: (Prelude.Maybe HpoResourceConfigProperty)}
deriving stock (HpoConfigProperty -> HpoConfigProperty -> Bool
(HpoConfigProperty -> HpoConfigProperty -> Bool)
-> (HpoConfigProperty -> HpoConfigProperty -> Bool)
-> Eq HpoConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: HpoConfigProperty -> HpoConfigProperty -> Bool
== :: HpoConfigProperty -> HpoConfigProperty -> Bool
$c/= :: HpoConfigProperty -> HpoConfigProperty -> Bool
/= :: HpoConfigProperty -> HpoConfigProperty -> Bool
Prelude.Eq, Int -> HpoConfigProperty -> ShowS
[HpoConfigProperty] -> ShowS
HpoConfigProperty -> String
(Int -> HpoConfigProperty -> ShowS)
-> (HpoConfigProperty -> String)
-> ([HpoConfigProperty] -> ShowS)
-> Show HpoConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> HpoConfigProperty -> ShowS
showsPrec :: Int -> HpoConfigProperty -> ShowS
$cshow :: HpoConfigProperty -> String
show :: HpoConfigProperty -> String
$cshowList :: [HpoConfigProperty] -> ShowS
showList :: [HpoConfigProperty] -> ShowS
Prelude.Show)
mkHpoConfigProperty :: HpoConfigProperty
mkHpoConfigProperty :: HpoConfigProperty
mkHpoConfigProperty
= HpoConfigProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (),
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
algorithmHyperParameterRanges = Maybe AlgorithmHyperParameterRangesProperty
forall a. Maybe a
Prelude.Nothing,
hpoObjective :: Maybe HpoObjectiveProperty
hpoObjective = Maybe HpoObjectiveProperty
forall a. Maybe a
Prelude.Nothing,
hpoResourceConfig :: Maybe HpoResourceConfigProperty
hpoResourceConfig = Maybe HpoResourceConfigProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties HpoConfigProperty where
toResourceProperties :: HpoConfigProperty -> ResourceProperties
toResourceProperties HpoConfigProperty {Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: HpoConfigProperty -> ()
algorithmHyperParameterRanges :: HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoResourceConfig :: HpoConfigProperty -> Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::Personalize::Solution.HpoConfig",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> AlgorithmHyperParameterRangesProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"AlgorithmHyperParameterRanges"
(AlgorithmHyperParameterRangesProperty -> (Key, Value))
-> Maybe AlgorithmHyperParameterRangesProperty
-> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe AlgorithmHyperParameterRangesProperty
algorithmHyperParameterRanges,
Key -> HpoObjectiveProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HpoObjective" (HpoObjectiveProperty -> (Key, Value))
-> Maybe HpoObjectiveProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HpoObjectiveProperty
hpoObjective,
Key -> HpoResourceConfigProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HpoResourceConfig" (HpoResourceConfigProperty -> (Key, Value))
-> Maybe HpoResourceConfigProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HpoResourceConfigProperty
hpoResourceConfig])}
instance JSON.ToJSON HpoConfigProperty where
toJSON :: HpoConfigProperty -> Value
toJSON HpoConfigProperty {Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: HpoConfigProperty -> ()
algorithmHyperParameterRanges :: HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoResourceConfig :: HpoConfigProperty -> Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> AlgorithmHyperParameterRangesProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"AlgorithmHyperParameterRanges"
(AlgorithmHyperParameterRangesProperty -> (Key, Value))
-> Maybe AlgorithmHyperParameterRangesProperty
-> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe AlgorithmHyperParameterRangesProperty
algorithmHyperParameterRanges,
Key -> HpoObjectiveProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HpoObjective" (HpoObjectiveProperty -> (Key, Value))
-> Maybe HpoObjectiveProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HpoObjectiveProperty
hpoObjective,
Key -> HpoResourceConfigProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HpoResourceConfig" (HpoResourceConfigProperty -> (Key, Value))
-> Maybe HpoResourceConfigProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HpoResourceConfigProperty
hpoResourceConfig]))
instance Property "AlgorithmHyperParameterRanges" HpoConfigProperty where
type PropertyType "AlgorithmHyperParameterRanges" HpoConfigProperty = AlgorithmHyperParameterRangesProperty
set :: PropertyType "AlgorithmHyperParameterRanges" HpoConfigProperty
-> HpoConfigProperty -> HpoConfigProperty
set PropertyType "AlgorithmHyperParameterRanges" HpoConfigProperty
newValue HpoConfigProperty {Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: HpoConfigProperty -> ()
algorithmHyperParameterRanges :: HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoResourceConfig :: HpoConfigProperty -> Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
= HpoConfigProperty
{algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
algorithmHyperParameterRanges = AlgorithmHyperParameterRangesProperty
-> Maybe AlgorithmHyperParameterRangesProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "AlgorithmHyperParameterRanges" HpoConfigProperty
AlgorithmHyperParameterRangesProperty
newValue, Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
()
haddock_workaround_ :: ()
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
instance Property "HpoObjective" HpoConfigProperty where
type PropertyType "HpoObjective" HpoConfigProperty = HpoObjectiveProperty
set :: PropertyType "HpoObjective" HpoConfigProperty
-> HpoConfigProperty -> HpoConfigProperty
set PropertyType "HpoObjective" HpoConfigProperty
newValue HpoConfigProperty {Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: HpoConfigProperty -> ()
algorithmHyperParameterRanges :: HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoResourceConfig :: HpoConfigProperty -> Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
= HpoConfigProperty {hpoObjective :: Maybe HpoObjectiveProperty
hpoObjective = HpoObjectiveProperty -> Maybe HpoObjectiveProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "HpoObjective" HpoConfigProperty
HpoObjectiveProperty
newValue, Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
instance Property "HpoResourceConfig" HpoConfigProperty where
type PropertyType "HpoResourceConfig" HpoConfigProperty = HpoResourceConfigProperty
set :: PropertyType "HpoResourceConfig" HpoConfigProperty
-> HpoConfigProperty -> HpoConfigProperty
set PropertyType "HpoResourceConfig" HpoConfigProperty
newValue HpoConfigProperty {Maybe HpoObjectiveProperty
Maybe HpoResourceConfigProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: HpoConfigProperty -> ()
algorithmHyperParameterRanges :: HpoConfigProperty -> Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: HpoConfigProperty -> Maybe HpoObjectiveProperty
hpoResourceConfig :: HpoConfigProperty -> Maybe HpoResourceConfigProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
hpoResourceConfig :: Maybe HpoResourceConfigProperty
..}
= HpoConfigProperty {hpoResourceConfig :: Maybe HpoResourceConfigProperty
hpoResourceConfig = HpoResourceConfigProperty -> Maybe HpoResourceConfigProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "HpoResourceConfig" HpoConfigProperty
HpoResourceConfigProperty
newValue, Maybe HpoObjectiveProperty
Maybe AlgorithmHyperParameterRangesProperty
()
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
haddock_workaround_ :: ()
algorithmHyperParameterRanges :: Maybe AlgorithmHyperParameterRangesProperty
hpoObjective :: Maybe HpoObjectiveProperty
..}