module Stratosphere.Greengrass.CoreDefinitionVersion (
module Exports, CoreDefinitionVersion(..), mkCoreDefinitionVersion
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Greengrass.CoreDefinitionVersion.CoreProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data CoreDefinitionVersion
=
CoreDefinitionVersion {CoreDefinitionVersion -> ()
haddock_workaround_ :: (),
CoreDefinitionVersion -> Value Text
coreDefinitionId :: (Value Prelude.Text),
CoreDefinitionVersion -> [CoreProperty]
cores :: [CoreProperty]}
deriving stock (CoreDefinitionVersion -> CoreDefinitionVersion -> Bool
(CoreDefinitionVersion -> CoreDefinitionVersion -> Bool)
-> (CoreDefinitionVersion -> CoreDefinitionVersion -> Bool)
-> Eq CoreDefinitionVersion
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CoreDefinitionVersion -> CoreDefinitionVersion -> Bool
== :: CoreDefinitionVersion -> CoreDefinitionVersion -> Bool
$c/= :: CoreDefinitionVersion -> CoreDefinitionVersion -> Bool
/= :: CoreDefinitionVersion -> CoreDefinitionVersion -> Bool
Prelude.Eq, Int -> CoreDefinitionVersion -> ShowS
[CoreDefinitionVersion] -> ShowS
CoreDefinitionVersion -> String
(Int -> CoreDefinitionVersion -> ShowS)
-> (CoreDefinitionVersion -> String)
-> ([CoreDefinitionVersion] -> ShowS)
-> Show CoreDefinitionVersion
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CoreDefinitionVersion -> ShowS
showsPrec :: Int -> CoreDefinitionVersion -> ShowS
$cshow :: CoreDefinitionVersion -> String
show :: CoreDefinitionVersion -> String
$cshowList :: [CoreDefinitionVersion] -> ShowS
showList :: [CoreDefinitionVersion] -> ShowS
Prelude.Show)
mkCoreDefinitionVersion ::
Value Prelude.Text -> [CoreProperty] -> CoreDefinitionVersion
mkCoreDefinitionVersion :: Value Text -> [CoreProperty] -> CoreDefinitionVersion
mkCoreDefinitionVersion Value Text
coreDefinitionId [CoreProperty]
cores
= CoreDefinitionVersion
{haddock_workaround_ :: ()
haddock_workaround_ = (), coreDefinitionId :: Value Text
coreDefinitionId = Value Text
coreDefinitionId,
cores :: [CoreProperty]
cores = [CoreProperty]
cores}
instance ToResourceProperties CoreDefinitionVersion where
toResourceProperties :: CoreDefinitionVersion -> ResourceProperties
toResourceProperties CoreDefinitionVersion {[CoreProperty]
()
Value Text
haddock_workaround_ :: CoreDefinitionVersion -> ()
coreDefinitionId :: CoreDefinitionVersion -> Value Text
cores :: CoreDefinitionVersion -> [CoreProperty]
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
cores :: [CoreProperty]
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::Greengrass::CoreDefinitionVersion",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"CoreDefinitionId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
coreDefinitionId,
Key
"Cores" Key -> [CoreProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [CoreProperty]
cores]}
instance JSON.ToJSON CoreDefinitionVersion where
toJSON :: CoreDefinitionVersion -> Value
toJSON CoreDefinitionVersion {[CoreProperty]
()
Value Text
haddock_workaround_ :: CoreDefinitionVersion -> ()
coreDefinitionId :: CoreDefinitionVersion -> Value Text
cores :: CoreDefinitionVersion -> [CoreProperty]
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
cores :: [CoreProperty]
..}
= [(Key, Value)] -> Value
JSON.object
[Key
"CoreDefinitionId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
coreDefinitionId,
Key
"Cores" Key -> [CoreProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [CoreProperty]
cores]
instance Property "CoreDefinitionId" CoreDefinitionVersion where
type PropertyType "CoreDefinitionId" CoreDefinitionVersion = Value Prelude.Text
set :: PropertyType "CoreDefinitionId" CoreDefinitionVersion
-> CoreDefinitionVersion -> CoreDefinitionVersion
set PropertyType "CoreDefinitionId" CoreDefinitionVersion
newValue CoreDefinitionVersion {[CoreProperty]
()
Value Text
haddock_workaround_ :: CoreDefinitionVersion -> ()
coreDefinitionId :: CoreDefinitionVersion -> Value Text
cores :: CoreDefinitionVersion -> [CoreProperty]
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
cores :: [CoreProperty]
..}
= CoreDefinitionVersion {coreDefinitionId :: Value Text
coreDefinitionId = PropertyType "CoreDefinitionId" CoreDefinitionVersion
Value Text
newValue, [CoreProperty]
()
haddock_workaround_ :: ()
cores :: [CoreProperty]
haddock_workaround_ :: ()
cores :: [CoreProperty]
..}
instance Property "Cores" CoreDefinitionVersion where
type PropertyType "Cores" CoreDefinitionVersion = [CoreProperty]
set :: PropertyType "Cores" CoreDefinitionVersion
-> CoreDefinitionVersion -> CoreDefinitionVersion
set PropertyType "Cores" CoreDefinitionVersion
newValue CoreDefinitionVersion {[CoreProperty]
()
Value Text
haddock_workaround_ :: CoreDefinitionVersion -> ()
coreDefinitionId :: CoreDefinitionVersion -> Value Text
cores :: CoreDefinitionVersion -> [CoreProperty]
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
cores :: [CoreProperty]
..}
= CoreDefinitionVersion {cores :: [CoreProperty]
cores = [CoreProperty]
PropertyType "Cores" CoreDefinitionVersion
newValue, ()
Value Text
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
haddock_workaround_ :: ()
coreDefinitionId :: Value Text
..}