packages feed

stratosphere-emr (empty) → 1.0.0

raw patch · 132 files changed

+5511/−0 lines, 132 filesdep +aesondep +basedep +stratosphere

Dependencies added: aeson, base, stratosphere

Files

+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/EMR/Cluster.hs view
@@ -0,0 +1,279 @@+module Stratosphere.EMR.Cluster (+        module Exports, Cluster(..), mkCluster+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ApplicationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.AutoTerminationPolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.BootstrapActionConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.JobFlowInstancesConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.KerberosAttributesProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ManagedScalingPolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.PlacementGroupConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.StepConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Cluster+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html>+    Cluster {haddock_workaround_ :: (),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-additionalinfo>+             additionalInfo :: (Prelude.Maybe JSON.Object),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-applications>+             applications :: (Prelude.Maybe [ApplicationProperty]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-autoscalingrole>+             autoScalingRole :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-autoterminationpolicy>+             autoTerminationPolicy :: (Prelude.Maybe AutoTerminationPolicyProperty),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-bootstrapactions>+             bootstrapActions :: (Prelude.Maybe [BootstrapActionConfigProperty]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-configurations>+             configurations :: (Prelude.Maybe [ConfigurationProperty]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-customamiid>+             customAmiId :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumeiops>+             ebsRootVolumeIops :: (Prelude.Maybe (Value Prelude.Integer)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumesize>+             ebsRootVolumeSize :: (Prelude.Maybe (Value Prelude.Integer)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumethroughput>+             ebsRootVolumeThroughput :: (Prelude.Maybe (Value Prelude.Integer)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-instances>+             instances :: JobFlowInstancesConfigProperty,+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-jobflowrole>+             jobFlowRole :: (Value Prelude.Text),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-kerberosattributes>+             kerberosAttributes :: (Prelude.Maybe KerberosAttributesProperty),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-logencryptionkmskeyid>+             logEncryptionKmsKeyId :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-loguri>+             logUri :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-managedscalingpolicy>+             managedScalingPolicy :: (Prelude.Maybe ManagedScalingPolicyProperty),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-name>+             name :: (Value Prelude.Text),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-osreleaselabel>+             oSReleaseLabel :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-placementgroupconfigs>+             placementGroupConfigs :: (Prelude.Maybe [PlacementGroupConfigProperty]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-releaselabel>+             releaseLabel :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-scaledownbehavior>+             scaleDownBehavior :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-securityconfiguration>+             securityConfiguration :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-servicerole>+             serviceRole :: (Value Prelude.Text),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-stepconcurrencylevel>+             stepConcurrencyLevel :: (Prelude.Maybe (Value Prelude.Integer)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-steps>+             steps :: (Prelude.Maybe [StepConfigProperty]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-tags>+             tags :: (Prelude.Maybe [Tag]),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-visibletoallusers>+             visibleToAllUsers :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCluster ::+  JobFlowInstancesConfigProperty+  -> Value Prelude.Text+     -> Value Prelude.Text -> Value Prelude.Text -> Cluster+mkCluster instances jobFlowRole name serviceRole+  = Cluster+      {haddock_workaround_ = (), instances = instances,+       jobFlowRole = jobFlowRole, name = name, serviceRole = serviceRole,+       additionalInfo = Prelude.Nothing, applications = Prelude.Nothing,+       autoScalingRole = Prelude.Nothing,+       autoTerminationPolicy = Prelude.Nothing,+       bootstrapActions = Prelude.Nothing,+       configurations = Prelude.Nothing, customAmiId = Prelude.Nothing,+       ebsRootVolumeIops = Prelude.Nothing,+       ebsRootVolumeSize = Prelude.Nothing,+       ebsRootVolumeThroughput = Prelude.Nothing,+       kerberosAttributes = Prelude.Nothing,+       logEncryptionKmsKeyId = Prelude.Nothing, logUri = Prelude.Nothing,+       managedScalingPolicy = Prelude.Nothing,+       oSReleaseLabel = Prelude.Nothing,+       placementGroupConfigs = Prelude.Nothing,+       releaseLabel = Prelude.Nothing,+       scaleDownBehavior = Prelude.Nothing,+       securityConfiguration = Prelude.Nothing,+       stepConcurrencyLevel = Prelude.Nothing, steps = Prelude.Nothing,+       tags = Prelude.Nothing, visibleToAllUsers = Prelude.Nothing}+instance ToResourceProperties Cluster where+  toResourceProperties Cluster {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Instances" JSON..= instances, "JobFlowRole" JSON..= jobFlowRole,+                            "Name" JSON..= name, "ServiceRole" JSON..= serviceRole]+                           (Prelude.catMaybes+                              [(JSON..=) "AdditionalInfo" Prelude.<$> additionalInfo,+                               (JSON..=) "Applications" Prelude.<$> applications,+                               (JSON..=) "AutoScalingRole" Prelude.<$> autoScalingRole,+                               (JSON..=) "AutoTerminationPolicy"+                                 Prelude.<$> autoTerminationPolicy,+                               (JSON..=) "BootstrapActions" Prelude.<$> bootstrapActions,+                               (JSON..=) "Configurations" Prelude.<$> configurations,+                               (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                               (JSON..=) "EbsRootVolumeIops" Prelude.<$> ebsRootVolumeIops,+                               (JSON..=) "EbsRootVolumeSize" Prelude.<$> ebsRootVolumeSize,+                               (JSON..=) "EbsRootVolumeThroughput"+                                 Prelude.<$> ebsRootVolumeThroughput,+                               (JSON..=) "KerberosAttributes" Prelude.<$> kerberosAttributes,+                               (JSON..=) "LogEncryptionKmsKeyId"+                                 Prelude.<$> logEncryptionKmsKeyId,+                               (JSON..=) "LogUri" Prelude.<$> logUri,+                               (JSON..=) "ManagedScalingPolicy" Prelude.<$> managedScalingPolicy,+                               (JSON..=) "OSReleaseLabel" Prelude.<$> oSReleaseLabel,+                               (JSON..=) "PlacementGroupConfigs"+                                 Prelude.<$> placementGroupConfigs,+                               (JSON..=) "ReleaseLabel" Prelude.<$> releaseLabel,+                               (JSON..=) "ScaleDownBehavior" Prelude.<$> scaleDownBehavior,+                               (JSON..=) "SecurityConfiguration"+                                 Prelude.<$> securityConfiguration,+                               (JSON..=) "StepConcurrencyLevel" Prelude.<$> stepConcurrencyLevel,+                               (JSON..=) "Steps" Prelude.<$> steps,+                               (JSON..=) "Tags" Prelude.<$> tags,+                               (JSON..=) "VisibleToAllUsers" Prelude.<$> visibleToAllUsers]))}+instance JSON.ToJSON Cluster where+  toJSON Cluster {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Instances" JSON..= instances, "JobFlowRole" JSON..= jobFlowRole,+               "Name" JSON..= name, "ServiceRole" JSON..= serviceRole]+              (Prelude.catMaybes+                 [(JSON..=) "AdditionalInfo" Prelude.<$> additionalInfo,+                  (JSON..=) "Applications" Prelude.<$> applications,+                  (JSON..=) "AutoScalingRole" Prelude.<$> autoScalingRole,+                  (JSON..=) "AutoTerminationPolicy"+                    Prelude.<$> autoTerminationPolicy,+                  (JSON..=) "BootstrapActions" Prelude.<$> bootstrapActions,+                  (JSON..=) "Configurations" Prelude.<$> configurations,+                  (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                  (JSON..=) "EbsRootVolumeIops" Prelude.<$> ebsRootVolumeIops,+                  (JSON..=) "EbsRootVolumeSize" Prelude.<$> ebsRootVolumeSize,+                  (JSON..=) "EbsRootVolumeThroughput"+                    Prelude.<$> ebsRootVolumeThroughput,+                  (JSON..=) "KerberosAttributes" Prelude.<$> kerberosAttributes,+                  (JSON..=) "LogEncryptionKmsKeyId"+                    Prelude.<$> logEncryptionKmsKeyId,+                  (JSON..=) "LogUri" Prelude.<$> logUri,+                  (JSON..=) "ManagedScalingPolicy" Prelude.<$> managedScalingPolicy,+                  (JSON..=) "OSReleaseLabel" Prelude.<$> oSReleaseLabel,+                  (JSON..=) "PlacementGroupConfigs"+                    Prelude.<$> placementGroupConfigs,+                  (JSON..=) "ReleaseLabel" Prelude.<$> releaseLabel,+                  (JSON..=) "ScaleDownBehavior" Prelude.<$> scaleDownBehavior,+                  (JSON..=) "SecurityConfiguration"+                    Prelude.<$> securityConfiguration,+                  (JSON..=) "StepConcurrencyLevel" Prelude.<$> stepConcurrencyLevel,+                  (JSON..=) "Steps" Prelude.<$> steps,+                  (JSON..=) "Tags" Prelude.<$> tags,+                  (JSON..=) "VisibleToAllUsers" Prelude.<$> visibleToAllUsers])))+instance Property "AdditionalInfo" Cluster where+  type PropertyType "AdditionalInfo" Cluster = JSON.Object+  set newValue Cluster {..}+    = Cluster {additionalInfo = Prelude.pure newValue, ..}+instance Property "Applications" Cluster where+  type PropertyType "Applications" Cluster = [ApplicationProperty]+  set newValue Cluster {..}+    = Cluster {applications = Prelude.pure newValue, ..}+instance Property "AutoScalingRole" Cluster where+  type PropertyType "AutoScalingRole" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {autoScalingRole = Prelude.pure newValue, ..}+instance Property "AutoTerminationPolicy" Cluster where+  type PropertyType "AutoTerminationPolicy" Cluster = AutoTerminationPolicyProperty+  set newValue Cluster {..}+    = Cluster {autoTerminationPolicy = Prelude.pure newValue, ..}+instance Property "BootstrapActions" Cluster where+  type PropertyType "BootstrapActions" Cluster = [BootstrapActionConfigProperty]+  set newValue Cluster {..}+    = Cluster {bootstrapActions = Prelude.pure newValue, ..}+instance Property "Configurations" Cluster where+  type PropertyType "Configurations" Cluster = [ConfigurationProperty]+  set newValue Cluster {..}+    = Cluster {configurations = Prelude.pure newValue, ..}+instance Property "CustomAmiId" Cluster where+  type PropertyType "CustomAmiId" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {customAmiId = Prelude.pure newValue, ..}+instance Property "EbsRootVolumeIops" Cluster where+  type PropertyType "EbsRootVolumeIops" Cluster = Value Prelude.Integer+  set newValue Cluster {..}+    = Cluster {ebsRootVolumeIops = Prelude.pure newValue, ..}+instance Property "EbsRootVolumeSize" Cluster where+  type PropertyType "EbsRootVolumeSize" Cluster = Value Prelude.Integer+  set newValue Cluster {..}+    = Cluster {ebsRootVolumeSize = Prelude.pure newValue, ..}+instance Property "EbsRootVolumeThroughput" Cluster where+  type PropertyType "EbsRootVolumeThroughput" Cluster = Value Prelude.Integer+  set newValue Cluster {..}+    = Cluster {ebsRootVolumeThroughput = Prelude.pure newValue, ..}+instance Property "Instances" Cluster where+  type PropertyType "Instances" Cluster = JobFlowInstancesConfigProperty+  set newValue Cluster {..} = Cluster {instances = newValue, ..}+instance Property "JobFlowRole" Cluster where+  type PropertyType "JobFlowRole" Cluster = Value Prelude.Text+  set newValue Cluster {..} = Cluster {jobFlowRole = newValue, ..}+instance Property "KerberosAttributes" Cluster where+  type PropertyType "KerberosAttributes" Cluster = KerberosAttributesProperty+  set newValue Cluster {..}+    = Cluster {kerberosAttributes = Prelude.pure newValue, ..}+instance Property "LogEncryptionKmsKeyId" Cluster where+  type PropertyType "LogEncryptionKmsKeyId" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {logEncryptionKmsKeyId = Prelude.pure newValue, ..}+instance Property "LogUri" Cluster where+  type PropertyType "LogUri" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {logUri = Prelude.pure newValue, ..}+instance Property "ManagedScalingPolicy" Cluster where+  type PropertyType "ManagedScalingPolicy" Cluster = ManagedScalingPolicyProperty+  set newValue Cluster {..}+    = Cluster {managedScalingPolicy = Prelude.pure newValue, ..}+instance Property "Name" Cluster where+  type PropertyType "Name" Cluster = Value Prelude.Text+  set newValue Cluster {..} = Cluster {name = newValue, ..}+instance Property "OSReleaseLabel" Cluster where+  type PropertyType "OSReleaseLabel" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {oSReleaseLabel = Prelude.pure newValue, ..}+instance Property "PlacementGroupConfigs" Cluster where+  type PropertyType "PlacementGroupConfigs" Cluster = [PlacementGroupConfigProperty]+  set newValue Cluster {..}+    = Cluster {placementGroupConfigs = Prelude.pure newValue, ..}+instance Property "ReleaseLabel" Cluster where+  type PropertyType "ReleaseLabel" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {releaseLabel = Prelude.pure newValue, ..}+instance Property "ScaleDownBehavior" Cluster where+  type PropertyType "ScaleDownBehavior" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {scaleDownBehavior = Prelude.pure newValue, ..}+instance Property "SecurityConfiguration" Cluster where+  type PropertyType "SecurityConfiguration" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {securityConfiguration = Prelude.pure newValue, ..}+instance Property "ServiceRole" Cluster where+  type PropertyType "ServiceRole" Cluster = Value Prelude.Text+  set newValue Cluster {..} = Cluster {serviceRole = newValue, ..}+instance Property "StepConcurrencyLevel" Cluster where+  type PropertyType "StepConcurrencyLevel" Cluster = Value Prelude.Integer+  set newValue Cluster {..}+    = Cluster {stepConcurrencyLevel = Prelude.pure newValue, ..}+instance Property "Steps" Cluster where+  type PropertyType "Steps" Cluster = [StepConfigProperty]+  set newValue Cluster {..}+    = Cluster {steps = Prelude.pure newValue, ..}+instance Property "Tags" Cluster where+  type PropertyType "Tags" Cluster = [Tag]+  set newValue Cluster {..}+    = Cluster {tags = Prelude.pure newValue, ..}+instance Property "VisibleToAllUsers" Cluster where+  type PropertyType "VisibleToAllUsers" Cluster = Value Prelude.Bool+  set newValue Cluster {..}+    = Cluster {visibleToAllUsers = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ApplicationProperty.hs view
@@ -0,0 +1,62 @@+module Stratosphere.EMR.Cluster.ApplicationProperty (+        ApplicationProperty(..), mkApplicationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ApplicationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html>+    ApplicationProperty {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-additionalinfo>+                         additionalInfo :: (Prelude.Maybe (Prelude.Map Prelude.Text (Value Prelude.Text))),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-args>+                         args :: (Prelude.Maybe (ValueList Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-name>+                         name :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-version>+                         version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkApplicationProperty :: ApplicationProperty+mkApplicationProperty+  = ApplicationProperty+      {haddock_workaround_ = (), additionalInfo = Prelude.Nothing,+       args = Prelude.Nothing, name = Prelude.Nothing,+       version = Prelude.Nothing}+instance ToResourceProperties ApplicationProperty where+  toResourceProperties ApplicationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.Application",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AdditionalInfo" Prelude.<$> additionalInfo,+                            (JSON..=) "Args" Prelude.<$> args,+                            (JSON..=) "Name" Prelude.<$> name,+                            (JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON ApplicationProperty where+  toJSON ApplicationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AdditionalInfo" Prelude.<$> additionalInfo,+               (JSON..=) "Args" Prelude.<$> args,+               (JSON..=) "Name" Prelude.<$> name,+               (JSON..=) "Version" Prelude.<$> version]))+instance Property "AdditionalInfo" ApplicationProperty where+  type PropertyType "AdditionalInfo" ApplicationProperty = Prelude.Map Prelude.Text (Value Prelude.Text)+  set newValue ApplicationProperty {..}+    = ApplicationProperty {additionalInfo = Prelude.pure newValue, ..}+instance Property "Args" ApplicationProperty where+  type PropertyType "Args" ApplicationProperty = ValueList Prelude.Text+  set newValue ApplicationProperty {..}+    = ApplicationProperty {args = Prelude.pure newValue, ..}+instance Property "Name" ApplicationProperty where+  type PropertyType "Name" ApplicationProperty = Value Prelude.Text+  set newValue ApplicationProperty {..}+    = ApplicationProperty {name = Prelude.pure newValue, ..}+instance Property "Version" ApplicationProperty where+  type PropertyType "Version" ApplicationProperty = Value Prelude.Text+  set newValue ApplicationProperty {..}+    = ApplicationProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ApplicationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ApplicationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ApplicationProperty :: Prelude.Type+instance ToResourceProperties ApplicationProperty+instance Prelude.Eq ApplicationProperty+instance Prelude.Show ApplicationProperty+instance JSON.ToJSON ApplicationProperty
+ gen/Stratosphere/EMR/Cluster/AutoScalingPolicyProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.EMR.Cluster.AutoScalingPolicyProperty (+        module Exports, AutoScalingPolicyProperty(..),+        mkAutoScalingPolicyProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ScalingConstraintsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ScalingRuleProperty as Exports+import Stratosphere.ResourceProperties+data AutoScalingPolicyProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html>+    AutoScalingPolicyProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints>+                               constraints :: ScalingConstraintsProperty,+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules>+                               rules :: [ScalingRuleProperty]}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAutoScalingPolicyProperty ::+  ScalingConstraintsProperty+  -> [ScalingRuleProperty] -> AutoScalingPolicyProperty+mkAutoScalingPolicyProperty constraints rules+  = AutoScalingPolicyProperty+      {haddock_workaround_ = (), constraints = constraints,+       rules = rules}+instance ToResourceProperties AutoScalingPolicyProperty where+  toResourceProperties AutoScalingPolicyProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.AutoScalingPolicy",+         supportsTags = Prelude.False,+         properties = ["Constraints" JSON..= constraints,+                       "Rules" JSON..= rules]}+instance JSON.ToJSON AutoScalingPolicyProperty where+  toJSON AutoScalingPolicyProperty {..}+    = JSON.object+        ["Constraints" JSON..= constraints, "Rules" JSON..= rules]+instance Property "Constraints" AutoScalingPolicyProperty where+  type PropertyType "Constraints" AutoScalingPolicyProperty = ScalingConstraintsProperty+  set newValue AutoScalingPolicyProperty {..}+    = AutoScalingPolicyProperty {constraints = newValue, ..}+instance Property "Rules" AutoScalingPolicyProperty where+  type PropertyType "Rules" AutoScalingPolicyProperty = [ScalingRuleProperty]+  set newValue AutoScalingPolicyProperty {..}+    = AutoScalingPolicyProperty {rules = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/AutoScalingPolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.AutoScalingPolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AutoScalingPolicyProperty :: Prelude.Type+instance ToResourceProperties AutoScalingPolicyProperty+instance Prelude.Eq AutoScalingPolicyProperty+instance Prelude.Show AutoScalingPolicyProperty+instance JSON.ToJSON AutoScalingPolicyProperty
+ gen/Stratosphere/EMR/Cluster/AutoTerminationPolicyProperty.hs view
@@ -0,0 +1,37 @@+module Stratosphere.EMR.Cluster.AutoTerminationPolicyProperty (+        AutoTerminationPolicyProperty(..), mkAutoTerminationPolicyProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AutoTerminationPolicyProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoterminationpolicy.html>+    AutoTerminationPolicyProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoterminationpolicy.html#cfn-elasticmapreduce-cluster-autoterminationpolicy-idletimeout>+                                   idleTimeout :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAutoTerminationPolicyProperty :: AutoTerminationPolicyProperty+mkAutoTerminationPolicyProperty+  = AutoTerminationPolicyProperty+      {haddock_workaround_ = (), idleTimeout = Prelude.Nothing}+instance ToResourceProperties AutoTerminationPolicyProperty where+  toResourceProperties AutoTerminationPolicyProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.AutoTerminationPolicy",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "IdleTimeout" Prelude.<$> idleTimeout])}+instance JSON.ToJSON AutoTerminationPolicyProperty where+  toJSON AutoTerminationPolicyProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "IdleTimeout" Prelude.<$> idleTimeout]))+instance Property "IdleTimeout" AutoTerminationPolicyProperty where+  type PropertyType "IdleTimeout" AutoTerminationPolicyProperty = Value Prelude.Integer+  set newValue AutoTerminationPolicyProperty {..}+    = AutoTerminationPolicyProperty+        {idleTimeout = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/AutoTerminationPolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.AutoTerminationPolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AutoTerminationPolicyProperty :: Prelude.Type+instance ToResourceProperties AutoTerminationPolicyProperty+instance Prelude.Eq AutoTerminationPolicyProperty+instance Prelude.Show AutoTerminationPolicyProperty+instance JSON.ToJSON AutoTerminationPolicyProperty
+ gen/Stratosphere/EMR/Cluster/BootstrapActionConfigProperty.hs view
@@ -0,0 +1,47 @@+module Stratosphere.EMR.Cluster.BootstrapActionConfigProperty (+        module Exports, BootstrapActionConfigProperty(..),+        mkBootstrapActionConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ScriptBootstrapActionConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data BootstrapActionConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html>+    BootstrapActionConfigProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-name>+                                   name :: (Value Prelude.Text),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-scriptbootstrapaction>+                                   scriptBootstrapAction :: ScriptBootstrapActionConfigProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkBootstrapActionConfigProperty ::+  Value Prelude.Text+  -> ScriptBootstrapActionConfigProperty+     -> BootstrapActionConfigProperty+mkBootstrapActionConfigProperty name scriptBootstrapAction+  = BootstrapActionConfigProperty+      {haddock_workaround_ = (), name = name,+       scriptBootstrapAction = scriptBootstrapAction}+instance ToResourceProperties BootstrapActionConfigProperty where+  toResourceProperties BootstrapActionConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.BootstrapActionConfig",+         supportsTags = Prelude.False,+         properties = ["Name" JSON..= name,+                       "ScriptBootstrapAction" JSON..= scriptBootstrapAction]}+instance JSON.ToJSON BootstrapActionConfigProperty where+  toJSON BootstrapActionConfigProperty {..}+    = JSON.object+        ["Name" JSON..= name,+         "ScriptBootstrapAction" JSON..= scriptBootstrapAction]+instance Property "Name" BootstrapActionConfigProperty where+  type PropertyType "Name" BootstrapActionConfigProperty = Value Prelude.Text+  set newValue BootstrapActionConfigProperty {..}+    = BootstrapActionConfigProperty {name = newValue, ..}+instance Property "ScriptBootstrapAction" BootstrapActionConfigProperty where+  type PropertyType "ScriptBootstrapAction" BootstrapActionConfigProperty = ScriptBootstrapActionConfigProperty+  set newValue BootstrapActionConfigProperty {..}+    = BootstrapActionConfigProperty+        {scriptBootstrapAction = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/BootstrapActionConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.BootstrapActionConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data BootstrapActionConfigProperty :: Prelude.Type+instance ToResourceProperties BootstrapActionConfigProperty+instance Prelude.Eq BootstrapActionConfigProperty+instance Prelude.Show BootstrapActionConfigProperty+instance JSON.ToJSON BootstrapActionConfigProperty
+ gen/Stratosphere/EMR/Cluster/CloudWatchAlarmDefinitionProperty.hs view
@@ -0,0 +1,120 @@+module Stratosphere.EMR.Cluster.CloudWatchAlarmDefinitionProperty (+        module Exports, CloudWatchAlarmDefinitionProperty(..),+        mkCloudWatchAlarmDefinitionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.MetricDimensionProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CloudWatchAlarmDefinitionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html>+    CloudWatchAlarmDefinitionProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-comparisonoperator>+                                       comparisonOperator :: (Value Prelude.Text),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-dimensions>+                                       dimensions :: (Prelude.Maybe [MetricDimensionProperty]),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-evaluationperiods>+                                       evaluationPeriods :: (Prelude.Maybe (Value Prelude.Integer)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-metricname>+                                       metricName :: (Value Prelude.Text),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-namespace>+                                       namespace :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-period>+                                       period :: (Value Prelude.Integer),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-statistic>+                                       statistic :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-threshold>+                                       threshold :: (Value Prelude.Double),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-unit>+                                       unit :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCloudWatchAlarmDefinitionProperty ::+  Value Prelude.Text+  -> Value Prelude.Text+     -> Value Prelude.Integer+        -> Value Prelude.Double -> CloudWatchAlarmDefinitionProperty+mkCloudWatchAlarmDefinitionProperty+  comparisonOperator+  metricName+  period+  threshold+  = CloudWatchAlarmDefinitionProperty+      {haddock_workaround_ = (), comparisonOperator = comparisonOperator,+       metricName = metricName, period = period, threshold = threshold,+       dimensions = Prelude.Nothing, evaluationPeriods = Prelude.Nothing,+       namespace = Prelude.Nothing, statistic = Prelude.Nothing,+       unit = Prelude.Nothing}+instance ToResourceProperties CloudWatchAlarmDefinitionProperty where+  toResourceProperties CloudWatchAlarmDefinitionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.CloudWatchAlarmDefinition",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ComparisonOperator" JSON..= comparisonOperator,+                            "MetricName" JSON..= metricName, "Period" JSON..= period,+                            "Threshold" JSON..= threshold]+                           (Prelude.catMaybes+                              [(JSON..=) "Dimensions" Prelude.<$> dimensions,+                               (JSON..=) "EvaluationPeriods" Prelude.<$> evaluationPeriods,+                               (JSON..=) "Namespace" Prelude.<$> namespace,+                               (JSON..=) "Statistic" Prelude.<$> statistic,+                               (JSON..=) "Unit" Prelude.<$> unit]))}+instance JSON.ToJSON CloudWatchAlarmDefinitionProperty where+  toJSON CloudWatchAlarmDefinitionProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ComparisonOperator" JSON..= comparisonOperator,+               "MetricName" JSON..= metricName, "Period" JSON..= period,+               "Threshold" JSON..= threshold]+              (Prelude.catMaybes+                 [(JSON..=) "Dimensions" Prelude.<$> dimensions,+                  (JSON..=) "EvaluationPeriods" Prelude.<$> evaluationPeriods,+                  (JSON..=) "Namespace" Prelude.<$> namespace,+                  (JSON..=) "Statistic" Prelude.<$> statistic,+                  (JSON..=) "Unit" Prelude.<$> unit])))+instance Property "ComparisonOperator" CloudWatchAlarmDefinitionProperty where+  type PropertyType "ComparisonOperator" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {comparisonOperator = newValue, ..}+instance Property "Dimensions" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Dimensions" CloudWatchAlarmDefinitionProperty = [MetricDimensionProperty]+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {dimensions = Prelude.pure newValue, ..}+instance Property "EvaluationPeriods" CloudWatchAlarmDefinitionProperty where+  type PropertyType "EvaluationPeriods" CloudWatchAlarmDefinitionProperty = Value Prelude.Integer+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {evaluationPeriods = Prelude.pure newValue, ..}+instance Property "MetricName" CloudWatchAlarmDefinitionProperty where+  type PropertyType "MetricName" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {metricName = newValue, ..}+instance Property "Namespace" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Namespace" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {namespace = Prelude.pure newValue, ..}+instance Property "Period" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Period" CloudWatchAlarmDefinitionProperty = Value Prelude.Integer+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {period = newValue, ..}+instance Property "Statistic" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Statistic" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {statistic = Prelude.pure newValue, ..}+instance Property "Threshold" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Threshold" CloudWatchAlarmDefinitionProperty = Value Prelude.Double+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {threshold = newValue, ..}+instance Property "Unit" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Unit" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {unit = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/CloudWatchAlarmDefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.CloudWatchAlarmDefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CloudWatchAlarmDefinitionProperty :: Prelude.Type+instance ToResourceProperties CloudWatchAlarmDefinitionProperty+instance Prelude.Eq CloudWatchAlarmDefinitionProperty+instance Prelude.Show CloudWatchAlarmDefinitionProperty+instance JSON.ToJSON CloudWatchAlarmDefinitionProperty
+ gen/Stratosphere/EMR/Cluster/ComputeLimitsProperty.hs view
@@ -0,0 +1,86 @@+module Stratosphere.EMR.Cluster.ComputeLimitsProperty (+        ComputeLimitsProperty(..), mkComputeLimitsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ComputeLimitsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html>+    ComputeLimitsProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumcapacityunits>+                           maximumCapacityUnits :: (Value Prelude.Integer),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumcorecapacityunits>+                           maximumCoreCapacityUnits :: (Prelude.Maybe (Value Prelude.Integer)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-maximumondemandcapacityunits>+                           maximumOnDemandCapacityUnits :: (Prelude.Maybe (Value Prelude.Integer)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-minimumcapacityunits>+                           minimumCapacityUnits :: (Value Prelude.Integer),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html#cfn-elasticmapreduce-cluster-computelimits-unittype>+                           unitType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkComputeLimitsProperty ::+  Value Prelude.Integer+  -> Value Prelude.Integer+     -> Value Prelude.Text -> ComputeLimitsProperty+mkComputeLimitsProperty+  maximumCapacityUnits+  minimumCapacityUnits+  unitType+  = ComputeLimitsProperty+      {haddock_workaround_ = (),+       maximumCapacityUnits = maximumCapacityUnits,+       minimumCapacityUnits = minimumCapacityUnits, unitType = unitType,+       maximumCoreCapacityUnits = Prelude.Nothing,+       maximumOnDemandCapacityUnits = Prelude.Nothing}+instance ToResourceProperties ComputeLimitsProperty where+  toResourceProperties ComputeLimitsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ComputeLimits",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["MaximumCapacityUnits" JSON..= maximumCapacityUnits,+                            "MinimumCapacityUnits" JSON..= minimumCapacityUnits,+                            "UnitType" JSON..= unitType]+                           (Prelude.catMaybes+                              [(JSON..=) "MaximumCoreCapacityUnits"+                                 Prelude.<$> maximumCoreCapacityUnits,+                               (JSON..=) "MaximumOnDemandCapacityUnits"+                                 Prelude.<$> maximumOnDemandCapacityUnits]))}+instance JSON.ToJSON ComputeLimitsProperty where+  toJSON ComputeLimitsProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["MaximumCapacityUnits" JSON..= maximumCapacityUnits,+               "MinimumCapacityUnits" JSON..= minimumCapacityUnits,+               "UnitType" JSON..= unitType]+              (Prelude.catMaybes+                 [(JSON..=) "MaximumCoreCapacityUnits"+                    Prelude.<$> maximumCoreCapacityUnits,+                  (JSON..=) "MaximumOnDemandCapacityUnits"+                    Prelude.<$> maximumOnDemandCapacityUnits])))+instance Property "MaximumCapacityUnits" ComputeLimitsProperty where+  type PropertyType "MaximumCapacityUnits" ComputeLimitsProperty = Value Prelude.Integer+  set newValue ComputeLimitsProperty {..}+    = ComputeLimitsProperty {maximumCapacityUnits = newValue, ..}+instance Property "MaximumCoreCapacityUnits" ComputeLimitsProperty where+  type PropertyType "MaximumCoreCapacityUnits" ComputeLimitsProperty = Value Prelude.Integer+  set newValue ComputeLimitsProperty {..}+    = ComputeLimitsProperty+        {maximumCoreCapacityUnits = Prelude.pure newValue, ..}+instance Property "MaximumOnDemandCapacityUnits" ComputeLimitsProperty where+  type PropertyType "MaximumOnDemandCapacityUnits" ComputeLimitsProperty = Value Prelude.Integer+  set newValue ComputeLimitsProperty {..}+    = ComputeLimitsProperty+        {maximumOnDemandCapacityUnits = Prelude.pure newValue, ..}+instance Property "MinimumCapacityUnits" ComputeLimitsProperty where+  type PropertyType "MinimumCapacityUnits" ComputeLimitsProperty = Value Prelude.Integer+  set newValue ComputeLimitsProperty {..}+    = ComputeLimitsProperty {minimumCapacityUnits = newValue, ..}+instance Property "UnitType" ComputeLimitsProperty where+  type PropertyType "UnitType" ComputeLimitsProperty = Value Prelude.Text+  set newValue ComputeLimitsProperty {..}+    = ComputeLimitsProperty {unitType = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ComputeLimitsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ComputeLimitsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ComputeLimitsProperty :: Prelude.Type+instance ToResourceProperties ComputeLimitsProperty+instance Prelude.Eq ComputeLimitsProperty+instance Prelude.Show ComputeLimitsProperty+instance JSON.ToJSON ComputeLimitsProperty
+ gen/Stratosphere/EMR/Cluster/ConfigurationProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.EMR.Cluster.ConfigurationProperty (+        ConfigurationProperty(..), mkConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html>+    ConfigurationProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-classification>+                           classification :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurationproperties>+                           configurationProperties :: (Prelude.Maybe (Prelude.Map Prelude.Text (Value Prelude.Text))),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurations>+                           configurations :: (Prelude.Maybe [ConfigurationProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkConfigurationProperty :: ConfigurationProperty+mkConfigurationProperty+  = ConfigurationProperty+      {haddock_workaround_ = (), classification = Prelude.Nothing,+       configurationProperties = Prelude.Nothing,+       configurations = Prelude.Nothing}+instance ToResourceProperties ConfigurationProperty where+  toResourceProperties ConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.Configuration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Classification" Prelude.<$> classification,+                            (JSON..=) "ConfigurationProperties"+                              Prelude.<$> configurationProperties,+                            (JSON..=) "Configurations" Prelude.<$> configurations])}+instance JSON.ToJSON ConfigurationProperty where+  toJSON ConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Classification" Prelude.<$> classification,+               (JSON..=) "ConfigurationProperties"+                 Prelude.<$> configurationProperties,+               (JSON..=) "Configurations" Prelude.<$> configurations]))+instance Property "Classification" ConfigurationProperty where+  type PropertyType "Classification" ConfigurationProperty = Value Prelude.Text+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {classification = Prelude.pure newValue, ..}+instance Property "ConfigurationProperties" ConfigurationProperty where+  type PropertyType "ConfigurationProperties" ConfigurationProperty = Prelude.Map Prelude.Text (Value Prelude.Text)+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurationProperties = Prelude.pure newValue, ..}+instance Property "Configurations" ConfigurationProperty where+  type PropertyType "Configurations" ConfigurationProperty = [ConfigurationProperty]+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurations = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ConfigurationProperty :: Prelude.Type+instance ToResourceProperties ConfigurationProperty+instance Prelude.Eq ConfigurationProperty+instance Prelude.Show ConfigurationProperty+instance JSON.ToJSON ConfigurationProperty
+ gen/Stratosphere/EMR/Cluster/EbsBlockDeviceConfigProperty.hs view
@@ -0,0 +1,52 @@+module Stratosphere.EMR.Cluster.EbsBlockDeviceConfigProperty (+        module Exports, EbsBlockDeviceConfigProperty(..),+        mkEbsBlockDeviceConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.VolumeSpecificationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsBlockDeviceConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html>+    EbsBlockDeviceConfigProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumespecification>+                                  volumeSpecification :: VolumeSpecificationProperty,+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumesperinstance>+                                  volumesPerInstance :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsBlockDeviceConfigProperty ::+  VolumeSpecificationProperty -> EbsBlockDeviceConfigProperty+mkEbsBlockDeviceConfigProperty volumeSpecification+  = EbsBlockDeviceConfigProperty+      {haddock_workaround_ = (),+       volumeSpecification = volumeSpecification,+       volumesPerInstance = Prelude.Nothing}+instance ToResourceProperties EbsBlockDeviceConfigProperty where+  toResourceProperties EbsBlockDeviceConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.EbsBlockDeviceConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["VolumeSpecification" JSON..= volumeSpecification]+                           (Prelude.catMaybes+                              [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance]))}+instance JSON.ToJSON EbsBlockDeviceConfigProperty where+  toJSON EbsBlockDeviceConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["VolumeSpecification" JSON..= volumeSpecification]+              (Prelude.catMaybes+                 [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance])))+instance Property "VolumeSpecification" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumeSpecification" EbsBlockDeviceConfigProperty = VolumeSpecificationProperty+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty {volumeSpecification = newValue, ..}+instance Property "VolumesPerInstance" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumesPerInstance" EbsBlockDeviceConfigProperty = Value Prelude.Integer+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty+        {volumesPerInstance = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/EbsBlockDeviceConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.EbsBlockDeviceConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsBlockDeviceConfigProperty :: Prelude.Type+instance ToResourceProperties EbsBlockDeviceConfigProperty+instance Prelude.Eq EbsBlockDeviceConfigProperty+instance Prelude.Show EbsBlockDeviceConfigProperty+instance JSON.ToJSON EbsBlockDeviceConfigProperty
+ gen/Stratosphere/EMR/Cluster/EbsConfigurationProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.Cluster.EbsConfigurationProperty (+        module Exports, EbsConfigurationProperty(..),+        mkEbsConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.EbsBlockDeviceConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html>+    EbsConfigurationProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsblockdeviceconfigs>+                              ebsBlockDeviceConfigs :: (Prelude.Maybe [EbsBlockDeviceConfigProperty]),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsoptimized>+                              ebsOptimized :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsConfigurationProperty :: EbsConfigurationProperty+mkEbsConfigurationProperty+  = EbsConfigurationProperty+      {haddock_workaround_ = (), ebsBlockDeviceConfigs = Prelude.Nothing,+       ebsOptimized = Prelude.Nothing}+instance ToResourceProperties EbsConfigurationProperty where+  toResourceProperties EbsConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.EbsConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EbsBlockDeviceConfigs"+                              Prelude.<$> ebsBlockDeviceConfigs,+                            (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized])}+instance JSON.ToJSON EbsConfigurationProperty where+  toJSON EbsConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EbsBlockDeviceConfigs"+                 Prelude.<$> ebsBlockDeviceConfigs,+               (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized]))+instance Property "EbsBlockDeviceConfigs" EbsConfigurationProperty where+  type PropertyType "EbsBlockDeviceConfigs" EbsConfigurationProperty = [EbsBlockDeviceConfigProperty]+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsBlockDeviceConfigs = Prelude.pure newValue, ..}+instance Property "EbsOptimized" EbsConfigurationProperty where+  type PropertyType "EbsOptimized" EbsConfigurationProperty = Value Prelude.Bool+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsOptimized = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/EbsConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.EbsConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsConfigurationProperty :: Prelude.Type+instance ToResourceProperties EbsConfigurationProperty+instance Prelude.Eq EbsConfigurationProperty+instance Prelude.Show EbsConfigurationProperty+instance JSON.ToJSON EbsConfigurationProperty
+ gen/Stratosphere/EMR/Cluster/HadoopJarStepConfigProperty.hs view
@@ -0,0 +1,68 @@+module Stratosphere.EMR.Cluster.HadoopJarStepConfigProperty (+        module Exports, HadoopJarStepConfigProperty(..),+        mkHadoopJarStepConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.KeyValueProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data HadoopJarStepConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html>+    HadoopJarStepConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-args>+                                 args :: (Prelude.Maybe (ValueList Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-jar>+                                 jar :: (Value Prelude.Text),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-mainclass>+                                 mainClass :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-stepproperties>+                                 stepProperties :: (Prelude.Maybe [KeyValueProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkHadoopJarStepConfigProperty ::+  Value Prelude.Text -> HadoopJarStepConfigProperty+mkHadoopJarStepConfigProperty jar+  = HadoopJarStepConfigProperty+      {haddock_workaround_ = (), jar = jar, args = Prelude.Nothing,+       mainClass = Prelude.Nothing, stepProperties = Prelude.Nothing}+instance ToResourceProperties HadoopJarStepConfigProperty where+  toResourceProperties HadoopJarStepConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.HadoopJarStepConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Jar" JSON..= jar]+                           (Prelude.catMaybes+                              [(JSON..=) "Args" Prelude.<$> args,+                               (JSON..=) "MainClass" Prelude.<$> mainClass,+                               (JSON..=) "StepProperties" Prelude.<$> stepProperties]))}+instance JSON.ToJSON HadoopJarStepConfigProperty where+  toJSON HadoopJarStepConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Jar" JSON..= jar]+              (Prelude.catMaybes+                 [(JSON..=) "Args" Prelude.<$> args,+                  (JSON..=) "MainClass" Prelude.<$> mainClass,+                  (JSON..=) "StepProperties" Prelude.<$> stepProperties])))+instance Property "Args" HadoopJarStepConfigProperty where+  type PropertyType "Args" HadoopJarStepConfigProperty = ValueList Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty {args = Prelude.pure newValue, ..}+instance Property "Jar" HadoopJarStepConfigProperty where+  type PropertyType "Jar" HadoopJarStepConfigProperty = Value Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty {jar = newValue, ..}+instance Property "MainClass" HadoopJarStepConfigProperty where+  type PropertyType "MainClass" HadoopJarStepConfigProperty = Value Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty+        {mainClass = Prelude.pure newValue, ..}+instance Property "StepProperties" HadoopJarStepConfigProperty where+  type PropertyType "StepProperties" HadoopJarStepConfigProperty = [KeyValueProperty]+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty+        {stepProperties = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/HadoopJarStepConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.HadoopJarStepConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data HadoopJarStepConfigProperty :: Prelude.Type+instance ToResourceProperties HadoopJarStepConfigProperty+instance Prelude.Eq HadoopJarStepConfigProperty+instance Prelude.Show HadoopJarStepConfigProperty+instance JSON.ToJSON HadoopJarStepConfigProperty
+ gen/Stratosphere/EMR/Cluster/InstanceFleetConfigProperty.hs view
@@ -0,0 +1,91 @@+module Stratosphere.EMR.Cluster.InstanceFleetConfigProperty (+        module Exports, InstanceFleetConfigProperty(..),+        mkInstanceFleetConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.InstanceFleetProvisioningSpecificationsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.InstanceFleetResizingSpecificationsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.InstanceTypeConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceFleetConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html>+    InstanceFleetConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-instancetypeconfigs>+                                 instanceTypeConfigs :: (Prelude.Maybe [InstanceTypeConfigProperty]),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-launchspecifications>+                                 launchSpecifications :: (Prelude.Maybe InstanceFleetProvisioningSpecificationsProperty),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-name>+                                 name :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-resizespecifications>+                                 resizeSpecifications :: (Prelude.Maybe InstanceFleetResizingSpecificationsProperty),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetondemandcapacity>+                                 targetOnDemandCapacity :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetspotcapacity>+                                 targetSpotCapacity :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetConfigProperty :: InstanceFleetConfigProperty+mkInstanceFleetConfigProperty+  = InstanceFleetConfigProperty+      {haddock_workaround_ = (), instanceTypeConfigs = Prelude.Nothing,+       launchSpecifications = Prelude.Nothing, name = Prelude.Nothing,+       resizeSpecifications = Prelude.Nothing,+       targetOnDemandCapacity = Prelude.Nothing,+       targetSpotCapacity = Prelude.Nothing}+instance ToResourceProperties InstanceFleetConfigProperty where+  toResourceProperties InstanceFleetConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.InstanceFleetConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "InstanceTypeConfigs" Prelude.<$> instanceTypeConfigs,+                            (JSON..=) "LaunchSpecifications" Prelude.<$> launchSpecifications,+                            (JSON..=) "Name" Prelude.<$> name,+                            (JSON..=) "ResizeSpecifications" Prelude.<$> resizeSpecifications,+                            (JSON..=) "TargetOnDemandCapacity"+                              Prelude.<$> targetOnDemandCapacity,+                            (JSON..=) "TargetSpotCapacity" Prelude.<$> targetSpotCapacity])}+instance JSON.ToJSON InstanceFleetConfigProperty where+  toJSON InstanceFleetConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "InstanceTypeConfigs" Prelude.<$> instanceTypeConfigs,+               (JSON..=) "LaunchSpecifications" Prelude.<$> launchSpecifications,+               (JSON..=) "Name" Prelude.<$> name,+               (JSON..=) "ResizeSpecifications" Prelude.<$> resizeSpecifications,+               (JSON..=) "TargetOnDemandCapacity"+                 Prelude.<$> targetOnDemandCapacity,+               (JSON..=) "TargetSpotCapacity" Prelude.<$> targetSpotCapacity]))+instance Property "InstanceTypeConfigs" InstanceFleetConfigProperty where+  type PropertyType "InstanceTypeConfigs" InstanceFleetConfigProperty = [InstanceTypeConfigProperty]+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty+        {instanceTypeConfigs = Prelude.pure newValue, ..}+instance Property "LaunchSpecifications" InstanceFleetConfigProperty where+  type PropertyType "LaunchSpecifications" InstanceFleetConfigProperty = InstanceFleetProvisioningSpecificationsProperty+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty+        {launchSpecifications = Prelude.pure newValue, ..}+instance Property "Name" InstanceFleetConfigProperty where+  type PropertyType "Name" InstanceFleetConfigProperty = Value Prelude.Text+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty {name = Prelude.pure newValue, ..}+instance Property "ResizeSpecifications" InstanceFleetConfigProperty where+  type PropertyType "ResizeSpecifications" InstanceFleetConfigProperty = InstanceFleetResizingSpecificationsProperty+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty+        {resizeSpecifications = Prelude.pure newValue, ..}+instance Property "TargetOnDemandCapacity" InstanceFleetConfigProperty where+  type PropertyType "TargetOnDemandCapacity" InstanceFleetConfigProperty = Value Prelude.Integer+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty+        {targetOnDemandCapacity = Prelude.pure newValue, ..}+instance Property "TargetSpotCapacity" InstanceFleetConfigProperty where+  type PropertyType "TargetSpotCapacity" InstanceFleetConfigProperty = Value Prelude.Integer+  set newValue InstanceFleetConfigProperty {..}+    = InstanceFleetConfigProperty+        {targetSpotCapacity = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/InstanceFleetConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.InstanceFleetConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceFleetConfigProperty :: Prelude.Type+instance ToResourceProperties InstanceFleetConfigProperty+instance Prelude.Eq InstanceFleetConfigProperty+instance Prelude.Show InstanceFleetConfigProperty+instance JSON.ToJSON InstanceFleetConfigProperty
+ gen/Stratosphere/EMR/Cluster/InstanceFleetProvisioningSpecificationsProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EMR.Cluster.InstanceFleetProvisioningSpecificationsProperty (+        module Exports,+        InstanceFleetProvisioningSpecificationsProperty(..),+        mkInstanceFleetProvisioningSpecificationsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.OnDemandProvisioningSpecificationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.SpotProvisioningSpecificationProperty as Exports+import Stratosphere.ResourceProperties+data InstanceFleetProvisioningSpecificationsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html>+    InstanceFleetProvisioningSpecificationsProperty {haddock_workaround_ :: (),+                                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-ondemandspecification>+                                                     onDemandSpecification :: (Prelude.Maybe OnDemandProvisioningSpecificationProperty),+                                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-spotspecification>+                                                     spotSpecification :: (Prelude.Maybe SpotProvisioningSpecificationProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetProvisioningSpecificationsProperty ::+  InstanceFleetProvisioningSpecificationsProperty+mkInstanceFleetProvisioningSpecificationsProperty+  = InstanceFleetProvisioningSpecificationsProperty+      {haddock_workaround_ = (), onDemandSpecification = Prelude.Nothing,+       spotSpecification = Prelude.Nothing}+instance ToResourceProperties InstanceFleetProvisioningSpecificationsProperty where+  toResourceProperties+    InstanceFleetProvisioningSpecificationsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "OnDemandSpecification"+                              Prelude.<$> onDemandSpecification,+                            (JSON..=) "SpotSpecification" Prelude.<$> spotSpecification])}+instance JSON.ToJSON InstanceFleetProvisioningSpecificationsProperty where+  toJSON InstanceFleetProvisioningSpecificationsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "OnDemandSpecification"+                 Prelude.<$> onDemandSpecification,+               (JSON..=) "SpotSpecification" Prelude.<$> spotSpecification]))+instance Property "OnDemandSpecification" InstanceFleetProvisioningSpecificationsProperty where+  type PropertyType "OnDemandSpecification" InstanceFleetProvisioningSpecificationsProperty = OnDemandProvisioningSpecificationProperty+  set newValue InstanceFleetProvisioningSpecificationsProperty {..}+    = InstanceFleetProvisioningSpecificationsProperty+        {onDemandSpecification = Prelude.pure newValue, ..}+instance Property "SpotSpecification" InstanceFleetProvisioningSpecificationsProperty where+  type PropertyType "SpotSpecification" InstanceFleetProvisioningSpecificationsProperty = SpotProvisioningSpecificationProperty+  set newValue InstanceFleetProvisioningSpecificationsProperty {..}+    = InstanceFleetProvisioningSpecificationsProperty+        {spotSpecification = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/InstanceFleetProvisioningSpecificationsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.InstanceFleetProvisioningSpecificationsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceFleetProvisioningSpecificationsProperty :: Prelude.Type+instance ToResourceProperties InstanceFleetProvisioningSpecificationsProperty+instance Prelude.Eq InstanceFleetProvisioningSpecificationsProperty+instance Prelude.Show InstanceFleetProvisioningSpecificationsProperty+instance JSON.ToJSON InstanceFleetProvisioningSpecificationsProperty
+ gen/Stratosphere/EMR/Cluster/InstanceFleetResizingSpecificationsProperty.hs view
@@ -0,0 +1,56 @@+module Stratosphere.EMR.Cluster.InstanceFleetResizingSpecificationsProperty (+        module Exports, InstanceFleetResizingSpecificationsProperty(..),+        mkInstanceFleetResizingSpecificationsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.OnDemandResizingSpecificationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.SpotResizingSpecificationProperty as Exports+import Stratosphere.ResourceProperties+data InstanceFleetResizingSpecificationsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetresizingspecifications.html>+    InstanceFleetResizingSpecificationsProperty {haddock_workaround_ :: (),+                                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetresizingspecifications.html#cfn-elasticmapreduce-cluster-instancefleetresizingspecifications-ondemandresizespecification>+                                                 onDemandResizeSpecification :: (Prelude.Maybe OnDemandResizingSpecificationProperty),+                                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetresizingspecifications.html#cfn-elasticmapreduce-cluster-instancefleetresizingspecifications-spotresizespecification>+                                                 spotResizeSpecification :: (Prelude.Maybe SpotResizingSpecificationProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetResizingSpecificationsProperty ::+  InstanceFleetResizingSpecificationsProperty+mkInstanceFleetResizingSpecificationsProperty+  = InstanceFleetResizingSpecificationsProperty+      {haddock_workaround_ = (),+       onDemandResizeSpecification = Prelude.Nothing,+       spotResizeSpecification = Prelude.Nothing}+instance ToResourceProperties InstanceFleetResizingSpecificationsProperty where+  toResourceProperties+    InstanceFleetResizingSpecificationsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.InstanceFleetResizingSpecifications",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "OnDemandResizeSpecification"+                              Prelude.<$> onDemandResizeSpecification,+                            (JSON..=) "SpotResizeSpecification"+                              Prelude.<$> spotResizeSpecification])}+instance JSON.ToJSON InstanceFleetResizingSpecificationsProperty where+  toJSON InstanceFleetResizingSpecificationsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "OnDemandResizeSpecification"+                 Prelude.<$> onDemandResizeSpecification,+               (JSON..=) "SpotResizeSpecification"+                 Prelude.<$> spotResizeSpecification]))+instance Property "OnDemandResizeSpecification" InstanceFleetResizingSpecificationsProperty where+  type PropertyType "OnDemandResizeSpecification" InstanceFleetResizingSpecificationsProperty = OnDemandResizingSpecificationProperty+  set newValue InstanceFleetResizingSpecificationsProperty {..}+    = InstanceFleetResizingSpecificationsProperty+        {onDemandResizeSpecification = Prelude.pure newValue, ..}+instance Property "SpotResizeSpecification" InstanceFleetResizingSpecificationsProperty where+  type PropertyType "SpotResizeSpecification" InstanceFleetResizingSpecificationsProperty = SpotResizingSpecificationProperty+  set newValue InstanceFleetResizingSpecificationsProperty {..}+    = InstanceFleetResizingSpecificationsProperty+        {spotResizeSpecification = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/InstanceFleetResizingSpecificationsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.InstanceFleetResizingSpecificationsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceFleetResizingSpecificationsProperty :: Prelude.Type+instance ToResourceProperties InstanceFleetResizingSpecificationsProperty+instance Prelude.Eq InstanceFleetResizingSpecificationsProperty+instance Prelude.Show InstanceFleetResizingSpecificationsProperty+instance JSON.ToJSON InstanceFleetResizingSpecificationsProperty
+ gen/Stratosphere/EMR/Cluster/InstanceGroupConfigProperty.hs view
@@ -0,0 +1,117 @@+module Stratosphere.EMR.Cluster.InstanceGroupConfigProperty (+        module Exports, InstanceGroupConfigProperty(..),+        mkInstanceGroupConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.AutoScalingPolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.EbsConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceGroupConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html>+    InstanceGroupConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-autoscalingpolicy>+                                 autoScalingPolicy :: (Prelude.Maybe AutoScalingPolicyProperty),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-bidprice>+                                 bidPrice :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-configurations>+                                 configurations :: (Prelude.Maybe [ConfigurationProperty]),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-customamiid>+                                 customAmiId :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-ebsconfiguration>+                                 ebsConfiguration :: (Prelude.Maybe EbsConfigurationProperty),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancecount>+                                 instanceCount :: (Value Prelude.Integer),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancetype>+                                 instanceType :: (Value Prelude.Text),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-market>+                                 market :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-name>+                                 name :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceGroupConfigProperty ::+  Value Prelude.Integer+  -> Value Prelude.Text -> InstanceGroupConfigProperty+mkInstanceGroupConfigProperty instanceCount instanceType+  = InstanceGroupConfigProperty+      {haddock_workaround_ = (), instanceCount = instanceCount,+       instanceType = instanceType, autoScalingPolicy = Prelude.Nothing,+       bidPrice = Prelude.Nothing, configurations = Prelude.Nothing,+       customAmiId = Prelude.Nothing, ebsConfiguration = Prelude.Nothing,+       market = Prelude.Nothing, name = Prelude.Nothing}+instance ToResourceProperties InstanceGroupConfigProperty where+  toResourceProperties InstanceGroupConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.InstanceGroupConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["InstanceCount" JSON..= instanceCount,+                            "InstanceType" JSON..= instanceType]+                           (Prelude.catMaybes+                              [(JSON..=) "AutoScalingPolicy" Prelude.<$> autoScalingPolicy,+                               (JSON..=) "BidPrice" Prelude.<$> bidPrice,+                               (JSON..=) "Configurations" Prelude.<$> configurations,+                               (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                               (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                               (JSON..=) "Market" Prelude.<$> market,+                               (JSON..=) "Name" Prelude.<$> name]))}+instance JSON.ToJSON InstanceGroupConfigProperty where+  toJSON InstanceGroupConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["InstanceCount" JSON..= instanceCount,+               "InstanceType" JSON..= instanceType]+              (Prelude.catMaybes+                 [(JSON..=) "AutoScalingPolicy" Prelude.<$> autoScalingPolicy,+                  (JSON..=) "BidPrice" Prelude.<$> bidPrice,+                  (JSON..=) "Configurations" Prelude.<$> configurations,+                  (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                  (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                  (JSON..=) "Market" Prelude.<$> market,+                  (JSON..=) "Name" Prelude.<$> name])))+instance Property "AutoScalingPolicy" InstanceGroupConfigProperty where+  type PropertyType "AutoScalingPolicy" InstanceGroupConfigProperty = AutoScalingPolicyProperty+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty+        {autoScalingPolicy = Prelude.pure newValue, ..}+instance Property "BidPrice" InstanceGroupConfigProperty where+  type PropertyType "BidPrice" InstanceGroupConfigProperty = Value Prelude.Text+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty+        {bidPrice = Prelude.pure newValue, ..}+instance Property "Configurations" InstanceGroupConfigProperty where+  type PropertyType "Configurations" InstanceGroupConfigProperty = [ConfigurationProperty]+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty+        {configurations = Prelude.pure newValue, ..}+instance Property "CustomAmiId" InstanceGroupConfigProperty where+  type PropertyType "CustomAmiId" InstanceGroupConfigProperty = Value Prelude.Text+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty+        {customAmiId = Prelude.pure newValue, ..}+instance Property "EbsConfiguration" InstanceGroupConfigProperty where+  type PropertyType "EbsConfiguration" InstanceGroupConfigProperty = EbsConfigurationProperty+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty+        {ebsConfiguration = Prelude.pure newValue, ..}+instance Property "InstanceCount" InstanceGroupConfigProperty where+  type PropertyType "InstanceCount" InstanceGroupConfigProperty = Value Prelude.Integer+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty {instanceCount = newValue, ..}+instance Property "InstanceType" InstanceGroupConfigProperty where+  type PropertyType "InstanceType" InstanceGroupConfigProperty = Value Prelude.Text+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty {instanceType = newValue, ..}+instance Property "Market" InstanceGroupConfigProperty where+  type PropertyType "Market" InstanceGroupConfigProperty = Value Prelude.Text+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty {market = Prelude.pure newValue, ..}+instance Property "Name" InstanceGroupConfigProperty where+  type PropertyType "Name" InstanceGroupConfigProperty = Value Prelude.Text+  set newValue InstanceGroupConfigProperty {..}+    = InstanceGroupConfigProperty {name = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/InstanceGroupConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.InstanceGroupConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceGroupConfigProperty :: Prelude.Type+instance ToResourceProperties InstanceGroupConfigProperty+instance Prelude.Eq InstanceGroupConfigProperty+instance Prelude.Show InstanceGroupConfigProperty+instance JSON.ToJSON InstanceGroupConfigProperty
+ gen/Stratosphere/EMR/Cluster/InstanceTypeConfigProperty.hs view
@@ -0,0 +1,110 @@+module Stratosphere.EMR.Cluster.InstanceTypeConfigProperty (+        module Exports, InstanceTypeConfigProperty(..),+        mkInstanceTypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.EbsConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceTypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html>+    InstanceTypeConfigProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidprice>+                                bidPrice :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidpriceaspercentageofondemandprice>+                                bidPriceAsPercentageOfOnDemandPrice :: (Prelude.Maybe (Value Prelude.Double)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-configurations>+                                configurations :: (Prelude.Maybe [ConfigurationProperty]),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-customamiid>+                                customAmiId :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-ebsconfiguration>+                                ebsConfiguration :: (Prelude.Maybe EbsConfigurationProperty),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-instancetype>+                                instanceType :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-priority>+                                priority :: (Prelude.Maybe (Value Prelude.Double)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-weightedcapacity>+                                weightedCapacity :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceTypeConfigProperty ::+  Value Prelude.Text -> InstanceTypeConfigProperty+mkInstanceTypeConfigProperty instanceType+  = InstanceTypeConfigProperty+      {haddock_workaround_ = (), instanceType = instanceType,+       bidPrice = Prelude.Nothing,+       bidPriceAsPercentageOfOnDemandPrice = Prelude.Nothing,+       configurations = Prelude.Nothing, customAmiId = Prelude.Nothing,+       ebsConfiguration = Prelude.Nothing, priority = Prelude.Nothing,+       weightedCapacity = Prelude.Nothing}+instance ToResourceProperties InstanceTypeConfigProperty where+  toResourceProperties InstanceTypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.InstanceTypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["InstanceType" JSON..= instanceType]+                           (Prelude.catMaybes+                              [(JSON..=) "BidPrice" Prelude.<$> bidPrice,+                               (JSON..=) "BidPriceAsPercentageOfOnDemandPrice"+                                 Prelude.<$> bidPriceAsPercentageOfOnDemandPrice,+                               (JSON..=) "Configurations" Prelude.<$> configurations,+                               (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                               (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                               (JSON..=) "Priority" Prelude.<$> priority,+                               (JSON..=) "WeightedCapacity" Prelude.<$> weightedCapacity]))}+instance JSON.ToJSON InstanceTypeConfigProperty where+  toJSON InstanceTypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["InstanceType" JSON..= instanceType]+              (Prelude.catMaybes+                 [(JSON..=) "BidPrice" Prelude.<$> bidPrice,+                  (JSON..=) "BidPriceAsPercentageOfOnDemandPrice"+                    Prelude.<$> bidPriceAsPercentageOfOnDemandPrice,+                  (JSON..=) "Configurations" Prelude.<$> configurations,+                  (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                  (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                  (JSON..=) "Priority" Prelude.<$> priority,+                  (JSON..=) "WeightedCapacity" Prelude.<$> weightedCapacity])))+instance Property "BidPrice" InstanceTypeConfigProperty where+  type PropertyType "BidPrice" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {bidPrice = Prelude.pure newValue, ..}+instance Property "BidPriceAsPercentageOfOnDemandPrice" InstanceTypeConfigProperty where+  type PropertyType "BidPriceAsPercentageOfOnDemandPrice" InstanceTypeConfigProperty = Value Prelude.Double+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {bidPriceAsPercentageOfOnDemandPrice = Prelude.pure newValue, ..}+instance Property "Configurations" InstanceTypeConfigProperty where+  type PropertyType "Configurations" InstanceTypeConfigProperty = [ConfigurationProperty]+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {configurations = Prelude.pure newValue, ..}+instance Property "CustomAmiId" InstanceTypeConfigProperty where+  type PropertyType "CustomAmiId" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {customAmiId = Prelude.pure newValue, ..}+instance Property "EbsConfiguration" InstanceTypeConfigProperty where+  type PropertyType "EbsConfiguration" InstanceTypeConfigProperty = EbsConfigurationProperty+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {ebsConfiguration = Prelude.pure newValue, ..}+instance Property "InstanceType" InstanceTypeConfigProperty where+  type PropertyType "InstanceType" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {instanceType = newValue, ..}+instance Property "Priority" InstanceTypeConfigProperty where+  type PropertyType "Priority" InstanceTypeConfigProperty = Value Prelude.Double+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {priority = Prelude.pure newValue, ..}+instance Property "WeightedCapacity" InstanceTypeConfigProperty where+  type PropertyType "WeightedCapacity" InstanceTypeConfigProperty = Value Prelude.Integer+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {weightedCapacity = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/InstanceTypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.InstanceTypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceTypeConfigProperty :: Prelude.Type+instance ToResourceProperties InstanceTypeConfigProperty+instance Prelude.Eq InstanceTypeConfigProperty+instance Prelude.Show InstanceTypeConfigProperty+instance JSON.ToJSON InstanceTypeConfigProperty
+ gen/Stratosphere/EMR/Cluster/JobFlowInstancesConfigProperty.hs view
@@ -0,0 +1,233 @@+module Stratosphere.EMR.Cluster.JobFlowInstancesConfigProperty (+        module Exports, JobFlowInstancesConfigProperty(..),+        mkJobFlowInstancesConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.InstanceFleetConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.InstanceGroupConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.PlacementTypeProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data JobFlowInstancesConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html>+    JobFlowInstancesConfigProperty {haddock_workaround_ :: (),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalmastersecuritygroups>+                                    additionalMasterSecurityGroups :: (Prelude.Maybe (ValueList Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalslavesecuritygroups>+                                    additionalSlaveSecurityGroups :: (Prelude.Maybe (ValueList Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancefleet>+                                    coreInstanceFleet :: (Prelude.Maybe InstanceFleetConfigProperty),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancegroup>+                                    coreInstanceGroup :: (Prelude.Maybe InstanceGroupConfigProperty),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2keyname>+                                    ec2KeyName :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetid>+                                    ec2SubnetId :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetids>+                                    ec2SubnetIds :: (Prelude.Maybe (ValueList Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedmastersecuritygroup>+                                    emrManagedMasterSecurityGroup :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedslavesecuritygroup>+                                    emrManagedSlaveSecurityGroup :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-hadoopversion>+                                    hadoopVersion :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-keepjobflowalivewhennosteps>+                                    keepJobFlowAliveWhenNoSteps :: (Prelude.Maybe (Value Prelude.Bool)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancefleet>+                                    masterInstanceFleet :: (Prelude.Maybe InstanceFleetConfigProperty),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancegroup>+                                    masterInstanceGroup :: (Prelude.Maybe InstanceGroupConfigProperty),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-placement>+                                    placement :: (Prelude.Maybe PlacementTypeProperty),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-serviceaccesssecuritygroup>+                                    serviceAccessSecurityGroup :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-taskinstancefleets>+                                    taskInstanceFleets :: (Prelude.Maybe [InstanceFleetConfigProperty]),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-taskinstancegroups>+                                    taskInstanceGroups :: (Prelude.Maybe [InstanceGroupConfigProperty]),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-terminationprotected>+                                    terminationProtected :: (Prelude.Maybe (Value Prelude.Bool)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-unhealthynodereplacement>+                                    unhealthyNodeReplacement :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkJobFlowInstancesConfigProperty :: JobFlowInstancesConfigProperty+mkJobFlowInstancesConfigProperty+  = JobFlowInstancesConfigProperty+      {haddock_workaround_ = (),+       additionalMasterSecurityGroups = Prelude.Nothing,+       additionalSlaveSecurityGroups = Prelude.Nothing,+       coreInstanceFleet = Prelude.Nothing,+       coreInstanceGroup = Prelude.Nothing, ec2KeyName = Prelude.Nothing,+       ec2SubnetId = Prelude.Nothing, ec2SubnetIds = Prelude.Nothing,+       emrManagedMasterSecurityGroup = Prelude.Nothing,+       emrManagedSlaveSecurityGroup = Prelude.Nothing,+       hadoopVersion = Prelude.Nothing,+       keepJobFlowAliveWhenNoSteps = Prelude.Nothing,+       masterInstanceFleet = Prelude.Nothing,+       masterInstanceGroup = Prelude.Nothing, placement = Prelude.Nothing,+       serviceAccessSecurityGroup = Prelude.Nothing,+       taskInstanceFleets = Prelude.Nothing,+       taskInstanceGroups = Prelude.Nothing,+       terminationProtected = Prelude.Nothing,+       unhealthyNodeReplacement = Prelude.Nothing}+instance ToResourceProperties JobFlowInstancesConfigProperty where+  toResourceProperties JobFlowInstancesConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.JobFlowInstancesConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AdditionalMasterSecurityGroups"+                              Prelude.<$> additionalMasterSecurityGroups,+                            (JSON..=) "AdditionalSlaveSecurityGroups"+                              Prelude.<$> additionalSlaveSecurityGroups,+                            (JSON..=) "CoreInstanceFleet" Prelude.<$> coreInstanceFleet,+                            (JSON..=) "CoreInstanceGroup" Prelude.<$> coreInstanceGroup,+                            (JSON..=) "Ec2KeyName" Prelude.<$> ec2KeyName,+                            (JSON..=) "Ec2SubnetId" Prelude.<$> ec2SubnetId,+                            (JSON..=) "Ec2SubnetIds" Prelude.<$> ec2SubnetIds,+                            (JSON..=) "EmrManagedMasterSecurityGroup"+                              Prelude.<$> emrManagedMasterSecurityGroup,+                            (JSON..=) "EmrManagedSlaveSecurityGroup"+                              Prelude.<$> emrManagedSlaveSecurityGroup,+                            (JSON..=) "HadoopVersion" Prelude.<$> hadoopVersion,+                            (JSON..=) "KeepJobFlowAliveWhenNoSteps"+                              Prelude.<$> keepJobFlowAliveWhenNoSteps,+                            (JSON..=) "MasterInstanceFleet" Prelude.<$> masterInstanceFleet,+                            (JSON..=) "MasterInstanceGroup" Prelude.<$> masterInstanceGroup,+                            (JSON..=) "Placement" Prelude.<$> placement,+                            (JSON..=) "ServiceAccessSecurityGroup"+                              Prelude.<$> serviceAccessSecurityGroup,+                            (JSON..=) "TaskInstanceFleets" Prelude.<$> taskInstanceFleets,+                            (JSON..=) "TaskInstanceGroups" Prelude.<$> taskInstanceGroups,+                            (JSON..=) "TerminationProtected" Prelude.<$> terminationProtected,+                            (JSON..=) "UnhealthyNodeReplacement"+                              Prelude.<$> unhealthyNodeReplacement])}+instance JSON.ToJSON JobFlowInstancesConfigProperty where+  toJSON JobFlowInstancesConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AdditionalMasterSecurityGroups"+                 Prelude.<$> additionalMasterSecurityGroups,+               (JSON..=) "AdditionalSlaveSecurityGroups"+                 Prelude.<$> additionalSlaveSecurityGroups,+               (JSON..=) "CoreInstanceFleet" Prelude.<$> coreInstanceFleet,+               (JSON..=) "CoreInstanceGroup" Prelude.<$> coreInstanceGroup,+               (JSON..=) "Ec2KeyName" Prelude.<$> ec2KeyName,+               (JSON..=) "Ec2SubnetId" Prelude.<$> ec2SubnetId,+               (JSON..=) "Ec2SubnetIds" Prelude.<$> ec2SubnetIds,+               (JSON..=) "EmrManagedMasterSecurityGroup"+                 Prelude.<$> emrManagedMasterSecurityGroup,+               (JSON..=) "EmrManagedSlaveSecurityGroup"+                 Prelude.<$> emrManagedSlaveSecurityGroup,+               (JSON..=) "HadoopVersion" Prelude.<$> hadoopVersion,+               (JSON..=) "KeepJobFlowAliveWhenNoSteps"+                 Prelude.<$> keepJobFlowAliveWhenNoSteps,+               (JSON..=) "MasterInstanceFleet" Prelude.<$> masterInstanceFleet,+               (JSON..=) "MasterInstanceGroup" Prelude.<$> masterInstanceGroup,+               (JSON..=) "Placement" Prelude.<$> placement,+               (JSON..=) "ServiceAccessSecurityGroup"+                 Prelude.<$> serviceAccessSecurityGroup,+               (JSON..=) "TaskInstanceFleets" Prelude.<$> taskInstanceFleets,+               (JSON..=) "TaskInstanceGroups" Prelude.<$> taskInstanceGroups,+               (JSON..=) "TerminationProtected" Prelude.<$> terminationProtected,+               (JSON..=) "UnhealthyNodeReplacement"+                 Prelude.<$> unhealthyNodeReplacement]))+instance Property "AdditionalMasterSecurityGroups" JobFlowInstancesConfigProperty where+  type PropertyType "AdditionalMasterSecurityGroups" JobFlowInstancesConfigProperty = ValueList Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {additionalMasterSecurityGroups = Prelude.pure newValue, ..}+instance Property "AdditionalSlaveSecurityGroups" JobFlowInstancesConfigProperty where+  type PropertyType "AdditionalSlaveSecurityGroups" JobFlowInstancesConfigProperty = ValueList Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {additionalSlaveSecurityGroups = Prelude.pure newValue, ..}+instance Property "CoreInstanceFleet" JobFlowInstancesConfigProperty where+  type PropertyType "CoreInstanceFleet" JobFlowInstancesConfigProperty = InstanceFleetConfigProperty+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {coreInstanceFleet = Prelude.pure newValue, ..}+instance Property "CoreInstanceGroup" JobFlowInstancesConfigProperty where+  type PropertyType "CoreInstanceGroup" JobFlowInstancesConfigProperty = InstanceGroupConfigProperty+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {coreInstanceGroup = Prelude.pure newValue, ..}+instance Property "Ec2KeyName" JobFlowInstancesConfigProperty where+  type PropertyType "Ec2KeyName" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {ec2KeyName = Prelude.pure newValue, ..}+instance Property "Ec2SubnetId" JobFlowInstancesConfigProperty where+  type PropertyType "Ec2SubnetId" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {ec2SubnetId = Prelude.pure newValue, ..}+instance Property "Ec2SubnetIds" JobFlowInstancesConfigProperty where+  type PropertyType "Ec2SubnetIds" JobFlowInstancesConfigProperty = ValueList Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {ec2SubnetIds = Prelude.pure newValue, ..}+instance Property "EmrManagedMasterSecurityGroup" JobFlowInstancesConfigProperty where+  type PropertyType "EmrManagedMasterSecurityGroup" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {emrManagedMasterSecurityGroup = Prelude.pure newValue, ..}+instance Property "EmrManagedSlaveSecurityGroup" JobFlowInstancesConfigProperty where+  type PropertyType "EmrManagedSlaveSecurityGroup" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {emrManagedSlaveSecurityGroup = Prelude.pure newValue, ..}+instance Property "HadoopVersion" JobFlowInstancesConfigProperty where+  type PropertyType "HadoopVersion" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {hadoopVersion = Prelude.pure newValue, ..}+instance Property "KeepJobFlowAliveWhenNoSteps" JobFlowInstancesConfigProperty where+  type PropertyType "KeepJobFlowAliveWhenNoSteps" JobFlowInstancesConfigProperty = Value Prelude.Bool+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {keepJobFlowAliveWhenNoSteps = Prelude.pure newValue, ..}+instance Property "MasterInstanceFleet" JobFlowInstancesConfigProperty where+  type PropertyType "MasterInstanceFleet" JobFlowInstancesConfigProperty = InstanceFleetConfigProperty+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {masterInstanceFleet = Prelude.pure newValue, ..}+instance Property "MasterInstanceGroup" JobFlowInstancesConfigProperty where+  type PropertyType "MasterInstanceGroup" JobFlowInstancesConfigProperty = InstanceGroupConfigProperty+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {masterInstanceGroup = Prelude.pure newValue, ..}+instance Property "Placement" JobFlowInstancesConfigProperty where+  type PropertyType "Placement" JobFlowInstancesConfigProperty = PlacementTypeProperty+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {placement = Prelude.pure newValue, ..}+instance Property "ServiceAccessSecurityGroup" JobFlowInstancesConfigProperty where+  type PropertyType "ServiceAccessSecurityGroup" JobFlowInstancesConfigProperty = Value Prelude.Text+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {serviceAccessSecurityGroup = Prelude.pure newValue, ..}+instance Property "TaskInstanceFleets" JobFlowInstancesConfigProperty where+  type PropertyType "TaskInstanceFleets" JobFlowInstancesConfigProperty = [InstanceFleetConfigProperty]+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {taskInstanceFleets = Prelude.pure newValue, ..}+instance Property "TaskInstanceGroups" JobFlowInstancesConfigProperty where+  type PropertyType "TaskInstanceGroups" JobFlowInstancesConfigProperty = [InstanceGroupConfigProperty]+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {taskInstanceGroups = Prelude.pure newValue, ..}+instance Property "TerminationProtected" JobFlowInstancesConfigProperty where+  type PropertyType "TerminationProtected" JobFlowInstancesConfigProperty = Value Prelude.Bool+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {terminationProtected = Prelude.pure newValue, ..}+instance Property "UnhealthyNodeReplacement" JobFlowInstancesConfigProperty where+  type PropertyType "UnhealthyNodeReplacement" JobFlowInstancesConfigProperty = Value Prelude.Bool+  set newValue JobFlowInstancesConfigProperty {..}+    = JobFlowInstancesConfigProperty+        {unhealthyNodeReplacement = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/JobFlowInstancesConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.JobFlowInstancesConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data JobFlowInstancesConfigProperty :: Prelude.Type+instance ToResourceProperties JobFlowInstancesConfigProperty+instance Prelude.Eq JobFlowInstancesConfigProperty+instance Prelude.Show JobFlowInstancesConfigProperty+instance JSON.ToJSON JobFlowInstancesConfigProperty
+ gen/Stratosphere/EMR/Cluster/KerberosAttributesProperty.hs view
@@ -0,0 +1,80 @@+module Stratosphere.EMR.Cluster.KerberosAttributesProperty (+        KerberosAttributesProperty(..), mkKerberosAttributesProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data KerberosAttributesProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html>+    KerberosAttributesProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinpassword>+                                aDDomainJoinPassword :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinuser>+                                aDDomainJoinUser :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-crossrealmtrustprincipalpassword>+                                crossRealmTrustPrincipalPassword :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-kdcadminpassword>+                                kdcAdminPassword :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-realm>+                                realm :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkKerberosAttributesProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> KerberosAttributesProperty+mkKerberosAttributesProperty kdcAdminPassword realm+  = KerberosAttributesProperty+      {haddock_workaround_ = (), kdcAdminPassword = kdcAdminPassword,+       realm = realm, aDDomainJoinPassword = Prelude.Nothing,+       aDDomainJoinUser = Prelude.Nothing,+       crossRealmTrustPrincipalPassword = Prelude.Nothing}+instance ToResourceProperties KerberosAttributesProperty where+  toResourceProperties KerberosAttributesProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.KerberosAttributes",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["KdcAdminPassword" JSON..= kdcAdminPassword,+                            "Realm" JSON..= realm]+                           (Prelude.catMaybes+                              [(JSON..=) "ADDomainJoinPassword" Prelude.<$> aDDomainJoinPassword,+                               (JSON..=) "ADDomainJoinUser" Prelude.<$> aDDomainJoinUser,+                               (JSON..=) "CrossRealmTrustPrincipalPassword"+                                 Prelude.<$> crossRealmTrustPrincipalPassword]))}+instance JSON.ToJSON KerberosAttributesProperty where+  toJSON KerberosAttributesProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["KdcAdminPassword" JSON..= kdcAdminPassword,+               "Realm" JSON..= realm]+              (Prelude.catMaybes+                 [(JSON..=) "ADDomainJoinPassword" Prelude.<$> aDDomainJoinPassword,+                  (JSON..=) "ADDomainJoinUser" Prelude.<$> aDDomainJoinUser,+                  (JSON..=) "CrossRealmTrustPrincipalPassword"+                    Prelude.<$> crossRealmTrustPrincipalPassword])))+instance Property "ADDomainJoinPassword" KerberosAttributesProperty where+  type PropertyType "ADDomainJoinPassword" KerberosAttributesProperty = Value Prelude.Text+  set newValue KerberosAttributesProperty {..}+    = KerberosAttributesProperty+        {aDDomainJoinPassword = Prelude.pure newValue, ..}+instance Property "ADDomainJoinUser" KerberosAttributesProperty where+  type PropertyType "ADDomainJoinUser" KerberosAttributesProperty = Value Prelude.Text+  set newValue KerberosAttributesProperty {..}+    = KerberosAttributesProperty+        {aDDomainJoinUser = Prelude.pure newValue, ..}+instance Property "CrossRealmTrustPrincipalPassword" KerberosAttributesProperty where+  type PropertyType "CrossRealmTrustPrincipalPassword" KerberosAttributesProperty = Value Prelude.Text+  set newValue KerberosAttributesProperty {..}+    = KerberosAttributesProperty+        {crossRealmTrustPrincipalPassword = Prelude.pure newValue, ..}+instance Property "KdcAdminPassword" KerberosAttributesProperty where+  type PropertyType "KdcAdminPassword" KerberosAttributesProperty = Value Prelude.Text+  set newValue KerberosAttributesProperty {..}+    = KerberosAttributesProperty {kdcAdminPassword = newValue, ..}+instance Property "Realm" KerberosAttributesProperty where+  type PropertyType "Realm" KerberosAttributesProperty = Value Prelude.Text+  set newValue KerberosAttributesProperty {..}+    = KerberosAttributesProperty {realm = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/KerberosAttributesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.KerberosAttributesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data KerberosAttributesProperty :: Prelude.Type+instance ToResourceProperties KerberosAttributesProperty+instance Prelude.Eq KerberosAttributesProperty+instance Prelude.Show KerberosAttributesProperty+instance JSON.ToJSON KerberosAttributesProperty
+ gen/Stratosphere/EMR/Cluster/KeyValueProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.EMR.Cluster.KeyValueProperty (+        KeyValueProperty(..), mkKeyValueProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data KeyValueProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html>+    KeyValueProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-key>+                      key :: (Prelude.Maybe (Value Prelude.Text)),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-value>+                      value :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkKeyValueProperty :: KeyValueProperty+mkKeyValueProperty+  = KeyValueProperty+      {haddock_workaround_ = (), key = Prelude.Nothing,+       value = Prelude.Nothing}+instance ToResourceProperties KeyValueProperty where+  toResourceProperties KeyValueProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.KeyValue",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Key" Prelude.<$> key,+                            (JSON..=) "Value" Prelude.<$> value])}+instance JSON.ToJSON KeyValueProperty where+  toJSON KeyValueProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Key" Prelude.<$> key,+               (JSON..=) "Value" Prelude.<$> value]))+instance Property "Key" KeyValueProperty where+  type PropertyType "Key" KeyValueProperty = Value Prelude.Text+  set newValue KeyValueProperty {..}+    = KeyValueProperty {key = Prelude.pure newValue, ..}+instance Property "Value" KeyValueProperty where+  type PropertyType "Value" KeyValueProperty = Value Prelude.Text+  set newValue KeyValueProperty {..}+    = KeyValueProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/KeyValueProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.KeyValueProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data KeyValueProperty :: Prelude.Type+instance ToResourceProperties KeyValueProperty+instance Prelude.Eq KeyValueProperty+instance Prelude.Show KeyValueProperty+instance JSON.ToJSON KeyValueProperty
+ gen/Stratosphere/EMR/Cluster/ManagedScalingPolicyProperty.hs view
@@ -0,0 +1,61 @@+module Stratosphere.EMR.Cluster.ManagedScalingPolicyProperty (+        module Exports, ManagedScalingPolicyProperty(..),+        mkManagedScalingPolicyProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ComputeLimitsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManagedScalingPolicyProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html>+    ManagedScalingPolicyProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html#cfn-elasticmapreduce-cluster-managedscalingpolicy-computelimits>+                                  computeLimits :: (Prelude.Maybe ComputeLimitsProperty),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html#cfn-elasticmapreduce-cluster-managedscalingpolicy-scalingstrategy>+                                  scalingStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html#cfn-elasticmapreduce-cluster-managedscalingpolicy-utilizationperformanceindex>+                                  utilizationPerformanceIndex :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManagedScalingPolicyProperty :: ManagedScalingPolicyProperty+mkManagedScalingPolicyProperty+  = ManagedScalingPolicyProperty+      {haddock_workaround_ = (), computeLimits = Prelude.Nothing,+       scalingStrategy = Prelude.Nothing,+       utilizationPerformanceIndex = Prelude.Nothing}+instance ToResourceProperties ManagedScalingPolicyProperty where+  toResourceProperties ManagedScalingPolicyProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ManagedScalingPolicy",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ComputeLimits" Prelude.<$> computeLimits,+                            (JSON..=) "ScalingStrategy" Prelude.<$> scalingStrategy,+                            (JSON..=) "UtilizationPerformanceIndex"+                              Prelude.<$> utilizationPerformanceIndex])}+instance JSON.ToJSON ManagedScalingPolicyProperty where+  toJSON ManagedScalingPolicyProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ComputeLimits" Prelude.<$> computeLimits,+               (JSON..=) "ScalingStrategy" Prelude.<$> scalingStrategy,+               (JSON..=) "UtilizationPerformanceIndex"+                 Prelude.<$> utilizationPerformanceIndex]))+instance Property "ComputeLimits" ManagedScalingPolicyProperty where+  type PropertyType "ComputeLimits" ManagedScalingPolicyProperty = ComputeLimitsProperty+  set newValue ManagedScalingPolicyProperty {..}+    = ManagedScalingPolicyProperty+        {computeLimits = Prelude.pure newValue, ..}+instance Property "ScalingStrategy" ManagedScalingPolicyProperty where+  type PropertyType "ScalingStrategy" ManagedScalingPolicyProperty = Value Prelude.Text+  set newValue ManagedScalingPolicyProperty {..}+    = ManagedScalingPolicyProperty+        {scalingStrategy = Prelude.pure newValue, ..}+instance Property "UtilizationPerformanceIndex" ManagedScalingPolicyProperty where+  type PropertyType "UtilizationPerformanceIndex" ManagedScalingPolicyProperty = Value Prelude.Integer+  set newValue ManagedScalingPolicyProperty {..}+    = ManagedScalingPolicyProperty+        {utilizationPerformanceIndex = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ManagedScalingPolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ManagedScalingPolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManagedScalingPolicyProperty :: Prelude.Type+instance ToResourceProperties ManagedScalingPolicyProperty+instance Prelude.Eq ManagedScalingPolicyProperty+instance Prelude.Show ManagedScalingPolicyProperty+instance JSON.ToJSON ManagedScalingPolicyProperty
+ gen/Stratosphere/EMR/Cluster/MetricDimensionProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.EMR.Cluster.MetricDimensionProperty (+        MetricDimensionProperty(..), mkMetricDimensionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MetricDimensionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html>+    MetricDimensionProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-key>+                             key :: (Value Prelude.Text),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-value>+                             value :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMetricDimensionProperty ::+  Value Prelude.Text -> Value Prelude.Text -> MetricDimensionProperty+mkMetricDimensionProperty key value+  = MetricDimensionProperty+      {haddock_workaround_ = (), key = key, value = value}+instance ToResourceProperties MetricDimensionProperty where+  toResourceProperties MetricDimensionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.MetricDimension",+         supportsTags = Prelude.False,+         properties = ["Key" JSON..= key, "Value" JSON..= value]}+instance JSON.ToJSON MetricDimensionProperty where+  toJSON MetricDimensionProperty {..}+    = JSON.object ["Key" JSON..= key, "Value" JSON..= value]+instance Property "Key" MetricDimensionProperty where+  type PropertyType "Key" MetricDimensionProperty = Value Prelude.Text+  set newValue MetricDimensionProperty {..}+    = MetricDimensionProperty {key = newValue, ..}+instance Property "Value" MetricDimensionProperty where+  type PropertyType "Value" MetricDimensionProperty = Value Prelude.Text+  set newValue MetricDimensionProperty {..}+    = MetricDimensionProperty {value = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/MetricDimensionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.MetricDimensionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MetricDimensionProperty :: Prelude.Type+instance ToResourceProperties MetricDimensionProperty+instance Prelude.Eq MetricDimensionProperty+instance Prelude.Show MetricDimensionProperty+instance JSON.ToJSON MetricDimensionProperty
+ gen/Stratosphere/EMR/Cluster/OnDemandCapacityReservationOptionsProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.Cluster.OnDemandCapacityReservationOptionsProperty (+        OnDemandCapacityReservationOptionsProperty(..),+        mkOnDemandCapacityReservationOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandCapacityReservationOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandcapacityreservationoptions.html>+    OnDemandCapacityReservationOptionsProperty {haddock_workaround_ :: (),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-cluster-ondemandcapacityreservationoptions-capacityreservationpreference>+                                                capacityReservationPreference :: (Prelude.Maybe (Value Prelude.Text)),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-cluster-ondemandcapacityreservationoptions-capacityreservationresourcegrouparn>+                                                capacityReservationResourceGroupArn :: (Prelude.Maybe (Value Prelude.Text)),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-cluster-ondemandcapacityreservationoptions-usagestrategy>+                                                usageStrategy :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandCapacityReservationOptionsProperty ::+  OnDemandCapacityReservationOptionsProperty+mkOnDemandCapacityReservationOptionsProperty+  = OnDemandCapacityReservationOptionsProperty+      {haddock_workaround_ = (),+       capacityReservationPreference = Prelude.Nothing,+       capacityReservationResourceGroupArn = Prelude.Nothing,+       usageStrategy = Prelude.Nothing}+instance ToResourceProperties OnDemandCapacityReservationOptionsProperty where+  toResourceProperties+    OnDemandCapacityReservationOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.OnDemandCapacityReservationOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CapacityReservationPreference"+                              Prelude.<$> capacityReservationPreference,+                            (JSON..=) "CapacityReservationResourceGroupArn"+                              Prelude.<$> capacityReservationResourceGroupArn,+                            (JSON..=) "UsageStrategy" Prelude.<$> usageStrategy])}+instance JSON.ToJSON OnDemandCapacityReservationOptionsProperty where+  toJSON OnDemandCapacityReservationOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CapacityReservationPreference"+                 Prelude.<$> capacityReservationPreference,+               (JSON..=) "CapacityReservationResourceGroupArn"+                 Prelude.<$> capacityReservationResourceGroupArn,+               (JSON..=) "UsageStrategy" Prelude.<$> usageStrategy]))+instance Property "CapacityReservationPreference" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "CapacityReservationPreference" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {capacityReservationPreference = Prelude.pure newValue, ..}+instance Property "CapacityReservationResourceGroupArn" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "CapacityReservationResourceGroupArn" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {capacityReservationResourceGroupArn = Prelude.pure newValue, ..}+instance Property "UsageStrategy" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "UsageStrategy" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {usageStrategy = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/OnDemandCapacityReservationOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.OnDemandCapacityReservationOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandCapacityReservationOptionsProperty :: Prelude.Type+instance ToResourceProperties OnDemandCapacityReservationOptionsProperty+instance Prelude.Eq OnDemandCapacityReservationOptionsProperty+instance Prelude.Show OnDemandCapacityReservationOptionsProperty+instance JSON.ToJSON OnDemandCapacityReservationOptionsProperty
+ gen/Stratosphere/EMR/Cluster/OnDemandProvisioningSpecificationProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EMR.Cluster.OnDemandProvisioningSpecificationProperty (+        module Exports, OnDemandProvisioningSpecificationProperty(..),+        mkOnDemandProvisioningSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.OnDemandCapacityReservationOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandProvisioningSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html>+    OnDemandProvisioningSpecificationProperty {haddock_workaround_ :: (),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html#cfn-elasticmapreduce-cluster-ondemandprovisioningspecification-allocationstrategy>+                                               allocationStrategy :: (Value Prelude.Text),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html#cfn-elasticmapreduce-cluster-ondemandprovisioningspecification-capacityreservationoptions>+                                               capacityReservationOptions :: (Prelude.Maybe OnDemandCapacityReservationOptionsProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandProvisioningSpecificationProperty ::+  Value Prelude.Text -> OnDemandProvisioningSpecificationProperty+mkOnDemandProvisioningSpecificationProperty allocationStrategy+  = OnDemandProvisioningSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = allocationStrategy,+       capacityReservationOptions = Prelude.Nothing}+instance ToResourceProperties OnDemandProvisioningSpecificationProperty where+  toResourceProperties OnDemandProvisioningSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.OnDemandProvisioningSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AllocationStrategy" JSON..= allocationStrategy]+                           (Prelude.catMaybes+                              [(JSON..=) "CapacityReservationOptions"+                                 Prelude.<$> capacityReservationOptions]))}+instance JSON.ToJSON OnDemandProvisioningSpecificationProperty where+  toJSON OnDemandProvisioningSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AllocationStrategy" JSON..= allocationStrategy]+              (Prelude.catMaybes+                 [(JSON..=) "CapacityReservationOptions"+                    Prelude.<$> capacityReservationOptions])))+instance Property "AllocationStrategy" OnDemandProvisioningSpecificationProperty where+  type PropertyType "AllocationStrategy" OnDemandProvisioningSpecificationProperty = Value Prelude.Text+  set newValue OnDemandProvisioningSpecificationProperty {..}+    = OnDemandProvisioningSpecificationProperty+        {allocationStrategy = newValue, ..}+instance Property "CapacityReservationOptions" OnDemandProvisioningSpecificationProperty where+  type PropertyType "CapacityReservationOptions" OnDemandProvisioningSpecificationProperty = OnDemandCapacityReservationOptionsProperty+  set newValue OnDemandProvisioningSpecificationProperty {..}+    = OnDemandProvisioningSpecificationProperty+        {capacityReservationOptions = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/OnDemandProvisioningSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.OnDemandProvisioningSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandProvisioningSpecificationProperty :: Prelude.Type+instance ToResourceProperties OnDemandProvisioningSpecificationProperty+instance Prelude.Eq OnDemandProvisioningSpecificationProperty+instance Prelude.Show OnDemandProvisioningSpecificationProperty+instance JSON.ToJSON OnDemandProvisioningSpecificationProperty
+ gen/Stratosphere/EMR/Cluster/OnDemandResizingSpecificationProperty.hs view
@@ -0,0 +1,64 @@+module Stratosphere.EMR.Cluster.OnDemandResizingSpecificationProperty (+        module Exports, OnDemandResizingSpecificationProperty(..),+        mkOnDemandResizingSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.OnDemandCapacityReservationOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandResizingSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandresizingspecification.html>+    OnDemandResizingSpecificationProperty {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandresizingspecification.html#cfn-elasticmapreduce-cluster-ondemandresizingspecification-allocationstrategy>+                                           allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandresizingspecification.html#cfn-elasticmapreduce-cluster-ondemandresizingspecification-capacityreservationoptions>+                                           capacityReservationOptions :: (Prelude.Maybe OnDemandCapacityReservationOptionsProperty),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandresizingspecification.html#cfn-elasticmapreduce-cluster-ondemandresizingspecification-timeoutdurationminutes>+                                           timeoutDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandResizingSpecificationProperty ::+  OnDemandResizingSpecificationProperty+mkOnDemandResizingSpecificationProperty+  = OnDemandResizingSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = Prelude.Nothing,+       capacityReservationOptions = Prelude.Nothing,+       timeoutDurationMinutes = Prelude.Nothing}+instance ToResourceProperties OnDemandResizingSpecificationProperty where+  toResourceProperties OnDemandResizingSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.OnDemandResizingSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                            (JSON..=) "CapacityReservationOptions"+                              Prelude.<$> capacityReservationOptions,+                            (JSON..=) "TimeoutDurationMinutes"+                              Prelude.<$> timeoutDurationMinutes])}+instance JSON.ToJSON OnDemandResizingSpecificationProperty where+  toJSON OnDemandResizingSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+               (JSON..=) "CapacityReservationOptions"+                 Prelude.<$> capacityReservationOptions,+               (JSON..=) "TimeoutDurationMinutes"+                 Prelude.<$> timeoutDurationMinutes]))+instance Property "AllocationStrategy" OnDemandResizingSpecificationProperty where+  type PropertyType "AllocationStrategy" OnDemandResizingSpecificationProperty = Value Prelude.Text+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "CapacityReservationOptions" OnDemandResizingSpecificationProperty where+  type PropertyType "CapacityReservationOptions" OnDemandResizingSpecificationProperty = OnDemandCapacityReservationOptionsProperty+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {capacityReservationOptions = Prelude.pure newValue, ..}+instance Property "TimeoutDurationMinutes" OnDemandResizingSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" OnDemandResizingSpecificationProperty = Value Prelude.Integer+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {timeoutDurationMinutes = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/OnDemandResizingSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.OnDemandResizingSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandResizingSpecificationProperty :: Prelude.Type+instance ToResourceProperties OnDemandResizingSpecificationProperty+instance Prelude.Eq OnDemandResizingSpecificationProperty+instance Prelude.Show OnDemandResizingSpecificationProperty+instance JSON.ToJSON OnDemandResizingSpecificationProperty
+ gen/Stratosphere/EMR/Cluster/PlacementGroupConfigProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.EMR.Cluster.PlacementGroupConfigProperty (+        PlacementGroupConfigProperty(..), mkPlacementGroupConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PlacementGroupConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementgroupconfig.html>+    PlacementGroupConfigProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementgroupconfig.html#cfn-elasticmapreduce-cluster-placementgroupconfig-instancerole>+                                  instanceRole :: (Value Prelude.Text),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementgroupconfig.html#cfn-elasticmapreduce-cluster-placementgroupconfig-placementstrategy>+                                  placementStrategy :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPlacementGroupConfigProperty ::+  Value Prelude.Text -> PlacementGroupConfigProperty+mkPlacementGroupConfigProperty instanceRole+  = PlacementGroupConfigProperty+      {haddock_workaround_ = (), instanceRole = instanceRole,+       placementStrategy = Prelude.Nothing}+instance ToResourceProperties PlacementGroupConfigProperty where+  toResourceProperties PlacementGroupConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.PlacementGroupConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["InstanceRole" JSON..= instanceRole]+                           (Prelude.catMaybes+                              [(JSON..=) "PlacementStrategy" Prelude.<$> placementStrategy]))}+instance JSON.ToJSON PlacementGroupConfigProperty where+  toJSON PlacementGroupConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["InstanceRole" JSON..= instanceRole]+              (Prelude.catMaybes+                 [(JSON..=) "PlacementStrategy" Prelude.<$> placementStrategy])))+instance Property "InstanceRole" PlacementGroupConfigProperty where+  type PropertyType "InstanceRole" PlacementGroupConfigProperty = Value Prelude.Text+  set newValue PlacementGroupConfigProperty {..}+    = PlacementGroupConfigProperty {instanceRole = newValue, ..}+instance Property "PlacementStrategy" PlacementGroupConfigProperty where+  type PropertyType "PlacementStrategy" PlacementGroupConfigProperty = Value Prelude.Text+  set newValue PlacementGroupConfigProperty {..}+    = PlacementGroupConfigProperty+        {placementStrategy = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/PlacementGroupConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.PlacementGroupConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PlacementGroupConfigProperty :: Prelude.Type+instance ToResourceProperties PlacementGroupConfigProperty+instance Prelude.Eq PlacementGroupConfigProperty+instance Prelude.Show PlacementGroupConfigProperty+instance JSON.ToJSON PlacementGroupConfigProperty
+ gen/Stratosphere/EMR/Cluster/PlacementTypeProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.EMR.Cluster.PlacementTypeProperty (+        PlacementTypeProperty(..), mkPlacementTypeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PlacementTypeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html>+    PlacementTypeProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html#cfn-elasticmapreduce-cluster-placementtype-availabilityzone>+                           availabilityZone :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPlacementTypeProperty ::+  Value Prelude.Text -> PlacementTypeProperty+mkPlacementTypeProperty availabilityZone+  = PlacementTypeProperty+      {haddock_workaround_ = (), availabilityZone = availabilityZone}+instance ToResourceProperties PlacementTypeProperty where+  toResourceProperties PlacementTypeProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.PlacementType",+         supportsTags = Prelude.False,+         properties = ["AvailabilityZone" JSON..= availabilityZone]}+instance JSON.ToJSON PlacementTypeProperty where+  toJSON PlacementTypeProperty {..}+    = JSON.object ["AvailabilityZone" JSON..= availabilityZone]+instance Property "AvailabilityZone" PlacementTypeProperty where+  type PropertyType "AvailabilityZone" PlacementTypeProperty = Value Prelude.Text+  set newValue PlacementTypeProperty {..}+    = PlacementTypeProperty {availabilityZone = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/PlacementTypeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.PlacementTypeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PlacementTypeProperty :: Prelude.Type+instance ToResourceProperties PlacementTypeProperty+instance Prelude.Eq PlacementTypeProperty+instance Prelude.Show PlacementTypeProperty+instance JSON.ToJSON PlacementTypeProperty
+ gen/Stratosphere/EMR/Cluster/ScalingActionProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.Cluster.ScalingActionProperty (+        module Exports, ScalingActionProperty(..), mkScalingActionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.SimpleScalingPolicyConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingActionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html>+    ScalingActionProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market>+                           market :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration>+                           simpleScalingPolicyConfiguration :: SimpleScalingPolicyConfigurationProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingActionProperty ::+  SimpleScalingPolicyConfigurationProperty -> ScalingActionProperty+mkScalingActionProperty simpleScalingPolicyConfiguration+  = ScalingActionProperty+      {haddock_workaround_ = (),+       simpleScalingPolicyConfiguration = simpleScalingPolicyConfiguration,+       market = Prelude.Nothing}+instance ToResourceProperties ScalingActionProperty where+  toResourceProperties ScalingActionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ScalingAction",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SimpleScalingPolicyConfiguration"+                              JSON..= simpleScalingPolicyConfiguration]+                           (Prelude.catMaybes [(JSON..=) "Market" Prelude.<$> market]))}+instance JSON.ToJSON ScalingActionProperty where+  toJSON ScalingActionProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SimpleScalingPolicyConfiguration"+                 JSON..= simpleScalingPolicyConfiguration]+              (Prelude.catMaybes [(JSON..=) "Market" Prelude.<$> market])))+instance Property "Market" ScalingActionProperty where+  type PropertyType "Market" ScalingActionProperty = Value Prelude.Text+  set newValue ScalingActionProperty {..}+    = ScalingActionProperty {market = Prelude.pure newValue, ..}+instance Property "SimpleScalingPolicyConfiguration" ScalingActionProperty where+  type PropertyType "SimpleScalingPolicyConfiguration" ScalingActionProperty = SimpleScalingPolicyConfigurationProperty+  set newValue ScalingActionProperty {..}+    = ScalingActionProperty+        {simpleScalingPolicyConfiguration = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ScalingActionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ScalingActionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingActionProperty :: Prelude.Type+instance ToResourceProperties ScalingActionProperty+instance Prelude.Eq ScalingActionProperty+instance Prelude.Show ScalingActionProperty+instance JSON.ToJSON ScalingActionProperty
+ gen/Stratosphere/EMR/Cluster/ScalingConstraintsProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.EMR.Cluster.ScalingConstraintsProperty (+        ScalingConstraintsProperty(..), mkScalingConstraintsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingConstraintsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html>+    ScalingConstraintsProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity>+                                maxCapacity :: (Value Prelude.Integer),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity>+                                minCapacity :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingConstraintsProperty ::+  Value Prelude.Integer+  -> Value Prelude.Integer -> ScalingConstraintsProperty+mkScalingConstraintsProperty maxCapacity minCapacity+  = ScalingConstraintsProperty+      {haddock_workaround_ = (), maxCapacity = maxCapacity,+       minCapacity = minCapacity}+instance ToResourceProperties ScalingConstraintsProperty where+  toResourceProperties ScalingConstraintsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ScalingConstraints",+         supportsTags = Prelude.False,+         properties = ["MaxCapacity" JSON..= maxCapacity,+                       "MinCapacity" JSON..= minCapacity]}+instance JSON.ToJSON ScalingConstraintsProperty where+  toJSON ScalingConstraintsProperty {..}+    = JSON.object+        ["MaxCapacity" JSON..= maxCapacity,+         "MinCapacity" JSON..= minCapacity]+instance Property "MaxCapacity" ScalingConstraintsProperty where+  type PropertyType "MaxCapacity" ScalingConstraintsProperty = Value Prelude.Integer+  set newValue ScalingConstraintsProperty {..}+    = ScalingConstraintsProperty {maxCapacity = newValue, ..}+instance Property "MinCapacity" ScalingConstraintsProperty where+  type PropertyType "MinCapacity" ScalingConstraintsProperty = Value Prelude.Integer+  set newValue ScalingConstraintsProperty {..}+    = ScalingConstraintsProperty {minCapacity = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ScalingConstraintsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ScalingConstraintsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingConstraintsProperty :: Prelude.Type+instance ToResourceProperties ScalingConstraintsProperty+instance Prelude.Eq ScalingConstraintsProperty+instance Prelude.Show ScalingConstraintsProperty+instance JSON.ToJSON ScalingConstraintsProperty
+ gen/Stratosphere/EMR/Cluster/ScalingRuleProperty.hs view
@@ -0,0 +1,66 @@+module Stratosphere.EMR.Cluster.ScalingRuleProperty (+        module Exports, ScalingRuleProperty(..), mkScalingRuleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ScalingActionProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.Cluster.ScalingTriggerProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingRuleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html>+    ScalingRuleProperty {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-action>+                         action :: ScalingActionProperty,+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-description>+                         description :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-name>+                         name :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-trigger>+                         trigger :: ScalingTriggerProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingRuleProperty ::+  ScalingActionProperty+  -> Value Prelude.Text+     -> ScalingTriggerProperty -> ScalingRuleProperty+mkScalingRuleProperty action name trigger+  = ScalingRuleProperty+      {haddock_workaround_ = (), action = action, name = name,+       trigger = trigger, description = Prelude.Nothing}+instance ToResourceProperties ScalingRuleProperty where+  toResourceProperties ScalingRuleProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ScalingRule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Action" JSON..= action, "Name" JSON..= name,+                            "Trigger" JSON..= trigger]+                           (Prelude.catMaybes+                              [(JSON..=) "Description" Prelude.<$> description]))}+instance JSON.ToJSON ScalingRuleProperty where+  toJSON ScalingRuleProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Action" JSON..= action, "Name" JSON..= name,+               "Trigger" JSON..= trigger]+              (Prelude.catMaybes+                 [(JSON..=) "Description" Prelude.<$> description])))+instance Property "Action" ScalingRuleProperty where+  type PropertyType "Action" ScalingRuleProperty = ScalingActionProperty+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {action = newValue, ..}+instance Property "Description" ScalingRuleProperty where+  type PropertyType "Description" ScalingRuleProperty = Value Prelude.Text+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {description = Prelude.pure newValue, ..}+instance Property "Name" ScalingRuleProperty where+  type PropertyType "Name" ScalingRuleProperty = Value Prelude.Text+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {name = newValue, ..}+instance Property "Trigger" ScalingRuleProperty where+  type PropertyType "Trigger" ScalingRuleProperty = ScalingTriggerProperty+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {trigger = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ScalingRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ScalingRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingRuleProperty :: Prelude.Type+instance ToResourceProperties ScalingRuleProperty+instance Prelude.Eq ScalingRuleProperty+instance Prelude.Show ScalingRuleProperty+instance JSON.ToJSON ScalingRuleProperty
+ gen/Stratosphere/EMR/Cluster/ScalingTriggerProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.EMR.Cluster.ScalingTriggerProperty (+        module Exports, ScalingTriggerProperty(..),+        mkScalingTriggerProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.CloudWatchAlarmDefinitionProperty as Exports+import Stratosphere.ResourceProperties+data ScalingTriggerProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html>+    ScalingTriggerProperty {haddock_workaround_ :: (),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition>+                            cloudWatchAlarmDefinition :: CloudWatchAlarmDefinitionProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingTriggerProperty ::+  CloudWatchAlarmDefinitionProperty -> ScalingTriggerProperty+mkScalingTriggerProperty cloudWatchAlarmDefinition+  = ScalingTriggerProperty+      {haddock_workaround_ = (),+       cloudWatchAlarmDefinition = cloudWatchAlarmDefinition}+instance ToResourceProperties ScalingTriggerProperty where+  toResourceProperties ScalingTriggerProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ScalingTrigger",+         supportsTags = Prelude.False,+         properties = ["CloudWatchAlarmDefinition"+                         JSON..= cloudWatchAlarmDefinition]}+instance JSON.ToJSON ScalingTriggerProperty where+  toJSON ScalingTriggerProperty {..}+    = JSON.object+        ["CloudWatchAlarmDefinition" JSON..= cloudWatchAlarmDefinition]+instance Property "CloudWatchAlarmDefinition" ScalingTriggerProperty where+  type PropertyType "CloudWatchAlarmDefinition" ScalingTriggerProperty = CloudWatchAlarmDefinitionProperty+  set newValue ScalingTriggerProperty {..}+    = ScalingTriggerProperty {cloudWatchAlarmDefinition = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ScalingTriggerProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ScalingTriggerProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingTriggerProperty :: Prelude.Type+instance ToResourceProperties ScalingTriggerProperty+instance Prelude.Eq ScalingTriggerProperty+instance Prelude.Show ScalingTriggerProperty+instance JSON.ToJSON ScalingTriggerProperty
+ gen/Stratosphere/EMR/Cluster/ScriptBootstrapActionConfigProperty.hs view
@@ -0,0 +1,47 @@+module Stratosphere.EMR.Cluster.ScriptBootstrapActionConfigProperty (+        ScriptBootstrapActionConfigProperty(..),+        mkScriptBootstrapActionConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScriptBootstrapActionConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html>+    ScriptBootstrapActionConfigProperty {haddock_workaround_ :: (),+                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-args>+                                         args :: (Prelude.Maybe (ValueList Prelude.Text)),+                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-path>+                                         path :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScriptBootstrapActionConfigProperty ::+  Value Prelude.Text -> ScriptBootstrapActionConfigProperty+mkScriptBootstrapActionConfigProperty path+  = ScriptBootstrapActionConfigProperty+      {haddock_workaround_ = (), path = path, args = Prelude.Nothing}+instance ToResourceProperties ScriptBootstrapActionConfigProperty where+  toResourceProperties ScriptBootstrapActionConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.ScriptBootstrapActionConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Path" JSON..= path]+                           (Prelude.catMaybes [(JSON..=) "Args" Prelude.<$> args]))}+instance JSON.ToJSON ScriptBootstrapActionConfigProperty where+  toJSON ScriptBootstrapActionConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Path" JSON..= path]+              (Prelude.catMaybes [(JSON..=) "Args" Prelude.<$> args])))+instance Property "Args" ScriptBootstrapActionConfigProperty where+  type PropertyType "Args" ScriptBootstrapActionConfigProperty = ValueList Prelude.Text+  set newValue ScriptBootstrapActionConfigProperty {..}+    = ScriptBootstrapActionConfigProperty+        {args = Prelude.pure newValue, ..}+instance Property "Path" ScriptBootstrapActionConfigProperty where+  type PropertyType "Path" ScriptBootstrapActionConfigProperty = Value Prelude.Text+  set newValue ScriptBootstrapActionConfigProperty {..}+    = ScriptBootstrapActionConfigProperty {path = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/ScriptBootstrapActionConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.ScriptBootstrapActionConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScriptBootstrapActionConfigProperty :: Prelude.Type+instance ToResourceProperties ScriptBootstrapActionConfigProperty+instance Prelude.Eq ScriptBootstrapActionConfigProperty+instance Prelude.Show ScriptBootstrapActionConfigProperty+instance JSON.ToJSON ScriptBootstrapActionConfigProperty
+ gen/Stratosphere/EMR/Cluster/SimpleScalingPolicyConfigurationProperty.hs view
@@ -0,0 +1,60 @@+module Stratosphere.EMR.Cluster.SimpleScalingPolicyConfigurationProperty (+        SimpleScalingPolicyConfigurationProperty(..),+        mkSimpleScalingPolicyConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SimpleScalingPolicyConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html>+    SimpleScalingPolicyConfigurationProperty {haddock_workaround_ :: (),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-adjustmenttype>+                                              adjustmentType :: (Prelude.Maybe (Value Prelude.Text)),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-cooldown>+                                              coolDown :: (Prelude.Maybe (Value Prelude.Integer)),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-scalingadjustment>+                                              scalingAdjustment :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSimpleScalingPolicyConfigurationProperty ::+  Value Prelude.Integer -> SimpleScalingPolicyConfigurationProperty+mkSimpleScalingPolicyConfigurationProperty scalingAdjustment+  = SimpleScalingPolicyConfigurationProperty+      {haddock_workaround_ = (), scalingAdjustment = scalingAdjustment,+       adjustmentType = Prelude.Nothing, coolDown = Prelude.Nothing}+instance ToResourceProperties SimpleScalingPolicyConfigurationProperty where+  toResourceProperties SimpleScalingPolicyConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.SimpleScalingPolicyConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ScalingAdjustment" JSON..= scalingAdjustment]+                           (Prelude.catMaybes+                              [(JSON..=) "AdjustmentType" Prelude.<$> adjustmentType,+                               (JSON..=) "CoolDown" Prelude.<$> coolDown]))}+instance JSON.ToJSON SimpleScalingPolicyConfigurationProperty where+  toJSON SimpleScalingPolicyConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ScalingAdjustment" JSON..= scalingAdjustment]+              (Prelude.catMaybes+                 [(JSON..=) "AdjustmentType" Prelude.<$> adjustmentType,+                  (JSON..=) "CoolDown" Prelude.<$> coolDown])))+instance Property "AdjustmentType" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "AdjustmentType" SimpleScalingPolicyConfigurationProperty = Value Prelude.Text+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {adjustmentType = Prelude.pure newValue, ..}+instance Property "CoolDown" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "CoolDown" SimpleScalingPolicyConfigurationProperty = Value Prelude.Integer+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {coolDown = Prelude.pure newValue, ..}+instance Property "ScalingAdjustment" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "ScalingAdjustment" SimpleScalingPolicyConfigurationProperty = Value Prelude.Integer+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {scalingAdjustment = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/SimpleScalingPolicyConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.SimpleScalingPolicyConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SimpleScalingPolicyConfigurationProperty :: Prelude.Type+instance ToResourceProperties SimpleScalingPolicyConfigurationProperty+instance Prelude.Eq SimpleScalingPolicyConfigurationProperty+instance Prelude.Show SimpleScalingPolicyConfigurationProperty+instance JSON.ToJSON SimpleScalingPolicyConfigurationProperty
+ gen/Stratosphere/EMR/Cluster/SpotProvisioningSpecificationProperty.hs view
@@ -0,0 +1,76 @@+module Stratosphere.EMR.Cluster.SpotProvisioningSpecificationProperty (+        SpotProvisioningSpecificationProperty(..),+        mkSpotProvisioningSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SpotProvisioningSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html>+    SpotProvisioningSpecificationProperty {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-allocationstrategy>+                                           allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-blockdurationminutes>+                                           blockDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutaction>+                                           timeoutAction :: (Value Prelude.Text),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutdurationminutes>+                                           timeoutDurationMinutes :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSpotProvisioningSpecificationProperty ::+  Value Prelude.Text+  -> Value Prelude.Integer -> SpotProvisioningSpecificationProperty+mkSpotProvisioningSpecificationProperty+  timeoutAction+  timeoutDurationMinutes+  = SpotProvisioningSpecificationProperty+      {haddock_workaround_ = (), timeoutAction = timeoutAction,+       timeoutDurationMinutes = timeoutDurationMinutes,+       allocationStrategy = Prelude.Nothing,+       blockDurationMinutes = Prelude.Nothing}+instance ToResourceProperties SpotProvisioningSpecificationProperty where+  toResourceProperties SpotProvisioningSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.SpotProvisioningSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["TimeoutAction" JSON..= timeoutAction,+                            "TimeoutDurationMinutes" JSON..= timeoutDurationMinutes]+                           (Prelude.catMaybes+                              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                               (JSON..=) "BlockDurationMinutes"+                                 Prelude.<$> blockDurationMinutes]))}+instance JSON.ToJSON SpotProvisioningSpecificationProperty where+  toJSON SpotProvisioningSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["TimeoutAction" JSON..= timeoutAction,+               "TimeoutDurationMinutes" JSON..= timeoutDurationMinutes]+              (Prelude.catMaybes+                 [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                  (JSON..=) "BlockDurationMinutes"+                    Prelude.<$> blockDurationMinutes])))+instance Property "AllocationStrategy" SpotProvisioningSpecificationProperty where+  type PropertyType "AllocationStrategy" SpotProvisioningSpecificationProperty = Value Prelude.Text+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "BlockDurationMinutes" SpotProvisioningSpecificationProperty where+  type PropertyType "BlockDurationMinutes" SpotProvisioningSpecificationProperty = Value Prelude.Integer+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {blockDurationMinutes = Prelude.pure newValue, ..}+instance Property "TimeoutAction" SpotProvisioningSpecificationProperty where+  type PropertyType "TimeoutAction" SpotProvisioningSpecificationProperty = Value Prelude.Text+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {timeoutAction = newValue, ..}+instance Property "TimeoutDurationMinutes" SpotProvisioningSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" SpotProvisioningSpecificationProperty = Value Prelude.Integer+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {timeoutDurationMinutes = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/SpotProvisioningSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.SpotProvisioningSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SpotProvisioningSpecificationProperty :: Prelude.Type+instance ToResourceProperties SpotProvisioningSpecificationProperty+instance Prelude.Eq SpotProvisioningSpecificationProperty+instance Prelude.Show SpotProvisioningSpecificationProperty+instance JSON.ToJSON SpotProvisioningSpecificationProperty
+ gen/Stratosphere/EMR/Cluster/SpotResizingSpecificationProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.Cluster.SpotResizingSpecificationProperty (+        SpotResizingSpecificationProperty(..),+        mkSpotResizingSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SpotResizingSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotresizingspecification.html>+    SpotResizingSpecificationProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotresizingspecification.html#cfn-elasticmapreduce-cluster-spotresizingspecification-allocationstrategy>+                                       allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotresizingspecification.html#cfn-elasticmapreduce-cluster-spotresizingspecification-timeoutdurationminutes>+                                       timeoutDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSpotResizingSpecificationProperty ::+  SpotResizingSpecificationProperty+mkSpotResizingSpecificationProperty+  = SpotResizingSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = Prelude.Nothing,+       timeoutDurationMinutes = Prelude.Nothing}+instance ToResourceProperties SpotResizingSpecificationProperty where+  toResourceProperties SpotResizingSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.SpotResizingSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                            (JSON..=) "TimeoutDurationMinutes"+                              Prelude.<$> timeoutDurationMinutes])}+instance JSON.ToJSON SpotResizingSpecificationProperty where+  toJSON SpotResizingSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+               (JSON..=) "TimeoutDurationMinutes"+                 Prelude.<$> timeoutDurationMinutes]))+instance Property "AllocationStrategy" SpotResizingSpecificationProperty where+  type PropertyType "AllocationStrategy" SpotResizingSpecificationProperty = Value Prelude.Text+  set newValue SpotResizingSpecificationProperty {..}+    = SpotResizingSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "TimeoutDurationMinutes" SpotResizingSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" SpotResizingSpecificationProperty = Value Prelude.Integer+  set newValue SpotResizingSpecificationProperty {..}+    = SpotResizingSpecificationProperty+        {timeoutDurationMinutes = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Cluster/SpotResizingSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.SpotResizingSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SpotResizingSpecificationProperty :: Prelude.Type+instance ToResourceProperties SpotResizingSpecificationProperty+instance Prelude.Eq SpotResizingSpecificationProperty+instance Prelude.Show SpotResizingSpecificationProperty+instance JSON.ToJSON SpotResizingSpecificationProperty
+ gen/Stratosphere/EMR/Cluster/StepConfigProperty.hs view
@@ -0,0 +1,56 @@+module Stratosphere.EMR.Cluster.StepConfigProperty (+        module Exports, StepConfigProperty(..), mkStepConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Cluster.HadoopJarStepConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data StepConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html>+    StepConfigProperty {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-actiononfailure>+                        actionOnFailure :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-hadoopjarstep>+                        hadoopJarStep :: HadoopJarStepConfigProperty,+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-name>+                        name :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkStepConfigProperty ::+  HadoopJarStepConfigProperty+  -> Value Prelude.Text -> StepConfigProperty+mkStepConfigProperty hadoopJarStep name+  = StepConfigProperty+      {haddock_workaround_ = (), hadoopJarStep = hadoopJarStep,+       name = name, actionOnFailure = Prelude.Nothing}+instance ToResourceProperties StepConfigProperty where+  toResourceProperties StepConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.StepConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["HadoopJarStep" JSON..= hadoopJarStep, "Name" JSON..= name]+                           (Prelude.catMaybes+                              [(JSON..=) "ActionOnFailure" Prelude.<$> actionOnFailure]))}+instance JSON.ToJSON StepConfigProperty where+  toJSON StepConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["HadoopJarStep" JSON..= hadoopJarStep, "Name" JSON..= name]+              (Prelude.catMaybes+                 [(JSON..=) "ActionOnFailure" Prelude.<$> actionOnFailure])))+instance Property "ActionOnFailure" StepConfigProperty where+  type PropertyType "ActionOnFailure" StepConfigProperty = Value Prelude.Text+  set newValue StepConfigProperty {..}+    = StepConfigProperty {actionOnFailure = Prelude.pure newValue, ..}+instance Property "HadoopJarStep" StepConfigProperty where+  type PropertyType "HadoopJarStep" StepConfigProperty = HadoopJarStepConfigProperty+  set newValue StepConfigProperty {..}+    = StepConfigProperty {hadoopJarStep = newValue, ..}+instance Property "Name" StepConfigProperty where+  type PropertyType "Name" StepConfigProperty = Value Prelude.Text+  set newValue StepConfigProperty {..}+    = StepConfigProperty {name = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/StepConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.StepConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data StepConfigProperty :: Prelude.Type+instance ToResourceProperties StepConfigProperty+instance Prelude.Eq StepConfigProperty+instance Prelude.Show StepConfigProperty+instance JSON.ToJSON StepConfigProperty
+ gen/Stratosphere/EMR/Cluster/VolumeSpecificationProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.Cluster.VolumeSpecificationProperty (+        VolumeSpecificationProperty(..), mkVolumeSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data VolumeSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html>+    VolumeSpecificationProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-iops>+                                 iops :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-sizeingb>+                                 sizeInGB :: (Value Prelude.Integer),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-throughput>+                                 throughput :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-volumetype>+                                 volumeType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkVolumeSpecificationProperty ::+  Value Prelude.Integer+  -> Value Prelude.Text -> VolumeSpecificationProperty+mkVolumeSpecificationProperty sizeInGB volumeType+  = VolumeSpecificationProperty+      {haddock_workaround_ = (), sizeInGB = sizeInGB,+       volumeType = volumeType, iops = Prelude.Nothing,+       throughput = Prelude.Nothing}+instance ToResourceProperties VolumeSpecificationProperty where+  toResourceProperties VolumeSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Cluster.VolumeSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+                           (Prelude.catMaybes+                              [(JSON..=) "Iops" Prelude.<$> iops,+                               (JSON..=) "Throughput" Prelude.<$> throughput]))}+instance JSON.ToJSON VolumeSpecificationProperty where+  toJSON VolumeSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+              (Prelude.catMaybes+                 [(JSON..=) "Iops" Prelude.<$> iops,+                  (JSON..=) "Throughput" Prelude.<$> throughput])))+instance Property "Iops" VolumeSpecificationProperty where+  type PropertyType "Iops" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {iops = Prelude.pure newValue, ..}+instance Property "SizeInGB" VolumeSpecificationProperty where+  type PropertyType "SizeInGB" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {sizeInGB = newValue, ..}+instance Property "Throughput" VolumeSpecificationProperty where+  type PropertyType "Throughput" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty+        {throughput = Prelude.pure newValue, ..}+instance Property "VolumeType" VolumeSpecificationProperty where+  type PropertyType "VolumeType" VolumeSpecificationProperty = Value Prelude.Text+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {volumeType = newValue, ..}
+ gen/Stratosphere/EMR/Cluster/VolumeSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Cluster.VolumeSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data VolumeSpecificationProperty :: Prelude.Type+instance ToResourceProperties VolumeSpecificationProperty+instance Prelude.Eq VolumeSpecificationProperty+instance Prelude.Show VolumeSpecificationProperty+instance JSON.ToJSON VolumeSpecificationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig.hs view
@@ -0,0 +1,111 @@+module Stratosphere.EMR.InstanceFleetConfig (+        module Exports, InstanceFleetConfig(..), mkInstanceFleetConfig+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.InstanceFleetProvisioningSpecificationsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.InstanceFleetResizingSpecificationsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.InstanceTypeConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceFleetConfig+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html>+    InstanceFleetConfig {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-clusterid>+                         clusterId :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancefleettype>+                         instanceFleetType :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfigs>+                         instanceTypeConfigs :: (Prelude.Maybe [InstanceTypeConfigProperty]),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-launchspecifications>+                         launchSpecifications :: (Prelude.Maybe InstanceFleetProvisioningSpecificationsProperty),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-name>+                         name :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-resizespecifications>+                         resizeSpecifications :: (Prelude.Maybe InstanceFleetResizingSpecificationsProperty),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetondemandcapacity>+                         targetOnDemandCapacity :: (Prelude.Maybe (Value Prelude.Integer)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetspotcapacity>+                         targetSpotCapacity :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetConfig ::+  Value Prelude.Text -> Value Prelude.Text -> InstanceFleetConfig+mkInstanceFleetConfig clusterId instanceFleetType+  = InstanceFleetConfig+      {haddock_workaround_ = (), clusterId = clusterId,+       instanceFleetType = instanceFleetType,+       instanceTypeConfigs = Prelude.Nothing,+       launchSpecifications = Prelude.Nothing, name = Prelude.Nothing,+       resizeSpecifications = Prelude.Nothing,+       targetOnDemandCapacity = Prelude.Nothing,+       targetSpotCapacity = Prelude.Nothing}+instance ToResourceProperties InstanceFleetConfig where+  toResourceProperties InstanceFleetConfig {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ClusterId" JSON..= clusterId,+                            "InstanceFleetType" JSON..= instanceFleetType]+                           (Prelude.catMaybes+                              [(JSON..=) "InstanceTypeConfigs" Prelude.<$> instanceTypeConfigs,+                               (JSON..=) "LaunchSpecifications" Prelude.<$> launchSpecifications,+                               (JSON..=) "Name" Prelude.<$> name,+                               (JSON..=) "ResizeSpecifications" Prelude.<$> resizeSpecifications,+                               (JSON..=) "TargetOnDemandCapacity"+                                 Prelude.<$> targetOnDemandCapacity,+                               (JSON..=) "TargetSpotCapacity" Prelude.<$> targetSpotCapacity]))}+instance JSON.ToJSON InstanceFleetConfig where+  toJSON InstanceFleetConfig {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ClusterId" JSON..= clusterId,+               "InstanceFleetType" JSON..= instanceFleetType]+              (Prelude.catMaybes+                 [(JSON..=) "InstanceTypeConfigs" Prelude.<$> instanceTypeConfigs,+                  (JSON..=) "LaunchSpecifications" Prelude.<$> launchSpecifications,+                  (JSON..=) "Name" Prelude.<$> name,+                  (JSON..=) "ResizeSpecifications" Prelude.<$> resizeSpecifications,+                  (JSON..=) "TargetOnDemandCapacity"+                    Prelude.<$> targetOnDemandCapacity,+                  (JSON..=) "TargetSpotCapacity" Prelude.<$> targetSpotCapacity])))+instance Property "ClusterId" InstanceFleetConfig where+  type PropertyType "ClusterId" InstanceFleetConfig = Value Prelude.Text+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig {clusterId = newValue, ..}+instance Property "InstanceFleetType" InstanceFleetConfig where+  type PropertyType "InstanceFleetType" InstanceFleetConfig = Value Prelude.Text+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig {instanceFleetType = newValue, ..}+instance Property "InstanceTypeConfigs" InstanceFleetConfig where+  type PropertyType "InstanceTypeConfigs" InstanceFleetConfig = [InstanceTypeConfigProperty]+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig+        {instanceTypeConfigs = Prelude.pure newValue, ..}+instance Property "LaunchSpecifications" InstanceFleetConfig where+  type PropertyType "LaunchSpecifications" InstanceFleetConfig = InstanceFleetProvisioningSpecificationsProperty+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig+        {launchSpecifications = Prelude.pure newValue, ..}+instance Property "Name" InstanceFleetConfig where+  type PropertyType "Name" InstanceFleetConfig = Value Prelude.Text+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig {name = Prelude.pure newValue, ..}+instance Property "ResizeSpecifications" InstanceFleetConfig where+  type PropertyType "ResizeSpecifications" InstanceFleetConfig = InstanceFleetResizingSpecificationsProperty+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig+        {resizeSpecifications = Prelude.pure newValue, ..}+instance Property "TargetOnDemandCapacity" InstanceFleetConfig where+  type PropertyType "TargetOnDemandCapacity" InstanceFleetConfig = Value Prelude.Integer+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig+        {targetOnDemandCapacity = Prelude.pure newValue, ..}+instance Property "TargetSpotCapacity" InstanceFleetConfig where+  type PropertyType "TargetSpotCapacity" InstanceFleetConfig = Value Prelude.Integer+  set newValue InstanceFleetConfig {..}+    = InstanceFleetConfig+        {targetSpotCapacity = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/ConfigurationProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.EMR.InstanceFleetConfig.ConfigurationProperty (+        ConfigurationProperty(..), mkConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html>+    ConfigurationProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-classification>+                           classification :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurationproperties>+                           configurationProperties :: (Prelude.Maybe (Prelude.Map Prelude.Text (Value Prelude.Text))),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurations>+                           configurations :: (Prelude.Maybe [ConfigurationProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkConfigurationProperty :: ConfigurationProperty+mkConfigurationProperty+  = ConfigurationProperty+      {haddock_workaround_ = (), classification = Prelude.Nothing,+       configurationProperties = Prelude.Nothing,+       configurations = Prelude.Nothing}+instance ToResourceProperties ConfigurationProperty where+  toResourceProperties ConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.Configuration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Classification" Prelude.<$> classification,+                            (JSON..=) "ConfigurationProperties"+                              Prelude.<$> configurationProperties,+                            (JSON..=) "Configurations" Prelude.<$> configurations])}+instance JSON.ToJSON ConfigurationProperty where+  toJSON ConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Classification" Prelude.<$> classification,+               (JSON..=) "ConfigurationProperties"+                 Prelude.<$> configurationProperties,+               (JSON..=) "Configurations" Prelude.<$> configurations]))+instance Property "Classification" ConfigurationProperty where+  type PropertyType "Classification" ConfigurationProperty = Value Prelude.Text+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {classification = Prelude.pure newValue, ..}+instance Property "ConfigurationProperties" ConfigurationProperty where+  type PropertyType "ConfigurationProperties" ConfigurationProperty = Prelude.Map Prelude.Text (Value Prelude.Text)+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurationProperties = Prelude.pure newValue, ..}+instance Property "Configurations" ConfigurationProperty where+  type PropertyType "Configurations" ConfigurationProperty = [ConfigurationProperty]+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurations = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/ConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.ConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ConfigurationProperty :: Prelude.Type+instance ToResourceProperties ConfigurationProperty+instance Prelude.Eq ConfigurationProperty+instance Prelude.Show ConfigurationProperty+instance JSON.ToJSON ConfigurationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/EbsBlockDeviceConfigProperty.hs view
@@ -0,0 +1,52 @@+module Stratosphere.EMR.InstanceFleetConfig.EbsBlockDeviceConfigProperty (+        module Exports, EbsBlockDeviceConfigProperty(..),+        mkEbsBlockDeviceConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.VolumeSpecificationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsBlockDeviceConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html>+    EbsBlockDeviceConfigProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumespecification>+                                  volumeSpecification :: VolumeSpecificationProperty,+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumesperinstance>+                                  volumesPerInstance :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsBlockDeviceConfigProperty ::+  VolumeSpecificationProperty -> EbsBlockDeviceConfigProperty+mkEbsBlockDeviceConfigProperty volumeSpecification+  = EbsBlockDeviceConfigProperty+      {haddock_workaround_ = (),+       volumeSpecification = volumeSpecification,+       volumesPerInstance = Prelude.Nothing}+instance ToResourceProperties EbsBlockDeviceConfigProperty where+  toResourceProperties EbsBlockDeviceConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["VolumeSpecification" JSON..= volumeSpecification]+                           (Prelude.catMaybes+                              [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance]))}+instance JSON.ToJSON EbsBlockDeviceConfigProperty where+  toJSON EbsBlockDeviceConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["VolumeSpecification" JSON..= volumeSpecification]+              (Prelude.catMaybes+                 [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance])))+instance Property "VolumeSpecification" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumeSpecification" EbsBlockDeviceConfigProperty = VolumeSpecificationProperty+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty {volumeSpecification = newValue, ..}+instance Property "VolumesPerInstance" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumesPerInstance" EbsBlockDeviceConfigProperty = Value Prelude.Integer+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty+        {volumesPerInstance = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/EbsBlockDeviceConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.EbsBlockDeviceConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsBlockDeviceConfigProperty :: Prelude.Type+instance ToResourceProperties EbsBlockDeviceConfigProperty+instance Prelude.Eq EbsBlockDeviceConfigProperty+instance Prelude.Show EbsBlockDeviceConfigProperty+instance JSON.ToJSON EbsBlockDeviceConfigProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/EbsConfigurationProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.InstanceFleetConfig.EbsConfigurationProperty (+        module Exports, EbsConfigurationProperty(..),+        mkEbsConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.EbsBlockDeviceConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html>+    EbsConfigurationProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsblockdeviceconfigs>+                              ebsBlockDeviceConfigs :: (Prelude.Maybe [EbsBlockDeviceConfigProperty]),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsoptimized>+                              ebsOptimized :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsConfigurationProperty :: EbsConfigurationProperty+mkEbsConfigurationProperty+  = EbsConfigurationProperty+      {haddock_workaround_ = (), ebsBlockDeviceConfigs = Prelude.Nothing,+       ebsOptimized = Prelude.Nothing}+instance ToResourceProperties EbsConfigurationProperty where+  toResourceProperties EbsConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.EbsConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EbsBlockDeviceConfigs"+                              Prelude.<$> ebsBlockDeviceConfigs,+                            (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized])}+instance JSON.ToJSON EbsConfigurationProperty where+  toJSON EbsConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EbsBlockDeviceConfigs"+                 Prelude.<$> ebsBlockDeviceConfigs,+               (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized]))+instance Property "EbsBlockDeviceConfigs" EbsConfigurationProperty where+  type PropertyType "EbsBlockDeviceConfigs" EbsConfigurationProperty = [EbsBlockDeviceConfigProperty]+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsBlockDeviceConfigs = Prelude.pure newValue, ..}+instance Property "EbsOptimized" EbsConfigurationProperty where+  type PropertyType "EbsOptimized" EbsConfigurationProperty = Value Prelude.Bool+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsOptimized = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/EbsConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.EbsConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsConfigurationProperty :: Prelude.Type+instance ToResourceProperties EbsConfigurationProperty+instance Prelude.Eq EbsConfigurationProperty+instance Prelude.Show EbsConfigurationProperty+instance JSON.ToJSON EbsConfigurationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceFleetProvisioningSpecificationsProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceFleetProvisioningSpecificationsProperty (+        module Exports,+        InstanceFleetProvisioningSpecificationsProperty(..),+        mkInstanceFleetProvisioningSpecificationsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.OnDemandProvisioningSpecificationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.SpotProvisioningSpecificationProperty as Exports+import Stratosphere.ResourceProperties+data InstanceFleetProvisioningSpecificationsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html>+    InstanceFleetProvisioningSpecificationsProperty {haddock_workaround_ :: (),+                                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-ondemandspecification>+                                                     onDemandSpecification :: (Prelude.Maybe OnDemandProvisioningSpecificationProperty),+                                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-spotspecification>+                                                     spotSpecification :: (Prelude.Maybe SpotProvisioningSpecificationProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetProvisioningSpecificationsProperty ::+  InstanceFleetProvisioningSpecificationsProperty+mkInstanceFleetProvisioningSpecificationsProperty+  = InstanceFleetProvisioningSpecificationsProperty+      {haddock_workaround_ = (), onDemandSpecification = Prelude.Nothing,+       spotSpecification = Prelude.Nothing}+instance ToResourceProperties InstanceFleetProvisioningSpecificationsProperty where+  toResourceProperties+    InstanceFleetProvisioningSpecificationsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "OnDemandSpecification"+                              Prelude.<$> onDemandSpecification,+                            (JSON..=) "SpotSpecification" Prelude.<$> spotSpecification])}+instance JSON.ToJSON InstanceFleetProvisioningSpecificationsProperty where+  toJSON InstanceFleetProvisioningSpecificationsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "OnDemandSpecification"+                 Prelude.<$> onDemandSpecification,+               (JSON..=) "SpotSpecification" Prelude.<$> spotSpecification]))+instance Property "OnDemandSpecification" InstanceFleetProvisioningSpecificationsProperty where+  type PropertyType "OnDemandSpecification" InstanceFleetProvisioningSpecificationsProperty = OnDemandProvisioningSpecificationProperty+  set newValue InstanceFleetProvisioningSpecificationsProperty {..}+    = InstanceFleetProvisioningSpecificationsProperty+        {onDemandSpecification = Prelude.pure newValue, ..}+instance Property "SpotSpecification" InstanceFleetProvisioningSpecificationsProperty where+  type PropertyType "SpotSpecification" InstanceFleetProvisioningSpecificationsProperty = SpotProvisioningSpecificationProperty+  set newValue InstanceFleetProvisioningSpecificationsProperty {..}+    = InstanceFleetProvisioningSpecificationsProperty+        {spotSpecification = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceFleetProvisioningSpecificationsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceFleetProvisioningSpecificationsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceFleetProvisioningSpecificationsProperty :: Prelude.Type+instance ToResourceProperties InstanceFleetProvisioningSpecificationsProperty+instance Prelude.Eq InstanceFleetProvisioningSpecificationsProperty+instance Prelude.Show InstanceFleetProvisioningSpecificationsProperty+instance JSON.ToJSON InstanceFleetProvisioningSpecificationsProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceFleetResizingSpecificationsProperty.hs view
@@ -0,0 +1,56 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceFleetResizingSpecificationsProperty (+        module Exports, InstanceFleetResizingSpecificationsProperty(..),+        mkInstanceFleetResizingSpecificationsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.OnDemandResizingSpecificationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.SpotResizingSpecificationProperty as Exports+import Stratosphere.ResourceProperties+data InstanceFleetResizingSpecificationsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications.html>+    InstanceFleetResizingSpecificationsProperty {haddock_workaround_ :: (),+                                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications-ondemandresizespecification>+                                                 onDemandResizeSpecification :: (Prelude.Maybe OnDemandResizingSpecificationProperty),+                                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications-spotresizespecification>+                                                 spotResizeSpecification :: (Prelude.Maybe SpotResizingSpecificationProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceFleetResizingSpecificationsProperty ::+  InstanceFleetResizingSpecificationsProperty+mkInstanceFleetResizingSpecificationsProperty+  = InstanceFleetResizingSpecificationsProperty+      {haddock_workaround_ = (),+       onDemandResizeSpecification = Prelude.Nothing,+       spotResizeSpecification = Prelude.Nothing}+instance ToResourceProperties InstanceFleetResizingSpecificationsProperty where+  toResourceProperties+    InstanceFleetResizingSpecificationsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.InstanceFleetResizingSpecifications",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "OnDemandResizeSpecification"+                              Prelude.<$> onDemandResizeSpecification,+                            (JSON..=) "SpotResizeSpecification"+                              Prelude.<$> spotResizeSpecification])}+instance JSON.ToJSON InstanceFleetResizingSpecificationsProperty where+  toJSON InstanceFleetResizingSpecificationsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "OnDemandResizeSpecification"+                 Prelude.<$> onDemandResizeSpecification,+               (JSON..=) "SpotResizeSpecification"+                 Prelude.<$> spotResizeSpecification]))+instance Property "OnDemandResizeSpecification" InstanceFleetResizingSpecificationsProperty where+  type PropertyType "OnDemandResizeSpecification" InstanceFleetResizingSpecificationsProperty = OnDemandResizingSpecificationProperty+  set newValue InstanceFleetResizingSpecificationsProperty {..}+    = InstanceFleetResizingSpecificationsProperty+        {onDemandResizeSpecification = Prelude.pure newValue, ..}+instance Property "SpotResizeSpecification" InstanceFleetResizingSpecificationsProperty where+  type PropertyType "SpotResizeSpecification" InstanceFleetResizingSpecificationsProperty = SpotResizingSpecificationProperty+  set newValue InstanceFleetResizingSpecificationsProperty {..}+    = InstanceFleetResizingSpecificationsProperty+        {spotResizeSpecification = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceFleetResizingSpecificationsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceFleetResizingSpecificationsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceFleetResizingSpecificationsProperty :: Prelude.Type+instance ToResourceProperties InstanceFleetResizingSpecificationsProperty+instance Prelude.Eq InstanceFleetResizingSpecificationsProperty+instance Prelude.Show InstanceFleetResizingSpecificationsProperty+instance JSON.ToJSON InstanceFleetResizingSpecificationsProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceTypeConfigProperty.hs view
@@ -0,0 +1,110 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceTypeConfigProperty (+        module Exports, InstanceTypeConfigProperty(..),+        mkInstanceTypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.ConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.EbsConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceTypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html>+    InstanceTypeConfigProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidprice>+                                bidPrice :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidpriceaspercentageofondemandprice>+                                bidPriceAsPercentageOfOnDemandPrice :: (Prelude.Maybe (Value Prelude.Double)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-configurations>+                                configurations :: (Prelude.Maybe [ConfigurationProperty]),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-customamiid>+                                customAmiId :: (Prelude.Maybe (Value Prelude.Text)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-ebsconfiguration>+                                ebsConfiguration :: (Prelude.Maybe EbsConfigurationProperty),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-instancetype>+                                instanceType :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-priority>+                                priority :: (Prelude.Maybe (Value Prelude.Double)),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-weightedcapacity>+                                weightedCapacity :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceTypeConfigProperty ::+  Value Prelude.Text -> InstanceTypeConfigProperty+mkInstanceTypeConfigProperty instanceType+  = InstanceTypeConfigProperty+      {haddock_workaround_ = (), instanceType = instanceType,+       bidPrice = Prelude.Nothing,+       bidPriceAsPercentageOfOnDemandPrice = Prelude.Nothing,+       configurations = Prelude.Nothing, customAmiId = Prelude.Nothing,+       ebsConfiguration = Prelude.Nothing, priority = Prelude.Nothing,+       weightedCapacity = Prelude.Nothing}+instance ToResourceProperties InstanceTypeConfigProperty where+  toResourceProperties InstanceTypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.InstanceTypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["InstanceType" JSON..= instanceType]+                           (Prelude.catMaybes+                              [(JSON..=) "BidPrice" Prelude.<$> bidPrice,+                               (JSON..=) "BidPriceAsPercentageOfOnDemandPrice"+                                 Prelude.<$> bidPriceAsPercentageOfOnDemandPrice,+                               (JSON..=) "Configurations" Prelude.<$> configurations,+                               (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                               (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                               (JSON..=) "Priority" Prelude.<$> priority,+                               (JSON..=) "WeightedCapacity" Prelude.<$> weightedCapacity]))}+instance JSON.ToJSON InstanceTypeConfigProperty where+  toJSON InstanceTypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["InstanceType" JSON..= instanceType]+              (Prelude.catMaybes+                 [(JSON..=) "BidPrice" Prelude.<$> bidPrice,+                  (JSON..=) "BidPriceAsPercentageOfOnDemandPrice"+                    Prelude.<$> bidPriceAsPercentageOfOnDemandPrice,+                  (JSON..=) "Configurations" Prelude.<$> configurations,+                  (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                  (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                  (JSON..=) "Priority" Prelude.<$> priority,+                  (JSON..=) "WeightedCapacity" Prelude.<$> weightedCapacity])))+instance Property "BidPrice" InstanceTypeConfigProperty where+  type PropertyType "BidPrice" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {bidPrice = Prelude.pure newValue, ..}+instance Property "BidPriceAsPercentageOfOnDemandPrice" InstanceTypeConfigProperty where+  type PropertyType "BidPriceAsPercentageOfOnDemandPrice" InstanceTypeConfigProperty = Value Prelude.Double+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {bidPriceAsPercentageOfOnDemandPrice = Prelude.pure newValue, ..}+instance Property "Configurations" InstanceTypeConfigProperty where+  type PropertyType "Configurations" InstanceTypeConfigProperty = [ConfigurationProperty]+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {configurations = Prelude.pure newValue, ..}+instance Property "CustomAmiId" InstanceTypeConfigProperty where+  type PropertyType "CustomAmiId" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {customAmiId = Prelude.pure newValue, ..}+instance Property "EbsConfiguration" InstanceTypeConfigProperty where+  type PropertyType "EbsConfiguration" InstanceTypeConfigProperty = EbsConfigurationProperty+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {ebsConfiguration = Prelude.pure newValue, ..}+instance Property "InstanceType" InstanceTypeConfigProperty where+  type PropertyType "InstanceType" InstanceTypeConfigProperty = Value Prelude.Text+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {instanceType = newValue, ..}+instance Property "Priority" InstanceTypeConfigProperty where+  type PropertyType "Priority" InstanceTypeConfigProperty = Value Prelude.Double+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty {priority = Prelude.pure newValue, ..}+instance Property "WeightedCapacity" InstanceTypeConfigProperty where+  type PropertyType "WeightedCapacity" InstanceTypeConfigProperty = Value Prelude.Integer+  set newValue InstanceTypeConfigProperty {..}+    = InstanceTypeConfigProperty+        {weightedCapacity = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/InstanceTypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.InstanceTypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data InstanceTypeConfigProperty :: Prelude.Type+instance ToResourceProperties InstanceTypeConfigProperty+instance Prelude.Eq InstanceTypeConfigProperty+instance Prelude.Show InstanceTypeConfigProperty+instance JSON.ToJSON InstanceTypeConfigProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandCapacityReservationOptionsProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandCapacityReservationOptionsProperty (+        OnDemandCapacityReservationOptionsProperty(..),+        mkOnDemandCapacityReservationOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandCapacityReservationOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions.html>+    OnDemandCapacityReservationOptionsProperty {haddock_workaround_ :: (),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions-capacityreservationpreference>+                                                capacityReservationPreference :: (Prelude.Maybe (Value Prelude.Text)),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions-capacityreservationresourcegrouparn>+                                                capacityReservationResourceGroupArn :: (Prelude.Maybe (Value Prelude.Text)),+                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions.html#cfn-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions-usagestrategy>+                                                usageStrategy :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandCapacityReservationOptionsProperty ::+  OnDemandCapacityReservationOptionsProperty+mkOnDemandCapacityReservationOptionsProperty+  = OnDemandCapacityReservationOptionsProperty+      {haddock_workaround_ = (),+       capacityReservationPreference = Prelude.Nothing,+       capacityReservationResourceGroupArn = Prelude.Nothing,+       usageStrategy = Prelude.Nothing}+instance ToResourceProperties OnDemandCapacityReservationOptionsProperty where+  toResourceProperties+    OnDemandCapacityReservationOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.OnDemandCapacityReservationOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CapacityReservationPreference"+                              Prelude.<$> capacityReservationPreference,+                            (JSON..=) "CapacityReservationResourceGroupArn"+                              Prelude.<$> capacityReservationResourceGroupArn,+                            (JSON..=) "UsageStrategy" Prelude.<$> usageStrategy])}+instance JSON.ToJSON OnDemandCapacityReservationOptionsProperty where+  toJSON OnDemandCapacityReservationOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CapacityReservationPreference"+                 Prelude.<$> capacityReservationPreference,+               (JSON..=) "CapacityReservationResourceGroupArn"+                 Prelude.<$> capacityReservationResourceGroupArn,+               (JSON..=) "UsageStrategy" Prelude.<$> usageStrategy]))+instance Property "CapacityReservationPreference" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "CapacityReservationPreference" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {capacityReservationPreference = Prelude.pure newValue, ..}+instance Property "CapacityReservationResourceGroupArn" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "CapacityReservationResourceGroupArn" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {capacityReservationResourceGroupArn = Prelude.pure newValue, ..}+instance Property "UsageStrategy" OnDemandCapacityReservationOptionsProperty where+  type PropertyType "UsageStrategy" OnDemandCapacityReservationOptionsProperty = Value Prelude.Text+  set newValue OnDemandCapacityReservationOptionsProperty {..}+    = OnDemandCapacityReservationOptionsProperty+        {usageStrategy = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandCapacityReservationOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandCapacityReservationOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandCapacityReservationOptionsProperty :: Prelude.Type+instance ToResourceProperties OnDemandCapacityReservationOptionsProperty+instance Prelude.Eq OnDemandCapacityReservationOptionsProperty+instance Prelude.Show OnDemandCapacityReservationOptionsProperty+instance JSON.ToJSON OnDemandCapacityReservationOptionsProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandProvisioningSpecificationProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandProvisioningSpecificationProperty (+        module Exports, OnDemandProvisioningSpecificationProperty(..),+        mkOnDemandProvisioningSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.OnDemandCapacityReservationOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandProvisioningSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html>+    OnDemandProvisioningSpecificationProperty {haddock_workaround_ :: (),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification-allocationstrategy>+                                               allocationStrategy :: (Value Prelude.Text),+                                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification-capacityreservationoptions>+                                               capacityReservationOptions :: (Prelude.Maybe OnDemandCapacityReservationOptionsProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandProvisioningSpecificationProperty ::+  Value Prelude.Text -> OnDemandProvisioningSpecificationProperty+mkOnDemandProvisioningSpecificationProperty allocationStrategy+  = OnDemandProvisioningSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = allocationStrategy,+       capacityReservationOptions = Prelude.Nothing}+instance ToResourceProperties OnDemandProvisioningSpecificationProperty where+  toResourceProperties OnDemandProvisioningSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.OnDemandProvisioningSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AllocationStrategy" JSON..= allocationStrategy]+                           (Prelude.catMaybes+                              [(JSON..=) "CapacityReservationOptions"+                                 Prelude.<$> capacityReservationOptions]))}+instance JSON.ToJSON OnDemandProvisioningSpecificationProperty where+  toJSON OnDemandProvisioningSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AllocationStrategy" JSON..= allocationStrategy]+              (Prelude.catMaybes+                 [(JSON..=) "CapacityReservationOptions"+                    Prelude.<$> capacityReservationOptions])))+instance Property "AllocationStrategy" OnDemandProvisioningSpecificationProperty where+  type PropertyType "AllocationStrategy" OnDemandProvisioningSpecificationProperty = Value Prelude.Text+  set newValue OnDemandProvisioningSpecificationProperty {..}+    = OnDemandProvisioningSpecificationProperty+        {allocationStrategy = newValue, ..}+instance Property "CapacityReservationOptions" OnDemandProvisioningSpecificationProperty where+  type PropertyType "CapacityReservationOptions" OnDemandProvisioningSpecificationProperty = OnDemandCapacityReservationOptionsProperty+  set newValue OnDemandProvisioningSpecificationProperty {..}+    = OnDemandProvisioningSpecificationProperty+        {capacityReservationOptions = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandProvisioningSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandProvisioningSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandProvisioningSpecificationProperty :: Prelude.Type+instance ToResourceProperties OnDemandProvisioningSpecificationProperty+instance Prelude.Eq OnDemandProvisioningSpecificationProperty+instance Prelude.Show OnDemandProvisioningSpecificationProperty+instance JSON.ToJSON OnDemandProvisioningSpecificationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandResizingSpecificationProperty.hs view
@@ -0,0 +1,64 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandResizingSpecificationProperty (+        module Exports, OnDemandResizingSpecificationProperty(..),+        mkOnDemandResizingSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceFleetConfig.OnDemandCapacityReservationOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnDemandResizingSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandresizingspecification.html>+    OnDemandResizingSpecificationProperty {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandresizingspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandresizingspecification-allocationstrategy>+                                           allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandresizingspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandresizingspecification-capacityreservationoptions>+                                           capacityReservationOptions :: (Prelude.Maybe OnDemandCapacityReservationOptionsProperty),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandresizingspecification.html#cfn-elasticmapreduce-instancefleetconfig-ondemandresizingspecification-timeoutdurationminutes>+                                           timeoutDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnDemandResizingSpecificationProperty ::+  OnDemandResizingSpecificationProperty+mkOnDemandResizingSpecificationProperty+  = OnDemandResizingSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = Prelude.Nothing,+       capacityReservationOptions = Prelude.Nothing,+       timeoutDurationMinutes = Prelude.Nothing}+instance ToResourceProperties OnDemandResizingSpecificationProperty where+  toResourceProperties OnDemandResizingSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.OnDemandResizingSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                            (JSON..=) "CapacityReservationOptions"+                              Prelude.<$> capacityReservationOptions,+                            (JSON..=) "TimeoutDurationMinutes"+                              Prelude.<$> timeoutDurationMinutes])}+instance JSON.ToJSON OnDemandResizingSpecificationProperty where+  toJSON OnDemandResizingSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+               (JSON..=) "CapacityReservationOptions"+                 Prelude.<$> capacityReservationOptions,+               (JSON..=) "TimeoutDurationMinutes"+                 Prelude.<$> timeoutDurationMinutes]))+instance Property "AllocationStrategy" OnDemandResizingSpecificationProperty where+  type PropertyType "AllocationStrategy" OnDemandResizingSpecificationProperty = Value Prelude.Text+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "CapacityReservationOptions" OnDemandResizingSpecificationProperty where+  type PropertyType "CapacityReservationOptions" OnDemandResizingSpecificationProperty = OnDemandCapacityReservationOptionsProperty+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {capacityReservationOptions = Prelude.pure newValue, ..}+instance Property "TimeoutDurationMinutes" OnDemandResizingSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" OnDemandResizingSpecificationProperty = Value Prelude.Integer+  set newValue OnDemandResizingSpecificationProperty {..}+    = OnDemandResizingSpecificationProperty+        {timeoutDurationMinutes = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/OnDemandResizingSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.OnDemandResizingSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnDemandResizingSpecificationProperty :: Prelude.Type+instance ToResourceProperties OnDemandResizingSpecificationProperty+instance Prelude.Eq OnDemandResizingSpecificationProperty+instance Prelude.Show OnDemandResizingSpecificationProperty+instance JSON.ToJSON OnDemandResizingSpecificationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/SpotProvisioningSpecificationProperty.hs view
@@ -0,0 +1,76 @@+module Stratosphere.EMR.InstanceFleetConfig.SpotProvisioningSpecificationProperty (+        SpotProvisioningSpecificationProperty(..),+        mkSpotProvisioningSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SpotProvisioningSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html>+    SpotProvisioningSpecificationProperty {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-allocationstrategy>+                                           allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-blockdurationminutes>+                                           blockDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutaction>+                                           timeoutAction :: (Value Prelude.Text),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutdurationminutes>+                                           timeoutDurationMinutes :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSpotProvisioningSpecificationProperty ::+  Value Prelude.Text+  -> Value Prelude.Integer -> SpotProvisioningSpecificationProperty+mkSpotProvisioningSpecificationProperty+  timeoutAction+  timeoutDurationMinutes+  = SpotProvisioningSpecificationProperty+      {haddock_workaround_ = (), timeoutAction = timeoutAction,+       timeoutDurationMinutes = timeoutDurationMinutes,+       allocationStrategy = Prelude.Nothing,+       blockDurationMinutes = Prelude.Nothing}+instance ToResourceProperties SpotProvisioningSpecificationProperty where+  toResourceProperties SpotProvisioningSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["TimeoutAction" JSON..= timeoutAction,+                            "TimeoutDurationMinutes" JSON..= timeoutDurationMinutes]+                           (Prelude.catMaybes+                              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                               (JSON..=) "BlockDurationMinutes"+                                 Prelude.<$> blockDurationMinutes]))}+instance JSON.ToJSON SpotProvisioningSpecificationProperty where+  toJSON SpotProvisioningSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["TimeoutAction" JSON..= timeoutAction,+               "TimeoutDurationMinutes" JSON..= timeoutDurationMinutes]+              (Prelude.catMaybes+                 [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                  (JSON..=) "BlockDurationMinutes"+                    Prelude.<$> blockDurationMinutes])))+instance Property "AllocationStrategy" SpotProvisioningSpecificationProperty where+  type PropertyType "AllocationStrategy" SpotProvisioningSpecificationProperty = Value Prelude.Text+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "BlockDurationMinutes" SpotProvisioningSpecificationProperty where+  type PropertyType "BlockDurationMinutes" SpotProvisioningSpecificationProperty = Value Prelude.Integer+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {blockDurationMinutes = Prelude.pure newValue, ..}+instance Property "TimeoutAction" SpotProvisioningSpecificationProperty where+  type PropertyType "TimeoutAction" SpotProvisioningSpecificationProperty = Value Prelude.Text+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {timeoutAction = newValue, ..}+instance Property "TimeoutDurationMinutes" SpotProvisioningSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" SpotProvisioningSpecificationProperty = Value Prelude.Integer+  set newValue SpotProvisioningSpecificationProperty {..}+    = SpotProvisioningSpecificationProperty+        {timeoutDurationMinutes = newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/SpotProvisioningSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.SpotProvisioningSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SpotProvisioningSpecificationProperty :: Prelude.Type+instance ToResourceProperties SpotProvisioningSpecificationProperty+instance Prelude.Eq SpotProvisioningSpecificationProperty+instance Prelude.Show SpotProvisioningSpecificationProperty+instance JSON.ToJSON SpotProvisioningSpecificationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/SpotResizingSpecificationProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.InstanceFleetConfig.SpotResizingSpecificationProperty (+        SpotResizingSpecificationProperty(..),+        mkSpotResizingSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SpotResizingSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotresizingspecification.html>+    SpotResizingSpecificationProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotresizingspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotresizingspecification-allocationstrategy>+                                       allocationStrategy :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotresizingspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotresizingspecification-timeoutdurationminutes>+                                       timeoutDurationMinutes :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSpotResizingSpecificationProperty ::+  SpotResizingSpecificationProperty+mkSpotResizingSpecificationProperty+  = SpotResizingSpecificationProperty+      {haddock_workaround_ = (), allocationStrategy = Prelude.Nothing,+       timeoutDurationMinutes = Prelude.Nothing}+instance ToResourceProperties SpotResizingSpecificationProperty where+  toResourceProperties SpotResizingSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.SpotResizingSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+                            (JSON..=) "TimeoutDurationMinutes"+                              Prelude.<$> timeoutDurationMinutes])}+instance JSON.ToJSON SpotResizingSpecificationProperty where+  toJSON SpotResizingSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AllocationStrategy" Prelude.<$> allocationStrategy,+               (JSON..=) "TimeoutDurationMinutes"+                 Prelude.<$> timeoutDurationMinutes]))+instance Property "AllocationStrategy" SpotResizingSpecificationProperty where+  type PropertyType "AllocationStrategy" SpotResizingSpecificationProperty = Value Prelude.Text+  set newValue SpotResizingSpecificationProperty {..}+    = SpotResizingSpecificationProperty+        {allocationStrategy = Prelude.pure newValue, ..}+instance Property "TimeoutDurationMinutes" SpotResizingSpecificationProperty where+  type PropertyType "TimeoutDurationMinutes" SpotResizingSpecificationProperty = Value Prelude.Integer+  set newValue SpotResizingSpecificationProperty {..}+    = SpotResizingSpecificationProperty+        {timeoutDurationMinutes = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/SpotResizingSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.SpotResizingSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SpotResizingSpecificationProperty :: Prelude.Type+instance ToResourceProperties SpotResizingSpecificationProperty+instance Prelude.Eq SpotResizingSpecificationProperty+instance Prelude.Show SpotResizingSpecificationProperty+instance JSON.ToJSON SpotResizingSpecificationProperty
+ gen/Stratosphere/EMR/InstanceFleetConfig/VolumeSpecificationProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.InstanceFleetConfig.VolumeSpecificationProperty (+        VolumeSpecificationProperty(..), mkVolumeSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data VolumeSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html>+    VolumeSpecificationProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-iops>+                                 iops :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-sizeingb>+                                 sizeInGB :: (Value Prelude.Integer),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-throughput>+                                 throughput :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-volumetype>+                                 volumeType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkVolumeSpecificationProperty ::+  Value Prelude.Integer+  -> Value Prelude.Text -> VolumeSpecificationProperty+mkVolumeSpecificationProperty sizeInGB volumeType+  = VolumeSpecificationProperty+      {haddock_workaround_ = (), sizeInGB = sizeInGB,+       volumeType = volumeType, iops = Prelude.Nothing,+       throughput = Prelude.Nothing}+instance ToResourceProperties VolumeSpecificationProperty where+  toResourceProperties VolumeSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceFleetConfig.VolumeSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+                           (Prelude.catMaybes+                              [(JSON..=) "Iops" Prelude.<$> iops,+                               (JSON..=) "Throughput" Prelude.<$> throughput]))}+instance JSON.ToJSON VolumeSpecificationProperty where+  toJSON VolumeSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+              (Prelude.catMaybes+                 [(JSON..=) "Iops" Prelude.<$> iops,+                  (JSON..=) "Throughput" Prelude.<$> throughput])))+instance Property "Iops" VolumeSpecificationProperty where+  type PropertyType "Iops" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {iops = Prelude.pure newValue, ..}+instance Property "SizeInGB" VolumeSpecificationProperty where+  type PropertyType "SizeInGB" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {sizeInGB = newValue, ..}+instance Property "Throughput" VolumeSpecificationProperty where+  type PropertyType "Throughput" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty+        {throughput = Prelude.pure newValue, ..}+instance Property "VolumeType" VolumeSpecificationProperty where+  type PropertyType "VolumeType" VolumeSpecificationProperty = Value Prelude.Text+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {volumeType = newValue, ..}
+ gen/Stratosphere/EMR/InstanceFleetConfig/VolumeSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceFleetConfig.VolumeSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data VolumeSpecificationProperty :: Prelude.Type+instance ToResourceProperties VolumeSpecificationProperty+instance Prelude.Eq VolumeSpecificationProperty+instance Prelude.Show VolumeSpecificationProperty+instance JSON.ToJSON VolumeSpecificationProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig.hs view
@@ -0,0 +1,133 @@+module Stratosphere.EMR.InstanceGroupConfig (+        module Exports, InstanceGroupConfig(..), mkInstanceGroupConfig+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.AutoScalingPolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.ConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.EbsConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data InstanceGroupConfig+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html>+    InstanceGroupConfig {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy>+                         autoScalingPolicy :: (Prelude.Maybe AutoScalingPolicyProperty),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice>+                         bidPrice :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations>+                         configurations :: (Prelude.Maybe [ConfigurationProperty]),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-customamiid>+                         customAmiId :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration>+                         ebsConfiguration :: (Prelude.Maybe EbsConfigurationProperty),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfiginstancecount->+                         instanceCount :: (Value Prelude.Integer),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancerole>+                         instanceRole :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancetype>+                         instanceType :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-jobflowid>+                         jobFlowId :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-market>+                         market :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-name>+                         name :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkInstanceGroupConfig ::+  Value Prelude.Integer+  -> Value Prelude.Text+     -> Value Prelude.Text -> Value Prelude.Text -> InstanceGroupConfig+mkInstanceGroupConfig+  instanceCount+  instanceRole+  instanceType+  jobFlowId+  = InstanceGroupConfig+      {haddock_workaround_ = (), instanceCount = instanceCount,+       instanceRole = instanceRole, instanceType = instanceType,+       jobFlowId = jobFlowId, autoScalingPolicy = Prelude.Nothing,+       bidPrice = Prelude.Nothing, configurations = Prelude.Nothing,+       customAmiId = Prelude.Nothing, ebsConfiguration = Prelude.Nothing,+       market = Prelude.Nothing, name = Prelude.Nothing}+instance ToResourceProperties InstanceGroupConfig where+  toResourceProperties InstanceGroupConfig {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["InstanceCount" JSON..= instanceCount,+                            "InstanceRole" JSON..= instanceRole,+                            "InstanceType" JSON..= instanceType, "JobFlowId" JSON..= jobFlowId]+                           (Prelude.catMaybes+                              [(JSON..=) "AutoScalingPolicy" Prelude.<$> autoScalingPolicy,+                               (JSON..=) "BidPrice" Prelude.<$> bidPrice,+                               (JSON..=) "Configurations" Prelude.<$> configurations,+                               (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                               (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                               (JSON..=) "Market" Prelude.<$> market,+                               (JSON..=) "Name" Prelude.<$> name]))}+instance JSON.ToJSON InstanceGroupConfig where+  toJSON InstanceGroupConfig {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["InstanceCount" JSON..= instanceCount,+               "InstanceRole" JSON..= instanceRole,+               "InstanceType" JSON..= instanceType, "JobFlowId" JSON..= jobFlowId]+              (Prelude.catMaybes+                 [(JSON..=) "AutoScalingPolicy" Prelude.<$> autoScalingPolicy,+                  (JSON..=) "BidPrice" Prelude.<$> bidPrice,+                  (JSON..=) "Configurations" Prelude.<$> configurations,+                  (JSON..=) "CustomAmiId" Prelude.<$> customAmiId,+                  (JSON..=) "EbsConfiguration" Prelude.<$> ebsConfiguration,+                  (JSON..=) "Market" Prelude.<$> market,+                  (JSON..=) "Name" Prelude.<$> name])))+instance Property "AutoScalingPolicy" InstanceGroupConfig where+  type PropertyType "AutoScalingPolicy" InstanceGroupConfig = AutoScalingPolicyProperty+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig+        {autoScalingPolicy = Prelude.pure newValue, ..}+instance Property "BidPrice" InstanceGroupConfig where+  type PropertyType "BidPrice" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {bidPrice = Prelude.pure newValue, ..}+instance Property "Configurations" InstanceGroupConfig where+  type PropertyType "Configurations" InstanceGroupConfig = [ConfigurationProperty]+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {configurations = Prelude.pure newValue, ..}+instance Property "CustomAmiId" InstanceGroupConfig where+  type PropertyType "CustomAmiId" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {customAmiId = Prelude.pure newValue, ..}+instance Property "EbsConfiguration" InstanceGroupConfig where+  type PropertyType "EbsConfiguration" InstanceGroupConfig = EbsConfigurationProperty+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig+        {ebsConfiguration = Prelude.pure newValue, ..}+instance Property "InstanceCount" InstanceGroupConfig where+  type PropertyType "InstanceCount" InstanceGroupConfig = Value Prelude.Integer+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {instanceCount = newValue, ..}+instance Property "InstanceRole" InstanceGroupConfig where+  type PropertyType "InstanceRole" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {instanceRole = newValue, ..}+instance Property "InstanceType" InstanceGroupConfig where+  type PropertyType "InstanceType" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {instanceType = newValue, ..}+instance Property "JobFlowId" InstanceGroupConfig where+  type PropertyType "JobFlowId" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {jobFlowId = newValue, ..}+instance Property "Market" InstanceGroupConfig where+  type PropertyType "Market" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {market = Prelude.pure newValue, ..}+instance Property "Name" InstanceGroupConfig where+  type PropertyType "Name" InstanceGroupConfig = Value Prelude.Text+  set newValue InstanceGroupConfig {..}+    = InstanceGroupConfig {name = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/AutoScalingPolicyProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.EMR.InstanceGroupConfig.AutoScalingPolicyProperty (+        module Exports, AutoScalingPolicyProperty(..),+        mkAutoScalingPolicyProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.ScalingConstraintsProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.ScalingRuleProperty as Exports+import Stratosphere.ResourceProperties+data AutoScalingPolicyProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html>+    AutoScalingPolicyProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints>+                               constraints :: ScalingConstraintsProperty,+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules>+                               rules :: [ScalingRuleProperty]}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAutoScalingPolicyProperty ::+  ScalingConstraintsProperty+  -> [ScalingRuleProperty] -> AutoScalingPolicyProperty+mkAutoScalingPolicyProperty constraints rules+  = AutoScalingPolicyProperty+      {haddock_workaround_ = (), constraints = constraints,+       rules = rules}+instance ToResourceProperties AutoScalingPolicyProperty where+  toResourceProperties AutoScalingPolicyProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.AutoScalingPolicy",+         supportsTags = Prelude.False,+         properties = ["Constraints" JSON..= constraints,+                       "Rules" JSON..= rules]}+instance JSON.ToJSON AutoScalingPolicyProperty where+  toJSON AutoScalingPolicyProperty {..}+    = JSON.object+        ["Constraints" JSON..= constraints, "Rules" JSON..= rules]+instance Property "Constraints" AutoScalingPolicyProperty where+  type PropertyType "Constraints" AutoScalingPolicyProperty = ScalingConstraintsProperty+  set newValue AutoScalingPolicyProperty {..}+    = AutoScalingPolicyProperty {constraints = newValue, ..}+instance Property "Rules" AutoScalingPolicyProperty where+  type PropertyType "Rules" AutoScalingPolicyProperty = [ScalingRuleProperty]+  set newValue AutoScalingPolicyProperty {..}+    = AutoScalingPolicyProperty {rules = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/AutoScalingPolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.AutoScalingPolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AutoScalingPolicyProperty :: Prelude.Type+instance ToResourceProperties AutoScalingPolicyProperty+instance Prelude.Eq AutoScalingPolicyProperty+instance Prelude.Show AutoScalingPolicyProperty+instance JSON.ToJSON AutoScalingPolicyProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/CloudWatchAlarmDefinitionProperty.hs view
@@ -0,0 +1,120 @@+module Stratosphere.EMR.InstanceGroupConfig.CloudWatchAlarmDefinitionProperty (+        module Exports, CloudWatchAlarmDefinitionProperty(..),+        mkCloudWatchAlarmDefinitionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.MetricDimensionProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CloudWatchAlarmDefinitionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html>+    CloudWatchAlarmDefinitionProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-comparisonoperator>+                                       comparisonOperator :: (Value Prelude.Text),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-dimensions>+                                       dimensions :: (Prelude.Maybe [MetricDimensionProperty]),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-evaluationperiods>+                                       evaluationPeriods :: (Prelude.Maybe (Value Prelude.Integer)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-metricname>+                                       metricName :: (Value Prelude.Text),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-namespace>+                                       namespace :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-period>+                                       period :: (Value Prelude.Integer),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-statistic>+                                       statistic :: (Prelude.Maybe (Value Prelude.Text)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-threshold>+                                       threshold :: (Value Prelude.Double),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-unit>+                                       unit :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCloudWatchAlarmDefinitionProperty ::+  Value Prelude.Text+  -> Value Prelude.Text+     -> Value Prelude.Integer+        -> Value Prelude.Double -> CloudWatchAlarmDefinitionProperty+mkCloudWatchAlarmDefinitionProperty+  comparisonOperator+  metricName+  period+  threshold+  = CloudWatchAlarmDefinitionProperty+      {haddock_workaround_ = (), comparisonOperator = comparisonOperator,+       metricName = metricName, period = period, threshold = threshold,+       dimensions = Prelude.Nothing, evaluationPeriods = Prelude.Nothing,+       namespace = Prelude.Nothing, statistic = Prelude.Nothing,+       unit = Prelude.Nothing}+instance ToResourceProperties CloudWatchAlarmDefinitionProperty where+  toResourceProperties CloudWatchAlarmDefinitionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ComparisonOperator" JSON..= comparisonOperator,+                            "MetricName" JSON..= metricName, "Period" JSON..= period,+                            "Threshold" JSON..= threshold]+                           (Prelude.catMaybes+                              [(JSON..=) "Dimensions" Prelude.<$> dimensions,+                               (JSON..=) "EvaluationPeriods" Prelude.<$> evaluationPeriods,+                               (JSON..=) "Namespace" Prelude.<$> namespace,+                               (JSON..=) "Statistic" Prelude.<$> statistic,+                               (JSON..=) "Unit" Prelude.<$> unit]))}+instance JSON.ToJSON CloudWatchAlarmDefinitionProperty where+  toJSON CloudWatchAlarmDefinitionProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ComparisonOperator" JSON..= comparisonOperator,+               "MetricName" JSON..= metricName, "Period" JSON..= period,+               "Threshold" JSON..= threshold]+              (Prelude.catMaybes+                 [(JSON..=) "Dimensions" Prelude.<$> dimensions,+                  (JSON..=) "EvaluationPeriods" Prelude.<$> evaluationPeriods,+                  (JSON..=) "Namespace" Prelude.<$> namespace,+                  (JSON..=) "Statistic" Prelude.<$> statistic,+                  (JSON..=) "Unit" Prelude.<$> unit])))+instance Property "ComparisonOperator" CloudWatchAlarmDefinitionProperty where+  type PropertyType "ComparisonOperator" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {comparisonOperator = newValue, ..}+instance Property "Dimensions" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Dimensions" CloudWatchAlarmDefinitionProperty = [MetricDimensionProperty]+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {dimensions = Prelude.pure newValue, ..}+instance Property "EvaluationPeriods" CloudWatchAlarmDefinitionProperty where+  type PropertyType "EvaluationPeriods" CloudWatchAlarmDefinitionProperty = Value Prelude.Integer+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {evaluationPeriods = Prelude.pure newValue, ..}+instance Property "MetricName" CloudWatchAlarmDefinitionProperty where+  type PropertyType "MetricName" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {metricName = newValue, ..}+instance Property "Namespace" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Namespace" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {namespace = Prelude.pure newValue, ..}+instance Property "Period" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Period" CloudWatchAlarmDefinitionProperty = Value Prelude.Integer+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {period = newValue, ..}+instance Property "Statistic" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Statistic" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {statistic = Prelude.pure newValue, ..}+instance Property "Threshold" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Threshold" CloudWatchAlarmDefinitionProperty = Value Prelude.Double+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty {threshold = newValue, ..}+instance Property "Unit" CloudWatchAlarmDefinitionProperty where+  type PropertyType "Unit" CloudWatchAlarmDefinitionProperty = Value Prelude.Text+  set newValue CloudWatchAlarmDefinitionProperty {..}+    = CloudWatchAlarmDefinitionProperty+        {unit = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/CloudWatchAlarmDefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.CloudWatchAlarmDefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CloudWatchAlarmDefinitionProperty :: Prelude.Type+instance ToResourceProperties CloudWatchAlarmDefinitionProperty+instance Prelude.Eq CloudWatchAlarmDefinitionProperty+instance Prelude.Show CloudWatchAlarmDefinitionProperty+instance JSON.ToJSON CloudWatchAlarmDefinitionProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/ConfigurationProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.EMR.InstanceGroupConfig.ConfigurationProperty (+        ConfigurationProperty(..), mkConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html>+    ConfigurationProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification>+                           classification :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties>+                           configurationProperties :: (Prelude.Maybe (Prelude.Map Prelude.Text (Value Prelude.Text))),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations>+                           configurations :: (Prelude.Maybe [ConfigurationProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkConfigurationProperty :: ConfigurationProperty+mkConfigurationProperty+  = ConfigurationProperty+      {haddock_workaround_ = (), classification = Prelude.Nothing,+       configurationProperties = Prelude.Nothing,+       configurations = Prelude.Nothing}+instance ToResourceProperties ConfigurationProperty where+  toResourceProperties ConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.Configuration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Classification" Prelude.<$> classification,+                            (JSON..=) "ConfigurationProperties"+                              Prelude.<$> configurationProperties,+                            (JSON..=) "Configurations" Prelude.<$> configurations])}+instance JSON.ToJSON ConfigurationProperty where+  toJSON ConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Classification" Prelude.<$> classification,+               (JSON..=) "ConfigurationProperties"+                 Prelude.<$> configurationProperties,+               (JSON..=) "Configurations" Prelude.<$> configurations]))+instance Property "Classification" ConfigurationProperty where+  type PropertyType "Classification" ConfigurationProperty = Value Prelude.Text+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {classification = Prelude.pure newValue, ..}+instance Property "ConfigurationProperties" ConfigurationProperty where+  type PropertyType "ConfigurationProperties" ConfigurationProperty = Prelude.Map Prelude.Text (Value Prelude.Text)+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurationProperties = Prelude.pure newValue, ..}+instance Property "Configurations" ConfigurationProperty where+  type PropertyType "Configurations" ConfigurationProperty = [ConfigurationProperty]+  set newValue ConfigurationProperty {..}+    = ConfigurationProperty+        {configurations = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/ConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.ConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ConfigurationProperty :: Prelude.Type+instance ToResourceProperties ConfigurationProperty+instance Prelude.Eq ConfigurationProperty+instance Prelude.Show ConfigurationProperty+instance JSON.ToJSON ConfigurationProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/EbsBlockDeviceConfigProperty.hs view
@@ -0,0 +1,52 @@+module Stratosphere.EMR.InstanceGroupConfig.EbsBlockDeviceConfigProperty (+        module Exports, EbsBlockDeviceConfigProperty(..),+        mkEbsBlockDeviceConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.VolumeSpecificationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsBlockDeviceConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html>+    EbsBlockDeviceConfigProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification>+                                  volumeSpecification :: VolumeSpecificationProperty,+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance>+                                  volumesPerInstance :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsBlockDeviceConfigProperty ::+  VolumeSpecificationProperty -> EbsBlockDeviceConfigProperty+mkEbsBlockDeviceConfigProperty volumeSpecification+  = EbsBlockDeviceConfigProperty+      {haddock_workaround_ = (),+       volumeSpecification = volumeSpecification,+       volumesPerInstance = Prelude.Nothing}+instance ToResourceProperties EbsBlockDeviceConfigProperty where+  toResourceProperties EbsBlockDeviceConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["VolumeSpecification" JSON..= volumeSpecification]+                           (Prelude.catMaybes+                              [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance]))}+instance JSON.ToJSON EbsBlockDeviceConfigProperty where+  toJSON EbsBlockDeviceConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["VolumeSpecification" JSON..= volumeSpecification]+              (Prelude.catMaybes+                 [(JSON..=) "VolumesPerInstance" Prelude.<$> volumesPerInstance])))+instance Property "VolumeSpecification" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumeSpecification" EbsBlockDeviceConfigProperty = VolumeSpecificationProperty+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty {volumeSpecification = newValue, ..}+instance Property "VolumesPerInstance" EbsBlockDeviceConfigProperty where+  type PropertyType "VolumesPerInstance" EbsBlockDeviceConfigProperty = Value Prelude.Integer+  set newValue EbsBlockDeviceConfigProperty {..}+    = EbsBlockDeviceConfigProperty+        {volumesPerInstance = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/EbsBlockDeviceConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.EbsBlockDeviceConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsBlockDeviceConfigProperty :: Prelude.Type+instance ToResourceProperties EbsBlockDeviceConfigProperty+instance Prelude.Eq EbsBlockDeviceConfigProperty+instance Prelude.Show EbsBlockDeviceConfigProperty+instance JSON.ToJSON EbsBlockDeviceConfigProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/EbsConfigurationProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.InstanceGroupConfig.EbsConfigurationProperty (+        module Exports, EbsConfigurationProperty(..),+        mkEbsConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.EbsBlockDeviceConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EbsConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html>+    EbsConfigurationProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs>+                              ebsBlockDeviceConfigs :: (Prelude.Maybe [EbsBlockDeviceConfigProperty]),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized>+                              ebsOptimized :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEbsConfigurationProperty :: EbsConfigurationProperty+mkEbsConfigurationProperty+  = EbsConfigurationProperty+      {haddock_workaround_ = (), ebsBlockDeviceConfigs = Prelude.Nothing,+       ebsOptimized = Prelude.Nothing}+instance ToResourceProperties EbsConfigurationProperty where+  toResourceProperties EbsConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.EbsConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EbsBlockDeviceConfigs"+                              Prelude.<$> ebsBlockDeviceConfigs,+                            (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized])}+instance JSON.ToJSON EbsConfigurationProperty where+  toJSON EbsConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EbsBlockDeviceConfigs"+                 Prelude.<$> ebsBlockDeviceConfigs,+               (JSON..=) "EbsOptimized" Prelude.<$> ebsOptimized]))+instance Property "EbsBlockDeviceConfigs" EbsConfigurationProperty where+  type PropertyType "EbsBlockDeviceConfigs" EbsConfigurationProperty = [EbsBlockDeviceConfigProperty]+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsBlockDeviceConfigs = Prelude.pure newValue, ..}+instance Property "EbsOptimized" EbsConfigurationProperty where+  type PropertyType "EbsOptimized" EbsConfigurationProperty = Value Prelude.Bool+  set newValue EbsConfigurationProperty {..}+    = EbsConfigurationProperty+        {ebsOptimized = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/EbsConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.EbsConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EbsConfigurationProperty :: Prelude.Type+instance ToResourceProperties EbsConfigurationProperty+instance Prelude.Eq EbsConfigurationProperty+instance Prelude.Show EbsConfigurationProperty+instance JSON.ToJSON EbsConfigurationProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/MetricDimensionProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.EMR.InstanceGroupConfig.MetricDimensionProperty (+        MetricDimensionProperty(..), mkMetricDimensionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MetricDimensionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html>+    MetricDimensionProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key>+                             key :: (Value Prelude.Text),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value>+                             value :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMetricDimensionProperty ::+  Value Prelude.Text -> Value Prelude.Text -> MetricDimensionProperty+mkMetricDimensionProperty key value+  = MetricDimensionProperty+      {haddock_workaround_ = (), key = key, value = value}+instance ToResourceProperties MetricDimensionProperty where+  toResourceProperties MetricDimensionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.MetricDimension",+         supportsTags = Prelude.False,+         properties = ["Key" JSON..= key, "Value" JSON..= value]}+instance JSON.ToJSON MetricDimensionProperty where+  toJSON MetricDimensionProperty {..}+    = JSON.object ["Key" JSON..= key, "Value" JSON..= value]+instance Property "Key" MetricDimensionProperty where+  type PropertyType "Key" MetricDimensionProperty = Value Prelude.Text+  set newValue MetricDimensionProperty {..}+    = MetricDimensionProperty {key = newValue, ..}+instance Property "Value" MetricDimensionProperty where+  type PropertyType "Value" MetricDimensionProperty = Value Prelude.Text+  set newValue MetricDimensionProperty {..}+    = MetricDimensionProperty {value = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/MetricDimensionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.MetricDimensionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MetricDimensionProperty :: Prelude.Type+instance ToResourceProperties MetricDimensionProperty+instance Prelude.Eq MetricDimensionProperty+instance Prelude.Show MetricDimensionProperty+instance JSON.ToJSON MetricDimensionProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingActionProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingActionProperty (+        module Exports, ScalingActionProperty(..), mkScalingActionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.SimpleScalingPolicyConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingActionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html>+    ScalingActionProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market>+                           market :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration>+                           simpleScalingPolicyConfiguration :: SimpleScalingPolicyConfigurationProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingActionProperty ::+  SimpleScalingPolicyConfigurationProperty -> ScalingActionProperty+mkScalingActionProperty simpleScalingPolicyConfiguration+  = ScalingActionProperty+      {haddock_workaround_ = (),+       simpleScalingPolicyConfiguration = simpleScalingPolicyConfiguration,+       market = Prelude.Nothing}+instance ToResourceProperties ScalingActionProperty where+  toResourceProperties ScalingActionProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.ScalingAction",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SimpleScalingPolicyConfiguration"+                              JSON..= simpleScalingPolicyConfiguration]+                           (Prelude.catMaybes [(JSON..=) "Market" Prelude.<$> market]))}+instance JSON.ToJSON ScalingActionProperty where+  toJSON ScalingActionProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SimpleScalingPolicyConfiguration"+                 JSON..= simpleScalingPolicyConfiguration]+              (Prelude.catMaybes [(JSON..=) "Market" Prelude.<$> market])))+instance Property "Market" ScalingActionProperty where+  type PropertyType "Market" ScalingActionProperty = Value Prelude.Text+  set newValue ScalingActionProperty {..}+    = ScalingActionProperty {market = Prelude.pure newValue, ..}+instance Property "SimpleScalingPolicyConfiguration" ScalingActionProperty where+  type PropertyType "SimpleScalingPolicyConfiguration" ScalingActionProperty = SimpleScalingPolicyConfigurationProperty+  set newValue ScalingActionProperty {..}+    = ScalingActionProperty+        {simpleScalingPolicyConfiguration = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingActionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingActionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingActionProperty :: Prelude.Type+instance ToResourceProperties ScalingActionProperty+instance Prelude.Eq ScalingActionProperty+instance Prelude.Show ScalingActionProperty+instance JSON.ToJSON ScalingActionProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingConstraintsProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingConstraintsProperty (+        ScalingConstraintsProperty(..), mkScalingConstraintsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingConstraintsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html>+    ScalingConstraintsProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity>+                                maxCapacity :: (Value Prelude.Integer),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity>+                                minCapacity :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingConstraintsProperty ::+  Value Prelude.Integer+  -> Value Prelude.Integer -> ScalingConstraintsProperty+mkScalingConstraintsProperty maxCapacity minCapacity+  = ScalingConstraintsProperty+      {haddock_workaround_ = (), maxCapacity = maxCapacity,+       minCapacity = minCapacity}+instance ToResourceProperties ScalingConstraintsProperty where+  toResourceProperties ScalingConstraintsProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.ScalingConstraints",+         supportsTags = Prelude.False,+         properties = ["MaxCapacity" JSON..= maxCapacity,+                       "MinCapacity" JSON..= minCapacity]}+instance JSON.ToJSON ScalingConstraintsProperty where+  toJSON ScalingConstraintsProperty {..}+    = JSON.object+        ["MaxCapacity" JSON..= maxCapacity,+         "MinCapacity" JSON..= minCapacity]+instance Property "MaxCapacity" ScalingConstraintsProperty where+  type PropertyType "MaxCapacity" ScalingConstraintsProperty = Value Prelude.Integer+  set newValue ScalingConstraintsProperty {..}+    = ScalingConstraintsProperty {maxCapacity = newValue, ..}+instance Property "MinCapacity" ScalingConstraintsProperty where+  type PropertyType "MinCapacity" ScalingConstraintsProperty = Value Prelude.Integer+  set newValue ScalingConstraintsProperty {..}+    = ScalingConstraintsProperty {minCapacity = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingConstraintsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingConstraintsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingConstraintsProperty :: Prelude.Type+instance ToResourceProperties ScalingConstraintsProperty+instance Prelude.Eq ScalingConstraintsProperty+instance Prelude.Show ScalingConstraintsProperty+instance JSON.ToJSON ScalingConstraintsProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingRuleProperty.hs view
@@ -0,0 +1,66 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingRuleProperty (+        module Exports, ScalingRuleProperty(..), mkScalingRuleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.ScalingActionProperty as Exports+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.ScalingTriggerProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScalingRuleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html>+    ScalingRuleProperty {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action>+                         action :: ScalingActionProperty,+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description>+                         description :: (Prelude.Maybe (Value Prelude.Text)),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name>+                         name :: (Value Prelude.Text),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger>+                         trigger :: ScalingTriggerProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingRuleProperty ::+  ScalingActionProperty+  -> Value Prelude.Text+     -> ScalingTriggerProperty -> ScalingRuleProperty+mkScalingRuleProperty action name trigger+  = ScalingRuleProperty+      {haddock_workaround_ = (), action = action, name = name,+       trigger = trigger, description = Prelude.Nothing}+instance ToResourceProperties ScalingRuleProperty where+  toResourceProperties ScalingRuleProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.ScalingRule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Action" JSON..= action, "Name" JSON..= name,+                            "Trigger" JSON..= trigger]+                           (Prelude.catMaybes+                              [(JSON..=) "Description" Prelude.<$> description]))}+instance JSON.ToJSON ScalingRuleProperty where+  toJSON ScalingRuleProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Action" JSON..= action, "Name" JSON..= name,+               "Trigger" JSON..= trigger]+              (Prelude.catMaybes+                 [(JSON..=) "Description" Prelude.<$> description])))+instance Property "Action" ScalingRuleProperty where+  type PropertyType "Action" ScalingRuleProperty = ScalingActionProperty+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {action = newValue, ..}+instance Property "Description" ScalingRuleProperty where+  type PropertyType "Description" ScalingRuleProperty = Value Prelude.Text+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {description = Prelude.pure newValue, ..}+instance Property "Name" ScalingRuleProperty where+  type PropertyType "Name" ScalingRuleProperty = Value Prelude.Text+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {name = newValue, ..}+instance Property "Trigger" ScalingRuleProperty where+  type PropertyType "Trigger" ScalingRuleProperty = ScalingTriggerProperty+  set newValue ScalingRuleProperty {..}+    = ScalingRuleProperty {trigger = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingRuleProperty :: Prelude.Type+instance ToResourceProperties ScalingRuleProperty+instance Prelude.Eq ScalingRuleProperty+instance Prelude.Show ScalingRuleProperty+instance JSON.ToJSON ScalingRuleProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingTriggerProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingTriggerProperty (+        module Exports, ScalingTriggerProperty(..),+        mkScalingTriggerProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.InstanceGroupConfig.CloudWatchAlarmDefinitionProperty as Exports+import Stratosphere.ResourceProperties+data ScalingTriggerProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html>+    ScalingTriggerProperty {haddock_workaround_ :: (),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition>+                            cloudWatchAlarmDefinition :: CloudWatchAlarmDefinitionProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScalingTriggerProperty ::+  CloudWatchAlarmDefinitionProperty -> ScalingTriggerProperty+mkScalingTriggerProperty cloudWatchAlarmDefinition+  = ScalingTriggerProperty+      {haddock_workaround_ = (),+       cloudWatchAlarmDefinition = cloudWatchAlarmDefinition}+instance ToResourceProperties ScalingTriggerProperty where+  toResourceProperties ScalingTriggerProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.ScalingTrigger",+         supportsTags = Prelude.False,+         properties = ["CloudWatchAlarmDefinition"+                         JSON..= cloudWatchAlarmDefinition]}+instance JSON.ToJSON ScalingTriggerProperty where+  toJSON ScalingTriggerProperty {..}+    = JSON.object+        ["CloudWatchAlarmDefinition" JSON..= cloudWatchAlarmDefinition]+instance Property "CloudWatchAlarmDefinition" ScalingTriggerProperty where+  type PropertyType "CloudWatchAlarmDefinition" ScalingTriggerProperty = CloudWatchAlarmDefinitionProperty+  set newValue ScalingTriggerProperty {..}+    = ScalingTriggerProperty {cloudWatchAlarmDefinition = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/ScalingTriggerProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.ScalingTriggerProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScalingTriggerProperty :: Prelude.Type+instance ToResourceProperties ScalingTriggerProperty+instance Prelude.Eq ScalingTriggerProperty+instance Prelude.Show ScalingTriggerProperty+instance JSON.ToJSON ScalingTriggerProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/SimpleScalingPolicyConfigurationProperty.hs view
@@ -0,0 +1,60 @@+module Stratosphere.EMR.InstanceGroupConfig.SimpleScalingPolicyConfigurationProperty (+        SimpleScalingPolicyConfigurationProperty(..),+        mkSimpleScalingPolicyConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SimpleScalingPolicyConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html>+    SimpleScalingPolicyConfigurationProperty {haddock_workaround_ :: (),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype>+                                              adjustmentType :: (Prelude.Maybe (Value Prelude.Text)),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown>+                                              coolDown :: (Prelude.Maybe (Value Prelude.Integer)),+                                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment>+                                              scalingAdjustment :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSimpleScalingPolicyConfigurationProperty ::+  Value Prelude.Integer -> SimpleScalingPolicyConfigurationProperty+mkSimpleScalingPolicyConfigurationProperty scalingAdjustment+  = SimpleScalingPolicyConfigurationProperty+      {haddock_workaround_ = (), scalingAdjustment = scalingAdjustment,+       adjustmentType = Prelude.Nothing, coolDown = Prelude.Nothing}+instance ToResourceProperties SimpleScalingPolicyConfigurationProperty where+  toResourceProperties SimpleScalingPolicyConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ScalingAdjustment" JSON..= scalingAdjustment]+                           (Prelude.catMaybes+                              [(JSON..=) "AdjustmentType" Prelude.<$> adjustmentType,+                               (JSON..=) "CoolDown" Prelude.<$> coolDown]))}+instance JSON.ToJSON SimpleScalingPolicyConfigurationProperty where+  toJSON SimpleScalingPolicyConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ScalingAdjustment" JSON..= scalingAdjustment]+              (Prelude.catMaybes+                 [(JSON..=) "AdjustmentType" Prelude.<$> adjustmentType,+                  (JSON..=) "CoolDown" Prelude.<$> coolDown])))+instance Property "AdjustmentType" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "AdjustmentType" SimpleScalingPolicyConfigurationProperty = Value Prelude.Text+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {adjustmentType = Prelude.pure newValue, ..}+instance Property "CoolDown" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "CoolDown" SimpleScalingPolicyConfigurationProperty = Value Prelude.Integer+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {coolDown = Prelude.pure newValue, ..}+instance Property "ScalingAdjustment" SimpleScalingPolicyConfigurationProperty where+  type PropertyType "ScalingAdjustment" SimpleScalingPolicyConfigurationProperty = Value Prelude.Integer+  set newValue SimpleScalingPolicyConfigurationProperty {..}+    = SimpleScalingPolicyConfigurationProperty+        {scalingAdjustment = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/SimpleScalingPolicyConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.SimpleScalingPolicyConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SimpleScalingPolicyConfigurationProperty :: Prelude.Type+instance ToResourceProperties SimpleScalingPolicyConfigurationProperty+instance Prelude.Eq SimpleScalingPolicyConfigurationProperty+instance Prelude.Show SimpleScalingPolicyConfigurationProperty+instance JSON.ToJSON SimpleScalingPolicyConfigurationProperty
+ gen/Stratosphere/EMR/InstanceGroupConfig/VolumeSpecificationProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.InstanceGroupConfig.VolumeSpecificationProperty (+        VolumeSpecificationProperty(..), mkVolumeSpecificationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data VolumeSpecificationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html>+    VolumeSpecificationProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-iops>+                                 iops :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-sizeingb>+                                 sizeInGB :: (Value Prelude.Integer),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-throughput>+                                 throughput :: (Prelude.Maybe (Value Prelude.Integer)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-volumetype>+                                 volumeType :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkVolumeSpecificationProperty ::+  Value Prelude.Integer+  -> Value Prelude.Text -> VolumeSpecificationProperty+mkVolumeSpecificationProperty sizeInGB volumeType+  = VolumeSpecificationProperty+      {haddock_workaround_ = (), sizeInGB = sizeInGB,+       volumeType = volumeType, iops = Prelude.Nothing,+       throughput = Prelude.Nothing}+instance ToResourceProperties VolumeSpecificationProperty where+  toResourceProperties VolumeSpecificationProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::InstanceGroupConfig.VolumeSpecification",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+                           (Prelude.catMaybes+                              [(JSON..=) "Iops" Prelude.<$> iops,+                               (JSON..=) "Throughput" Prelude.<$> throughput]))}+instance JSON.ToJSON VolumeSpecificationProperty where+  toJSON VolumeSpecificationProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SizeInGB" JSON..= sizeInGB, "VolumeType" JSON..= volumeType]+              (Prelude.catMaybes+                 [(JSON..=) "Iops" Prelude.<$> iops,+                  (JSON..=) "Throughput" Prelude.<$> throughput])))+instance Property "Iops" VolumeSpecificationProperty where+  type PropertyType "Iops" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {iops = Prelude.pure newValue, ..}+instance Property "SizeInGB" VolumeSpecificationProperty where+  type PropertyType "SizeInGB" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {sizeInGB = newValue, ..}+instance Property "Throughput" VolumeSpecificationProperty where+  type PropertyType "Throughput" VolumeSpecificationProperty = Value Prelude.Integer+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty+        {throughput = Prelude.pure newValue, ..}+instance Property "VolumeType" VolumeSpecificationProperty where+  type PropertyType "VolumeType" VolumeSpecificationProperty = Value Prelude.Text+  set newValue VolumeSpecificationProperty {..}+    = VolumeSpecificationProperty {volumeType = newValue, ..}
+ gen/Stratosphere/EMR/InstanceGroupConfig/VolumeSpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.InstanceGroupConfig.VolumeSpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data VolumeSpecificationProperty :: Prelude.Type+instance ToResourceProperties VolumeSpecificationProperty+instance Prelude.Eq VolumeSpecificationProperty+instance Prelude.Show VolumeSpecificationProperty+instance JSON.ToJSON VolumeSpecificationProperty
+ gen/Stratosphere/EMR/SecurityConfiguration.hs view
@@ -0,0 +1,46 @@+module Stratosphere.EMR.SecurityConfiguration (+        SecurityConfiguration(..), mkSecurityConfiguration+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SecurityConfiguration+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html>+    SecurityConfiguration {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-name>+                           name :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-securityconfiguration>+                           securityConfiguration :: JSON.Object}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSecurityConfiguration :: JSON.Object -> SecurityConfiguration+mkSecurityConfiguration securityConfiguration+  = SecurityConfiguration+      {haddock_workaround_ = (),+       securityConfiguration = securityConfiguration,+       name = Prelude.Nothing}+instance ToResourceProperties SecurityConfiguration where+  toResourceProperties SecurityConfiguration {..}+    = ResourceProperties+        {awsType = "AWS::EMR::SecurityConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SecurityConfiguration" JSON..= securityConfiguration]+                           (Prelude.catMaybes [(JSON..=) "Name" Prelude.<$> name]))}+instance JSON.ToJSON SecurityConfiguration where+  toJSON SecurityConfiguration {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SecurityConfiguration" JSON..= securityConfiguration]+              (Prelude.catMaybes [(JSON..=) "Name" Prelude.<$> name])))+instance Property "Name" SecurityConfiguration where+  type PropertyType "Name" SecurityConfiguration = Value Prelude.Text+  set newValue SecurityConfiguration {..}+    = SecurityConfiguration {name = Prelude.pure newValue, ..}+instance Property "SecurityConfiguration" SecurityConfiguration where+  type PropertyType "SecurityConfiguration" SecurityConfiguration = JSON.Object+  set newValue SecurityConfiguration {..}+    = SecurityConfiguration {securityConfiguration = newValue, ..}
+ gen/Stratosphere/EMR/Step.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EMR.Step (+        module Exports, Step(..), mkStep+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Step.HadoopJarStepConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data Step+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html>+    Step {haddock_workaround_ :: (),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-emr-step-actiononfailure>+          actionOnFailure :: (Value Prelude.Text),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-emr-step-hadoopjarstep>+          hadoopJarStep :: HadoopJarStepConfigProperty,+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-emr-step-jobflowid>+          jobFlowId :: (Value Prelude.Text),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-emr-step-name>+          name :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkStep ::+  Value Prelude.Text+  -> HadoopJarStepConfigProperty+     -> Value Prelude.Text -> Value Prelude.Text -> Step+mkStep actionOnFailure hadoopJarStep jobFlowId name+  = Step+      {haddock_workaround_ = (), actionOnFailure = actionOnFailure,+       hadoopJarStep = hadoopJarStep, jobFlowId = jobFlowId, name = name}+instance ToResourceProperties Step where+  toResourceProperties Step {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Step", supportsTags = Prelude.False,+         properties = ["ActionOnFailure" JSON..= actionOnFailure,+                       "HadoopJarStep" JSON..= hadoopJarStep,+                       "JobFlowId" JSON..= jobFlowId, "Name" JSON..= name]}+instance JSON.ToJSON Step where+  toJSON Step {..}+    = JSON.object+        ["ActionOnFailure" JSON..= actionOnFailure,+         "HadoopJarStep" JSON..= hadoopJarStep,+         "JobFlowId" JSON..= jobFlowId, "Name" JSON..= name]+instance Property "ActionOnFailure" Step where+  type PropertyType "ActionOnFailure" Step = Value Prelude.Text+  set newValue Step {..} = Step {actionOnFailure = newValue, ..}+instance Property "HadoopJarStep" Step where+  type PropertyType "HadoopJarStep" Step = HadoopJarStepConfigProperty+  set newValue Step {..} = Step {hadoopJarStep = newValue, ..}+instance Property "JobFlowId" Step where+  type PropertyType "JobFlowId" Step = Value Prelude.Text+  set newValue Step {..} = Step {jobFlowId = newValue, ..}+instance Property "Name" Step where+  type PropertyType "Name" Step = Value Prelude.Text+  set newValue Step {..} = Step {name = newValue, ..}
+ gen/Stratosphere/EMR/Step/HadoopJarStepConfigProperty.hs view
@@ -0,0 +1,68 @@+module Stratosphere.EMR.Step.HadoopJarStepConfigProperty (+        module Exports, HadoopJarStepConfigProperty(..),+        mkHadoopJarStepConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMR.Step.KeyValueProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data HadoopJarStepConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-hadoopjarstepconfig.html>+    HadoopJarStepConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-hadoopjarstepconfig.html#cfn-emr-step-hadoopjarstepconfig-args>+                                 args :: (Prelude.Maybe (ValueList Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-hadoopjarstepconfig.html#cfn-emr-step-hadoopjarstepconfig-jar>+                                 jar :: (Value Prelude.Text),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-hadoopjarstepconfig.html#cfn-emr-step-hadoopjarstepconfig-mainclass>+                                 mainClass :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-hadoopjarstepconfig.html#cfn-emr-step-hadoopjarstepconfig-stepproperties>+                                 stepProperties :: (Prelude.Maybe [KeyValueProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkHadoopJarStepConfigProperty ::+  Value Prelude.Text -> HadoopJarStepConfigProperty+mkHadoopJarStepConfigProperty jar+  = HadoopJarStepConfigProperty+      {haddock_workaround_ = (), jar = jar, args = Prelude.Nothing,+       mainClass = Prelude.Nothing, stepProperties = Prelude.Nothing}+instance ToResourceProperties HadoopJarStepConfigProperty where+  toResourceProperties HadoopJarStepConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Step.HadoopJarStepConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Jar" JSON..= jar]+                           (Prelude.catMaybes+                              [(JSON..=) "Args" Prelude.<$> args,+                               (JSON..=) "MainClass" Prelude.<$> mainClass,+                               (JSON..=) "StepProperties" Prelude.<$> stepProperties]))}+instance JSON.ToJSON HadoopJarStepConfigProperty where+  toJSON HadoopJarStepConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Jar" JSON..= jar]+              (Prelude.catMaybes+                 [(JSON..=) "Args" Prelude.<$> args,+                  (JSON..=) "MainClass" Prelude.<$> mainClass,+                  (JSON..=) "StepProperties" Prelude.<$> stepProperties])))+instance Property "Args" HadoopJarStepConfigProperty where+  type PropertyType "Args" HadoopJarStepConfigProperty = ValueList Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty {args = Prelude.pure newValue, ..}+instance Property "Jar" HadoopJarStepConfigProperty where+  type PropertyType "Jar" HadoopJarStepConfigProperty = Value Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty {jar = newValue, ..}+instance Property "MainClass" HadoopJarStepConfigProperty where+  type PropertyType "MainClass" HadoopJarStepConfigProperty = Value Prelude.Text+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty+        {mainClass = Prelude.pure newValue, ..}+instance Property "StepProperties" HadoopJarStepConfigProperty where+  type PropertyType "StepProperties" HadoopJarStepConfigProperty = [KeyValueProperty]+  set newValue HadoopJarStepConfigProperty {..}+    = HadoopJarStepConfigProperty+        {stepProperties = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Step/HadoopJarStepConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Step.HadoopJarStepConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data HadoopJarStepConfigProperty :: Prelude.Type+instance ToResourceProperties HadoopJarStepConfigProperty+instance Prelude.Eq HadoopJarStepConfigProperty+instance Prelude.Show HadoopJarStepConfigProperty+instance JSON.ToJSON HadoopJarStepConfigProperty
+ gen/Stratosphere/EMR/Step/KeyValueProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.EMR.Step.KeyValueProperty (+        KeyValueProperty(..), mkKeyValueProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data KeyValueProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-keyvalue.html>+    KeyValueProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-keyvalue.html#cfn-emr-step-keyvalue-key>+                      key :: (Prelude.Maybe (Value Prelude.Text)),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-step-keyvalue.html#cfn-emr-step-keyvalue-value>+                      value :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkKeyValueProperty :: KeyValueProperty+mkKeyValueProperty+  = KeyValueProperty+      {haddock_workaround_ = (), key = Prelude.Nothing,+       value = Prelude.Nothing}+instance ToResourceProperties KeyValueProperty where+  toResourceProperties KeyValueProperty {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Step.KeyValue", supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Key" Prelude.<$> key,+                            (JSON..=) "Value" Prelude.<$> value])}+instance JSON.ToJSON KeyValueProperty where+  toJSON KeyValueProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Key" Prelude.<$> key,+               (JSON..=) "Value" Prelude.<$> value]))+instance Property "Key" KeyValueProperty where+  type PropertyType "Key" KeyValueProperty = Value Prelude.Text+  set newValue KeyValueProperty {..}+    = KeyValueProperty {key = Prelude.pure newValue, ..}+instance Property "Value" KeyValueProperty where+  type PropertyType "Value" KeyValueProperty = Value Prelude.Text+  set newValue KeyValueProperty {..}+    = KeyValueProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMR/Step/KeyValueProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMR.Step.KeyValueProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data KeyValueProperty :: Prelude.Type+instance ToResourceProperties KeyValueProperty+instance Prelude.Eq KeyValueProperty+instance Prelude.Show KeyValueProperty+instance JSON.ToJSON KeyValueProperty
+ gen/Stratosphere/EMR/Studio.hs view
@@ -0,0 +1,188 @@+module Stratosphere.EMR.Studio (+        Studio(..), mkStudio+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Studio+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html>+    Studio {haddock_workaround_ :: (),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-authmode>+            authMode :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-defaults3location>+            defaultS3Location :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-description>+            description :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-encryptionkeyarn>+            encryptionKeyArn :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-enginesecuritygroupid>+            engineSecurityGroupId :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idcinstancearn>+            idcInstanceArn :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idcuserassignment>+            idcUserAssignment :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idpauthurl>+            idpAuthUrl :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idprelaystateparametername>+            idpRelayStateParameterName :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-name>+            name :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-servicerole>+            serviceRole :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-subnetids>+            subnetIds :: (ValueList Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-tags>+            tags :: (Prelude.Maybe [Tag]),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-trustedidentitypropagationenabled>+            trustedIdentityPropagationEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-userrole>+            userRole :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-vpcid>+            vpcId :: (Value Prelude.Text),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-workspacesecuritygroupid>+            workspaceSecurityGroupId :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkStudio ::+  Value Prelude.Text+  -> Value Prelude.Text+     -> Value Prelude.Text+        -> Value Prelude.Text+           -> Value Prelude.Text+              -> ValueList Prelude.Text+                 -> Value Prelude.Text -> Value Prelude.Text -> Studio+mkStudio+  authMode+  defaultS3Location+  engineSecurityGroupId+  name+  serviceRole+  subnetIds+  vpcId+  workspaceSecurityGroupId+  = Studio+      {haddock_workaround_ = (), authMode = authMode,+       defaultS3Location = defaultS3Location,+       engineSecurityGroupId = engineSecurityGroupId, name = name,+       serviceRole = serviceRole, subnetIds = subnetIds, vpcId = vpcId,+       workspaceSecurityGroupId = workspaceSecurityGroupId,+       description = Prelude.Nothing, encryptionKeyArn = Prelude.Nothing,+       idcInstanceArn = Prelude.Nothing,+       idcUserAssignment = Prelude.Nothing, idpAuthUrl = Prelude.Nothing,+       idpRelayStateParameterName = Prelude.Nothing,+       tags = Prelude.Nothing,+       trustedIdentityPropagationEnabled = Prelude.Nothing,+       userRole = Prelude.Nothing}+instance ToResourceProperties Studio where+  toResourceProperties Studio {..}+    = ResourceProperties+        {awsType = "AWS::EMR::Studio", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AuthMode" JSON..= authMode,+                            "DefaultS3Location" JSON..= defaultS3Location,+                            "EngineSecurityGroupId" JSON..= engineSecurityGroupId,+                            "Name" JSON..= name, "ServiceRole" JSON..= serviceRole,+                            "SubnetIds" JSON..= subnetIds, "VpcId" JSON..= vpcId,+                            "WorkspaceSecurityGroupId" JSON..= workspaceSecurityGroupId]+                           (Prelude.catMaybes+                              [(JSON..=) "Description" Prelude.<$> description,+                               (JSON..=) "EncryptionKeyArn" Prelude.<$> encryptionKeyArn,+                               (JSON..=) "IdcInstanceArn" Prelude.<$> idcInstanceArn,+                               (JSON..=) "IdcUserAssignment" Prelude.<$> idcUserAssignment,+                               (JSON..=) "IdpAuthUrl" Prelude.<$> idpAuthUrl,+                               (JSON..=) "IdpRelayStateParameterName"+                                 Prelude.<$> idpRelayStateParameterName,+                               (JSON..=) "Tags" Prelude.<$> tags,+                               (JSON..=) "TrustedIdentityPropagationEnabled"+                                 Prelude.<$> trustedIdentityPropagationEnabled,+                               (JSON..=) "UserRole" Prelude.<$> userRole]))}+instance JSON.ToJSON Studio where+  toJSON Studio {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AuthMode" JSON..= authMode,+               "DefaultS3Location" JSON..= defaultS3Location,+               "EngineSecurityGroupId" JSON..= engineSecurityGroupId,+               "Name" JSON..= name, "ServiceRole" JSON..= serviceRole,+               "SubnetIds" JSON..= subnetIds, "VpcId" JSON..= vpcId,+               "WorkspaceSecurityGroupId" JSON..= workspaceSecurityGroupId]+              (Prelude.catMaybes+                 [(JSON..=) "Description" Prelude.<$> description,+                  (JSON..=) "EncryptionKeyArn" Prelude.<$> encryptionKeyArn,+                  (JSON..=) "IdcInstanceArn" Prelude.<$> idcInstanceArn,+                  (JSON..=) "IdcUserAssignment" Prelude.<$> idcUserAssignment,+                  (JSON..=) "IdpAuthUrl" Prelude.<$> idpAuthUrl,+                  (JSON..=) "IdpRelayStateParameterName"+                    Prelude.<$> idpRelayStateParameterName,+                  (JSON..=) "Tags" Prelude.<$> tags,+                  (JSON..=) "TrustedIdentityPropagationEnabled"+                    Prelude.<$> trustedIdentityPropagationEnabled,+                  (JSON..=) "UserRole" Prelude.<$> userRole])))+instance Property "AuthMode" Studio where+  type PropertyType "AuthMode" Studio = Value Prelude.Text+  set newValue Studio {..} = Studio {authMode = newValue, ..}+instance Property "DefaultS3Location" Studio where+  type PropertyType "DefaultS3Location" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {defaultS3Location = newValue, ..}+instance Property "Description" Studio where+  type PropertyType "Description" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {description = Prelude.pure newValue, ..}+instance Property "EncryptionKeyArn" Studio where+  type PropertyType "EncryptionKeyArn" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {encryptionKeyArn = Prelude.pure newValue, ..}+instance Property "EngineSecurityGroupId" Studio where+  type PropertyType "EngineSecurityGroupId" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {engineSecurityGroupId = newValue, ..}+instance Property "IdcInstanceArn" Studio where+  type PropertyType "IdcInstanceArn" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {idcInstanceArn = Prelude.pure newValue, ..}+instance Property "IdcUserAssignment" Studio where+  type PropertyType "IdcUserAssignment" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {idcUserAssignment = Prelude.pure newValue, ..}+instance Property "IdpAuthUrl" Studio where+  type PropertyType "IdpAuthUrl" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {idpAuthUrl = Prelude.pure newValue, ..}+instance Property "IdpRelayStateParameterName" Studio where+  type PropertyType "IdpRelayStateParameterName" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {idpRelayStateParameterName = Prelude.pure newValue, ..}+instance Property "Name" Studio where+  type PropertyType "Name" Studio = Value Prelude.Text+  set newValue Studio {..} = Studio {name = newValue, ..}+instance Property "ServiceRole" Studio where+  type PropertyType "ServiceRole" Studio = Value Prelude.Text+  set newValue Studio {..} = Studio {serviceRole = newValue, ..}+instance Property "SubnetIds" Studio where+  type PropertyType "SubnetIds" Studio = ValueList Prelude.Text+  set newValue Studio {..} = Studio {subnetIds = newValue, ..}+instance Property "Tags" Studio where+  type PropertyType "Tags" Studio = [Tag]+  set newValue Studio {..}+    = Studio {tags = Prelude.pure newValue, ..}+instance Property "TrustedIdentityPropagationEnabled" Studio where+  type PropertyType "TrustedIdentityPropagationEnabled" Studio = Value Prelude.Bool+  set newValue Studio {..}+    = Studio+        {trustedIdentityPropagationEnabled = Prelude.pure newValue, ..}+instance Property "UserRole" Studio where+  type PropertyType "UserRole" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {userRole = Prelude.pure newValue, ..}+instance Property "VpcId" Studio where+  type PropertyType "VpcId" Studio = Value Prelude.Text+  set newValue Studio {..} = Studio {vpcId = newValue, ..}+instance Property "WorkspaceSecurityGroupId" Studio where+  type PropertyType "WorkspaceSecurityGroupId" Studio = Value Prelude.Text+  set newValue Studio {..}+    = Studio {workspaceSecurityGroupId = newValue, ..}
+ gen/Stratosphere/EMR/StudioSessionMapping.hs view
@@ -0,0 +1,65 @@+module Stratosphere.EMR.StudioSessionMapping (+        StudioSessionMapping(..), mkStudioSessionMapping+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data StudioSessionMapping+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html>+    StudioSessionMapping {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-identityname>+                          identityName :: (Value Prelude.Text),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-identitytype>+                          identityType :: (Value Prelude.Text),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-sessionpolicyarn>+                          sessionPolicyArn :: (Value Prelude.Text),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html#cfn-emr-studiosessionmapping-studioid>+                          studioId :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkStudioSessionMapping ::+  Value Prelude.Text+  -> Value Prelude.Text+     -> Value Prelude.Text -> Value Prelude.Text -> StudioSessionMapping+mkStudioSessionMapping+  identityName+  identityType+  sessionPolicyArn+  studioId+  = StudioSessionMapping+      {haddock_workaround_ = (), identityName = identityName,+       identityType = identityType, sessionPolicyArn = sessionPolicyArn,+       studioId = studioId}+instance ToResourceProperties StudioSessionMapping where+  toResourceProperties StudioSessionMapping {..}+    = ResourceProperties+        {awsType = "AWS::EMR::StudioSessionMapping",+         supportsTags = Prelude.False,+         properties = ["IdentityName" JSON..= identityName,+                       "IdentityType" JSON..= identityType,+                       "SessionPolicyArn" JSON..= sessionPolicyArn,+                       "StudioId" JSON..= studioId]}+instance JSON.ToJSON StudioSessionMapping where+  toJSON StudioSessionMapping {..}+    = JSON.object+        ["IdentityName" JSON..= identityName,+         "IdentityType" JSON..= identityType,+         "SessionPolicyArn" JSON..= sessionPolicyArn,+         "StudioId" JSON..= studioId]+instance Property "IdentityName" StudioSessionMapping where+  type PropertyType "IdentityName" StudioSessionMapping = Value Prelude.Text+  set newValue StudioSessionMapping {..}+    = StudioSessionMapping {identityName = newValue, ..}+instance Property "IdentityType" StudioSessionMapping where+  type PropertyType "IdentityType" StudioSessionMapping = Value Prelude.Text+  set newValue StudioSessionMapping {..}+    = StudioSessionMapping {identityType = newValue, ..}+instance Property "SessionPolicyArn" StudioSessionMapping where+  type PropertyType "SessionPolicyArn" StudioSessionMapping = Value Prelude.Text+  set newValue StudioSessionMapping {..}+    = StudioSessionMapping {sessionPolicyArn = newValue, ..}+instance Property "StudioId" StudioSessionMapping where+  type PropertyType "StudioId" StudioSessionMapping = Value Prelude.Text+  set newValue StudioSessionMapping {..}+    = StudioSessionMapping {studioId = newValue, ..}
+ gen/Stratosphere/EMR/WALWorkspace.hs view
@@ -0,0 +1,45 @@+module Stratosphere.EMR.WALWorkspace (+        WALWorkspace(..), mkWALWorkspace+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data WALWorkspace+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html>+    WALWorkspace {haddock_workaround_ :: (),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html#cfn-emr-walworkspace-tags>+                  tags :: (Prelude.Maybe [Tag]),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html#cfn-emr-walworkspace-walworkspacename>+                  wALWorkspaceName :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkWALWorkspace :: WALWorkspace+mkWALWorkspace+  = WALWorkspace+      {haddock_workaround_ = (), tags = Prelude.Nothing,+       wALWorkspaceName = Prelude.Nothing}+instance ToResourceProperties WALWorkspace where+  toResourceProperties WALWorkspace {..}+    = ResourceProperties+        {awsType = "AWS::EMR::WALWorkspace", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Tags" Prelude.<$> tags,+                            (JSON..=) "WALWorkspaceName" Prelude.<$> wALWorkspaceName])}+instance JSON.ToJSON WALWorkspace where+  toJSON WALWorkspace {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Tags" Prelude.<$> tags,+               (JSON..=) "WALWorkspaceName" Prelude.<$> wALWorkspaceName]))+instance Property "Tags" WALWorkspace where+  type PropertyType "Tags" WALWorkspace = [Tag]+  set newValue WALWorkspace {..}+    = WALWorkspace {tags = Prelude.pure newValue, ..}+instance Property "WALWorkspaceName" WALWorkspace where+  type PropertyType "WALWorkspaceName" WALWorkspace = Value Prelude.Text+  set newValue WALWorkspace {..}+    = WALWorkspace {wALWorkspaceName = Prelude.pure newValue, ..}
+ stratosphere-emr.cabal view
@@ -0,0 +1,141 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name:           stratosphere-emr+version:        1.0.0+synopsis:       Stratosphere integration for AWS EMR.+description:    Integration into stratosphere to generate resources and properties for AWS EMR+category:       AWS, Cloud, EMR+stability:      experimental+homepage:       https://github.com/mbj/stratosphere#readme+bug-reports:    https://github.com/mbj/stratosphere/issues+maintainer:     Markus Schirp+license:        MIT+license-file:   LICENSE.md+build-type:     Simple++source-repository head+  type: git+  location: https://github.com/mbj/stratosphere++flag development+  description: Run GHC with development flags+  manual: True+  default: False++library+  exposed-modules:+      Stratosphere.EMR.Cluster+      Stratosphere.EMR.Cluster.ApplicationProperty+      Stratosphere.EMR.Cluster.AutoScalingPolicyProperty+      Stratosphere.EMR.Cluster.AutoTerminationPolicyProperty+      Stratosphere.EMR.Cluster.BootstrapActionConfigProperty+      Stratosphere.EMR.Cluster.CloudWatchAlarmDefinitionProperty+      Stratosphere.EMR.Cluster.ComputeLimitsProperty+      Stratosphere.EMR.Cluster.ConfigurationProperty+      Stratosphere.EMR.Cluster.EbsBlockDeviceConfigProperty+      Stratosphere.EMR.Cluster.EbsConfigurationProperty+      Stratosphere.EMR.Cluster.HadoopJarStepConfigProperty+      Stratosphere.EMR.Cluster.InstanceFleetConfigProperty+      Stratosphere.EMR.Cluster.InstanceFleetProvisioningSpecificationsProperty+      Stratosphere.EMR.Cluster.InstanceFleetResizingSpecificationsProperty+      Stratosphere.EMR.Cluster.InstanceGroupConfigProperty+      Stratosphere.EMR.Cluster.InstanceTypeConfigProperty+      Stratosphere.EMR.Cluster.JobFlowInstancesConfigProperty+      Stratosphere.EMR.Cluster.KerberosAttributesProperty+      Stratosphere.EMR.Cluster.KeyValueProperty+      Stratosphere.EMR.Cluster.ManagedScalingPolicyProperty+      Stratosphere.EMR.Cluster.MetricDimensionProperty+      Stratosphere.EMR.Cluster.OnDemandCapacityReservationOptionsProperty+      Stratosphere.EMR.Cluster.OnDemandProvisioningSpecificationProperty+      Stratosphere.EMR.Cluster.OnDemandResizingSpecificationProperty+      Stratosphere.EMR.Cluster.PlacementGroupConfigProperty+      Stratosphere.EMR.Cluster.PlacementTypeProperty+      Stratosphere.EMR.Cluster.ScalingActionProperty+      Stratosphere.EMR.Cluster.ScalingConstraintsProperty+      Stratosphere.EMR.Cluster.ScalingRuleProperty+      Stratosphere.EMR.Cluster.ScalingTriggerProperty+      Stratosphere.EMR.Cluster.ScriptBootstrapActionConfigProperty+      Stratosphere.EMR.Cluster.SimpleScalingPolicyConfigurationProperty+      Stratosphere.EMR.Cluster.SpotProvisioningSpecificationProperty+      Stratosphere.EMR.Cluster.SpotResizingSpecificationProperty+      Stratosphere.EMR.Cluster.StepConfigProperty+      Stratosphere.EMR.Cluster.VolumeSpecificationProperty+      Stratosphere.EMR.InstanceFleetConfig+      Stratosphere.EMR.InstanceFleetConfig.ConfigurationProperty+      Stratosphere.EMR.InstanceFleetConfig.EbsBlockDeviceConfigProperty+      Stratosphere.EMR.InstanceFleetConfig.EbsConfigurationProperty+      Stratosphere.EMR.InstanceFleetConfig.InstanceFleetProvisioningSpecificationsProperty+      Stratosphere.EMR.InstanceFleetConfig.InstanceFleetResizingSpecificationsProperty+      Stratosphere.EMR.InstanceFleetConfig.InstanceTypeConfigProperty+      Stratosphere.EMR.InstanceFleetConfig.OnDemandCapacityReservationOptionsProperty+      Stratosphere.EMR.InstanceFleetConfig.OnDemandProvisioningSpecificationProperty+      Stratosphere.EMR.InstanceFleetConfig.OnDemandResizingSpecificationProperty+      Stratosphere.EMR.InstanceFleetConfig.SpotProvisioningSpecificationProperty+      Stratosphere.EMR.InstanceFleetConfig.SpotResizingSpecificationProperty+      Stratosphere.EMR.InstanceFleetConfig.VolumeSpecificationProperty+      Stratosphere.EMR.InstanceGroupConfig+      Stratosphere.EMR.InstanceGroupConfig.AutoScalingPolicyProperty+      Stratosphere.EMR.InstanceGroupConfig.CloudWatchAlarmDefinitionProperty+      Stratosphere.EMR.InstanceGroupConfig.ConfigurationProperty+      Stratosphere.EMR.InstanceGroupConfig.EbsBlockDeviceConfigProperty+      Stratosphere.EMR.InstanceGroupConfig.EbsConfigurationProperty+      Stratosphere.EMR.InstanceGroupConfig.MetricDimensionProperty+      Stratosphere.EMR.InstanceGroupConfig.ScalingActionProperty+      Stratosphere.EMR.InstanceGroupConfig.ScalingConstraintsProperty+      Stratosphere.EMR.InstanceGroupConfig.ScalingRuleProperty+      Stratosphere.EMR.InstanceGroupConfig.ScalingTriggerProperty+      Stratosphere.EMR.InstanceGroupConfig.SimpleScalingPolicyConfigurationProperty+      Stratosphere.EMR.InstanceGroupConfig.VolumeSpecificationProperty+      Stratosphere.EMR.SecurityConfiguration+      Stratosphere.EMR.Step+      Stratosphere.EMR.Step.HadoopJarStepConfigProperty+      Stratosphere.EMR.Step.KeyValueProperty+      Stratosphere.EMR.Studio+      Stratosphere.EMR.StudioSessionMapping+      Stratosphere.EMR.WALWorkspace+  other-modules:+      Paths_stratosphere_emr+  hs-source-dirs:+      gen+  default-extensions:+      DataKinds+      DeriveGeneric+      DerivingStrategies+      DerivingVia+      DuplicateRecordFields+      FlexibleContexts+      FlexibleInstances+      GADTs+      GeneralizedNewtypeDeriving+      InstanceSigs+      LambdaCase+      MultiParamTypeClasses+      NoFieldSelectors+      NoImplicitPrelude+      NumericUnderscores+      OverloadedLists+      OverloadedRecordDot+      OverloadedStrings+      PolyKinds+      RecordWildCards+      ScopedTypeVariables+      StandaloneDeriving+      Strict+      TemplateHaskell+      TupleSections+      TypeApplications+      TypeFamilies+  ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+  build-depends:+      aeson ==2.*+    , base >=4.8 && <4.22+    , stratosphere ==1.0.0+  default-language: Haskell2010+  if flag(development)+    ghc-options: -Werror+  else+    ghc-options: -Wwarn