amazonka-autoscaling 0.3.6 → 1.0.0
raw patch · 59 files changed
+9680/−6987 lines, 59 filesdep +amazonka-autoscalingdep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok
version bump matches the API change (PVP)
Dependencies added: amazonka-autoscaling, amazonka-test, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers
Dependency ranges changed: amazonka-core, base
API changes (from Hackage documentation)
- Network.AWS.AutoScaling.AttachInstances: instance Ord AttachInstances
- Network.AWS.AutoScaling.AttachInstances: instance Ord AttachInstancesResponse
- Network.AWS.AutoScaling.CompleteLifecycleAction: instance Ord CompleteLifecycleAction
- Network.AWS.AutoScaling.CompleteLifecycleAction: instance Ord CompleteLifecycleActionResponse
- Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Ord CreateAutoScalingGroupResponse
- Network.AWS.AutoScaling.CreateLaunchConfiguration: clcAssociatePublicIpAddress :: Lens' CreateLaunchConfiguration (Maybe Bool)
- Network.AWS.AutoScaling.CreateLaunchConfiguration: clcEbsOptimized :: Lens' CreateLaunchConfiguration (Maybe Bool)
- Network.AWS.AutoScaling.CreateLaunchConfiguration: clcIamInstanceProfile :: Lens' CreateLaunchConfiguration (Maybe Text)
- Network.AWS.AutoScaling.CreateLaunchConfiguration: clcRamdiskId :: Lens' CreateLaunchConfiguration (Maybe Text)
- Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Ord CreateLaunchConfigurationResponse
- Network.AWS.AutoScaling.CreateOrUpdateTags: instance IsList CreateOrUpdateTags
- Network.AWS.AutoScaling.CreateOrUpdateTags: instance Monoid CreateOrUpdateTags
- Network.AWS.AutoScaling.CreateOrUpdateTags: instance Ord CreateOrUpdateTagsResponse
- Network.AWS.AutoScaling.CreateOrUpdateTags: instance Semigroup CreateOrUpdateTags
- Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Ord DeleteAutoScalingGroup
- Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Ord DeleteAutoScalingGroupResponse
- Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance IsString DeleteLaunchConfiguration
- Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Monoid DeleteLaunchConfiguration
- Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Ord DeleteLaunchConfiguration
- Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Ord DeleteLaunchConfigurationResponse
- Network.AWS.AutoScaling.DeleteLifecycleHook: dlh1AutoScalingGroupName :: Lens' DeleteLifecycleHook Text
- Network.AWS.AutoScaling.DeleteLifecycleHook: dlh1LifecycleHookName :: Lens' DeleteLifecycleHook Text
- Network.AWS.AutoScaling.DeleteLifecycleHook: instance Ord DeleteLifecycleHook
- Network.AWS.AutoScaling.DeleteLifecycleHook: instance Ord DeleteLifecycleHookResponse
- Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Ord DeleteNotificationConfiguration
- Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Ord DeleteNotificationConfigurationResponse
- Network.AWS.AutoScaling.DeletePolicy: instance Ord DeletePolicy
- Network.AWS.AutoScaling.DeletePolicy: instance Ord DeletePolicyResponse
- Network.AWS.AutoScaling.DeleteScheduledAction: instance Ord DeleteScheduledAction
- Network.AWS.AutoScaling.DeleteScheduledAction: instance Ord DeleteScheduledActionResponse
- Network.AWS.AutoScaling.DeleteTags: instance IsList DeleteTags
- Network.AWS.AutoScaling.DeleteTags: instance Monoid DeleteTags
- Network.AWS.AutoScaling.DeleteTags: instance Ord DeleteTagsResponse
- Network.AWS.AutoScaling.DeleteTags: instance Semigroup DeleteTags
- Network.AWS.AutoScaling.DescribeAccountLimits: dalrMaxNumberOfAutoScalingGroups :: Lens' DescribeAccountLimitsResponse (Maybe Int)
- Network.AWS.AutoScaling.DescribeAccountLimits: dalrMaxNumberOfLaunchConfigurations :: Lens' DescribeAccountLimitsResponse (Maybe Int)
- Network.AWS.AutoScaling.DescribeAccountLimits: instance FromXML DescribeAccountLimitsResponse
- Network.AWS.AutoScaling.DescribeAccountLimits: instance Ord DescribeAccountLimits
- Network.AWS.AutoScaling.DescribeAccountLimits: instance Ord DescribeAccountLimitsResponse
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: datrAdjustmentTypes :: Lens' DescribeAdjustmentTypesResponse [AdjustmentType]
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance FromXML DescribeAdjustmentTypesResponse
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance IsList DescribeAdjustmentTypesResponse
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Monoid DescribeAdjustmentTypesResponse
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Ord DescribeAdjustmentTypes
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Semigroup DescribeAdjustmentTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingGroups: dasgrAutoScalingGroups :: Lens' DescribeAutoScalingGroupsResponse [AutoScalingGroup]
- Network.AWS.AutoScaling.DescribeAutoScalingGroups: dasgrNextToken :: Lens' DescribeAutoScalingGroupsResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance FromXML DescribeAutoScalingGroupsResponse
- Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Ord DescribeAutoScalingGroups
- Network.AWS.AutoScaling.DescribeAutoScalingInstances: dasirAutoScalingInstances :: Lens' DescribeAutoScalingInstancesResponse [AutoScalingInstanceDetails]
- Network.AWS.AutoScaling.DescribeAutoScalingInstances: dasirNextToken :: Lens' DescribeAutoScalingInstancesResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance FromXML DescribeAutoScalingInstancesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Ord DescribeAutoScalingInstances
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: dasntrAutoScalingNotificationTypes :: Lens' DescribeAutoScalingNotificationTypesResponse [Text]
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance FromXML DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance IsList DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Monoid DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Ord DescribeAutoScalingNotificationTypes
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Ord DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Semigroup DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeLaunchConfigurations: dlcrLaunchConfigurations :: Lens' DescribeLaunchConfigurationsResponse [LaunchConfiguration]
- Network.AWS.AutoScaling.DescribeLaunchConfigurations: dlcrNextToken :: Lens' DescribeLaunchConfigurationsResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance FromXML DescribeLaunchConfigurationsResponse
- Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Ord DescribeLaunchConfigurations
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: dlhtrLifecycleHookTypes :: Lens' DescribeLifecycleHookTypesResponse [Text]
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance FromXML DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance IsList DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Monoid DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Ord DescribeLifecycleHookTypes
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Ord DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Semigroup DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHooks: dlhrLifecycleHooks :: Lens' DescribeLifecycleHooksResponse [LifecycleHook]
- Network.AWS.AutoScaling.DescribeLifecycleHooks: instance FromXML DescribeLifecycleHooksResponse
- Network.AWS.AutoScaling.DescribeLifecycleHooks: instance IsList DescribeLifecycleHooksResponse
- Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Monoid DescribeLifecycleHooksResponse
- Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Ord DescribeLifecycleHooks
- Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Semigroup DescribeLifecycleHooksResponse
- Network.AWS.AutoScaling.DescribeMetricCollectionTypes: dmctrGranularities :: Lens' DescribeMetricCollectionTypesResponse [MetricGranularityType]
- Network.AWS.AutoScaling.DescribeMetricCollectionTypes: dmctrMetrics :: Lens' DescribeMetricCollectionTypesResponse [MetricCollectionType]
- Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance FromXML DescribeMetricCollectionTypesResponse
- Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Ord DescribeMetricCollectionTypes
- Network.AWS.AutoScaling.DescribeNotificationConfigurations: dncrNextToken :: Lens' DescribeNotificationConfigurationsResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeNotificationConfigurations: dncrNotificationConfigurations :: Lens' DescribeNotificationConfigurationsResponse [NotificationConfiguration]
- Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance FromXML DescribeNotificationConfigurationsResponse
- Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Ord DescribeNotificationConfigurations
- Network.AWS.AutoScaling.DescribePolicies: dp1AutoScalingGroupName :: Lens' DescribePolicies (Maybe Text)
- Network.AWS.AutoScaling.DescribePolicies: dp1MaxRecords :: Lens' DescribePolicies (Maybe Int)
- Network.AWS.AutoScaling.DescribePolicies: dp1NextToken :: Lens' DescribePolicies (Maybe Text)
- Network.AWS.AutoScaling.DescribePolicies: dp1PolicyNames :: Lens' DescribePolicies [Text]
- Network.AWS.AutoScaling.DescribePolicies: dprNextToken :: Lens' DescribePoliciesResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribePolicies: dprScalingPolicies :: Lens' DescribePoliciesResponse [ScalingPolicy]
- Network.AWS.AutoScaling.DescribePolicies: instance FromXML DescribePoliciesResponse
- Network.AWS.AutoScaling.DescribePolicies: instance Ord DescribePolicies
- Network.AWS.AutoScaling.DescribeScalingActivities: dsa2ActivityIds :: Lens' DescribeScalingActivities [Text]
- Network.AWS.AutoScaling.DescribeScalingActivities: dsa2AutoScalingGroupName :: Lens' DescribeScalingActivities (Maybe Text)
- Network.AWS.AutoScaling.DescribeScalingActivities: dsa2MaxRecords :: Lens' DescribeScalingActivities (Maybe Int)
- Network.AWS.AutoScaling.DescribeScalingActivities: dsa2NextToken :: Lens' DescribeScalingActivities (Maybe Text)
- Network.AWS.AutoScaling.DescribeScalingActivities: dsar1Activities :: Lens' DescribeScalingActivitiesResponse [Activity]
- Network.AWS.AutoScaling.DescribeScalingActivities: dsar1NextToken :: Lens' DescribeScalingActivitiesResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeScalingActivities: instance FromXML DescribeScalingActivitiesResponse
- Network.AWS.AutoScaling.DescribeScalingActivities: instance Ord DescribeScalingActivities
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: dsptrProcesses :: Lens' DescribeScalingProcessTypesResponse [ProcessType]
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance FromXML DescribeScalingProcessTypesResponse
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance IsList DescribeScalingProcessTypesResponse
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Monoid DescribeScalingProcessTypesResponse
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Ord DescribeScalingProcessTypes
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Semigroup DescribeScalingProcessTypesResponse
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1AutoScalingGroupName :: Lens' DescribeScheduledActions (Maybe Text)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1EndTime :: Lens' DescribeScheduledActions (Maybe UTCTime)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1MaxRecords :: Lens' DescribeScheduledActions (Maybe Int)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1NextToken :: Lens' DescribeScheduledActions (Maybe Text)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1ScheduledActionNames :: Lens' DescribeScheduledActions [Text]
- Network.AWS.AutoScaling.DescribeScheduledActions: dsa1StartTime :: Lens' DescribeScheduledActions (Maybe UTCTime)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsarNextToken :: Lens' DescribeScheduledActionsResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeScheduledActions: dsarScheduledUpdateGroupActions :: Lens' DescribeScheduledActionsResponse [ScheduledUpdateGroupAction]
- Network.AWS.AutoScaling.DescribeScheduledActions: instance FromXML DescribeScheduledActionsResponse
- Network.AWS.AutoScaling.DescribeScheduledActions: instance Ord DescribeScheduledActions
- Network.AWS.AutoScaling.DescribeTags: dtrNextToken :: Lens' DescribeTagsResponse (Maybe Text)
- Network.AWS.AutoScaling.DescribeTags: dtrTags :: Lens' DescribeTagsResponse [TagDescription]
- Network.AWS.AutoScaling.DescribeTags: instance FromXML DescribeTagsResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: dtptrTerminationPolicyTypes :: Lens' DescribeTerminationPolicyTypesResponse [Text]
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance FromXML DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance IsList DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Monoid DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Ord DescribeTerminationPolicyTypes
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Ord DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Semigroup DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DetachInstances: dirActivities :: Lens' DetachInstancesResponse [Activity]
- Network.AWS.AutoScaling.DetachInstances: instance FromXML DetachInstancesResponse
- Network.AWS.AutoScaling.DetachInstances: instance IsList DetachInstancesResponse
- Network.AWS.AutoScaling.DetachInstances: instance Monoid DetachInstancesResponse
- Network.AWS.AutoScaling.DetachInstances: instance Ord DetachInstances
- Network.AWS.AutoScaling.DetachInstances: instance Semigroup DetachInstancesResponse
- Network.AWS.AutoScaling.DisableMetricsCollection: instance Ord DisableMetricsCollection
- Network.AWS.AutoScaling.DisableMetricsCollection: instance Ord DisableMetricsCollectionResponse
- Network.AWS.AutoScaling.EnableMetricsCollection: instance Ord EnableMetricsCollection
- Network.AWS.AutoScaling.EnableMetricsCollection: instance Ord EnableMetricsCollectionResponse
- Network.AWS.AutoScaling.EnterStandby: esr1Activities :: Lens' EnterStandbyResponse [Activity]
- Network.AWS.AutoScaling.EnterStandby: instance FromXML EnterStandbyResponse
- Network.AWS.AutoScaling.EnterStandby: instance IsList EnterStandbyResponse
- Network.AWS.AutoScaling.EnterStandby: instance Monoid EnterStandbyResponse
- Network.AWS.AutoScaling.EnterStandby: instance Ord EnterStandby
- Network.AWS.AutoScaling.EnterStandby: instance Semigroup EnterStandbyResponse
- Network.AWS.AutoScaling.ExecutePolicy: instance Ord ExecutePolicy
- Network.AWS.AutoScaling.ExecutePolicy: instance Ord ExecutePolicyResponse
- Network.AWS.AutoScaling.ExitStandby: es1AutoScalingGroupName :: Lens' ExitStandby Text
- Network.AWS.AutoScaling.ExitStandby: es1InstanceIds :: Lens' ExitStandby [Text]
- Network.AWS.AutoScaling.ExitStandby: esrActivities :: Lens' ExitStandbyResponse [Activity]
- Network.AWS.AutoScaling.ExitStandby: instance FromXML ExitStandbyResponse
- Network.AWS.AutoScaling.ExitStandby: instance IsList ExitStandbyResponse
- Network.AWS.AutoScaling.ExitStandby: instance Monoid ExitStandbyResponse
- Network.AWS.AutoScaling.ExitStandby: instance Ord ExitStandby
- Network.AWS.AutoScaling.ExitStandby: instance Semigroup ExitStandbyResponse
- Network.AWS.AutoScaling.PutLifecycleHook: instance Ord PutLifecycleHook
- Network.AWS.AutoScaling.PutLifecycleHook: instance Ord PutLifecycleHookResponse
- Network.AWS.AutoScaling.PutNotificationConfiguration: instance Ord PutNotificationConfiguration
- Network.AWS.AutoScaling.PutNotificationConfiguration: instance Ord PutNotificationConfigurationResponse
- Network.AWS.AutoScaling.PutScalingPolicy: instance FromXML PutScalingPolicyResponse
- Network.AWS.AutoScaling.PutScalingPolicy: instance Monoid PutScalingPolicyResponse
- Network.AWS.AutoScaling.PutScalingPolicy: instance Ord PutScalingPolicy
- Network.AWS.AutoScaling.PutScalingPolicy: instance Ord PutScalingPolicyResponse
- Network.AWS.AutoScaling.PutScalingPolicy: psprPolicyARN :: Lens' PutScalingPolicyResponse (Maybe Text)
- Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Ord PutScheduledUpdateGroupAction
- Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Ord PutScheduledUpdateGroupActionResponse
- Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Ord RecordLifecycleActionHeartbeat
- Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Ord RecordLifecycleActionHeartbeatResponse
- Network.AWS.AutoScaling.ResumeProcesses: instance Ord ResumeProcesses
- Network.AWS.AutoScaling.ResumeProcesses: instance Ord ResumeProcessesResponse
- Network.AWS.AutoScaling.SetDesiredCapacity: instance Ord SetDesiredCapacity
- Network.AWS.AutoScaling.SetDesiredCapacity: instance Ord SetDesiredCapacityResponse
- Network.AWS.AutoScaling.SetInstanceHealth: instance Ord SetInstanceHealth
- Network.AWS.AutoScaling.SetInstanceHealth: instance Ord SetInstanceHealthResponse
- Network.AWS.AutoScaling.SuspendProcesses: instance Ord SuspendProcesses
- Network.AWS.AutoScaling.SuspendProcesses: instance Ord SuspendProcessesResponse
- Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance FromXML TerminateInstanceInAutoScalingGroupResponse
- Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Ord TerminateInstanceInAutoScalingGroup
- Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: tiiasgrActivity :: Lens' TerminateInstanceInAutoScalingGroupResponse (Maybe Activity)
- Network.AWS.AutoScaling.Types: bdmEbs :: Lens' BlockDeviceMapping (Maybe Ebs)
- Network.AWS.AutoScaling.Types: data Ebs
- Network.AWS.AutoScaling.Types: data RESTError :: *
- Network.AWS.AutoScaling.Types: ebsIops :: Lens' Ebs (Maybe Natural)
- Network.AWS.AutoScaling.Types: instance Constructor C1_0LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_0ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_10LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_11LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_12LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_1LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_1ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_2LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_2ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_3LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_3ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_4LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_4ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_5LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_5ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_6LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_6ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_7LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_7ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_8LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_8ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Constructor C1_9LifecycleState
- Network.AWS.AutoScaling.Types: instance Constructor C1_9ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Datatype D1LifecycleState
- Network.AWS.AutoScaling.Types: instance Datatype D1ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Enum LifecycleState
- Network.AWS.AutoScaling.Types: instance Enum ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Eq Activity
- Network.AWS.AutoScaling.Types: instance Eq AdjustmentType
- Network.AWS.AutoScaling.Types: instance Eq Alarm
- Network.AWS.AutoScaling.Types: instance Eq AutoScalingGroup
- Network.AWS.AutoScaling.Types: instance Eq AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance Eq BlockDeviceMapping
- Network.AWS.AutoScaling.Types: instance Eq Ebs
- Network.AWS.AutoScaling.Types: instance Eq EnabledMetric
- Network.AWS.AutoScaling.Types: instance Eq Filter
- Network.AWS.AutoScaling.Types: instance Eq Instance
- Network.AWS.AutoScaling.Types: instance Eq InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance Eq LaunchConfiguration
- Network.AWS.AutoScaling.Types: instance Eq LifecycleHook
- Network.AWS.AutoScaling.Types: instance Eq LifecycleState
- Network.AWS.AutoScaling.Types: instance Eq MetricCollectionType
- Network.AWS.AutoScaling.Types: instance Eq MetricGranularityType
- Network.AWS.AutoScaling.Types: instance Eq NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance Eq ProcessType
- Network.AWS.AutoScaling.Types: instance Eq ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Eq ScalingPolicy
- Network.AWS.AutoScaling.Types: instance Eq ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance Eq ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance Eq SuspendedProcess
- Network.AWS.AutoScaling.Types: instance Eq Tag
- Network.AWS.AutoScaling.Types: instance Eq TagDescription
- Network.AWS.AutoScaling.Types: instance FromText LifecycleState
- Network.AWS.AutoScaling.Types: instance FromText ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance FromXML Activity
- Network.AWS.AutoScaling.Types: instance FromXML AdjustmentType
- Network.AWS.AutoScaling.Types: instance FromXML Alarm
- Network.AWS.AutoScaling.Types: instance FromXML AutoScalingGroup
- Network.AWS.AutoScaling.Types: instance FromXML AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance FromXML BlockDeviceMapping
- Network.AWS.AutoScaling.Types: instance FromXML Ebs
- Network.AWS.AutoScaling.Types: instance FromXML EnabledMetric
- Network.AWS.AutoScaling.Types: instance FromXML Filter
- Network.AWS.AutoScaling.Types: instance FromXML Instance
- Network.AWS.AutoScaling.Types: instance FromXML InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance FromXML LaunchConfiguration
- Network.AWS.AutoScaling.Types: instance FromXML LifecycleHook
- Network.AWS.AutoScaling.Types: instance FromXML LifecycleState
- Network.AWS.AutoScaling.Types: instance FromXML MetricCollectionType
- Network.AWS.AutoScaling.Types: instance FromXML MetricGranularityType
- Network.AWS.AutoScaling.Types: instance FromXML NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance FromXML ProcessType
- Network.AWS.AutoScaling.Types: instance FromXML ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance FromXML ScalingPolicy
- Network.AWS.AutoScaling.Types: instance FromXML ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance FromXML ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance FromXML SuspendedProcess
- Network.AWS.AutoScaling.Types: instance FromXML Tag
- Network.AWS.AutoScaling.Types: instance FromXML TagDescription
- Network.AWS.AutoScaling.Types: instance Generic LifecycleState
- Network.AWS.AutoScaling.Types: instance Generic ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Hashable LifecycleState
- Network.AWS.AutoScaling.Types: instance Hashable ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance IsString ProcessType
- Network.AWS.AutoScaling.Types: instance Monoid AdjustmentType
- Network.AWS.AutoScaling.Types: instance Monoid MetricCollectionType
- Network.AWS.AutoScaling.Types: instance Monoid MetricGranularityType
- Network.AWS.AutoScaling.Types: instance Monoid ProcessType
- Network.AWS.AutoScaling.Types: instance Ord AdjustmentType
- Network.AWS.AutoScaling.Types: instance Ord Alarm
- Network.AWS.AutoScaling.Types: instance Ord AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance Ord Ebs
- Network.AWS.AutoScaling.Types: instance Ord EnabledMetric
- Network.AWS.AutoScaling.Types: instance Ord Filter
- Network.AWS.AutoScaling.Types: instance Ord InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance Ord LifecycleHook
- Network.AWS.AutoScaling.Types: instance Ord LifecycleState
- Network.AWS.AutoScaling.Types: instance Ord MetricCollectionType
- Network.AWS.AutoScaling.Types: instance Ord MetricGranularityType
- Network.AWS.AutoScaling.Types: instance Ord NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance Ord ProcessType
- Network.AWS.AutoScaling.Types: instance Ord ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Ord ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance Ord ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance Ord SuspendedProcess
- Network.AWS.AutoScaling.Types: instance Ord Tag
- Network.AWS.AutoScaling.Types: instance Ord TagDescription
- Network.AWS.AutoScaling.Types: instance Read Activity
- Network.AWS.AutoScaling.Types: instance Read AdjustmentType
- Network.AWS.AutoScaling.Types: instance Read Alarm
- Network.AWS.AutoScaling.Types: instance Read AutoScalingGroup
- Network.AWS.AutoScaling.Types: instance Read AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance Read BlockDeviceMapping
- Network.AWS.AutoScaling.Types: instance Read Ebs
- Network.AWS.AutoScaling.Types: instance Read EnabledMetric
- Network.AWS.AutoScaling.Types: instance Read Filter
- Network.AWS.AutoScaling.Types: instance Read Instance
- Network.AWS.AutoScaling.Types: instance Read InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance Read LaunchConfiguration
- Network.AWS.AutoScaling.Types: instance Read LifecycleHook
- Network.AWS.AutoScaling.Types: instance Read LifecycleState
- Network.AWS.AutoScaling.Types: instance Read MetricCollectionType
- Network.AWS.AutoScaling.Types: instance Read MetricGranularityType
- Network.AWS.AutoScaling.Types: instance Read NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance Read ProcessType
- Network.AWS.AutoScaling.Types: instance Read ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Read ScalingPolicy
- Network.AWS.AutoScaling.Types: instance Read ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance Read ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance Read SuspendedProcess
- Network.AWS.AutoScaling.Types: instance Read Tag
- Network.AWS.AutoScaling.Types: instance Read TagDescription
- Network.AWS.AutoScaling.Types: instance Show Activity
- Network.AWS.AutoScaling.Types: instance Show AdjustmentType
- Network.AWS.AutoScaling.Types: instance Show Alarm
- Network.AWS.AutoScaling.Types: instance Show AutoScalingGroup
- Network.AWS.AutoScaling.Types: instance Show AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance Show BlockDeviceMapping
- Network.AWS.AutoScaling.Types: instance Show Ebs
- Network.AWS.AutoScaling.Types: instance Show EnabledMetric
- Network.AWS.AutoScaling.Types: instance Show Filter
- Network.AWS.AutoScaling.Types: instance Show Instance
- Network.AWS.AutoScaling.Types: instance Show InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance Show LaunchConfiguration
- Network.AWS.AutoScaling.Types: instance Show LifecycleHook
- Network.AWS.AutoScaling.Types: instance Show LifecycleState
- Network.AWS.AutoScaling.Types: instance Show MetricCollectionType
- Network.AWS.AutoScaling.Types: instance Show MetricGranularityType
- Network.AWS.AutoScaling.Types: instance Show NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance Show ProcessType
- Network.AWS.AutoScaling.Types: instance Show ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance Show ScalingPolicy
- Network.AWS.AutoScaling.Types: instance Show ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance Show ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance Show SuspendedProcess
- Network.AWS.AutoScaling.Types: instance Show Tag
- Network.AWS.AutoScaling.Types: instance Show TagDescription
- Network.AWS.AutoScaling.Types: instance ToByteString LifecycleState
- Network.AWS.AutoScaling.Types: instance ToByteString ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance ToHeader LifecycleState
- Network.AWS.AutoScaling.Types: instance ToHeader ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance ToQuery Activity
- Network.AWS.AutoScaling.Types: instance ToQuery AdjustmentType
- Network.AWS.AutoScaling.Types: instance ToQuery Alarm
- Network.AWS.AutoScaling.Types: instance ToQuery AutoScalingGroup
- Network.AWS.AutoScaling.Types: instance ToQuery AutoScalingInstanceDetails
- Network.AWS.AutoScaling.Types: instance ToQuery BlockDeviceMapping
- Network.AWS.AutoScaling.Types: instance ToQuery Ebs
- Network.AWS.AutoScaling.Types: instance ToQuery EnabledMetric
- Network.AWS.AutoScaling.Types: instance ToQuery Filter
- Network.AWS.AutoScaling.Types: instance ToQuery Instance
- Network.AWS.AutoScaling.Types: instance ToQuery InstanceMonitoring
- Network.AWS.AutoScaling.Types: instance ToQuery LaunchConfiguration
- Network.AWS.AutoScaling.Types: instance ToQuery LifecycleHook
- Network.AWS.AutoScaling.Types: instance ToQuery LifecycleState
- Network.AWS.AutoScaling.Types: instance ToQuery MetricCollectionType
- Network.AWS.AutoScaling.Types: instance ToQuery MetricGranularityType
- Network.AWS.AutoScaling.Types: instance ToQuery NotificationConfiguration
- Network.AWS.AutoScaling.Types: instance ToQuery ProcessType
- Network.AWS.AutoScaling.Types: instance ToQuery ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: instance ToQuery ScalingPolicy
- Network.AWS.AutoScaling.Types: instance ToQuery ScalingProcessQuery
- Network.AWS.AutoScaling.Types: instance ToQuery ScheduledUpdateGroupAction
- Network.AWS.AutoScaling.Types: instance ToQuery SuspendedProcess
- Network.AWS.AutoScaling.Types: instance ToQuery Tag
- Network.AWS.AutoScaling.Types: instance ToQuery TagDescription
- Network.AWS.AutoScaling.Types: instance ToText LifecycleState
- Network.AWS.AutoScaling.Types: instance ToText ScalingActivityStatusCode
- Network.AWS.AutoScaling.Types: lcAssociatePublicIpAddress :: Lens' LaunchConfiguration (Maybe Bool)
- Network.AWS.AutoScaling.Types: lcEbsOptimized :: Lens' LaunchConfiguration (Maybe Bool)
- Network.AWS.AutoScaling.Types: lcIamInstanceProfile :: Lens' LaunchConfiguration (Maybe Text)
- Network.AWS.AutoScaling.Types: lcRamdiskId :: Lens' LaunchConfiguration (Maybe Text)
- Network.AWS.AutoScaling.Types: ns :: Text
- Network.AWS.AutoScaling.Types: sp1AdjustmentType :: Lens' ScalingPolicy (Maybe Text)
- Network.AWS.AutoScaling.Types: sp1Alarms :: Lens' ScalingPolicy [Alarm]
- Network.AWS.AutoScaling.Types: sp1AutoScalingGroupName :: Lens' ScalingPolicy (Maybe Text)
- Network.AWS.AutoScaling.Types: sp1Cooldown :: Lens' ScalingPolicy (Maybe Int)
- Network.AWS.AutoScaling.Types: sp1MinAdjustmentStep :: Lens' ScalingPolicy (Maybe Int)
- Network.AWS.AutoScaling.Types: sp1PolicyARN :: Lens' ScalingPolicy (Maybe Text)
- Network.AWS.AutoScaling.Types: sp1PolicyName :: Lens' ScalingPolicy (Maybe Text)
- Network.AWS.AutoScaling.Types: sp1ScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)
- Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Ord UpdateAutoScalingGroup
- Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Ord UpdateAutoScalingGroupResponse
+ Network.AWS.AutoScaling: Cancelled :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: Detached :: LifecycleState
+ Network.AWS.AutoScaling: Detaching :: LifecycleState
+ Network.AWS.AutoScaling: EnteringStandby :: LifecycleState
+ Network.AWS.AutoScaling: Failed :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: InProgress :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: InService :: LifecycleState
+ Network.AWS.AutoScaling: MidLifecycleAction :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: Pending :: LifecycleState
+ Network.AWS.AutoScaling: PendingProceed :: LifecycleState
+ Network.AWS.AutoScaling: PendingWait :: LifecycleState
+ Network.AWS.AutoScaling: PreInService :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: Quarantined :: LifecycleState
+ Network.AWS.AutoScaling: Standby :: LifecycleState
+ Network.AWS.AutoScaling: Successful :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: Terminated :: LifecycleState
+ Network.AWS.AutoScaling: Terminating :: LifecycleState
+ Network.AWS.AutoScaling: TerminatingProceed :: LifecycleState
+ Network.AWS.AutoScaling: TerminatingWait :: LifecycleState
+ Network.AWS.AutoScaling: WaitingForELBConnectionDraining :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: WaitingForInstanceId :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: WaitingForInstanceWarmup :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: WaitingForSpotInstanceId :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: WaitingForSpotInstanceRequestId :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling: _AlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: _InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: _LimitExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: _ResourceContentionFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: _ResourceInUseFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: _ScalingActivityInProgressFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling: aActivityId :: Lens' Activity Text
+ Network.AWS.AutoScaling: aAlarmARN :: Lens' Alarm (Maybe Text)
+ Network.AWS.AutoScaling: aAlarmName :: Lens' Alarm (Maybe Text)
+ Network.AWS.AutoScaling: aAutoScalingGroupName :: Lens' Activity Text
+ Network.AWS.AutoScaling: aCause :: Lens' Activity Text
+ Network.AWS.AutoScaling: aDescription :: Lens' Activity (Maybe Text)
+ Network.AWS.AutoScaling: aDetails :: Lens' Activity (Maybe Text)
+ Network.AWS.AutoScaling: aEndTime :: Lens' Activity (Maybe UTCTime)
+ Network.AWS.AutoScaling: aProgress :: Lens' Activity (Maybe Int)
+ Network.AWS.AutoScaling: aStartTime :: Lens' Activity UTCTime
+ Network.AWS.AutoScaling: aStatusCode :: Lens' Activity ScalingActivityStatusCode
+ Network.AWS.AutoScaling: aStatusMessage :: Lens' Activity (Maybe Text)
+ Network.AWS.AutoScaling: activity :: Text -> Text -> Text -> UTCTime -> ScalingActivityStatusCode -> Activity
+ Network.AWS.AutoScaling: adjustmentType :: AdjustmentType
+ Network.AWS.AutoScaling: alarm :: Alarm
+ Network.AWS.AutoScaling: asgAutoScalingGroupARN :: Lens' AutoScalingGroup (Maybe Text)
+ Network.AWS.AutoScaling: asgAutoScalingGroupName :: Lens' AutoScalingGroup Text
+ Network.AWS.AutoScaling: asgAvailabilityZones :: Lens' AutoScalingGroup (NonEmpty Text)
+ Network.AWS.AutoScaling: asgCreatedTime :: Lens' AutoScalingGroup UTCTime
+ Network.AWS.AutoScaling: asgDefaultCooldown :: Lens' AutoScalingGroup Int
+ Network.AWS.AutoScaling: asgDesiredCapacity :: Lens' AutoScalingGroup Int
+ Network.AWS.AutoScaling: asgEnabledMetrics :: Lens' AutoScalingGroup [EnabledMetric]
+ Network.AWS.AutoScaling: asgHealthCheckGracePeriod :: Lens' AutoScalingGroup (Maybe Int)
+ Network.AWS.AutoScaling: asgHealthCheckType :: Lens' AutoScalingGroup Text
+ Network.AWS.AutoScaling: asgInstances :: Lens' AutoScalingGroup [Instance]
+ Network.AWS.AutoScaling: asgLaunchConfigurationName :: Lens' AutoScalingGroup Text
+ Network.AWS.AutoScaling: asgLoadBalancerNames :: Lens' AutoScalingGroup [Text]
+ Network.AWS.AutoScaling: asgMaxSize :: Lens' AutoScalingGroup Int
+ Network.AWS.AutoScaling: asgMinSize :: Lens' AutoScalingGroup Int
+ Network.AWS.AutoScaling: asgPlacementGroup :: Lens' AutoScalingGroup (Maybe Text)
+ Network.AWS.AutoScaling: asgStatus :: Lens' AutoScalingGroup (Maybe Text)
+ Network.AWS.AutoScaling: asgSuspendedProcesses :: Lens' AutoScalingGroup [SuspendedProcess]
+ Network.AWS.AutoScaling: asgTags :: Lens' AutoScalingGroup [TagDescription]
+ Network.AWS.AutoScaling: asgTerminationPolicies :: Lens' AutoScalingGroup [Text]
+ Network.AWS.AutoScaling: asgVPCZoneIdentifier :: Lens' AutoScalingGroup (Maybe Text)
+ Network.AWS.AutoScaling: asidAutoScalingGroupName :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: asidAvailabilityZone :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: asidHealthStatus :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: asidInstanceId :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: asidLaunchConfigurationName :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: asidLifecycleState :: Lens' AutoScalingInstanceDetails Text
+ Network.AWS.AutoScaling: atAdjustmentType :: Lens' AdjustmentType (Maybe Text)
+ Network.AWS.AutoScaling: autoScalingGroup :: Text -> Text -> Int -> Int -> Int -> Int -> NonEmpty Text -> Text -> UTCTime -> AutoScalingGroup
+ Network.AWS.AutoScaling: autoScalingInstanceDetails :: Text -> Text -> Text -> Text -> Text -> Text -> AutoScalingInstanceDetails
+ Network.AWS.AutoScaling: bdmDeviceName :: Lens' BlockDeviceMapping Text
+ Network.AWS.AutoScaling: bdmEBS :: Lens' BlockDeviceMapping (Maybe EBS)
+ Network.AWS.AutoScaling: bdmNoDevice :: Lens' BlockDeviceMapping (Maybe Bool)
+ Network.AWS.AutoScaling: bdmVirtualName :: Lens' BlockDeviceMapping (Maybe Text)
+ Network.AWS.AutoScaling: blockDeviceMapping :: Text -> BlockDeviceMapping
+ Network.AWS.AutoScaling: data Activity
+ Network.AWS.AutoScaling: data AdjustmentType
+ Network.AWS.AutoScaling: data Alarm
+ Network.AWS.AutoScaling: data AutoScaling
+ Network.AWS.AutoScaling: data AutoScalingGroup
+ Network.AWS.AutoScaling: data AutoScalingInstanceDetails
+ Network.AWS.AutoScaling: data BlockDeviceMapping
+ Network.AWS.AutoScaling: data EBS
+ Network.AWS.AutoScaling: data EnabledMetric
+ Network.AWS.AutoScaling: data Filter
+ Network.AWS.AutoScaling: data Instance
+ Network.AWS.AutoScaling: data InstanceMonitoring
+ Network.AWS.AutoScaling: data LaunchConfiguration
+ Network.AWS.AutoScaling: data LifecycleHook
+ Network.AWS.AutoScaling: data LifecycleState
+ Network.AWS.AutoScaling: data LoadBalancerState
+ Network.AWS.AutoScaling: data MetricCollectionType
+ Network.AWS.AutoScaling: data MetricGranularityType
+ Network.AWS.AutoScaling: data NotificationConfiguration
+ Network.AWS.AutoScaling: data ProcessType
+ Network.AWS.AutoScaling: data ScalingActivityStatusCode
+ Network.AWS.AutoScaling: data ScalingPolicy
+ Network.AWS.AutoScaling: data ScalingProcessQuery
+ Network.AWS.AutoScaling: data ScheduledUpdateGroupAction
+ Network.AWS.AutoScaling: data StepAdjustment
+ Network.AWS.AutoScaling: data SuspendedProcess
+ Network.AWS.AutoScaling: data Tag
+ Network.AWS.AutoScaling: data TagDescription
+ Network.AWS.AutoScaling: ebs :: EBS
+ Network.AWS.AutoScaling: ebsDeleteOnTermination :: Lens' EBS (Maybe Bool)
+ Network.AWS.AutoScaling: ebsIOPS :: Lens' EBS (Maybe Natural)
+ Network.AWS.AutoScaling: ebsSnapshotId :: Lens' EBS (Maybe Text)
+ Network.AWS.AutoScaling: ebsVolumeSize :: Lens' EBS (Maybe Natural)
+ Network.AWS.AutoScaling: ebsVolumeType :: Lens' EBS (Maybe Text)
+ Network.AWS.AutoScaling: emGranularity :: Lens' EnabledMetric (Maybe Text)
+ Network.AWS.AutoScaling: emMetric :: Lens' EnabledMetric (Maybe Text)
+ Network.AWS.AutoScaling: enabledMetric :: EnabledMetric
+ Network.AWS.AutoScaling: fName :: Lens' Filter Text
+ Network.AWS.AutoScaling: fValues :: Lens' Filter [Text]
+ Network.AWS.AutoScaling: filter' :: Text -> Filter
+ Network.AWS.AutoScaling: iAvailabilityZone :: Lens' Instance Text
+ Network.AWS.AutoScaling: iHealthStatus :: Lens' Instance Text
+ Network.AWS.AutoScaling: iInstanceId :: Lens' Instance Text
+ Network.AWS.AutoScaling: iLaunchConfigurationName :: Lens' Instance Text
+ Network.AWS.AutoScaling: iLifecycleState :: Lens' Instance LifecycleState
+ Network.AWS.AutoScaling: imEnabled :: Lens' InstanceMonitoring (Maybe Bool)
+ Network.AWS.AutoScaling: instance' :: Text -> Text -> LifecycleState -> Text -> Text -> Instance
+ Network.AWS.AutoScaling: instanceMonitoring :: InstanceMonitoring
+ Network.AWS.AutoScaling: launchConfiguration :: Text -> Text -> Text -> UTCTime -> LaunchConfiguration
+ Network.AWS.AutoScaling: lbsLoadBalancerName :: Lens' LoadBalancerState (Maybe Text)
+ Network.AWS.AutoScaling: lbsState :: Lens' LoadBalancerState (Maybe Text)
+ Network.AWS.AutoScaling: lcAssociatePublicIPAddress :: Lens' LaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling: lcBlockDeviceMappings :: Lens' LaunchConfiguration [BlockDeviceMapping]
+ Network.AWS.AutoScaling: lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration [Text]
+ Network.AWS.AutoScaling: lcCreatedTime :: Lens' LaunchConfiguration UTCTime
+ Network.AWS.AutoScaling: lcEBSOptimized :: Lens' LaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling: lcIAMInstanceProfile :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcImageId :: Lens' LaunchConfiguration Text
+ Network.AWS.AutoScaling: lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe InstanceMonitoring)
+ Network.AWS.AutoScaling: lcInstanceType :: Lens' LaunchConfiguration Text
+ Network.AWS.AutoScaling: lcKernelId :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcKeyName :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcLaunchConfigurationARN :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcLaunchConfigurationName :: Lens' LaunchConfiguration Text
+ Network.AWS.AutoScaling: lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcRAMDiskId :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcSecurityGroups :: Lens' LaunchConfiguration [Text]
+ Network.AWS.AutoScaling: lcSpotPrice :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lcUserData :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: lhAutoScalingGroupName :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhDefaultResult :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhGlobalTimeout :: Lens' LifecycleHook (Maybe Int)
+ Network.AWS.AutoScaling: lhHeartbeatTimeout :: Lens' LifecycleHook (Maybe Int)
+ Network.AWS.AutoScaling: lhLifecycleHookName :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhLifecycleTransition :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhNotificationMetadata :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhNotificationTargetARN :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lhRoleARN :: Lens' LifecycleHook (Maybe Text)
+ Network.AWS.AutoScaling: lifecycleHook :: LifecycleHook
+ Network.AWS.AutoScaling: loadBalancerState :: LoadBalancerState
+ Network.AWS.AutoScaling: mctMetric :: Lens' MetricCollectionType (Maybe Text)
+ Network.AWS.AutoScaling: metricCollectionType :: MetricCollectionType
+ Network.AWS.AutoScaling: metricGranularityType :: MetricGranularityType
+ Network.AWS.AutoScaling: mgtGranularity :: Lens' MetricGranularityType (Maybe Text)
+ Network.AWS.AutoScaling: ncAutoScalingGroupName :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: ncNotificationType :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.AutoScaling: notificationConfiguration :: NotificationConfiguration
+ Network.AWS.AutoScaling: processType :: Text -> ProcessType
+ Network.AWS.AutoScaling: ptProcessName :: Lens' ProcessType Text
+ Network.AWS.AutoScaling: sAdjustmentType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sAlarms :: Lens' ScalingPolicy [Alarm]
+ Network.AWS.AutoScaling: sAutoScalingGroupName :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sCooldown :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling: sEstimatedInstanceWarmup :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling: sMetricAggregationType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sMinAdjustmentMagnitude :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling: sMinAdjustmentStep :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling: sPolicyARN :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sPolicyName :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sPolicyType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling: sScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling: sStepAdjustments :: Lens' ScalingPolicy [StepAdjustment]
+ Network.AWS.AutoScaling: saMetricIntervalLowerBound :: Lens' StepAdjustment (Maybe Double)
+ Network.AWS.AutoScaling: saMetricIntervalUpperBound :: Lens' StepAdjustment (Maybe Double)
+ Network.AWS.AutoScaling: saScalingAdjustment :: Lens' StepAdjustment Int
+ Network.AWS.AutoScaling: scalingPolicy :: ScalingPolicy
+ Network.AWS.AutoScaling: scalingProcessQuery :: Text -> ScalingProcessQuery
+ Network.AWS.AutoScaling: scheduledUpdateGroupAction :: ScheduledUpdateGroupAction
+ Network.AWS.AutoScaling: spProcessName :: Lens' SuspendedProcess (Maybe Text)
+ Network.AWS.AutoScaling: spSuspensionReason :: Lens' SuspendedProcess (Maybe Text)
+ Network.AWS.AutoScaling: spqAutoScalingGroupName :: Lens' ScalingProcessQuery Text
+ Network.AWS.AutoScaling: spqScalingProcesses :: Lens' ScalingProcessQuery [Text]
+ Network.AWS.AutoScaling: stepAdjustment :: Int -> StepAdjustment
+ Network.AWS.AutoScaling: sugaAutoScalingGroupName :: Lens' ScheduledUpdateGroupAction (Maybe Text)
+ Network.AWS.AutoScaling: sugaDesiredCapacity :: Lens' ScheduledUpdateGroupAction (Maybe Int)
+ Network.AWS.AutoScaling: sugaEndTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)
+ Network.AWS.AutoScaling: sugaMaxSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)
+ Network.AWS.AutoScaling: sugaMinSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)
+ Network.AWS.AutoScaling: sugaRecurrence :: Lens' ScheduledUpdateGroupAction (Maybe Text)
+ Network.AWS.AutoScaling: sugaScheduledActionARN :: Lens' ScheduledUpdateGroupAction (Maybe Text)
+ Network.AWS.AutoScaling: sugaScheduledActionName :: Lens' ScheduledUpdateGroupAction (Maybe Text)
+ Network.AWS.AutoScaling: sugaStartTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)
+ Network.AWS.AutoScaling: sugaTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)
+ Network.AWS.AutoScaling: suspendedProcess :: SuspendedProcess
+ Network.AWS.AutoScaling: tag :: Text -> Text -> Text -> Bool -> Text -> Tag
+ Network.AWS.AutoScaling: tagDescription :: Text -> Text -> Text -> Bool -> Text -> TagDescription
+ Network.AWS.AutoScaling: tagKey :: Lens' Tag Text
+ Network.AWS.AutoScaling: tagPropagateAtLaunch :: Lens' Tag Bool
+ Network.AWS.AutoScaling: tagResourceId :: Lens' Tag Text
+ Network.AWS.AutoScaling: tagResourceType :: Lens' Tag Text
+ Network.AWS.AutoScaling: tagValue :: Lens' Tag Text
+ Network.AWS.AutoScaling: tdKey :: Lens' TagDescription Text
+ Network.AWS.AutoScaling: tdPropagateAtLaunch :: Lens' TagDescription Bool
+ Network.AWS.AutoScaling: tdResourceId :: Lens' TagDescription Text
+ Network.AWS.AutoScaling: tdResourceType :: Lens' TagDescription Text
+ Network.AWS.AutoScaling: tdValue :: Lens' TagDescription Text
+ Network.AWS.AutoScaling.AttachInstances: instance Constructor C1_0AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Data AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Data AttachInstancesResponse
+ Network.AWS.AutoScaling.AttachInstances: instance Datatype D1AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Generic AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Selector S1_0_0AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Selector S1_0_1AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Typeable AttachInstances
+ Network.AWS.AutoScaling.AttachInstances: instance Typeable AttachInstancesResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: albAutoScalingGroupName :: Lens' AttachLoadBalancers (Maybe Text)
+ Network.AWS.AutoScaling.AttachLoadBalancers: albLoadBalancerNames :: Lens' AttachLoadBalancers [Text]
+ Network.AWS.AutoScaling.AttachLoadBalancers: albrsStatus :: Lens' AttachLoadBalancersResponse Int
+ Network.AWS.AutoScaling.AttachLoadBalancers: attachLoadBalancers :: AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: attachLoadBalancersResponse :: Int -> AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: data AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: data AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance AWSRequest AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Constructor C1_0AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Constructor C1_0AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Data AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Data AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Datatype D1AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Datatype D1AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Eq AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Eq AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Generic AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Generic AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Read AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Read AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Selector S1_0_0AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Selector S1_0_0AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Selector S1_0_1AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Show AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Show AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance ToHeaders AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance ToPath AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance ToQuery AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Typeable AttachLoadBalancers
+ Network.AWS.AutoScaling.AttachLoadBalancers: instance Typeable AttachLoadBalancersResponse
+ Network.AWS.AutoScaling.CompleteLifecycleAction: clarsStatus :: Lens' CompleteLifecycleActionResponse Int
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Constructor C1_0CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Data CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Data CompleteLifecycleActionResponse
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Datatype D1CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Generic CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Selector S1_0_0CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Selector S1_0_0CompleteLifecycleActionResponse
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Selector S1_0_1CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Selector S1_0_2CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Selector S1_0_3CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Typeable CompleteLifecycleAction
+ Network.AWS.AutoScaling.CompleteLifecycleAction: instance Typeable CompleteLifecycleActionResponse
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Constructor C1_0CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Data CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Data CreateAutoScalingGroupResponse
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Datatype D1CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Generic CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_0CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_10CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_11CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_12CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_13CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_14CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_1CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_2CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_3CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_4CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_5CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_6CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_7CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_8CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Selector S1_0_9CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Typeable CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: instance Typeable CreateAutoScalingGroupResponse
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: clcAssociatePublicIPAddress :: Lens' CreateLaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: clcEBSOptimized :: Lens' CreateLaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: clcIAMInstanceProfile :: Lens' CreateLaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: clcRAMDiskId :: Lens' CreateLaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Constructor C1_0CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Data CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Data CreateLaunchConfigurationResponse
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Datatype D1CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Generic CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_0CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_10CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_11CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_12CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_13CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_14CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_15CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_16CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_17CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_1CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_2CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_3CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_4CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_5CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_6CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_7CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_8CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Selector S1_0_9CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Typeable CreateLaunchConfiguration
+ Network.AWS.AutoScaling.CreateLaunchConfiguration: instance Typeable CreateLaunchConfigurationResponse
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Constructor C1_0CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Data CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Data CreateOrUpdateTagsResponse
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Datatype D1CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Generic CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Selector S1_0_0CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Typeable CreateOrUpdateTags
+ Network.AWS.AutoScaling.CreateOrUpdateTags: instance Typeable CreateOrUpdateTagsResponse
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Constructor C1_0DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Data DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Data DeleteAutoScalingGroupResponse
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Datatype D1DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Generic DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Selector S1_0_0DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Selector S1_0_1DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Typeable DeleteAutoScalingGroup
+ Network.AWS.AutoScaling.DeleteAutoScalingGroup: instance Typeable DeleteAutoScalingGroupResponse
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Constructor C1_0DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Data DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Data DeleteLaunchConfigurationResponse
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Datatype D1DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Generic DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Selector S1_0_0DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Typeable DeleteLaunchConfiguration
+ Network.AWS.AutoScaling.DeleteLaunchConfiguration: instance Typeable DeleteLaunchConfigurationResponse
+ Network.AWS.AutoScaling.DeleteLifecycleHook: delAutoScalingGroupName :: Lens' DeleteLifecycleHook Text
+ Network.AWS.AutoScaling.DeleteLifecycleHook: delLifecycleHookName :: Lens' DeleteLifecycleHook Text
+ Network.AWS.AutoScaling.DeleteLifecycleHook: drsStatus :: Lens' DeleteLifecycleHookResponse Int
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Constructor C1_0DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Data DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Data DeleteLifecycleHookResponse
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Datatype D1DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Generic DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Selector S1_0_0DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Selector S1_0_0DeleteLifecycleHookResponse
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Selector S1_0_1DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Typeable DeleteLifecycleHook
+ Network.AWS.AutoScaling.DeleteLifecycleHook: instance Typeable DeleteLifecycleHookResponse
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Constructor C1_0DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Data DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Data DeleteNotificationConfigurationResponse
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Datatype D1DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Generic DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Selector S1_0_0DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Selector S1_0_1DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Typeable DeleteNotificationConfiguration
+ Network.AWS.AutoScaling.DeleteNotificationConfiguration: instance Typeable DeleteNotificationConfigurationResponse
+ Network.AWS.AutoScaling.DeletePolicy: instance Constructor C1_0DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Data DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Data DeletePolicyResponse
+ Network.AWS.AutoScaling.DeletePolicy: instance Datatype D1DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Generic DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Selector S1_0_0DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Selector S1_0_1DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Typeable DeletePolicy
+ Network.AWS.AutoScaling.DeletePolicy: instance Typeable DeletePolicyResponse
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Constructor C1_0DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Data DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Data DeleteScheduledActionResponse
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Datatype D1DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Generic DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Selector S1_0_0DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Selector S1_0_1DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Typeable DeleteScheduledAction
+ Network.AWS.AutoScaling.DeleteScheduledAction: instance Typeable DeleteScheduledActionResponse
+ Network.AWS.AutoScaling.DeleteTags: instance Constructor C1_0DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Data DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Data DeleteTagsResponse
+ Network.AWS.AutoScaling.DeleteTags: instance Datatype D1DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Generic DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Selector S1_0_0DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Typeable DeleteTags
+ Network.AWS.AutoScaling.DeleteTags: instance Typeable DeleteTagsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: dalrsMaxNumberOfAutoScalingGroups :: Lens' DescribeAccountLimitsResponse (Maybe Int)
+ Network.AWS.AutoScaling.DescribeAccountLimits: dalrsMaxNumberOfLaunchConfigurations :: Lens' DescribeAccountLimitsResponse (Maybe Int)
+ Network.AWS.AutoScaling.DescribeAccountLimits: dalrsStatus :: Lens' DescribeAccountLimitsResponse Int
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Constructor C1_0DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Data DescribeAccountLimits
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Data DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Datatype D1DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Generic DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Selector S1_0_0DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Selector S1_0_1DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Selector S1_0_2DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Typeable DescribeAccountLimits
+ Network.AWS.AutoScaling.DescribeAccountLimits: instance Typeable DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: datrsAdjustmentTypes :: Lens' DescribeAdjustmentTypesResponse [AdjustmentType]
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: datrsStatus :: Lens' DescribeAdjustmentTypesResponse Int
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Constructor C1_0DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Data DescribeAdjustmentTypes
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Data DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Datatype D1DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Generic DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Selector S1_0_0DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Selector S1_0_1DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Typeable DescribeAdjustmentTypes
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: instance Typeable DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: dasgrsAutoScalingGroups :: Lens' DescribeAutoScalingGroupsResponse [AutoScalingGroup]
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: dasgrsNextToken :: Lens' DescribeAutoScalingGroupsResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: dasgrsStatus :: Lens' DescribeAutoScalingGroupsResponse Int
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Constructor C1_0DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Constructor C1_0DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Data DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Data DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Datatype D1DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Datatype D1DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Generic DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Generic DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_0DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_0DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_1DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_1DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_2DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Selector S1_0_2DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Typeable DescribeAutoScalingGroups
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: instance Typeable DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: dasirsAutoScalingInstances :: Lens' DescribeAutoScalingInstancesResponse [AutoScalingInstanceDetails]
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: dasirsNextToken :: Lens' DescribeAutoScalingInstancesResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: dasirsStatus :: Lens' DescribeAutoScalingInstancesResponse Int
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Constructor C1_0DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Constructor C1_0DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Data DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Data DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Datatype D1DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Datatype D1DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Generic DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Generic DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_0DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_0DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_1DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_1DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_2DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Selector S1_0_2DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Typeable DescribeAutoScalingInstances
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: instance Typeable DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: dasntrsAutoScalingNotificationTypes :: Lens' DescribeAutoScalingNotificationTypesResponse [Text]
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: dasntrsStatus :: Lens' DescribeAutoScalingNotificationTypesResponse Int
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Constructor C1_0DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Data DescribeAutoScalingNotificationTypes
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Data DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Datatype D1DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Generic DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Selector S1_0_0DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Selector S1_0_1DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Typeable DescribeAutoScalingNotificationTypes
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: instance Typeable DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: dlcrsLaunchConfigurations :: Lens' DescribeLaunchConfigurationsResponse [LaunchConfiguration]
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: dlcrsNextToken :: Lens' DescribeLaunchConfigurationsResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: dlcrsStatus :: Lens' DescribeLaunchConfigurationsResponse Int
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Constructor C1_0DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Constructor C1_0DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Data DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Data DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Datatype D1DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Datatype D1DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Generic DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Generic DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_0DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_0DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_1DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_1DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_2DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Selector S1_0_2DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Typeable DescribeLaunchConfigurations
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: instance Typeable DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: dlhtrsLifecycleHookTypes :: Lens' DescribeLifecycleHookTypesResponse [Text]
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: dlhtrsStatus :: Lens' DescribeLifecycleHookTypesResponse Int
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Constructor C1_0DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Data DescribeLifecycleHookTypes
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Data DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Datatype D1DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Generic DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Selector S1_0_0DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Selector S1_0_1DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Typeable DescribeLifecycleHookTypes
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: instance Typeable DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: dlhrsLifecycleHooks :: Lens' DescribeLifecycleHooksResponse [LifecycleHook]
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: dlhrsStatus :: Lens' DescribeLifecycleHooksResponse Int
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Constructor C1_0DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Constructor C1_0DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Data DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Data DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Datatype D1DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Datatype D1DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Generic DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Generic DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Selector S1_0_0DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Selector S1_0_0DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Selector S1_0_1DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Selector S1_0_1DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Typeable DescribeLifecycleHooks
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: instance Typeable DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: data DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: data DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: describeLoadBalancers :: Text -> DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: describeLoadBalancersResponse :: Int -> DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbAutoScalingGroupName :: Lens' DescribeLoadBalancers Text
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbMaxRecords :: Lens' DescribeLoadBalancers (Maybe Int)
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbNextToken :: Lens' DescribeLoadBalancers (Maybe Text)
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbrsLoadBalancers :: Lens' DescribeLoadBalancersResponse [LoadBalancerState]
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbrsNextToken :: Lens' DescribeLoadBalancersResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeLoadBalancers: dlbrsStatus :: Lens' DescribeLoadBalancersResponse Int
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance AWSRequest DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Constructor C1_0DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Constructor C1_0DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Data DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Data DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Datatype D1DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Datatype D1DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Eq DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Eq DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Generic DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Generic DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Read DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Read DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_0DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_0DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_1DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_1DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_2DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Selector S1_0_2DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Show DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Show DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance ToHeaders DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance ToPath DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance ToQuery DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Typeable DescribeLoadBalancers
+ Network.AWS.AutoScaling.DescribeLoadBalancers: instance Typeable DescribeLoadBalancersResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: dmctrsGranularities :: Lens' DescribeMetricCollectionTypesResponse [MetricGranularityType]
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: dmctrsMetrics :: Lens' DescribeMetricCollectionTypesResponse [MetricCollectionType]
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: dmctrsStatus :: Lens' DescribeMetricCollectionTypesResponse Int
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Constructor C1_0DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Data DescribeMetricCollectionTypes
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Data DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Datatype D1DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Generic DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Selector S1_0_0DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Selector S1_0_1DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Selector S1_0_2DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Typeable DescribeMetricCollectionTypes
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: instance Typeable DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: dncrsNextToken :: Lens' DescribeNotificationConfigurationsResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: dncrsNotificationConfigurations :: Lens' DescribeNotificationConfigurationsResponse [NotificationConfiguration]
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: dncrsStatus :: Lens' DescribeNotificationConfigurationsResponse Int
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Constructor C1_0DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Constructor C1_0DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Data DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Data DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Datatype D1DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Datatype D1DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Generic DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Generic DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_0DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_0DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_1DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_1DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_2DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Selector S1_0_2DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Typeable DescribeNotificationConfigurations
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: instance Typeable DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribePolicies: dprsNextToken :: Lens' DescribePoliciesResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribePolicies: dprsScalingPolicies :: Lens' DescribePoliciesResponse [ScalingPolicy]
+ Network.AWS.AutoScaling.DescribePolicies: dprsStatus :: Lens' DescribePoliciesResponse Int
+ Network.AWS.AutoScaling.DescribePolicies: dpsAutoScalingGroupName :: Lens' DescribePolicies (Maybe Text)
+ Network.AWS.AutoScaling.DescribePolicies: dpsMaxRecords :: Lens' DescribePolicies (Maybe Int)
+ Network.AWS.AutoScaling.DescribePolicies: dpsNextToken :: Lens' DescribePolicies (Maybe Text)
+ Network.AWS.AutoScaling.DescribePolicies: dpsPolicyNames :: Lens' DescribePolicies [Text]
+ Network.AWS.AutoScaling.DescribePolicies: dpsPolicyTypes :: Lens' DescribePolicies [Text]
+ Network.AWS.AutoScaling.DescribePolicies: instance Constructor C1_0DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Constructor C1_0DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Data DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Data DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Datatype D1DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Datatype D1DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Generic DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Generic DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_0DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_0DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_1DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_1DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_2DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_2DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_3DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Selector S1_0_4DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Typeable DescribePolicies
+ Network.AWS.AutoScaling.DescribePolicies: instance Typeable DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: desActivityIds :: Lens' DescribeScalingActivities [Text]
+ Network.AWS.AutoScaling.DescribeScalingActivities: desAutoScalingGroupName :: Lens' DescribeScalingActivities (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScalingActivities: desMaxRecords :: Lens' DescribeScalingActivities (Maybe Int)
+ Network.AWS.AutoScaling.DescribeScalingActivities: desNextToken :: Lens' DescribeScalingActivities (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScalingActivities: dsasrsActivities :: Lens' DescribeScalingActivitiesResponse [Activity]
+ Network.AWS.AutoScaling.DescribeScalingActivities: dsasrsNextToken :: Lens' DescribeScalingActivitiesResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScalingActivities: dsasrsStatus :: Lens' DescribeScalingActivitiesResponse Int
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Constructor C1_0DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Constructor C1_0DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Data DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Data DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Datatype D1DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Datatype D1DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Generic DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Generic DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_0DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_0DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_1DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_1DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_2DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_2DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Selector S1_0_3DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Typeable DescribeScalingActivities
+ Network.AWS.AutoScaling.DescribeScalingActivities: instance Typeable DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: dsptrsProcesses :: Lens' DescribeScalingProcessTypesResponse [ProcessType]
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: dsptrsStatus :: Lens' DescribeScalingProcessTypesResponse Int
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Constructor C1_0DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Data DescribeScalingProcessTypes
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Data DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Datatype D1DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Generic DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Selector S1_0_0DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Selector S1_0_1DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Typeable DescribeScalingProcessTypes
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: instance Typeable DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsarsNextToken :: Lens' DescribeScheduledActionsResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsarsScheduledUpdateGroupActions :: Lens' DescribeScheduledActionsResponse [ScheduledUpdateGroupAction]
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsarsStatus :: Lens' DescribeScheduledActionsResponse Int
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasAutoScalingGroupName :: Lens' DescribeScheduledActions (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasEndTime :: Lens' DescribeScheduledActions (Maybe UTCTime)
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasMaxRecords :: Lens' DescribeScheduledActions (Maybe Int)
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasNextToken :: Lens' DescribeScheduledActions (Maybe Text)
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasScheduledActionNames :: Lens' DescribeScheduledActions [Text]
+ Network.AWS.AutoScaling.DescribeScheduledActions: dsasStartTime :: Lens' DescribeScheduledActions (Maybe UTCTime)
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Constructor C1_0DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Constructor C1_0DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Data DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Data DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Datatype D1DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Datatype D1DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Generic DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Generic DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_0DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_0DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_1DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_1DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_2DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_2DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_3DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_4DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Selector S1_0_5DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Typeable DescribeScheduledActions
+ Network.AWS.AutoScaling.DescribeScheduledActions: instance Typeable DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeTags: dtrsNextToken :: Lens' DescribeTagsResponse (Maybe Text)
+ Network.AWS.AutoScaling.DescribeTags: dtrsStatus :: Lens' DescribeTagsResponse Int
+ Network.AWS.AutoScaling.DescribeTags: dtrsTags :: Lens' DescribeTagsResponse [TagDescription]
+ Network.AWS.AutoScaling.DescribeTags: instance Constructor C1_0DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Constructor C1_0DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Data DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Data DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Datatype D1DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Datatype D1DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Generic DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Generic DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_0DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_0DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_1DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_1DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_2DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Selector S1_0_2DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: instance Typeable DescribeTags
+ Network.AWS.AutoScaling.DescribeTags: instance Typeable DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: dtptrsStatus :: Lens' DescribeTerminationPolicyTypesResponse Int
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: dtptrsTerminationPolicyTypes :: Lens' DescribeTerminationPolicyTypesResponse [Text]
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Constructor C1_0DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Data DescribeTerminationPolicyTypes
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Data DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Datatype D1DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Generic DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Selector S1_0_0DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Selector S1_0_1DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Typeable DescribeTerminationPolicyTypes
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: instance Typeable DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DetachInstances: dirsActivities :: Lens' DetachInstancesResponse [Activity]
+ Network.AWS.AutoScaling.DetachInstances: dirsStatus :: Lens' DetachInstancesResponse Int
+ Network.AWS.AutoScaling.DetachInstances: instance Constructor C1_0DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Constructor C1_0DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Data DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Data DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Datatype D1DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Datatype D1DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Generic DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Generic DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Selector S1_0_0DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Selector S1_0_0DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Selector S1_0_1DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Selector S1_0_1DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: instance Selector S1_0_2DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Typeable DetachInstances
+ Network.AWS.AutoScaling.DetachInstances: instance Typeable DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: dAutoScalingGroupName :: Lens' DetachLoadBalancers (Maybe Text)
+ Network.AWS.AutoScaling.DetachLoadBalancers: dLoadBalancerNames :: Lens' DetachLoadBalancers [Text]
+ Network.AWS.AutoScaling.DetachLoadBalancers: data DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: data DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: detachLoadBalancers :: DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: detachLoadBalancersResponse :: Int -> DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: dlbsrsStatus :: Lens' DetachLoadBalancersResponse Int
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance AWSRequest DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Constructor C1_0DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Constructor C1_0DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Data DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Data DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Datatype D1DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Datatype D1DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Eq DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Eq DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Generic DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Generic DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Read DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Read DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Selector S1_0_0DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Selector S1_0_0DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Selector S1_0_1DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Show DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Show DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance ToHeaders DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance ToPath DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance ToQuery DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Typeable DetachLoadBalancers
+ Network.AWS.AutoScaling.DetachLoadBalancers: instance Typeable DetachLoadBalancersResponse
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Constructor C1_0DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Data DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Data DisableMetricsCollectionResponse
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Datatype D1DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Generic DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Selector S1_0_0DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Selector S1_0_1DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Typeable DisableMetricsCollection
+ Network.AWS.AutoScaling.DisableMetricsCollection: instance Typeable DisableMetricsCollectionResponse
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Constructor C1_0EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Data EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Data EnableMetricsCollectionResponse
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Datatype D1EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Generic EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Selector S1_0_0EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Selector S1_0_1EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Selector S1_0_2EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Typeable EnableMetricsCollection
+ Network.AWS.AutoScaling.EnableMetricsCollection: instance Typeable EnableMetricsCollectionResponse
+ Network.AWS.AutoScaling.EnterStandby: esrsActivities :: Lens' EnterStandbyResponse [Activity]
+ Network.AWS.AutoScaling.EnterStandby: esrsStatus :: Lens' EnterStandbyResponse Int
+ Network.AWS.AutoScaling.EnterStandby: instance Constructor C1_0EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Constructor C1_0EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Data EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Data EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Datatype D1EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Datatype D1EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Generic EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Generic EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Selector S1_0_0EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Selector S1_0_0EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Selector S1_0_1EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Selector S1_0_1EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: instance Selector S1_0_2EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Typeable EnterStandby
+ Network.AWS.AutoScaling.EnterStandby: instance Typeable EnterStandbyResponse
+ Network.AWS.AutoScaling.ExecutePolicy: epBreachThreshold :: Lens' ExecutePolicy (Maybe Double)
+ Network.AWS.AutoScaling.ExecutePolicy: epMetricValue :: Lens' ExecutePolicy (Maybe Double)
+ Network.AWS.AutoScaling.ExecutePolicy: instance Constructor C1_0ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Data ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Data ExecutePolicyResponse
+ Network.AWS.AutoScaling.ExecutePolicy: instance Datatype D1ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Generic ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Selector S1_0_0ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Selector S1_0_1ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Selector S1_0_2ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Selector S1_0_3ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Selector S1_0_4ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Typeable ExecutePolicy
+ Network.AWS.AutoScaling.ExecutePolicy: instance Typeable ExecutePolicyResponse
+ Network.AWS.AutoScaling.ExitStandby: eAutoScalingGroupName :: Lens' ExitStandby Text
+ Network.AWS.AutoScaling.ExitStandby: eInstanceIds :: Lens' ExitStandby [Text]
+ Network.AWS.AutoScaling.ExitStandby: ersActivities :: Lens' ExitStandbyResponse [Activity]
+ Network.AWS.AutoScaling.ExitStandby: ersStatus :: Lens' ExitStandbyResponse Int
+ Network.AWS.AutoScaling.ExitStandby: instance Constructor C1_0ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Constructor C1_0ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Data ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Data ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Datatype D1ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Datatype D1ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Generic ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Generic ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Selector S1_0_0ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Selector S1_0_0ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Selector S1_0_1ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Selector S1_0_1ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: instance Typeable ExitStandby
+ Network.AWS.AutoScaling.ExitStandby: instance Typeable ExitStandbyResponse
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Constructor C1_0PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Data PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Data PutLifecycleHookResponse
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Datatype D1PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Generic PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_0PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_0PutLifecycleHookResponse
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_1PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_2PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_3PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_4PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_5PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_6PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Selector S1_0_7PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Typeable PutLifecycleHook
+ Network.AWS.AutoScaling.PutLifecycleHook: instance Typeable PutLifecycleHookResponse
+ Network.AWS.AutoScaling.PutLifecycleHook: plhrsStatus :: Lens' PutLifecycleHookResponse Int
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Constructor C1_0PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Data PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Data PutNotificationConfigurationResponse
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Datatype D1PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Generic PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Selector S1_0_0PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Selector S1_0_1PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Selector S1_0_2PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Typeable PutNotificationConfiguration
+ Network.AWS.AutoScaling.PutNotificationConfiguration: instance Typeable PutNotificationConfigurationResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Constructor C1_0PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Constructor C1_0PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Data PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Data PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Datatype D1PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Datatype D1PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Generic PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Generic PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_0PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_0PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_10PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_1PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_1PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_2PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_3PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_4PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_5PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_6PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_7PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_8PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Selector S1_0_9PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Typeable PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: instance Typeable PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: pspEstimatedInstanceWarmup :: Lens' PutScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.PutScalingPolicy: pspMetricAggregationType :: Lens' PutScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.PutScalingPolicy: pspMinAdjustmentMagnitude :: Lens' PutScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.PutScalingPolicy: pspPolicyType :: Lens' PutScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.PutScalingPolicy: pspStepAdjustments :: Lens' PutScalingPolicy [StepAdjustment]
+ Network.AWS.AutoScaling.PutScalingPolicy: psprsPolicyARN :: Lens' PutScalingPolicyResponse (Maybe Text)
+ Network.AWS.AutoScaling.PutScalingPolicy: psprsStatus :: Lens' PutScalingPolicyResponse Int
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Constructor C1_0PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Data PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Data PutScheduledUpdateGroupActionResponse
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Datatype D1PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Generic PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_0PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_1PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_2PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_3PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_4PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_5PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_6PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_7PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Selector S1_0_8PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Typeable PutScheduledUpdateGroupAction
+ Network.AWS.AutoScaling.PutScheduledUpdateGroupAction: instance Typeable PutScheduledUpdateGroupActionResponse
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Constructor C1_0RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Data RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Data RecordLifecycleActionHeartbeatResponse
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Datatype D1RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Generic RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Selector S1_0_0RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Selector S1_0_0RecordLifecycleActionHeartbeatResponse
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Selector S1_0_1RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Selector S1_0_2RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Typeable RecordLifecycleActionHeartbeat
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: instance Typeable RecordLifecycleActionHeartbeatResponse
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: rlahrsStatus :: Lens' RecordLifecycleActionHeartbeatResponse Int
+ Network.AWS.AutoScaling.ResumeProcesses: instance Constructor C1_0ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Data ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Data ResumeProcessesResponse
+ Network.AWS.AutoScaling.ResumeProcesses: instance Datatype D1ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Generic ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Selector S1_0_0ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Selector S1_0_1ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Typeable ResumeProcesses
+ Network.AWS.AutoScaling.ResumeProcesses: instance Typeable ResumeProcessesResponse
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Constructor C1_0SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Data SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Data SetDesiredCapacityResponse
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Datatype D1SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Generic SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Selector S1_0_0SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Selector S1_0_1SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Selector S1_0_2SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Typeable SetDesiredCapacity
+ Network.AWS.AutoScaling.SetDesiredCapacity: instance Typeable SetDesiredCapacityResponse
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Constructor C1_0SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Data SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Data SetInstanceHealthResponse
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Datatype D1SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Generic SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Selector S1_0_0SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Selector S1_0_1SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Selector S1_0_2SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Typeable SetInstanceHealth
+ Network.AWS.AutoScaling.SetInstanceHealth: instance Typeable SetInstanceHealthResponse
+ Network.AWS.AutoScaling.SuspendProcesses: instance Constructor C1_0SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Data SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Data SuspendProcessesResponse
+ Network.AWS.AutoScaling.SuspendProcesses: instance Datatype D1SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Generic SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Selector S1_0_0SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Selector S1_0_1SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Typeable SuspendProcesses
+ Network.AWS.AutoScaling.SuspendProcesses: instance Typeable SuspendProcessesResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Constructor C1_0TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Constructor C1_0TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Data TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Data TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Datatype D1TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Datatype D1TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Generic TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Generic TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Selector S1_0_0TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Selector S1_0_0TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Selector S1_0_1TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Selector S1_0_1TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Typeable TerminateInstanceInAutoScalingGroup
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: instance Typeable TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: tiiasgrsActivity :: Lens' TerminateInstanceInAutoScalingGroupResponse (Maybe Activity)
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: tiiasgrsStatus :: Lens' TerminateInstanceInAutoScalingGroupResponse Int
+ Network.AWS.AutoScaling.Types: WaitingForInstanceWarmup :: ScalingActivityStatusCode
+ Network.AWS.AutoScaling.Types: _AlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: _InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: _LimitExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: _ResourceContentionFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: _ResourceInUseFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: _ScalingActivityInProgressFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.AutoScaling.Types: bdmEBS :: Lens' BlockDeviceMapping (Maybe EBS)
+ Network.AWS.AutoScaling.Types: data EBS
+ Network.AWS.AutoScaling.Types: data LoadBalancerState
+ Network.AWS.AutoScaling.Types: data StepAdjustment
+ Network.AWS.AutoScaling.Types: ebsIOPS :: Lens' EBS (Maybe Natural)
+ Network.AWS.AutoScaling.Types: lbsLoadBalancerName :: Lens' LoadBalancerState (Maybe Text)
+ Network.AWS.AutoScaling.Types: lbsState :: Lens' LoadBalancerState (Maybe Text)
+ Network.AWS.AutoScaling.Types: lcAssociatePublicIPAddress :: Lens' LaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling.Types: lcEBSOptimized :: Lens' LaunchConfiguration (Maybe Bool)
+ Network.AWS.AutoScaling.Types: lcIAMInstanceProfile :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling.Types: lcRAMDiskId :: Lens' LaunchConfiguration (Maybe Text)
+ Network.AWS.AutoScaling.Types: loadBalancerState :: LoadBalancerState
+ Network.AWS.AutoScaling.Types: sAdjustmentType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sAlarms :: Lens' ScalingPolicy [Alarm]
+ Network.AWS.AutoScaling.Types: sAutoScalingGroupName :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sCooldown :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.Types: sEstimatedInstanceWarmup :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.Types: sMetricAggregationType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sMinAdjustmentMagnitude :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.Types: sMinAdjustmentStep :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.Types: sPolicyARN :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sPolicyName :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sPolicyType :: Lens' ScalingPolicy (Maybe Text)
+ Network.AWS.AutoScaling.Types: sScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)
+ Network.AWS.AutoScaling.Types: sStepAdjustments :: Lens' ScalingPolicy [StepAdjustment]
+ Network.AWS.AutoScaling.Types: saMetricIntervalLowerBound :: Lens' StepAdjustment (Maybe Double)
+ Network.AWS.AutoScaling.Types: saMetricIntervalUpperBound :: Lens' StepAdjustment (Maybe Double)
+ Network.AWS.AutoScaling.Types: saScalingAdjustment :: Lens' StepAdjustment Int
+ Network.AWS.AutoScaling.Types: stepAdjustment :: Int -> StepAdjustment
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Constructor C1_0UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Data UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Data UpdateAutoScalingGroupResponse
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Datatype D1UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Generic UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_0UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_10UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_11UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_1UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_2UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_3UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_4UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_5UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_6UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_7UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_8UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Selector S1_0_9UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Typeable UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: instance Typeable UpdateAutoScalingGroupResponse
- Network.AWS.AutoScaling.CompleteLifecycleAction: completeLifecycleActionResponse :: CompleteLifecycleActionResponse
+ Network.AWS.AutoScaling.CompleteLifecycleAction: completeLifecycleActionResponse :: Int -> CompleteLifecycleActionResponse
- Network.AWS.AutoScaling.CreateAutoScalingGroup: casgAvailabilityZones :: Lens' CreateAutoScalingGroup (NonEmpty Text)
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: casgAvailabilityZones :: Lens' CreateAutoScalingGroup (Maybe (NonEmpty Text))
- Network.AWS.AutoScaling.CreateAutoScalingGroup: createAutoScalingGroup :: Text -> Int -> Int -> NonEmpty Text -> CreateAutoScalingGroup
+ Network.AWS.AutoScaling.CreateAutoScalingGroup: createAutoScalingGroup :: Text -> Int -> Int -> CreateAutoScalingGroup
- Network.AWS.AutoScaling.DeleteLifecycleHook: deleteLifecycleHookResponse :: DeleteLifecycleHookResponse
+ Network.AWS.AutoScaling.DeleteLifecycleHook: deleteLifecycleHookResponse :: Int -> DeleteLifecycleHookResponse
- Network.AWS.AutoScaling.DescribeAccountLimits: describeAccountLimitsResponse :: DescribeAccountLimitsResponse
+ Network.AWS.AutoScaling.DescribeAccountLimits: describeAccountLimitsResponse :: Int -> DescribeAccountLimitsResponse
- Network.AWS.AutoScaling.DescribeAdjustmentTypes: describeAdjustmentTypesResponse :: DescribeAdjustmentTypesResponse
+ Network.AWS.AutoScaling.DescribeAdjustmentTypes: describeAdjustmentTypesResponse :: Int -> DescribeAdjustmentTypesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingGroups: describeAutoScalingGroupsResponse :: DescribeAutoScalingGroupsResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingGroups: describeAutoScalingGroupsResponse :: Int -> DescribeAutoScalingGroupsResponse
- Network.AWS.AutoScaling.DescribeAutoScalingInstances: describeAutoScalingInstancesResponse :: DescribeAutoScalingInstancesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingInstances: describeAutoScalingInstancesResponse :: Int -> DescribeAutoScalingInstancesResponse
- Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: describeAutoScalingNotificationTypesResponse :: DescribeAutoScalingNotificationTypesResponse
+ Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes: describeAutoScalingNotificationTypesResponse :: Int -> DescribeAutoScalingNotificationTypesResponse
- Network.AWS.AutoScaling.DescribeLaunchConfigurations: describeLaunchConfigurationsResponse :: DescribeLaunchConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeLaunchConfigurations: describeLaunchConfigurationsResponse :: Int -> DescribeLaunchConfigurationsResponse
- Network.AWS.AutoScaling.DescribeLifecycleHookTypes: describeLifecycleHookTypesResponse :: DescribeLifecycleHookTypesResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHookTypes: describeLifecycleHookTypesResponse :: Int -> DescribeLifecycleHookTypesResponse
- Network.AWS.AutoScaling.DescribeLifecycleHooks: describeLifecycleHooksResponse :: DescribeLifecycleHooksResponse
+ Network.AWS.AutoScaling.DescribeLifecycleHooks: describeLifecycleHooksResponse :: Int -> DescribeLifecycleHooksResponse
- Network.AWS.AutoScaling.DescribeMetricCollectionTypes: describeMetricCollectionTypesResponse :: DescribeMetricCollectionTypesResponse
+ Network.AWS.AutoScaling.DescribeMetricCollectionTypes: describeMetricCollectionTypesResponse :: Int -> DescribeMetricCollectionTypesResponse
- Network.AWS.AutoScaling.DescribeNotificationConfigurations: describeNotificationConfigurationsResponse :: DescribeNotificationConfigurationsResponse
+ Network.AWS.AutoScaling.DescribeNotificationConfigurations: describeNotificationConfigurationsResponse :: Int -> DescribeNotificationConfigurationsResponse
- Network.AWS.AutoScaling.DescribePolicies: describePoliciesResponse :: DescribePoliciesResponse
+ Network.AWS.AutoScaling.DescribePolicies: describePoliciesResponse :: Int -> DescribePoliciesResponse
- Network.AWS.AutoScaling.DescribeScalingActivities: describeScalingActivitiesResponse :: DescribeScalingActivitiesResponse
+ Network.AWS.AutoScaling.DescribeScalingActivities: describeScalingActivitiesResponse :: Int -> DescribeScalingActivitiesResponse
- Network.AWS.AutoScaling.DescribeScalingProcessTypes: describeScalingProcessTypesResponse :: DescribeScalingProcessTypesResponse
+ Network.AWS.AutoScaling.DescribeScalingProcessTypes: describeScalingProcessTypesResponse :: Int -> DescribeScalingProcessTypesResponse
- Network.AWS.AutoScaling.DescribeScheduledActions: describeScheduledActionsResponse :: DescribeScheduledActionsResponse
+ Network.AWS.AutoScaling.DescribeScheduledActions: describeScheduledActionsResponse :: Int -> DescribeScheduledActionsResponse
- Network.AWS.AutoScaling.DescribeTags: describeTagsResponse :: DescribeTagsResponse
+ Network.AWS.AutoScaling.DescribeTags: describeTagsResponse :: Int -> DescribeTagsResponse
- Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: describeTerminationPolicyTypesResponse :: DescribeTerminationPolicyTypesResponse
+ Network.AWS.AutoScaling.DescribeTerminationPolicyTypes: describeTerminationPolicyTypesResponse :: Int -> DescribeTerminationPolicyTypesResponse
- Network.AWS.AutoScaling.DetachInstances: detachInstancesResponse :: DetachInstancesResponse
+ Network.AWS.AutoScaling.DetachInstances: detachInstancesResponse :: Int -> DetachInstancesResponse
- Network.AWS.AutoScaling.EnterStandby: enterStandbyResponse :: EnterStandbyResponse
+ Network.AWS.AutoScaling.EnterStandby: enterStandbyResponse :: Int -> EnterStandbyResponse
- Network.AWS.AutoScaling.ExitStandby: exitStandbyResponse :: ExitStandbyResponse
+ Network.AWS.AutoScaling.ExitStandby: exitStandbyResponse :: Int -> ExitStandbyResponse
- Network.AWS.AutoScaling.PutLifecycleHook: putLifecycleHookResponse :: PutLifecycleHookResponse
+ Network.AWS.AutoScaling.PutLifecycleHook: putLifecycleHookResponse :: Int -> PutLifecycleHookResponse
- Network.AWS.AutoScaling.PutScalingPolicy: pspScalingAdjustment :: Lens' PutScalingPolicy Int
+ Network.AWS.AutoScaling.PutScalingPolicy: pspScalingAdjustment :: Lens' PutScalingPolicy (Maybe Int)
- Network.AWS.AutoScaling.PutScalingPolicy: putScalingPolicy :: Text -> Text -> Int -> Text -> PutScalingPolicy
+ Network.AWS.AutoScaling.PutScalingPolicy: putScalingPolicy :: Text -> Text -> Text -> PutScalingPolicy
- Network.AWS.AutoScaling.PutScalingPolicy: putScalingPolicyResponse :: PutScalingPolicyResponse
+ Network.AWS.AutoScaling.PutScalingPolicy: putScalingPolicyResponse :: Int -> PutScalingPolicyResponse
- Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: recordLifecycleActionHeartbeatResponse :: RecordLifecycleActionHeartbeatResponse
+ Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat: recordLifecycleActionHeartbeatResponse :: Int -> RecordLifecycleActionHeartbeatResponse
- Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: terminateInstanceInAutoScalingGroupResponse :: TerminateInstanceInAutoScalingGroupResponse
+ Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup: terminateInstanceInAutoScalingGroupResponse :: Int -> TerminateInstanceInAutoScalingGroupResponse
- Network.AWS.AutoScaling.Types: ebs :: Ebs
+ Network.AWS.AutoScaling.Types: ebs :: EBS
- Network.AWS.AutoScaling.Types: ebsDeleteOnTermination :: Lens' Ebs (Maybe Bool)
+ Network.AWS.AutoScaling.Types: ebsDeleteOnTermination :: Lens' EBS (Maybe Bool)
- Network.AWS.AutoScaling.Types: ebsSnapshotId :: Lens' Ebs (Maybe Text)
+ Network.AWS.AutoScaling.Types: ebsSnapshotId :: Lens' EBS (Maybe Text)
- Network.AWS.AutoScaling.Types: ebsVolumeSize :: Lens' Ebs (Maybe Natural)
+ Network.AWS.AutoScaling.Types: ebsVolumeSize :: Lens' EBS (Maybe Natural)
- Network.AWS.AutoScaling.Types: ebsVolumeType :: Lens' Ebs (Maybe Text)
+ Network.AWS.AutoScaling.Types: ebsVolumeType :: Lens' EBS (Maybe Text)
- Network.AWS.AutoScaling.Types: tag :: Text -> Text -> Text -> Text -> Bool -> Tag
+ Network.AWS.AutoScaling.Types: tag :: Text -> Text -> Text -> Bool -> Text -> Tag
- Network.AWS.AutoScaling.Types: tagDescription :: Text -> Text -> Text -> Text -> Bool -> TagDescription
+ Network.AWS.AutoScaling.Types: tagDescription :: Text -> Text -> Text -> Bool -> Text -> TagDescription
- Network.AWS.AutoScaling.UpdateAutoScalingGroup: uasgAvailabilityZones :: Lens' UpdateAutoScalingGroup (NonEmpty Text)
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: uasgAvailabilityZones :: Lens' UpdateAutoScalingGroup (Maybe (NonEmpty Text))
- Network.AWS.AutoScaling.UpdateAutoScalingGroup: updateAutoScalingGroup :: Text -> NonEmpty Text -> UpdateAutoScalingGroup
+ Network.AWS.AutoScaling.UpdateAutoScalingGroup: updateAutoScalingGroup :: Text -> UpdateAutoScalingGroup
Files
- README.md +21/−10
- amazonka-autoscaling.cabal +54/−14
- gen/Network/AWS/AutoScaling.hs +504/−99
- gen/Network/AWS/AutoScaling/AttachInstances.hs +75/−70
- gen/Network/AWS/AutoScaling/AttachLoadBalancers.hs +129/−0
- gen/Network/AWS/AutoScaling/CompleteLifecycleAction.hs +128/−99
- gen/Network/AWS/AutoScaling/CreateAutoScalingGroup.hs +250/−229
- gen/Network/AWS/AutoScaling/CreateLaunchConfiguration.hs +312/−271
- gen/Network/AWS/AutoScaling/CreateOrUpdateTags.hs +76/−83
- gen/Network/AWS/AutoScaling/DeleteAutoScalingGroup.hs +80/−73
- gen/Network/AWS/AutoScaling/DeleteLaunchConfiguration.hs +68/−62
- gen/Network/AWS/AutoScaling/DeleteLifecycleHook.hs +93/−74
- gen/Network/AWS/AutoScaling/DeleteNotificationConfiguration.hs +77/−67
- gen/Network/AWS/AutoScaling/DeletePolicy.hs +69/−65
- gen/Network/AWS/AutoScaling/DeleteScheduledAction.hs +68/−66
- gen/Network/AWS/AutoScaling/DeleteTags.hs +64/−66
- gen/Network/AWS/AutoScaling/DescribeAccountLimits.hs +96/−81
- gen/Network/AWS/AutoScaling/DescribeAdjustmentTypes.hs +83/−72
- gen/Network/AWS/AutoScaling/DescribeAutoScalingGroups.hs +123/−112
- gen/Network/AWS/AutoScaling/DescribeAutoScalingInstances.hs +128/−114
- gen/Network/AWS/AutoScaling/DescribeAutoScalingNotificationTypes.hs +95/−79
- gen/Network/AWS/AutoScaling/DescribeLaunchConfigurations.hs +128/−115
- gen/Network/AWS/AutoScaling/DescribeLifecycleHookTypes.hs +86/−75
- gen/Network/AWS/AutoScaling/DescribeLifecycleHooks.hs +99/−93
- gen/Network/AWS/AutoScaling/DescribeLoadBalancers.hs +154/−0
- gen/Network/AWS/AutoScaling/DescribeMetricCollectionTypes.hs +101/−102
- gen/Network/AWS/AutoScaling/DescribeNotificationConfigurations.hs +132/−110
- gen/Network/AWS/AutoScaling/DescribePolicies.hs +146/−124
- gen/Network/AWS/AutoScaling/DescribeScalingActivities.hs +141/−129
- gen/Network/AWS/AutoScaling/DescribeScalingProcessTypes.hs +85/−70
- gen/Network/AWS/AutoScaling/DescribeScheduledActions.hs +163/−147
- gen/Network/AWS/AutoScaling/DescribeTags.hs +127/−112
- gen/Network/AWS/AutoScaling/DescribeTerminationPolicyTypes.hs +89/−74
- gen/Network/AWS/AutoScaling/DetachInstances.hs +112/−104
- gen/Network/AWS/AutoScaling/DetachLoadBalancers.hs +127/−0
- gen/Network/AWS/AutoScaling/DisableMetricsCollection.hs +86/−80
- gen/Network/AWS/AutoScaling/EnableMetricsCollection.hs +100/−97
- gen/Network/AWS/AutoScaling/EnterStandby.hs +112/−104
- gen/Network/AWS/AutoScaling/ExecutePolicy.hs +113/−78
- gen/Network/AWS/AutoScaling/ExitStandby.hs +101/−92
- gen/Network/AWS/AutoScaling/PutLifecycleHook.hs +186/−155
- gen/Network/AWS/AutoScaling/PutNotificationConfiguration.hs +89/−81
- gen/Network/AWS/AutoScaling/PutScalingPolicy.hs +221/−135
- gen/Network/AWS/AutoScaling/PutScheduledUpdateGroupAction.hs +148/−149
- gen/Network/AWS/AutoScaling/RecordLifecycleActionHeartbeat.hs +121/−90
- gen/Network/AWS/AutoScaling/ResumeProcesses.hs +94/−76
- gen/Network/AWS/AutoScaling/SetDesiredCapacity.hs +88/−81
- gen/Network/AWS/AutoScaling/SetInstanceHealth.hs +92/−86
- gen/Network/AWS/AutoScaling/SuspendProcesses.hs +98/−79
- gen/Network/AWS/AutoScaling/TerminateInstanceInAutoScalingGroup.hs +106/−87
- gen/Network/AWS/AutoScaling/Types.hs +337/−2265
- gen/Network/AWS/AutoScaling/Types/Product.hs +2040/−0
- gen/Network/AWS/AutoScaling/Types/Sum.hs +130/−0
- gen/Network/AWS/AutoScaling/UpdateAutoScalingGroup.hs +197/−191
- gen/Network/AWS/AutoScaling/Waiters.hs +20/−0
- test/Main.hs +21/−0
- test/Test/AWS/AutoScaling.hs +26/−0
- test/Test/AWS/AutoScaling/Internal.hs +16/−0
- test/Test/AWS/Gen/AutoScaling.hs +855/−0
README.md view
@@ -1,25 +1,36 @@ # Amazon Auto Scaling SDK -> _Warning:_ This is an experimental preview release which is still under heavy development and not intended for public consumption, _caveat emptor_!-+* [Version](#version) * [Description](#description) * [Contribute](#contribute) * [Licence](#licence) ++## Version++`1.0.0`++ ## Description -Auto Scaling allows you to scale your Amazon EC2 capacity up or down-automatically according to conditions you define. With Auto Scaling, you can-ensure that the number of Amazon EC2 instances you’re using increases-seamlessly during demand spikes to maintain performance, and decreases-automatically during demand lulls to minimize costs. Auto Scaling is-particularly well suited for applications that experience hourly, daily, or-weekly variability in usage. Auto Scaling is enabled by Amazon CloudWatch and-available at no additional charge beyond Amazon CloudWatch fees.+Auto Scaling +Auto Scaling is designed to automatically launch or terminate EC2+instances based on user-defined policies, schedules, and health checks.+Use this service in conjunction with the Amazon CloudWatch and Elastic+Load Balancing services.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-autoscaling) and the [AWS API Reference](http://docs.aws.amazon.com/AutoScaling/latest/APIReference/Welcome.html). +The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core). ## Contribute
amazonka-autoscaling.cabal view
@@ -1,32 +1,38 @@ name: amazonka-autoscaling-version: 0.3.6+version: 1.0.0 synopsis: Amazon Auto Scaling SDK. homepage: https://github.com/brendanhay/amazonka license: OtherLicense license-file: LICENSE author: Brendan Hay maintainer: Brendan Hay <brendan.g.hay@gmail.com>-copyright: Copyright (c) 2013-2014 Brendan Hay+copyright: Copyright (c) 2013-2015 Brendan Hay category: Network, AWS, Cloud, Distributed Computing build-type: Simple extra-source-files: README.md cabal-version: >= 1.10 description:- Auto Scaling allows you to scale your Amazon EC2 capacity up or down- automatically according to conditions you define. With Auto Scaling, you can- ensure that the number of Amazon EC2 instances you’re using increases- seamlessly during demand spikes to maintain performance, and decreases- automatically during demand lulls to minimize costs. Auto Scaling is- particularly well suited for applications that experience hourly, daily, or- weekly variability in usage. Auto Scaling is enabled by Amazon CloudWatch and- available at no additional charge beyond Amazon CloudWatch fees.+ Auto Scaling + Auto Scaling is designed to automatically launch or terminate EC2+ instances based on user-defined policies, schedules, and health checks.+ Use this service in conjunction with the Amazon CloudWatch and Elastic+ Load Balancing services. .- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/Welcome.html AWS API Reference>+ The types from this library are intended to be used with+ <http://hackage.haskell.org/package/amazonka amazonka>, which provides+ mechanisms for specifying AuthN/AuthZ information and sending requests. .- /Warning:/ This is an experimental preview release which is still under- heavy development and not intended for public consumption, caveat emptor!+ Use of lenses is required for constructing and manipulating types.+ This is due to the amount of nesting of AWS types and transparency regarding+ de/serialisation into more palatable Haskell values.+ The provided lenses should be compatible with any of the major lens libraries+ such as <http://hackage.haskell.org/package/lens lens> or+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Network.AWS.AutoScaling" and the <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/Welcome.html AWS API Reference>+ to get started. source-repository head type: git@@ -41,6 +47,7 @@ exposed-modules: Network.AWS.AutoScaling , Network.AWS.AutoScaling.AttachInstances+ , Network.AWS.AutoScaling.AttachLoadBalancers , Network.AWS.AutoScaling.CompleteLifecycleAction , Network.AWS.AutoScaling.CreateAutoScalingGroup , Network.AWS.AutoScaling.CreateLaunchConfiguration@@ -60,6 +67,7 @@ , Network.AWS.AutoScaling.DescribeLaunchConfigurations , Network.AWS.AutoScaling.DescribeLifecycleHookTypes , Network.AWS.AutoScaling.DescribeLifecycleHooks+ , Network.AWS.AutoScaling.DescribeLoadBalancers , Network.AWS.AutoScaling.DescribeMetricCollectionTypes , Network.AWS.AutoScaling.DescribeNotificationConfigurations , Network.AWS.AutoScaling.DescribePolicies@@ -69,6 +77,7 @@ , Network.AWS.AutoScaling.DescribeTags , Network.AWS.AutoScaling.DescribeTerminationPolicyTypes , Network.AWS.AutoScaling.DetachInstances+ , Network.AWS.AutoScaling.DetachLoadBalancers , Network.AWS.AutoScaling.DisableMetricsCollection , Network.AWS.AutoScaling.EnableMetricsCollection , Network.AWS.AutoScaling.EnterStandby@@ -86,9 +95,40 @@ , Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup , Network.AWS.AutoScaling.Types , Network.AWS.AutoScaling.UpdateAutoScalingGroup+ , Network.AWS.AutoScaling.Waiters other-modules:+ Network.AWS.AutoScaling.Types.Product+ , Network.AWS.AutoScaling.Types.Sum build-depends:- amazonka-core == 0.3.6.*+ amazonka-core == 1.0.0.* , base >= 4.7 && < 5++test-suite amazonka-autoscaling-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs++ ghc-options: -Wall -threaded++ -- This is not comprehensive if modules have manually been added.+ -- It exists to ensure cabal 'somewhat' detects test module changes.+ other-modules:+ Test.AWS.AutoScaling+ , Test.AWS.Gen.AutoScaling+ , Test.AWS.AutoScaling.Internal++ build-depends:+ amazonka-core == 1.0.0+ , amazonka-test == 1.0.0+ , amazonka-autoscaling == 1.0.0+ , base+ , bytestring+ , lens+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
gen/Network/AWS/AutoScaling.hs view
@@ -1,115 +1,520 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Auto Scaling allows you to scale your Amazon EC2 capacity up or down--- automatically according to conditions you define. With Auto Scaling, you can--- ensure that the number of Amazon EC2 instances you’re using increases--- seamlessly during demand spikes to maintain performance, and decreases--- automatically during demand lulls to minimize costs. Auto Scaling is--- particularly well suited for applications that experience hourly, daily, or--- weekly variability in usage. Auto Scaling is enabled by Amazon CloudWatch and--- available at no additional charge beyond Amazon CloudWatch fees.+-- Auto Scaling+--+-- Auto Scaling is designed to automatically launch or terminate EC2+-- instances based on user-defined policies, schedules, and health checks.+-- Use this service in conjunction with the Amazon CloudWatch and Elastic+-- Load Balancing services.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.AutoScaling- ( module Network.AWS.AutoScaling.AttachInstances- , module Network.AWS.AutoScaling.CompleteLifecycleAction- , module Network.AWS.AutoScaling.CreateAutoScalingGroup- , module Network.AWS.AutoScaling.CreateLaunchConfiguration- , module Network.AWS.AutoScaling.CreateOrUpdateTags- , module Network.AWS.AutoScaling.DeleteAutoScalingGroup- , module Network.AWS.AutoScaling.DeleteLaunchConfiguration- , module Network.AWS.AutoScaling.DeleteLifecycleHook- , module Network.AWS.AutoScaling.DeleteNotificationConfiguration- , module Network.AWS.AutoScaling.DeletePolicy- , module Network.AWS.AutoScaling.DeleteScheduledAction- , module Network.AWS.AutoScaling.DeleteTags- , module Network.AWS.AutoScaling.DescribeAccountLimits- , module Network.AWS.AutoScaling.DescribeAdjustmentTypes- , module Network.AWS.AutoScaling.DescribeAutoScalingGroups- , module Network.AWS.AutoScaling.DescribeAutoScalingInstances- , module Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes- , module Network.AWS.AutoScaling.DescribeLaunchConfigurations- , module Network.AWS.AutoScaling.DescribeLifecycleHookTypes- , module Network.AWS.AutoScaling.DescribeLifecycleHooks+ (+ -- * Service+ AutoScaling++ -- * Errors+ -- $errors++ -- ** LimitExceededFault+ , _LimitExceededFault++ -- ** AlreadyExistsFault+ , _AlreadyExistsFault++ -- ** ResourceInUseFault+ , _ResourceInUseFault++ -- ** InvalidNextToken+ , _InvalidNextToken++ -- ** ScalingActivityInProgressFault+ , _ScalingActivityInProgressFault++ -- ** ResourceContentionFault+ , _ResourceContentionFault++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** DescribeMetricCollectionTypes , module Network.AWS.AutoScaling.DescribeMetricCollectionTypes- , module Network.AWS.AutoScaling.DescribeNotificationConfigurations- , module Network.AWS.AutoScaling.DescribePolicies- , module Network.AWS.AutoScaling.DescribeScalingActivities- , module Network.AWS.AutoScaling.DescribeScalingProcessTypes- , module Network.AWS.AutoScaling.DescribeScheduledActions++ -- ** PutScalingPolicy+ , module Network.AWS.AutoScaling.PutScalingPolicy++ -- ** DeleteNotificationConfiguration+ , module Network.AWS.AutoScaling.DeleteNotificationConfiguration++ -- ** DescribeTags (Paginated) , module Network.AWS.AutoScaling.DescribeTags++ -- ** DeleteLaunchConfiguration+ , module Network.AWS.AutoScaling.DeleteLaunchConfiguration++ -- ** DescribeLoadBalancers+ , module Network.AWS.AutoScaling.DescribeLoadBalancers++ -- ** PutNotificationConfiguration+ , module Network.AWS.AutoScaling.PutNotificationConfiguration++ -- ** SetInstanceHealth+ , module Network.AWS.AutoScaling.SetInstanceHealth++ -- ** EnterStandby+ , module Network.AWS.AutoScaling.EnterStandby++ -- ** SuspendProcesses+ , module Network.AWS.AutoScaling.SuspendProcesses++ -- ** ExitStandby+ , module Network.AWS.AutoScaling.ExitStandby++ -- ** DescribeTerminationPolicyTypes , module Network.AWS.AutoScaling.DescribeTerminationPolicyTypes++ -- ** DescribeAutoScalingInstances (Paginated)+ , module Network.AWS.AutoScaling.DescribeAutoScalingInstances++ -- ** DetachInstances , module Network.AWS.AutoScaling.DetachInstances++ -- ** DisableMetricsCollection , module Network.AWS.AutoScaling.DisableMetricsCollection++ -- ** RecordLifecycleActionHeartbeat+ , module Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat++ -- ** DeleteTags+ , module Network.AWS.AutoScaling.DeleteTags++ -- ** DescribeScalingProcessTypes+ , module Network.AWS.AutoScaling.DescribeScalingProcessTypes++ -- ** EnableMetricsCollection , module Network.AWS.AutoScaling.EnableMetricsCollection- , module Network.AWS.AutoScaling.EnterStandby- , module Network.AWS.AutoScaling.ExecutePolicy- , module Network.AWS.AutoScaling.ExitStandby++ -- ** DescribeLifecycleHooks+ , module Network.AWS.AutoScaling.DescribeLifecycleHooks++ -- ** DescribeAutoScalingGroups (Paginated)+ , module Network.AWS.AutoScaling.DescribeAutoScalingGroups++ -- ** SetDesiredCapacity+ , module Network.AWS.AutoScaling.SetDesiredCapacity++ -- ** DetachLoadBalancers+ , module Network.AWS.AutoScaling.DetachLoadBalancers++ -- ** DeleteScheduledAction+ , module Network.AWS.AutoScaling.DeleteScheduledAction++ -- ** CreateOrUpdateTags+ , module Network.AWS.AutoScaling.CreateOrUpdateTags++ -- ** DeletePolicy+ , module Network.AWS.AutoScaling.DeletePolicy++ -- ** DescribeAutoScalingNotificationTypes+ , module Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes++ -- ** CompleteLifecycleAction+ , module Network.AWS.AutoScaling.CompleteLifecycleAction++ -- ** AttachInstances+ , module Network.AWS.AutoScaling.AttachInstances++ -- ** DescribeScheduledActions (Paginated)+ , module Network.AWS.AutoScaling.DescribeScheduledActions++ -- ** DeleteAutoScalingGroup+ , module Network.AWS.AutoScaling.DeleteAutoScalingGroup++ -- ** PutLifecycleHook , module Network.AWS.AutoScaling.PutLifecycleHook- , module Network.AWS.AutoScaling.PutNotificationConfiguration- , module Network.AWS.AutoScaling.PutScalingPolicy- , module Network.AWS.AutoScaling.PutScheduledUpdateGroupAction- , module Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat++ -- ** UpdateAutoScalingGroup+ , module Network.AWS.AutoScaling.UpdateAutoScalingGroup++ -- ** DeleteLifecycleHook+ , module Network.AWS.AutoScaling.DeleteLifecycleHook++ -- ** ResumeProcesses , module Network.AWS.AutoScaling.ResumeProcesses- , module Network.AWS.AutoScaling.SetDesiredCapacity- , module Network.AWS.AutoScaling.SetInstanceHealth- , module Network.AWS.AutoScaling.SuspendProcesses++ -- ** ExecutePolicy+ , module Network.AWS.AutoScaling.ExecutePolicy++ -- ** TerminateInstanceInAutoScalingGroup , module Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup- , module Network.AWS.AutoScaling.Types- , module Network.AWS.AutoScaling.UpdateAutoScalingGroup++ -- ** DescribeAccountLimits+ , module Network.AWS.AutoScaling.DescribeAccountLimits++ -- ** AttachLoadBalancers+ , module Network.AWS.AutoScaling.AttachLoadBalancers++ -- ** PutScheduledUpdateGroupAction+ , module Network.AWS.AutoScaling.PutScheduledUpdateGroupAction++ -- ** DescribePolicies (Paginated)+ , module Network.AWS.AutoScaling.DescribePolicies++ -- ** DescribeNotificationConfigurations (Paginated)+ , module Network.AWS.AutoScaling.DescribeNotificationConfigurations++ -- ** DescribeLaunchConfigurations (Paginated)+ , module Network.AWS.AutoScaling.DescribeLaunchConfigurations++ -- ** DescribeLifecycleHookTypes+ , module Network.AWS.AutoScaling.DescribeLifecycleHookTypes++ -- ** DescribeScalingActivities (Paginated)+ , module Network.AWS.AutoScaling.DescribeScalingActivities++ -- ** CreateAutoScalingGroup+ , module Network.AWS.AutoScaling.CreateAutoScalingGroup++ -- ** CreateLaunchConfiguration+ , module Network.AWS.AutoScaling.CreateLaunchConfiguration++ -- ** DescribeAdjustmentTypes+ , module Network.AWS.AutoScaling.DescribeAdjustmentTypes++ -- * Types++ -- ** LifecycleState+ , LifecycleState (..)++ -- ** ScalingActivityStatusCode+ , ScalingActivityStatusCode (..)++ -- ** Activity+ , Activity+ , activity+ , aProgress+ , aStatusMessage+ , aDetails+ , aEndTime+ , aDescription+ , aActivityId+ , aAutoScalingGroupName+ , aCause+ , aStartTime+ , aStatusCode++ -- ** AdjustmentType+ , AdjustmentType+ , adjustmentType+ , atAdjustmentType++ -- ** Alarm+ , Alarm+ , alarm+ , aAlarmName+ , aAlarmARN++ -- ** AutoScalingGroup+ , AutoScalingGroup+ , autoScalingGroup+ , asgStatus+ , asgTerminationPolicies+ , asgHealthCheckGracePeriod+ , asgVPCZoneIdentifier+ , asgEnabledMetrics+ , asgInstances+ , asgAutoScalingGroupARN+ , asgSuspendedProcesses+ , asgPlacementGroup+ , asgLoadBalancerNames+ , asgTags+ , asgAutoScalingGroupName+ , asgLaunchConfigurationName+ , asgMinSize+ , asgMaxSize+ , asgDesiredCapacity+ , asgDefaultCooldown+ , asgAvailabilityZones+ , asgHealthCheckType+ , asgCreatedTime++ -- ** AutoScalingInstanceDetails+ , AutoScalingInstanceDetails+ , autoScalingInstanceDetails+ , asidInstanceId+ , asidAutoScalingGroupName+ , asidAvailabilityZone+ , asidLifecycleState+ , asidHealthStatus+ , asidLaunchConfigurationName++ -- ** BlockDeviceMapping+ , BlockDeviceMapping+ , blockDeviceMapping+ , bdmVirtualName+ , bdmNoDevice+ , bdmEBS+ , bdmDeviceName++ -- ** EBS+ , EBS+ , ebs+ , ebsDeleteOnTermination+ , ebsVolumeSize+ , ebsIOPS+ , ebsVolumeType+ , ebsSnapshotId++ -- ** EnabledMetric+ , EnabledMetric+ , enabledMetric+ , emGranularity+ , emMetric++ -- ** Filter+ , Filter+ , filter'+ , fValues+ , fName++ -- ** Instance+ , Instance+ , instance'+ , iInstanceId+ , iAvailabilityZone+ , iLifecycleState+ , iHealthStatus+ , iLaunchConfigurationName++ -- ** InstanceMonitoring+ , InstanceMonitoring+ , instanceMonitoring+ , imEnabled++ -- ** LaunchConfiguration+ , LaunchConfiguration+ , launchConfiguration+ , lcSecurityGroups+ , lcAssociatePublicIPAddress+ , lcInstanceMonitoring+ , lcSpotPrice+ , lcKeyName+ , lcClassicLinkVPCSecurityGroups+ , lcRAMDiskId+ , lcKernelId+ , lcEBSOptimized+ , lcUserData+ , lcClassicLinkVPCId+ , lcIAMInstanceProfile+ , lcLaunchConfigurationARN+ , lcPlacementTenancy+ , lcBlockDeviceMappings+ , lcLaunchConfigurationName+ , lcImageId+ , lcInstanceType+ , lcCreatedTime++ -- ** LifecycleHook+ , LifecycleHook+ , lifecycleHook+ , lhDefaultResult+ , lhLifecycleHookName+ , lhHeartbeatTimeout+ , lhAutoScalingGroupName+ , lhNotificationMetadata+ , lhGlobalTimeout+ , lhRoleARN+ , lhLifecycleTransition+ , lhNotificationTargetARN++ -- ** LoadBalancerState+ , LoadBalancerState+ , loadBalancerState+ , lbsState+ , lbsLoadBalancerName++ -- ** MetricCollectionType+ , MetricCollectionType+ , metricCollectionType+ , mctMetric++ -- ** MetricGranularityType+ , MetricGranularityType+ , metricGranularityType+ , mgtGranularity++ -- ** NotificationConfiguration+ , NotificationConfiguration+ , notificationConfiguration+ , ncTopicARN+ , ncAutoScalingGroupName+ , ncNotificationType++ -- ** ProcessType+ , ProcessType+ , processType+ , ptProcessName++ -- ** ScalingPolicy+ , ScalingPolicy+ , scalingPolicy+ , sEstimatedInstanceWarmup+ , sMinAdjustmentStep+ , sPolicyName+ , sPolicyType+ , sStepAdjustments+ , sAdjustmentType+ , sScalingAdjustment+ , sAutoScalingGroupName+ , sCooldown+ , sPolicyARN+ , sAlarms+ , sMetricAggregationType+ , sMinAdjustmentMagnitude++ -- ** ScalingProcessQuery+ , ScalingProcessQuery+ , scalingProcessQuery+ , spqScalingProcesses+ , spqAutoScalingGroupName++ -- ** ScheduledUpdateGroupAction+ , ScheduledUpdateGroupAction+ , scheduledUpdateGroupAction+ , sugaScheduledActionARN+ , sugaTime+ , sugaStartTime+ , sugaScheduledActionName+ , sugaMaxSize+ , sugaDesiredCapacity+ , sugaRecurrence+ , sugaMinSize+ , sugaEndTime+ , sugaAutoScalingGroupName++ -- ** StepAdjustment+ , StepAdjustment+ , stepAdjustment+ , saMetricIntervalLowerBound+ , saMetricIntervalUpperBound+ , saScalingAdjustment++ -- ** SuspendedProcess+ , SuspendedProcess+ , suspendedProcess+ , spProcessName+ , spSuspensionReason++ -- ** Tag+ , Tag+ , tag+ , tagKey+ , tagResourceId+ , tagResourceType+ , tagPropagateAtLaunch+ , tagValue++ -- ** TagDescription+ , TagDescription+ , tagDescription+ , tdResourceId+ , tdResourceType+ , tdKey+ , tdPropagateAtLaunch+ , tdValue ) where -import Network.AWS.AutoScaling.AttachInstances-import Network.AWS.AutoScaling.CompleteLifecycleAction-import Network.AWS.AutoScaling.CreateAutoScalingGroup-import Network.AWS.AutoScaling.CreateLaunchConfiguration-import Network.AWS.AutoScaling.CreateOrUpdateTags-import Network.AWS.AutoScaling.DeleteAutoScalingGroup-import Network.AWS.AutoScaling.DeleteLaunchConfiguration-import Network.AWS.AutoScaling.DeleteLifecycleHook-import Network.AWS.AutoScaling.DeleteNotificationConfiguration-import Network.AWS.AutoScaling.DeletePolicy-import Network.AWS.AutoScaling.DeleteScheduledAction-import Network.AWS.AutoScaling.DeleteTags-import Network.AWS.AutoScaling.DescribeAccountLimits-import Network.AWS.AutoScaling.DescribeAdjustmentTypes-import Network.AWS.AutoScaling.DescribeAutoScalingGroups-import Network.AWS.AutoScaling.DescribeAutoScalingInstances-import Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes-import Network.AWS.AutoScaling.DescribeLaunchConfigurations-import Network.AWS.AutoScaling.DescribeLifecycleHookTypes-import Network.AWS.AutoScaling.DescribeLifecycleHooks-import Network.AWS.AutoScaling.DescribeMetricCollectionTypes-import Network.AWS.AutoScaling.DescribeNotificationConfigurations-import Network.AWS.AutoScaling.DescribePolicies-import Network.AWS.AutoScaling.DescribeScalingActivities-import Network.AWS.AutoScaling.DescribeScalingProcessTypes-import Network.AWS.AutoScaling.DescribeScheduledActions-import Network.AWS.AutoScaling.DescribeTags-import Network.AWS.AutoScaling.DescribeTerminationPolicyTypes-import Network.AWS.AutoScaling.DetachInstances-import Network.AWS.AutoScaling.DisableMetricsCollection-import Network.AWS.AutoScaling.EnableMetricsCollection-import Network.AWS.AutoScaling.EnterStandby-import Network.AWS.AutoScaling.ExecutePolicy-import Network.AWS.AutoScaling.ExitStandby-import Network.AWS.AutoScaling.PutLifecycleHook-import Network.AWS.AutoScaling.PutNotificationConfiguration-import Network.AWS.AutoScaling.PutScalingPolicy-import Network.AWS.AutoScaling.PutScheduledUpdateGroupAction-import Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat-import Network.AWS.AutoScaling.ResumeProcesses-import Network.AWS.AutoScaling.SetDesiredCapacity-import Network.AWS.AutoScaling.SetInstanceHealth-import Network.AWS.AutoScaling.SuspendProcesses-import Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup-import Network.AWS.AutoScaling.Types-import Network.AWS.AutoScaling.UpdateAutoScalingGroup+import Network.AWS.AutoScaling.AttachInstances+import Network.AWS.AutoScaling.AttachLoadBalancers+import Network.AWS.AutoScaling.CompleteLifecycleAction+import Network.AWS.AutoScaling.CreateAutoScalingGroup+import Network.AWS.AutoScaling.CreateLaunchConfiguration+import Network.AWS.AutoScaling.CreateOrUpdateTags+import Network.AWS.AutoScaling.DeleteAutoScalingGroup+import Network.AWS.AutoScaling.DeleteLaunchConfiguration+import Network.AWS.AutoScaling.DeleteLifecycleHook+import Network.AWS.AutoScaling.DeleteNotificationConfiguration+import Network.AWS.AutoScaling.DeletePolicy+import Network.AWS.AutoScaling.DeleteScheduledAction+import Network.AWS.AutoScaling.DeleteTags+import Network.AWS.AutoScaling.DescribeAccountLimits+import Network.AWS.AutoScaling.DescribeAdjustmentTypes+import Network.AWS.AutoScaling.DescribeAutoScalingGroups+import Network.AWS.AutoScaling.DescribeAutoScalingInstances+import Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes+import Network.AWS.AutoScaling.DescribeLaunchConfigurations+import Network.AWS.AutoScaling.DescribeLifecycleHooks+import Network.AWS.AutoScaling.DescribeLifecycleHookTypes+import Network.AWS.AutoScaling.DescribeLoadBalancers+import Network.AWS.AutoScaling.DescribeMetricCollectionTypes+import Network.AWS.AutoScaling.DescribeNotificationConfigurations+import Network.AWS.AutoScaling.DescribePolicies+import Network.AWS.AutoScaling.DescribeScalingActivities+import Network.AWS.AutoScaling.DescribeScalingProcessTypes+import Network.AWS.AutoScaling.DescribeScheduledActions+import Network.AWS.AutoScaling.DescribeTags+import Network.AWS.AutoScaling.DescribeTerminationPolicyTypes+import Network.AWS.AutoScaling.DetachInstances+import Network.AWS.AutoScaling.DetachLoadBalancers+import Network.AWS.AutoScaling.DisableMetricsCollection+import Network.AWS.AutoScaling.EnableMetricsCollection+import Network.AWS.AutoScaling.EnterStandby+import Network.AWS.AutoScaling.ExecutePolicy+import Network.AWS.AutoScaling.ExitStandby+import Network.AWS.AutoScaling.PutLifecycleHook+import Network.AWS.AutoScaling.PutNotificationConfiguration+import Network.AWS.AutoScaling.PutScalingPolicy+import Network.AWS.AutoScaling.PutScheduledUpdateGroupAction+import Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat+import Network.AWS.AutoScaling.ResumeProcesses+import Network.AWS.AutoScaling.SetDesiredCapacity+import Network.AWS.AutoScaling.SetInstanceHealth+import Network.AWS.AutoScaling.SuspendProcesses+import Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.UpdateAutoScalingGroup+import Network.AWS.AutoScaling.Waiters++{- $errors+Error matchers are designed for use with the functions provided by+<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+This allows catching (and rethrowing) service specific errors returned+by 'AutoScaling'.+-}++{- $operations+Some AWS operations return results that are incomplete and require subsequent+requests in order to obtain the entire result set. The process of sending+subsequent requests to continue where a previous request left off is called+pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+1000 objects at a time, and you must send subsequent requests with the+appropriate Marker in order to retrieve the next page of results.++Operations that have an 'AWSPager' instance can transparently perform subsequent+requests, correctly setting Markers and other request facets to iterate through+the entire result set of a truncated API operation. Operations which support+this have an additional note in the documentation.++Many operations have the ability to filter results on the server side. See the+individual operation parameters for details.+-}++{- $waiters+Waiters poll by repeatedly sending a request until some remote success condition+configured by the 'Wait' specification is fulfilled. The 'Wait' specification+determines how many attempts should be made, in addition to delay and retry strategies.+-}
gen/Network/AWS/AutoScaling/AttachInstances.hs view
@@ -1,103 +1,108 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.AttachInstances--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Attaches one or more EC2 instances to the specified Auto Scaling group.+-- Attaches one or more EC2 instances to the specified Auto Scaling group. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/attach-instance-asg.html Attach Amazon EC2 Instances to Your Existing AutoScaling Group> in the /Auto Scaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/attach-instance-asg.html Attach EC2 Instances to Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_AttachInstances.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_AttachInstances.html AWS API Reference> for AttachInstances. module Network.AWS.AutoScaling.AttachInstances (- -- * Request- AttachInstances- -- ** Request constructor- , attachInstances- -- ** Request lenses- , aiAutoScalingGroupName+ -- * Creating a Request+ attachInstances+ , AttachInstances+ -- * Request Lenses , aiInstanceIds+ , aiAutoScalingGroupName - -- * Response- , AttachInstancesResponse- -- ** Response constructor+ -- * Destructuring the Response , attachInstancesResponse+ , AttachInstancesResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data AttachInstances = AttachInstances- { _aiAutoScalingGroupName :: Text- , _aiInstanceIds :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'attachInstances' smart constructor.+data AttachInstances = AttachInstances'+ { _aiInstanceIds :: !(Maybe [Text])+ , _aiAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'AttachInstances' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'AttachInstances' with the minimum fields required to make a request. ----- * 'aiAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'aiInstanceIds' @::@ ['Text']+-- * 'aiInstanceIds' ---attachInstances :: Text -- ^ 'aiAutoScalingGroupName'- -> AttachInstances-attachInstances p1 = AttachInstances- { _aiAutoScalingGroupName = p1- , _aiInstanceIds = mempty+-- * 'aiAutoScalingGroupName'+attachInstances+ :: Text -- ^ 'aiAutoScalingGroupName'+ -> AttachInstances+attachInstances pAutoScalingGroupName_ =+ AttachInstances'+ { _aiInstanceIds = Nothing+ , _aiAutoScalingGroupName = pAutoScalingGroupName_ } +-- | One or more EC2 instance IDs.+aiInstanceIds :: Lens' AttachInstances [Text]+aiInstanceIds = lens _aiInstanceIds (\ s a -> s{_aiInstanceIds = a}) . _Default . _Coerce;+ -- | The name of the group. aiAutoScalingGroupName :: Lens' AttachInstances Text-aiAutoScalingGroupName =- lens _aiAutoScalingGroupName (\s a -> s { _aiAutoScalingGroupName = a })---- | One or more EC2 instance IDs. You must specify at least one ID.-aiInstanceIds :: Lens' AttachInstances [Text]-aiInstanceIds = lens _aiInstanceIds (\s a -> s { _aiInstanceIds = a }) . _List+aiAutoScalingGroupName = lens _aiAutoScalingGroupName (\ s a -> s{_aiAutoScalingGroupName = a}); -data AttachInstancesResponse = AttachInstancesResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest AttachInstances where+ type Sv AttachInstances = AutoScaling+ type Rs AttachInstances = AttachInstancesResponse+ request = postQuery+ response = receiveNull AttachInstancesResponse' --- | 'AttachInstancesResponse' constructor.-attachInstancesResponse :: AttachInstancesResponse-attachInstancesResponse = AttachInstancesResponse+instance ToHeaders AttachInstances where+ toHeaders = const mempty instance ToPath AttachInstances where- toPath = const "/"+ toPath = const "/" instance ToQuery AttachInstances where- toQuery AttachInstances{..} = mconcat- [ "AutoScalingGroupName" =? _aiAutoScalingGroupName- , "InstanceIds" =? _aiInstanceIds- ]--instance ToHeaders AttachInstances+ toQuery AttachInstances'{..}+ = mconcat+ ["Action" =: ("AttachInstances" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceIds" =:+ toQuery (toQueryList "member" <$> _aiInstanceIds),+ "AutoScalingGroupName" =: _aiAutoScalingGroupName] -instance AWSRequest AttachInstances where- type Sv AttachInstances = AutoScaling- type Rs AttachInstances = AttachInstancesResponse+-- | /See:/ 'attachInstancesResponse' smart constructor.+data AttachInstancesResponse =+ AttachInstancesResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "AttachInstances"- response = nullResponse AttachInstancesResponse+-- | Creates a value of 'AttachInstancesResponse' with the minimum fields required to make a request.+--+attachInstancesResponse+ :: AttachInstancesResponse+attachInstancesResponse = AttachInstancesResponse'
+ gen/Network/AWS/AutoScaling/AttachLoadBalancers.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.AttachLoadBalancers+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches one or more load balancers to the specified Auto Scaling group.+--+-- To describe the load balancers for an Auto Scaling group, use+-- DescribeLoadBalancers. To detach the load balancer from the Auto Scaling+-- group, use DetachLoadBalancers.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/attach-load-balancer-asg.html Attach a Load Balancer to Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_AttachLoadBalancers.html AWS API Reference> for AttachLoadBalancers.+module Network.AWS.AutoScaling.AttachLoadBalancers+ (+ -- * Creating a Request+ attachLoadBalancers+ , AttachLoadBalancers+ -- * Request Lenses+ , albAutoScalingGroupName+ , albLoadBalancerNames++ -- * Destructuring the Response+ , attachLoadBalancersResponse+ , AttachLoadBalancersResponse+ -- * Response Lenses+ , albrsStatus+ ) where++import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'attachLoadBalancers' smart constructor.+data AttachLoadBalancers = AttachLoadBalancers'+ { _albAutoScalingGroupName :: !(Maybe Text)+ , _albLoadBalancerNames :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AttachLoadBalancers' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'albAutoScalingGroupName'+--+-- * 'albLoadBalancerNames'+attachLoadBalancers+ :: AttachLoadBalancers+attachLoadBalancers =+ AttachLoadBalancers'+ { _albAutoScalingGroupName = Nothing+ , _albLoadBalancerNames = Nothing+ }++-- | The name of the group.+albAutoScalingGroupName :: Lens' AttachLoadBalancers (Maybe Text)+albAutoScalingGroupName = lens _albAutoScalingGroupName (\ s a -> s{_albAutoScalingGroupName = a});++-- | One or more load balancer names.+albLoadBalancerNames :: Lens' AttachLoadBalancers [Text]+albLoadBalancerNames = lens _albLoadBalancerNames (\ s a -> s{_albLoadBalancerNames = a}) . _Default . _Coerce;++instance AWSRequest AttachLoadBalancers where+ type Sv AttachLoadBalancers = AutoScaling+ type Rs AttachLoadBalancers =+ AttachLoadBalancersResponse+ request = postQuery+ response+ = receiveXMLWrapper "AttachLoadBalancersResult"+ (\ s h x ->+ AttachLoadBalancersResponse' <$> (pure (fromEnum s)))++instance ToHeaders AttachLoadBalancers where+ toHeaders = const mempty++instance ToPath AttachLoadBalancers where+ toPath = const "/"++instance ToQuery AttachLoadBalancers where+ toQuery AttachLoadBalancers'{..}+ = mconcat+ ["Action" =: ("AttachLoadBalancers" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _albAutoScalingGroupName,+ "LoadBalancerNames" =:+ toQuery+ (toQueryList "member" <$> _albLoadBalancerNames)]++-- | /See:/ 'attachLoadBalancersResponse' smart constructor.+newtype AttachLoadBalancersResponse = AttachLoadBalancersResponse'+ { _albrsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AttachLoadBalancersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'albrsStatus'+attachLoadBalancersResponse+ :: Int -- ^ 'albrsStatus'+ -> AttachLoadBalancersResponse+attachLoadBalancersResponse pStatus_ =+ AttachLoadBalancersResponse'+ { _albrsStatus = pStatus_+ }++-- | The response status code.+albrsStatus :: Lens' AttachLoadBalancersResponse Int+albrsStatus = lens _albrsStatus (\ s a -> s{_albrsStatus = a});
gen/Network/AWS/AutoScaling/CompleteLifecycleAction.hs view
@@ -1,140 +1,169 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.CompleteLifecycleAction--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Completes the lifecycle action for the associated token initiated under the--- given lifecycle hook with the specified result.+-- Completes the lifecycle action for the associated token initiated under+-- the given lifecycle hook with the specified result. ----- This operation is a part of the basic sequence for adding a lifecycle hook--- to an Auto Scaling group:+-- This operation is a part of the basic sequence for adding a lifecycle+-- hook to an Auto Scaling group: ----- Create a notification target. A target can be either an Amazon SQS queue or--- an Amazon SNS topic. Create an IAM role. This role allows Auto Scaling to--- publish lifecycle notifications to the designated SQS queue or SNS topic. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.--- If necessary, record the lifecycle action heartbeat to keep the instance in--- a pending state. Complete the lifecycle action. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State> and <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State> in the /Auto Scaling Developer Guide/.+-- 1. Create a notification target. A target can be either an Amazon SQS+-- queue or an Amazon SNS topic.+-- 2. Create an IAM role. This role allows Auto Scaling to publish+-- lifecycle notifications to the designated SQS queue or SNS topic.+-- 3. Create the lifecycle hook. You can create a hook that acts when+-- instances launch or when instances terminate.+-- 4. If necessary, record the lifecycle action heartbeat to keep the+-- instance in a pending state.+-- 5. __Complete the lifecycle action__. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CompleteLifecycleAction.html>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State>+-- and+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CompleteLifecycleAction.html AWS API Reference> for CompleteLifecycleAction. module Network.AWS.AutoScaling.CompleteLifecycleAction (- -- * Request- CompleteLifecycleAction- -- ** Request constructor- , completeLifecycleAction- -- ** Request lenses+ -- * Creating a Request+ completeLifecycleAction+ , CompleteLifecycleAction+ -- * Request Lenses+ , claLifecycleHookName , claAutoScalingGroupName- , claLifecycleActionResult , claLifecycleActionToken- , claLifecycleHookName+ , claLifecycleActionResult - -- * Response- , CompleteLifecycleActionResponse- -- ** Response constructor+ -- * Destructuring the Response , completeLifecycleActionResponse+ , CompleteLifecycleActionResponse+ -- * Response Lenses+ , clarsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data CompleteLifecycleAction = CompleteLifecycleAction- { _claAutoScalingGroupName :: Text- , _claLifecycleActionResult :: Text- , _claLifecycleActionToken :: Text- , _claLifecycleHookName :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'completeLifecycleAction' smart constructor.+data CompleteLifecycleAction = CompleteLifecycleAction'+ { _claLifecycleHookName :: !Text+ , _claAutoScalingGroupName :: !Text+ , _claLifecycleActionToken :: !Text+ , _claLifecycleActionResult :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CompleteLifecycleAction' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CompleteLifecycleAction' with the minimum fields required to make a request. ----- * 'claAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'claLifecycleActionResult' @::@ 'Text'+-- * 'claLifecycleHookName' ----- * 'claLifecycleActionToken' @::@ 'Text'+-- * 'claAutoScalingGroupName' ----- * 'claLifecycleHookName' @::@ 'Text'+-- * 'claLifecycleActionToken' ---completeLifecycleAction :: Text -- ^ 'claLifecycleHookName'- -> Text -- ^ 'claAutoScalingGroupName'- -> Text -- ^ 'claLifecycleActionToken'- -> Text -- ^ 'claLifecycleActionResult'- -> CompleteLifecycleAction-completeLifecycleAction p1 p2 p3 p4 = CompleteLifecycleAction- { _claLifecycleHookName = p1- , _claAutoScalingGroupName = p2- , _claLifecycleActionToken = p3- , _claLifecycleActionResult = p4+-- * 'claLifecycleActionResult'+completeLifecycleAction+ :: Text -- ^ 'claLifecycleHookName'+ -> Text -- ^ 'claAutoScalingGroupName'+ -> Text -- ^ 'claLifecycleActionToken'+ -> Text -- ^ 'claLifecycleActionResult'+ -> CompleteLifecycleAction+completeLifecycleAction pLifecycleHookName_ pAutoScalingGroupName_ pLifecycleActionToken_ pLifecycleActionResult_ =+ CompleteLifecycleAction'+ { _claLifecycleHookName = pLifecycleHookName_+ , _claAutoScalingGroupName = pAutoScalingGroupName_+ , _claLifecycleActionToken = pLifecycleActionToken_+ , _claLifecycleActionResult = pLifecycleActionResult_ } +-- | The name of the lifecycle hook.+claLifecycleHookName :: Lens' CompleteLifecycleAction Text+claLifecycleHookName = lens _claLifecycleHookName (\ s a -> s{_claLifecycleHookName = a});+ -- | The name of the group for the lifecycle hook. claAutoScalingGroupName :: Lens' CompleteLifecycleAction Text-claAutoScalingGroupName =- lens _claAutoScalingGroupName (\s a -> s { _claAutoScalingGroupName = a })---- | The action for the group to take. This parameter can be either 'CONTINUE' or 'ABANDON'.-claLifecycleActionResult :: Lens' CompleteLifecycleAction Text-claLifecycleActionResult =- lens _claLifecycleActionResult- (\s a -> s { _claLifecycleActionResult = a })+claAutoScalingGroupName = lens _claAutoScalingGroupName (\ s a -> s{_claAutoScalingGroupName = a}); --- | A universally unique identifier (UUID) that identifies a specific lifecycle--- action associated with an instance. Auto Scaling sends this token to the--- notification target you specified when you created the lifecycle hook.+-- | A universally unique identifier (UUID) that identifies a specific+-- lifecycle action associated with an instance. Auto Scaling sends this+-- token to the notification target you specified when you created the+-- lifecycle hook. claLifecycleActionToken :: Lens' CompleteLifecycleAction Text-claLifecycleActionToken =- lens _claLifecycleActionToken (\s a -> s { _claLifecycleActionToken = a })+claLifecycleActionToken = lens _claLifecycleActionToken (\ s a -> s{_claLifecycleActionToken = a}); --- | The name of the lifecycle hook.-claLifecycleHookName :: Lens' CompleteLifecycleAction Text-claLifecycleHookName =- lens _claLifecycleHookName (\s a -> s { _claLifecycleHookName = a })+-- | The action for the group to take. This parameter can be either+-- 'CONTINUE' or 'ABANDON'.+claLifecycleActionResult :: Lens' CompleteLifecycleAction Text+claLifecycleActionResult = lens _claLifecycleActionResult (\ s a -> s{_claLifecycleActionResult = a}); -data CompleteLifecycleActionResponse = CompleteLifecycleActionResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest CompleteLifecycleAction where+ type Sv CompleteLifecycleAction = AutoScaling+ type Rs CompleteLifecycleAction =+ CompleteLifecycleActionResponse+ request = postQuery+ response+ = receiveXMLWrapper "CompleteLifecycleActionResult"+ (\ s h x ->+ CompleteLifecycleActionResponse' <$>+ (pure (fromEnum s))) --- | 'CompleteLifecycleActionResponse' constructor.-completeLifecycleActionResponse :: CompleteLifecycleActionResponse-completeLifecycleActionResponse = CompleteLifecycleActionResponse+instance ToHeaders CompleteLifecycleAction where+ toHeaders = const mempty instance ToPath CompleteLifecycleAction where- toPath = const "/"+ toPath = const "/" instance ToQuery CompleteLifecycleAction where- toQuery CompleteLifecycleAction{..} = mconcat- [ "AutoScalingGroupName" =? _claAutoScalingGroupName- , "LifecycleActionResult" =? _claLifecycleActionResult- , "LifecycleActionToken" =? _claLifecycleActionToken- , "LifecycleHookName" =? _claLifecycleHookName- ]+ toQuery CompleteLifecycleAction'{..}+ = mconcat+ ["Action" =:+ ("CompleteLifecycleAction" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LifecycleHookName" =: _claLifecycleHookName,+ "AutoScalingGroupName" =: _claAutoScalingGroupName,+ "LifecycleActionToken" =: _claLifecycleActionToken,+ "LifecycleActionResult" =: _claLifecycleActionResult] -instance ToHeaders CompleteLifecycleAction+-- | /See:/ 'completeLifecycleActionResponse' smart constructor.+newtype CompleteLifecycleActionResponse = CompleteLifecycleActionResponse'+ { _clarsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CompleteLifecycleAction where- type Sv CompleteLifecycleAction = AutoScaling- type Rs CompleteLifecycleAction = CompleteLifecycleActionResponse+-- | Creates a value of 'CompleteLifecycleActionResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'clarsStatus'+completeLifecycleActionResponse+ :: Int -- ^ 'clarsStatus'+ -> CompleteLifecycleActionResponse+completeLifecycleActionResponse pStatus_ =+ CompleteLifecycleActionResponse'+ { _clarsStatus = pStatus_+ } - request = post "CompleteLifecycleAction"- response = nullResponse CompleteLifecycleActionResponse+-- | The response status code.+clarsStatus :: Lens' CompleteLifecycleActionResponse Int+clarsStatus = lens _clarsStatus (\ s a -> s{_clarsStatus = a});
gen/Network/AWS/AutoScaling/CreateAutoScalingGroup.hs view
@@ -1,302 +1,323 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.CreateAutoScalingGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates an Auto Scaling group with the specified name and attributes.+-- Creates an Auto Scaling group with the specified name and attributes. ----- If you exceed your maximum limit of Auto Scaling groups, which by default is--- 20 per region, the call fails. For information about viewing and updating--- these limits, see 'DescribeAccountLimits'.+-- If you exceed your maximum limit of Auto Scaling groups, which by+-- default is 20 per region, the call fails. For information about viewing+-- and updating this limit, see DescribeAccountLimits. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateAutoScalingGroup.html>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingGroup.html Auto Scaling Groups>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateAutoScalingGroup.html AWS API Reference> for CreateAutoScalingGroup. module Network.AWS.AutoScaling.CreateAutoScalingGroup (- -- * Request- CreateAutoScalingGroup- -- ** Request constructor- , createAutoScalingGroup- -- ** Request lenses- , casgAutoScalingGroupName- , casgAvailabilityZones+ -- * Creating a Request+ createAutoScalingGroup+ , CreateAutoScalingGroup+ -- * Request Lenses+ , casgInstanceId+ , casgTerminationPolicies+ , casgHealthCheckGracePeriod+ , casgVPCZoneIdentifier , casgDefaultCooldown , casgDesiredCapacity- , casgHealthCheckGracePeriod+ , casgAvailabilityZones , casgHealthCheckType- , casgInstanceId , casgLaunchConfigurationName- , casgLoadBalancerNames- , casgMaxSize- , casgMinSize , casgPlacementGroup+ , casgLoadBalancerNames , casgTags- , casgTerminationPolicies- , casgVPCZoneIdentifier+ , casgAutoScalingGroupName+ , casgMinSize+ , casgMaxSize - -- * Response- , CreateAutoScalingGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , createAutoScalingGroupResponse+ , CreateAutoScalingGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data CreateAutoScalingGroup = CreateAutoScalingGroup- { _casgAutoScalingGroupName :: Text- , _casgAvailabilityZones :: List1 "member" Text- , _casgDefaultCooldown :: Maybe Int- , _casgDesiredCapacity :: Maybe Int- , _casgHealthCheckGracePeriod :: Maybe Int- , _casgHealthCheckType :: Maybe Text- , _casgInstanceId :: Maybe Text- , _casgLaunchConfigurationName :: Maybe Text- , _casgLoadBalancerNames :: List "member" Text- , _casgMaxSize :: Int- , _casgMinSize :: Int- , _casgPlacementGroup :: Maybe Text- , _casgTags :: List "member" Tag- , _casgTerminationPolicies :: List "member" Text- , _casgVPCZoneIdentifier :: Maybe Text- } deriving (Eq, Read, Show)+-- | /See:/ 'createAutoScalingGroup' smart constructor.+data CreateAutoScalingGroup = CreateAutoScalingGroup'+ { _casgInstanceId :: !(Maybe Text)+ , _casgTerminationPolicies :: !(Maybe [Text])+ , _casgHealthCheckGracePeriod :: !(Maybe Int)+ , _casgVPCZoneIdentifier :: !(Maybe Text)+ , _casgDefaultCooldown :: !(Maybe Int)+ , _casgDesiredCapacity :: !(Maybe Int)+ , _casgAvailabilityZones :: !(Maybe (List1 Text))+ , _casgHealthCheckType :: !(Maybe Text)+ , _casgLaunchConfigurationName :: !(Maybe Text)+ , _casgPlacementGroup :: !(Maybe Text)+ , _casgLoadBalancerNames :: !(Maybe [Text])+ , _casgTags :: !(Maybe [Tag])+ , _casgAutoScalingGroupName :: !Text+ , _casgMinSize :: !Int+ , _casgMaxSize :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateAutoScalingGroup' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateAutoScalingGroup' with the minimum fields required to make a request. ----- * 'casgAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'casgAvailabilityZones' @::@ 'NonEmpty' 'Text'+-- * 'casgInstanceId' ----- * 'casgDefaultCooldown' @::@ 'Maybe' 'Int'+-- * 'casgTerminationPolicies' ----- * 'casgDesiredCapacity' @::@ 'Maybe' 'Int'+-- * 'casgHealthCheckGracePeriod' ----- * 'casgHealthCheckGracePeriod' @::@ 'Maybe' 'Int'+-- * 'casgVPCZoneIdentifier' ----- * 'casgHealthCheckType' @::@ 'Maybe' 'Text'+-- * 'casgDefaultCooldown' ----- * 'casgInstanceId' @::@ 'Maybe' 'Text'+-- * 'casgDesiredCapacity' ----- * 'casgLaunchConfigurationName' @::@ 'Maybe' 'Text'+-- * 'casgAvailabilityZones' ----- * 'casgLoadBalancerNames' @::@ ['Text']+-- * 'casgHealthCheckType' ----- * 'casgMaxSize' @::@ 'Int'+-- * 'casgLaunchConfigurationName' ----- * 'casgMinSize' @::@ 'Int'+-- * 'casgPlacementGroup' ----- * 'casgPlacementGroup' @::@ 'Maybe' 'Text'+-- * 'casgLoadBalancerNames' ----- * 'casgTags' @::@ ['Tag']+-- * 'casgTags' ----- * 'casgTerminationPolicies' @::@ ['Text']+-- * 'casgAutoScalingGroupName' ----- * 'casgVPCZoneIdentifier' @::@ 'Maybe' 'Text'+-- * 'casgMinSize' ---createAutoScalingGroup :: Text -- ^ 'casgAutoScalingGroupName'- -> Int -- ^ 'casgMinSize'- -> Int -- ^ 'casgMaxSize'- -> NonEmpty Text -- ^ 'casgAvailabilityZones'- -> CreateAutoScalingGroup-createAutoScalingGroup p1 p2 p3 p4 = CreateAutoScalingGroup- { _casgAutoScalingGroupName = p1- , _casgMinSize = p2- , _casgMaxSize = p3- , _casgAvailabilityZones = withIso _List1 (const id) p4+-- * 'casgMaxSize'+createAutoScalingGroup+ :: Text -- ^ 'casgAutoScalingGroupName'+ -> Int -- ^ 'casgMinSize'+ -> Int -- ^ 'casgMaxSize'+ -> CreateAutoScalingGroup+createAutoScalingGroup pAutoScalingGroupName_ pMinSize_ pMaxSize_ =+ CreateAutoScalingGroup'+ { _casgInstanceId = Nothing+ , _casgTerminationPolicies = Nothing+ , _casgHealthCheckGracePeriod = Nothing+ , _casgVPCZoneIdentifier = Nothing+ , _casgDefaultCooldown = Nothing+ , _casgDesiredCapacity = Nothing+ , _casgAvailabilityZones = Nothing+ , _casgHealthCheckType = Nothing , _casgLaunchConfigurationName = Nothing- , _casgInstanceId = Nothing- , _casgDesiredCapacity = Nothing- , _casgDefaultCooldown = Nothing- , _casgLoadBalancerNames = mempty- , _casgHealthCheckType = Nothing- , _casgHealthCheckGracePeriod = Nothing- , _casgPlacementGroup = Nothing- , _casgVPCZoneIdentifier = Nothing- , _casgTerminationPolicies = mempty- , _casgTags = mempty+ , _casgPlacementGroup = Nothing+ , _casgLoadBalancerNames = Nothing+ , _casgTags = Nothing+ , _casgAutoScalingGroupName = pAutoScalingGroupName_+ , _casgMinSize = pMinSize_+ , _casgMaxSize = pMaxSize_ } --- | The name of the group. This name must be unique within the scope of your AWS--- account.-casgAutoScalingGroupName :: Lens' CreateAutoScalingGroup Text-casgAutoScalingGroupName =- lens _casgAutoScalingGroupName- (\s a -> s { _casgAutoScalingGroupName = a })---- | One or more Availability Zones for the group. This parameter is optional if--- you specify subnets using the 'VPCZoneIdentifier' parameter.-casgAvailabilityZones :: Lens' CreateAutoScalingGroup (NonEmpty Text)-casgAvailabilityZones =- lens _casgAvailabilityZones (\s a -> s { _casgAvailabilityZones = a })- . _List1---- | The amount of time, in seconds, after a scaling activity completes before--- another scaling activity can start.+-- | The ID of the EC2 instance used to create a launch configuration for the+-- group. Alternatively, use the 'LaunchConfigurationName' parameter to+-- specify a launch configuration instead of an EC2 instance. ----- If 'DefaultCooldown' is not specified, the default value is 300. For more--- information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns> in the /Auto ScalingDeveloper Guide/.-casgDefaultCooldown :: Lens' CreateAutoScalingGroup (Maybe Int)-casgDefaultCooldown =- lens _casgDefaultCooldown (\s a -> s { _casgDefaultCooldown = a })+-- When you specify an ID of an instance, Auto Scaling creates a new launch+-- configuration and associates it with the group. This launch+-- configuration derives its attributes from the specified instance, with+-- the exception of the block device mapping.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/create-asg-from-instance.html Create an Auto Scaling Group from an EC2 Instance>+-- in the /Auto Scaling Developer Guide/.+casgInstanceId :: Lens' CreateAutoScalingGroup (Maybe Text)+casgInstanceId = lens _casgInstanceId (\ s a -> s{_casgInstanceId = a}); --- | The number of EC2 instances that should be running in the group. This value--- must be greater than or equal to the minimum size of the group and less than--- or equal to the maximum size of the group.-casgDesiredCapacity :: Lens' CreateAutoScalingGroup (Maybe Int)-casgDesiredCapacity =- lens _casgDesiredCapacity (\s a -> s { _casgDesiredCapacity = a })+-- | One or more termination policies used to select the instance to+-- terminate. These policies are executed in the order that they are+-- listed.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-termination-policy.html Choosing a Termination Policy for Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/.+casgTerminationPolicies :: Lens' CreateAutoScalingGroup [Text]+casgTerminationPolicies = lens _casgTerminationPolicies (\ s a -> s{_casgTerminationPolicies = a}) . _Default . _Coerce; --- | The amount of time, in seconds, after an EC2 instance comes into service that--- Auto Scaling starts checking its health. During this time, any health check--- failures for the instance are ignored.+-- | The amount of time, in seconds, after an EC2 instance comes into service+-- that Auto Scaling starts checking its health. During this time, any+-- health check failures for the instance are ignored. -- -- This parameter is required if you are adding an 'ELB' health check.--- Frequently, new instances need to warm up, briefly, before they can pass a--- health check. To provide ample warm-up time, set the health check grace--- period of the group to match the expected startup period of your application.+-- Frequently, new instances need to warm up, briefly, before they can pass+-- a health check. To provide ample warm-up time, set the health check+-- grace period of the group to match the expected startup period of your+-- application. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-add-elb-healthcheck.html Add an Elastic Load Balancing Health Check to YourAuto Scaling Group> in the /Auto Scaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-add-elb-healthcheck.html Add an Elastic Load Balancing Health Check to Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/. casgHealthCheckGracePeriod :: Lens' CreateAutoScalingGroup (Maybe Int)-casgHealthCheckGracePeriod =- lens _casgHealthCheckGracePeriod- (\s a -> s { _casgHealthCheckGracePeriod = a })+casgHealthCheckGracePeriod = lens _casgHealthCheckGracePeriod (\ s a -> s{_casgHealthCheckGracePeriod = a}); --- | The service to use for the health checks. The valid values are 'EC2' and 'ELB'.+-- | A comma-separated list of subnet identifiers for your virtual private+-- cloud (VPC). ----- By default, health checks use Amazon EC2 instance status checks to determine--- the health of an instance. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/healthcheck.html Health Checks>.-casgHealthCheckType :: Lens' CreateAutoScalingGroup (Maybe Text)-casgHealthCheckType =- lens _casgHealthCheckType (\s a -> s { _casgHealthCheckType = a })+-- If you specify subnets and Availability Zones with this call, ensure+-- that the subnets\' Availability Zones match the Availability Zones+-- specified.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon Virtual Private Cloud>+-- in the /Auto Scaling Developer Guide/.+casgVPCZoneIdentifier :: Lens' CreateAutoScalingGroup (Maybe Text)+casgVPCZoneIdentifier = lens _casgVPCZoneIdentifier (\ s a -> s{_casgVPCZoneIdentifier = a}); --- | The ID of the EC2 instance used to create a launch configuration for the--- group. Alternatively, use the 'LaunchConfigurationName' parameter to specify a--- launch configuration instead of an EC2 instance.+-- | The amount of time, in seconds, after a scaling activity completes+-- before another scaling activity can start. ----- When you specify an ID of an instance, Auto Scaling creates a new launch--- configuration and associates it with the group. This launch configuration--- derives its attributes from the specified instance, with the exception of the--- block device mapping.+-- If this parameter is not specified, the default value is 300. For more+-- information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns>+-- in the /Auto Scaling Developer Guide/.+casgDefaultCooldown :: Lens' CreateAutoScalingGroup (Maybe Int)+casgDefaultCooldown = lens _casgDefaultCooldown (\ s a -> s{_casgDefaultCooldown = a});++-- | The number of EC2 instances that should be running in the group. This+-- number must be greater than or equal to the minimum size of the group+-- and less than or equal to the maximum size of the group.+casgDesiredCapacity :: Lens' CreateAutoScalingGroup (Maybe Int)+casgDesiredCapacity = lens _casgDesiredCapacity (\ s a -> s{_casgDesiredCapacity = a});++-- | One or more Availability Zones for the group. This parameter is optional+-- if you specify subnets using the 'VPCZoneIdentifier' parameter.+casgAvailabilityZones :: Lens' CreateAutoScalingGroup (Maybe (NonEmpty Text))+casgAvailabilityZones = lens _casgAvailabilityZones (\ s a -> s{_casgAvailabilityZones = a}) . mapping _List1;++-- | The service to use for the health checks. The valid values are 'EC2' and+-- 'ELB'. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/create-asg-from-instance.html Create an Auto Scaling Group Using an EC2 InstanceID> in the /Auto Scaling Developer Guide/.-casgInstanceId :: Lens' CreateAutoScalingGroup (Maybe Text)-casgInstanceId = lens _casgInstanceId (\s a -> s { _casgInstanceId = a })+-- By default, health checks use Amazon EC2 instance status checks to+-- determine the health of an instance. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/healthcheck.html Health Checks>.+casgHealthCheckType :: Lens' CreateAutoScalingGroup (Maybe Text)+casgHealthCheckType = lens _casgHealthCheckType (\ s a -> s{_casgHealthCheckType = a}); --- | The name of the launch configuration. Alternatively, use the 'InstanceId'--- parameter to specify an EC2 instance instead of a launch configuration.+-- | The name of the launch configuration. Alternatively, use the+-- 'InstanceId' parameter to specify an EC2 instance instead of a launch+-- configuration. casgLaunchConfigurationName :: Lens' CreateAutoScalingGroup (Maybe Text)-casgLaunchConfigurationName =- lens _casgLaunchConfigurationName- (\s a -> s { _casgLaunchConfigurationName = a })+casgLaunchConfigurationName = lens _casgLaunchConfigurationName (\ s a -> s{_casgLaunchConfigurationName = a}); +-- | The name of the placement group into which you\'ll launch your+-- instances, if any. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>+-- in the /Amazon Elastic Compute Cloud User Guide/.+casgPlacementGroup :: Lens' CreateAutoScalingGroup (Maybe Text)+casgPlacementGroup = lens _casgPlacementGroup (\ s a -> s{_casgPlacementGroup = a});+ -- | One or more load balancers. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SetUpASLBApp.html Load Balance Your Auto Scaling Group> in the /AutoScaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SetUpASLBApp.html Load Balance Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/. casgLoadBalancerNames :: Lens' CreateAutoScalingGroup [Text]-casgLoadBalancerNames =- lens _casgLoadBalancerNames (\s a -> s { _casgLoadBalancerNames = a })- . _List---- | The maximum size of the group.-casgMaxSize :: Lens' CreateAutoScalingGroup Int-casgMaxSize = lens _casgMaxSize (\s a -> s { _casgMaxSize = a })---- | The minimum size of the group.-casgMinSize :: Lens' CreateAutoScalingGroup Int-casgMinSize = lens _casgMinSize (\s a -> s { _casgMinSize = a })---- | The name of the placement group into which you'll launch your instances, if--- any. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>.-casgPlacementGroup :: Lens' CreateAutoScalingGroup (Maybe Text)-casgPlacementGroup =- lens _casgPlacementGroup (\s a -> s { _casgPlacementGroup = a })+casgLoadBalancerNames = lens _casgLoadBalancerNames (\ s a -> s{_casgLoadBalancerNames = a}) . _Default . _Coerce; --- | The tag to be created or updated. Each tag should be defined by its resource--- type, resource ID, key, value, and a propagate flag. Valid values: key=/value/,--- value=/value/, propagate=/true/ or /false/. Value and propagate are optional--- parameters.+-- | The tag to be created or updated. Each tag should be defined by its+-- resource type, resource ID, key, value, and a propagate flag. Valid+-- values: key=/value/, value=/value/, propagate=/true/ or /false/. Value+-- and propagate are optional parameters. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASTagging.html Add, Modify, or Remove Auto Scaling Group Tags> in--- the /Auto Scaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASTagging.html Tagging Auto Scaling Groups and Instances>+-- in the /Auto Scaling Developer Guide/. casgTags :: Lens' CreateAutoScalingGroup [Tag]-casgTags = lens _casgTags (\s a -> s { _casgTags = a }) . _List+casgTags = lens _casgTags (\ s a -> s{_casgTags = a}) . _Default . _Coerce; --- | One or more termination policies used to select the instance to terminate.--- These policies are executed in the order that they are listed.------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-termination-policy.html Choosing a Termination Policy for Your AutoScaling Group> in the /Auto Scaling Developer Guide/.-casgTerminationPolicies :: Lens' CreateAutoScalingGroup [Text]-casgTerminationPolicies =- lens _casgTerminationPolicies (\s a -> s { _casgTerminationPolicies = a })- . _List+-- | The name of the group. This name must be unique within the scope of your+-- AWS account.+casgAutoScalingGroupName :: Lens' CreateAutoScalingGroup Text+casgAutoScalingGroupName = lens _casgAutoScalingGroupName (\ s a -> s{_casgAutoScalingGroupName = a}); --- | A comma-separated list of subnet identifiers for your virtual private cloud--- (VPC).------ If you specify subnets and Availability Zones with this call, ensure that--- the subnets' Availability Zones match the Availability Zones specified.------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon VPC> in the /Auto ScalingDeveloper Guide/.-casgVPCZoneIdentifier :: Lens' CreateAutoScalingGroup (Maybe Text)-casgVPCZoneIdentifier =- lens _casgVPCZoneIdentifier (\s a -> s { _casgVPCZoneIdentifier = a })+-- | The minimum size of the group.+casgMinSize :: Lens' CreateAutoScalingGroup Int+casgMinSize = lens _casgMinSize (\ s a -> s{_casgMinSize = a}); -data CreateAutoScalingGroupResponse = CreateAutoScalingGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The maximum size of the group.+casgMaxSize :: Lens' CreateAutoScalingGroup Int+casgMaxSize = lens _casgMaxSize (\ s a -> s{_casgMaxSize = a}); --- | 'CreateAutoScalingGroupResponse' constructor.-createAutoScalingGroupResponse :: CreateAutoScalingGroupResponse-createAutoScalingGroupResponse = CreateAutoScalingGroupResponse+instance AWSRequest CreateAutoScalingGroup where+ type Sv CreateAutoScalingGroup = AutoScaling+ type Rs CreateAutoScalingGroup =+ CreateAutoScalingGroupResponse+ request = postQuery+ response+ = receiveNull CreateAutoScalingGroupResponse' +instance ToHeaders CreateAutoScalingGroup where+ toHeaders = const mempty+ instance ToPath CreateAutoScalingGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateAutoScalingGroup where- toQuery CreateAutoScalingGroup{..} = mconcat- [ "AutoScalingGroupName" =? _casgAutoScalingGroupName- , "AvailabilityZones" =? _casgAvailabilityZones- , "DefaultCooldown" =? _casgDefaultCooldown- , "DesiredCapacity" =? _casgDesiredCapacity- , "HealthCheckGracePeriod" =? _casgHealthCheckGracePeriod- , "HealthCheckType" =? _casgHealthCheckType- , "InstanceId" =? _casgInstanceId- , "LaunchConfigurationName" =? _casgLaunchConfigurationName- , "LoadBalancerNames" =? _casgLoadBalancerNames- , "MaxSize" =? _casgMaxSize- , "MinSize" =? _casgMinSize- , "PlacementGroup" =? _casgPlacementGroup- , "Tags" =? _casgTags- , "TerminationPolicies" =? _casgTerminationPolicies- , "VPCZoneIdentifier" =? _casgVPCZoneIdentifier- ]--instance ToHeaders CreateAutoScalingGroup+ toQuery CreateAutoScalingGroup'{..}+ = mconcat+ ["Action" =:+ ("CreateAutoScalingGroup" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceId" =: _casgInstanceId,+ "TerminationPolicies" =:+ toQuery+ (toQueryList "member" <$> _casgTerminationPolicies),+ "HealthCheckGracePeriod" =:+ _casgHealthCheckGracePeriod,+ "VPCZoneIdentifier" =: _casgVPCZoneIdentifier,+ "DefaultCooldown" =: _casgDefaultCooldown,+ "DesiredCapacity" =: _casgDesiredCapacity,+ "AvailabilityZones" =:+ toQuery+ (toQueryList "member" <$> _casgAvailabilityZones),+ "HealthCheckType" =: _casgHealthCheckType,+ "LaunchConfigurationName" =:+ _casgLaunchConfigurationName,+ "PlacementGroup" =: _casgPlacementGroup,+ "LoadBalancerNames" =:+ toQuery+ (toQueryList "member" <$> _casgLoadBalancerNames),+ "Tags" =:+ toQuery (toQueryList "member" <$> _casgTags),+ "AutoScalingGroupName" =: _casgAutoScalingGroupName,+ "MinSize" =: _casgMinSize, "MaxSize" =: _casgMaxSize] -instance AWSRequest CreateAutoScalingGroup where- type Sv CreateAutoScalingGroup = AutoScaling- type Rs CreateAutoScalingGroup = CreateAutoScalingGroupResponse+-- | /See:/ 'createAutoScalingGroupResponse' smart constructor.+data CreateAutoScalingGroupResponse =+ CreateAutoScalingGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "CreateAutoScalingGroup"- response = nullResponse CreateAutoScalingGroupResponse+-- | Creates a value of 'CreateAutoScalingGroupResponse' with the minimum fields required to make a request.+--+createAutoScalingGroupResponse+ :: CreateAutoScalingGroupResponse+createAutoScalingGroupResponse = CreateAutoScalingGroupResponse'
gen/Network/AWS/AutoScaling/CreateLaunchConfiguration.hs view
@@ -1,345 +1,386 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.CreateLaunchConfiguration--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates a launch configuration.+-- Creates a launch configuration. ----- If you exceed your maximum limit of launch configurations, which by default--- is 100 per region, the call fails. For information about viewing and updating--- these limits, see 'DescribeAccountLimits'.+-- If you exceed your maximum limit of launch configurations, which by+-- default is 100 per region, the call fails. For information about viewing+-- and updating this limit, see DescribeAccountLimits. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateLaunchConfiguration.html>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/LaunchConfiguration.html Launch Configurations>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateLaunchConfiguration.html AWS API Reference> for CreateLaunchConfiguration. module Network.AWS.AutoScaling.CreateLaunchConfiguration (- -- * Request- CreateLaunchConfiguration- -- ** Request constructor- , createLaunchConfiguration- -- ** Request lenses- , clcAssociatePublicIpAddress- , clcBlockDeviceMappings- , clcClassicLinkVPCId- , clcClassicLinkVPCSecurityGroups- , clcEbsOptimized- , clcIamInstanceProfile- , clcImageId+ -- * Creating a Request+ createLaunchConfiguration+ , CreateLaunchConfiguration+ -- * Request Lenses , clcInstanceId- , clcInstanceMonitoring- , clcInstanceType- , clcKernelId- , clcKeyName- , clcLaunchConfigurationName- , clcPlacementTenancy- , clcRamdiskId , clcSecurityGroups+ , clcAssociatePublicIPAddress+ , clcInstanceMonitoring , clcSpotPrice+ , clcKeyName+ , clcClassicLinkVPCSecurityGroups+ , clcRAMDiskId+ , clcKernelId+ , clcInstanceType+ , clcEBSOptimized , clcUserData+ , clcClassicLinkVPCId+ , clcIAMInstanceProfile+ , clcImageId+ , clcPlacementTenancy+ , clcBlockDeviceMappings+ , clcLaunchConfigurationName - -- * Response- , CreateLaunchConfigurationResponse- -- ** Response constructor+ -- * Destructuring the Response , createLaunchConfigurationResponse+ , CreateLaunchConfigurationResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data CreateLaunchConfiguration = CreateLaunchConfiguration- { _clcAssociatePublicIpAddress :: Maybe Bool- , _clcBlockDeviceMappings :: List "member" BlockDeviceMapping- , _clcClassicLinkVPCId :: Maybe Text- , _clcClassicLinkVPCSecurityGroups :: List "member" Text- , _clcEbsOptimized :: Maybe Bool- , _clcIamInstanceProfile :: Maybe Text- , _clcImageId :: Maybe Text- , _clcInstanceId :: Maybe Text- , _clcInstanceMonitoring :: Maybe InstanceMonitoring- , _clcInstanceType :: Maybe Text- , _clcKernelId :: Maybe Text- , _clcKeyName :: Maybe Text- , _clcLaunchConfigurationName :: Text- , _clcPlacementTenancy :: Maybe Text- , _clcRamdiskId :: Maybe Text- , _clcSecurityGroups :: List "member" Text- , _clcSpotPrice :: Maybe Text- , _clcUserData :: Maybe Text- } deriving (Eq, Read, Show)+-- | /See:/ 'createLaunchConfiguration' smart constructor.+data CreateLaunchConfiguration = CreateLaunchConfiguration'+ { _clcInstanceId :: !(Maybe Text)+ , _clcSecurityGroups :: !(Maybe [Text])+ , _clcAssociatePublicIPAddress :: !(Maybe Bool)+ , _clcInstanceMonitoring :: !(Maybe InstanceMonitoring)+ , _clcSpotPrice :: !(Maybe Text)+ , _clcKeyName :: !(Maybe Text)+ , _clcClassicLinkVPCSecurityGroups :: !(Maybe [Text])+ , _clcRAMDiskId :: !(Maybe Text)+ , _clcKernelId :: !(Maybe Text)+ , _clcInstanceType :: !(Maybe Text)+ , _clcEBSOptimized :: !(Maybe Bool)+ , _clcUserData :: !(Maybe Text)+ , _clcClassicLinkVPCId :: !(Maybe Text)+ , _clcIAMInstanceProfile :: !(Maybe Text)+ , _clcImageId :: !(Maybe Text)+ , _clcPlacementTenancy :: !(Maybe Text)+ , _clcBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])+ , _clcLaunchConfigurationName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateLaunchConfiguration' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateLaunchConfiguration' with the minimum fields required to make a request. ----- * 'clcAssociatePublicIpAddress' @::@ 'Maybe' 'Bool'+-- Use one of the following lenses to modify other fields as desired: ----- * 'clcBlockDeviceMappings' @::@ ['BlockDeviceMapping']+-- * 'clcInstanceId' ----- * 'clcClassicLinkVPCId' @::@ 'Maybe' 'Text'+-- * 'clcSecurityGroups' ----- * 'clcClassicLinkVPCSecurityGroups' @::@ ['Text']+-- * 'clcAssociatePublicIPAddress' ----- * 'clcEbsOptimized' @::@ 'Maybe' 'Bool'+-- * 'clcInstanceMonitoring' ----- * 'clcIamInstanceProfile' @::@ 'Maybe' 'Text'+-- * 'clcSpotPrice' ----- * 'clcImageId' @::@ 'Maybe' 'Text'+-- * 'clcKeyName' ----- * 'clcInstanceId' @::@ 'Maybe' 'Text'+-- * 'clcClassicLinkVPCSecurityGroups' ----- * 'clcInstanceMonitoring' @::@ 'Maybe' 'InstanceMonitoring'+-- * 'clcRAMDiskId' ----- * 'clcInstanceType' @::@ 'Maybe' 'Text'+-- * 'clcKernelId' ----- * 'clcKernelId' @::@ 'Maybe' 'Text'+-- * 'clcInstanceType' ----- * 'clcKeyName' @::@ 'Maybe' 'Text'+-- * 'clcEBSOptimized' ----- * 'clcLaunchConfigurationName' @::@ 'Text'+-- * 'clcUserData' ----- * 'clcPlacementTenancy' @::@ 'Maybe' 'Text'+-- * 'clcClassicLinkVPCId' ----- * 'clcRamdiskId' @::@ 'Maybe' 'Text'+-- * 'clcIAMInstanceProfile' ----- * 'clcSecurityGroups' @::@ ['Text']+-- * 'clcImageId' ----- * 'clcSpotPrice' @::@ 'Maybe' 'Text'+-- * 'clcPlacementTenancy' ----- * 'clcUserData' @::@ 'Maybe' 'Text'+-- * 'clcBlockDeviceMappings' ---createLaunchConfiguration :: Text -- ^ 'clcLaunchConfigurationName'- -> CreateLaunchConfiguration-createLaunchConfiguration p1 = CreateLaunchConfiguration- { _clcLaunchConfigurationName = p1- , _clcImageId = Nothing- , _clcKeyName = Nothing- , _clcSecurityGroups = mempty- , _clcClassicLinkVPCId = Nothing- , _clcClassicLinkVPCSecurityGroups = mempty- , _clcUserData = Nothing- , _clcInstanceId = Nothing- , _clcInstanceType = Nothing- , _clcKernelId = Nothing- , _clcRamdiskId = Nothing- , _clcBlockDeviceMappings = mempty- , _clcInstanceMonitoring = Nothing- , _clcSpotPrice = Nothing- , _clcIamInstanceProfile = Nothing- , _clcEbsOptimized = Nothing- , _clcAssociatePublicIpAddress = Nothing- , _clcPlacementTenancy = Nothing+-- * 'clcLaunchConfigurationName'+createLaunchConfiguration+ :: Text -- ^ 'clcLaunchConfigurationName'+ -> CreateLaunchConfiguration+createLaunchConfiguration pLaunchConfigurationName_ =+ CreateLaunchConfiguration'+ { _clcInstanceId = Nothing+ , _clcSecurityGroups = Nothing+ , _clcAssociatePublicIPAddress = Nothing+ , _clcInstanceMonitoring = Nothing+ , _clcSpotPrice = Nothing+ , _clcKeyName = Nothing+ , _clcClassicLinkVPCSecurityGroups = Nothing+ , _clcRAMDiskId = Nothing+ , _clcKernelId = Nothing+ , _clcInstanceType = Nothing+ , _clcEBSOptimized = Nothing+ , _clcUserData = Nothing+ , _clcClassicLinkVPCId = Nothing+ , _clcIAMInstanceProfile = Nothing+ , _clcImageId = Nothing+ , _clcPlacementTenancy = Nothing+ , _clcBlockDeviceMappings = Nothing+ , _clcLaunchConfigurationName = pLaunchConfigurationName_ } --- | Used for groups that launch instances into a virtual private cloud (VPC).--- Specifies whether to assign a public IP address to each instance. For more--- information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon VPC> in the /Auto Scaling DeveloperGuide/.+-- | The ID of the EC2 instance to use to create the launch configuration. ----- If you specify a value for this parameter, be sure to specify at least one--- subnet using the /VPCZoneIdentifier/ parameter when you create your group.+-- The new launch configuration derives attributes from the instance, with+-- the exception of the block device mapping. ----- Default: If the instance is launched into a default subnet, the default is 'true'. If the instance is launched into a nondefault subnet, the default is 'false'.--- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide//as-supported-platforms.html Supported Platforms> in the /Amazon Elastic ComputeCloud User Guide/.-clcAssociatePublicIpAddress :: Lens' CreateLaunchConfiguration (Maybe Bool)-clcAssociatePublicIpAddress =- lens _clcAssociatePublicIpAddress- (\s a -> s { _clcAssociatePublicIpAddress = a })---- | One or more mappings that specify how block devices are exposed to the--- instance. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html Block Device Mapping> in the /AmazonElastic Compute Cloud User Guide/.-clcBlockDeviceMappings :: Lens' CreateLaunchConfiguration [BlockDeviceMapping]-clcBlockDeviceMappings =- lens _clcBlockDeviceMappings (\s a -> s { _clcBlockDeviceMappings = a })- . _List---- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.--- This parameter can only be used if you are launching EC2-Classic instances.--- For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink> in the /Amazon Elastic Compute CloudUser Guide/.-clcClassicLinkVPCId :: Lens' CreateLaunchConfiguration (Maybe Text)-clcClassicLinkVPCId =- lens _clcClassicLinkVPCId (\s a -> s { _clcClassicLinkVPCId = a })---- | The IDs of one or more security groups for the VPC specified in 'ClassicLinkVPCId'. This parameter is required if 'ClassicLinkVPCId' is specified, and cannot be--- used otherwise. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink> in the /Amazon ElasticCompute Cloud User Guide/.-clcClassicLinkVPCSecurityGroups :: Lens' CreateLaunchConfiguration [Text]-clcClassicLinkVPCSecurityGroups =- lens _clcClassicLinkVPCSecurityGroups- (\s a -> s { _clcClassicLinkVPCSecurityGroups = a })- . _List---- | Indicates whether the instance is optimized for Amazon EBS I/O. By default,--- the instance is not optimized for EBS I/O. The optimization provides--- dedicated throughput to Amazon EBS and an optimized configuration stack to--- provide optimal I/O performance. This optimization is not available with all--- instance types. Additional usage charges apply. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html Amazon EBS-Optimized Instances> in the /Amazon Elastic Compute Cloud User Guide/.-clcEbsOptimized :: Lens' CreateLaunchConfiguration (Maybe Bool)-clcEbsOptimized = lens _clcEbsOptimized (\s a -> s { _clcEbsOptimized = a })---- | The name or the Amazon Resource Name (ARN) of the instance profile associated--- with the IAM role for the instance.+-- To create a launch configuration with a block device mapping or override+-- any other instance attributes, specify them as part of the same request. ----- Amazon EC2 instances launched with an IAM role will automatically have AWS--- security credentials available. You can use IAM roles with Auto Scaling to--- automatically enable applications running on your Amazon EC2 instances to--- securely access other AWS resources. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-iam-role.html Launch AutoScaling Instances with an IAM Role> in the /Auto Scaling Developer Guide/.-clcIamInstanceProfile :: Lens' CreateLaunchConfiguration (Maybe Text)-clcIamInstanceProfile =- lens _clcIamInstanceProfile (\s a -> s { _clcIamInstanceProfile = a })---- | The ID of the Amazon Machine Image (AMI) to use to launch your EC2 instances.--- For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html Finding an AMI> in the /Amazon Elastic Compute CloudUser Guide/.-clcImageId :: Lens' CreateLaunchConfiguration (Maybe Text)-clcImageId = lens _clcImageId (\s a -> s { _clcImageId = a })+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/create-lc-with-instanceID.html Create a Launch Configuration Using an EC2 Instance>+-- in the /Auto Scaling Developer Guide/.+clcInstanceId :: Lens' CreateLaunchConfiguration (Maybe Text)+clcInstanceId = lens _clcInstanceId (\ s a -> s{_clcInstanceId = a}); --- | The ID of the EC2 instance to use to create the launch configuration.------ The new launch configuration derives attributes from the instance, with the--- exception of the block device mapping.+-- | One or more security groups with which to associate the instances. ----- To create a launch configuration with a block device mapping or override any--- other instance attributes, specify them as part of the same request.+-- If your instances are launched in EC2-Classic, you can either specify+-- security group names or the security group IDs. For more information+-- about security groups for EC2-Classic, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html Amazon EC2 Security Groups>+-- in the /Amazon Elastic Compute Cloud User Guide/. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/create-lc-with-instanceID.html Create a Launch Configuration Using an EC2 Instance>+-- If your instances are launched into a VPC, specify security group IDs.+-- For more information, see+-- <http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html Security Groups for Your VPC>+-- in the /Amazon Virtual Private Cloud User Guide/.+clcSecurityGroups :: Lens' CreateLaunchConfiguration [Text]+clcSecurityGroups = lens _clcSecurityGroups (\ s a -> s{_clcSecurityGroups = a}) . _Default . _Coerce;++-- | Used for groups that launch instances into a virtual private cloud+-- (VPC). Specifies whether to assign a public IP address to each instance.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon Virtual Private Cloud> -- in the /Auto Scaling Developer Guide/.-clcInstanceId :: Lens' CreateLaunchConfiguration (Maybe Text)-clcInstanceId = lens _clcInstanceId (\s a -> s { _clcInstanceId = a })+--+-- If you specify a value for this parameter, be sure to specify at least+-- one subnet using the /VPCZoneIdentifier/ parameter when you create your+-- group.+--+-- Default: If the instance is launched into a default subnet, the default+-- is 'true'. If the instance is launched into a nondefault subnet, the+-- default is 'false'. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported Platforms>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcAssociatePublicIPAddress :: Lens' CreateLaunchConfiguration (Maybe Bool)+clcAssociatePublicIPAddress = lens _clcAssociatePublicIPAddress (\ s a -> s{_clcAssociatePublicIPAddress = a}); --- | Enables detailed monitoring if it is disabled. Detailed monitoring is enabled--- by default.+-- | Enables detailed monitoring if it is disabled. Detailed monitoring is+-- enabled by default. ----- When detailed monitoring is enabled, Amazon Cloudwatch generates metrics--- every minute and your account is charged a fee. When you disable detailed--- monitoring, by specifying 'False', Cloudwatch generates metrics every 5--- minutes. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-instance-monitoring.html Monitor Your Auto Scaling Instances> in the /Auto Scaling Developer Guide/.+-- When detailed monitoring is enabled, Amazon CloudWatch generates metrics+-- every minute and your account is charged a fee. When you disable+-- detailed monitoring, by specifying 'False', CloudWatch generates metrics+-- every 5 minutes. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-instance-monitoring.html Monitor Your Auto Scaling Instances>+-- in the /Auto Scaling Developer Guide/. clcInstanceMonitoring :: Lens' CreateLaunchConfiguration (Maybe InstanceMonitoring)-clcInstanceMonitoring =- lens _clcInstanceMonitoring (\s a -> s { _clcInstanceMonitoring = a })+clcInstanceMonitoring = lens _clcInstanceMonitoring (\ s a -> s{_clcInstanceMonitoring = a}); --- | The instance type of the Amazon EC2 instance. For information about--- available Amazon EC2 instance types, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes Available Instance Types> in the /Amazon Elastic Cloud Compute User Guide./-clcInstanceType :: Lens' CreateLaunchConfiguration (Maybe Text)-clcInstanceType = lens _clcInstanceType (\s a -> s { _clcInstanceType = a })+-- | The maximum hourly price to be paid for any Spot Instance launched to+-- fulfill the request. Spot Instances are launched when the price you+-- specify exceeds the current Spot market price. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US-SpotInstances.html Launch Spot Instances in Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/.+clcSpotPrice :: Lens' CreateLaunchConfiguration (Maybe Text)+clcSpotPrice = lens _clcSpotPrice (\ s a -> s{_clcSpotPrice = a}); --- | The ID of the kernel associated with the Amazon EC2 AMI.+-- | The name of the key pair. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html Amazon EC2 Key Pairs>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcKeyName :: Lens' CreateLaunchConfiguration (Maybe Text)+clcKeyName = lens _clcKeyName (\ s a -> s{_clcKeyName = a});++-- | The IDs of one or more security groups for the VPC specified in+-- 'ClassicLinkVPCId'. This parameter is required if 'ClassicLinkVPCId' is+-- specified, and is not supported otherwise. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcClassicLinkVPCSecurityGroups :: Lens' CreateLaunchConfiguration [Text]+clcClassicLinkVPCSecurityGroups = lens _clcClassicLinkVPCSecurityGroups (\ s a -> s{_clcClassicLinkVPCSecurityGroups = a}) . _Default . _Coerce;++-- | The ID of the RAM disk associated with the AMI.+clcRAMDiskId :: Lens' CreateLaunchConfiguration (Maybe Text)+clcRAMDiskId = lens _clcRAMDiskId (\ s a -> s{_clcRAMDiskId = a});++-- | The ID of the kernel associated with the AMI. clcKernelId :: Lens' CreateLaunchConfiguration (Maybe Text)-clcKernelId = lens _clcKernelId (\s a -> s { _clcKernelId = a })+clcKernelId = lens _clcKernelId (\ s a -> s{_clcKernelId = a}); --- | The name of the key pair. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html Amazon EC2 Key Pairs> in--- the /Amazon Elastic Compute Cloud User Guide/.-clcKeyName :: Lens' CreateLaunchConfiguration (Maybe Text)-clcKeyName = lens _clcKeyName (\s a -> s { _clcKeyName = a })+-- | The instance type of the EC2 instance. For information about available+-- instance types, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes Available Instance Types>+-- in the /Amazon Elastic Cloud Compute User Guide./+clcInstanceType :: Lens' CreateLaunchConfiguration (Maybe Text)+clcInstanceType = lens _clcInstanceType (\ s a -> s{_clcInstanceType = a}); --- | The name of the launch configuration. This name must be unique within the--- scope of your AWS account.-clcLaunchConfigurationName :: Lens' CreateLaunchConfiguration Text-clcLaunchConfigurationName =- lens _clcLaunchConfigurationName- (\s a -> s { _clcLaunchConfigurationName = a })+-- | Indicates whether the instance is optimized for Amazon EBS I\/O. By+-- default, the instance is not optimized for EBS I\/O. The optimization+-- provides dedicated throughput to Amazon EBS and an optimized+-- configuration stack to provide optimal I\/O performance. This+-- optimization is not available with all instance types. Additional usage+-- charges apply. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html Amazon EBS-Optimized Instances>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcEBSOptimized :: Lens' CreateLaunchConfiguration (Maybe Bool)+clcEBSOptimized = lens _clcEBSOptimized (\ s a -> s{_clcEBSOptimized = a}); --- | The tenancy of the instance. An instance with a tenancy of 'dedicated' runs on--- single-tenant hardware and can only be launched in a VPC.------ You must set the value of this parameter to 'dedicated' if want to launch--- Dedicated Instances in a shared tenancy VPC (VPC with instance placement--- tenancy attribute set to 'default').------ If you specify a value for this parameter, be sure to specify at least one--- VPC subnet using the /VPCZoneIdentifier/ parameter when you create your group.+-- | The user data to make available to the launched EC2 instances. For more+-- information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html Instance Metadata and User Data>+-- in the /Amazon Elastic Compute Cloud User Guide/. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon VPC> in the /Auto ScalingDeveloper Guide/.+-- At this time, launch configurations don\'t support compressed (zipped)+-- user data files.+clcUserData :: Lens' CreateLaunchConfiguration (Maybe Text)+clcUserData = lens _clcUserData (\ s a -> s{_clcUserData = a});++-- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances+-- to. This parameter is supported only if you are launching EC2-Classic+-- instances. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcClassicLinkVPCId :: Lens' CreateLaunchConfiguration (Maybe Text)+clcClassicLinkVPCId = lens _clcClassicLinkVPCId (\ s a -> s{_clcClassicLinkVPCId = a});++-- | The name or the Amazon Resource Name (ARN) of the instance profile+-- associated with the IAM role for the instance. ----- Valid values: 'default' | 'dedicated'-clcPlacementTenancy :: Lens' CreateLaunchConfiguration (Maybe Text)-clcPlacementTenancy =- lens _clcPlacementTenancy (\s a -> s { _clcPlacementTenancy = a })+-- EC2 instances launched with an IAM role will automatically have AWS+-- security credentials available. You can use IAM roles with Auto Scaling+-- to automatically enable applications running on your EC2 instances to+-- securely access other AWS resources. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-iam-role.html Launch Auto Scaling Instances with an IAM Role>+-- in the /Auto Scaling Developer Guide/.+clcIAMInstanceProfile :: Lens' CreateLaunchConfiguration (Maybe Text)+clcIAMInstanceProfile = lens _clcIAMInstanceProfile (\ s a -> s{_clcIAMInstanceProfile = a}); --- | The ID of the RAM disk associated with the Amazon EC2 AMI.-clcRamdiskId :: Lens' CreateLaunchConfiguration (Maybe Text)-clcRamdiskId = lens _clcRamdiskId (\s a -> s { _clcRamdiskId = a })+-- | The ID of the Amazon Machine Image (AMI) to use to launch your EC2+-- instances. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html Finding an AMI>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcImageId :: Lens' CreateLaunchConfiguration (Maybe Text)+clcImageId = lens _clcImageId (\ s a -> s{_clcImageId = a}); --- | One or more security groups with which to associate the instances.+-- | The tenancy of the instance. An instance with a tenancy of 'dedicated'+-- runs on single-tenant hardware and can only be launched into a VPC. ----- If your instances are launched in EC2-Classic, you can either specify--- security group names or the security group IDs. For more information about--- security groups for EC2-Classic, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html Amazon EC2 Security Groups> in the /AmazonElastic Compute Cloud User Guide/.+-- You must set the value of this parameter to 'dedicated' if want to+-- launch Dedicated Instances into a shared tenancy VPC (VPC with instance+-- placement tenancy attribute set to 'default'). ----- If your instances are launched in a VPC, specify security group IDs. For--- more information, see <http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html Security Groups for Your VPC> in the /Amazon VirtualPrivate Cloud User Guide/.-clcSecurityGroups :: Lens' CreateLaunchConfiguration [Text]-clcSecurityGroups =- lens _clcSecurityGroups (\s a -> s { _clcSecurityGroups = a })- . _List+-- If you specify a value for this parameter, be sure to specify at least+-- one subnet using the /VPCZoneIdentifier/ parameter when you create your+-- group.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon Virtual Private Cloud>+-- in the /Auto Scaling Developer Guide/.+--+-- Valid values: 'default' | 'dedicated'+clcPlacementTenancy :: Lens' CreateLaunchConfiguration (Maybe Text)+clcPlacementTenancy = lens _clcPlacementTenancy (\ s a -> s{_clcPlacementTenancy = a}); --- | The maximum hourly price to be paid for any Spot Instance launched to fulfill--- the request. Spot Instances are launched when the price you specify exceeds--- the current Spot market price. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US-SpotInstances.html Launch SpotInstances in Your Auto Scaling Group> in the /Auto Scaling Developer Guide/.-clcSpotPrice :: Lens' CreateLaunchConfiguration (Maybe Text)-clcSpotPrice = lens _clcSpotPrice (\s a -> s { _clcSpotPrice = a })+-- | One or more mappings that specify how block devices are exposed to the+-- instance. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html Block Device Mapping>+-- in the /Amazon Elastic Compute Cloud User Guide/.+clcBlockDeviceMappings :: Lens' CreateLaunchConfiguration [BlockDeviceMapping]+clcBlockDeviceMappings = lens _clcBlockDeviceMappings (\ s a -> s{_clcBlockDeviceMappings = a}) . _Default . _Coerce; --- | The user data to make available to the launched EC2 instances. For more--- information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html Instance Metadata and User Data> in the /Amazon ElasticCompute Cloud User Guide/.------ At this time, launch configurations don't support compressed (zipped) user--- data files.-clcUserData :: Lens' CreateLaunchConfiguration (Maybe Text)-clcUserData = lens _clcUserData (\s a -> s { _clcUserData = a })+-- | The name of the launch configuration. This name must be unique within+-- the scope of your AWS account.+clcLaunchConfigurationName :: Lens' CreateLaunchConfiguration Text+clcLaunchConfigurationName = lens _clcLaunchConfigurationName (\ s a -> s{_clcLaunchConfigurationName = a}); -data CreateLaunchConfigurationResponse = CreateLaunchConfigurationResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest CreateLaunchConfiguration where+ type Sv CreateLaunchConfiguration = AutoScaling+ type Rs CreateLaunchConfiguration =+ CreateLaunchConfigurationResponse+ request = postQuery+ response+ = receiveNull CreateLaunchConfigurationResponse' --- | 'CreateLaunchConfigurationResponse' constructor.-createLaunchConfigurationResponse :: CreateLaunchConfigurationResponse-createLaunchConfigurationResponse = CreateLaunchConfigurationResponse+instance ToHeaders CreateLaunchConfiguration where+ toHeaders = const mempty instance ToPath CreateLaunchConfiguration where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateLaunchConfiguration where- toQuery CreateLaunchConfiguration{..} = mconcat- [ "AssociatePublicIpAddress" =? _clcAssociatePublicIpAddress- , "BlockDeviceMappings" =? _clcBlockDeviceMappings- , "ClassicLinkVPCId" =? _clcClassicLinkVPCId- , "ClassicLinkVPCSecurityGroups" =? _clcClassicLinkVPCSecurityGroups- , "EbsOptimized" =? _clcEbsOptimized- , "IamInstanceProfile" =? _clcIamInstanceProfile- , "ImageId" =? _clcImageId- , "InstanceId" =? _clcInstanceId- , "InstanceMonitoring" =? _clcInstanceMonitoring- , "InstanceType" =? _clcInstanceType- , "KernelId" =? _clcKernelId- , "KeyName" =? _clcKeyName- , "LaunchConfigurationName" =? _clcLaunchConfigurationName- , "PlacementTenancy" =? _clcPlacementTenancy- , "RamdiskId" =? _clcRamdiskId- , "SecurityGroups" =? _clcSecurityGroups- , "SpotPrice" =? _clcSpotPrice- , "UserData" =? _clcUserData- ]--instance ToHeaders CreateLaunchConfiguration+ toQuery CreateLaunchConfiguration'{..}+ = mconcat+ ["Action" =:+ ("CreateLaunchConfiguration" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceId" =: _clcInstanceId,+ "SecurityGroups" =:+ toQuery+ (toQueryList "member" <$> _clcSecurityGroups),+ "AssociatePublicIpAddress" =:+ _clcAssociatePublicIPAddress,+ "InstanceMonitoring" =: _clcInstanceMonitoring,+ "SpotPrice" =: _clcSpotPrice,+ "KeyName" =: _clcKeyName,+ "ClassicLinkVPCSecurityGroups" =:+ toQuery+ (toQueryList "member" <$>+ _clcClassicLinkVPCSecurityGroups),+ "RamdiskId" =: _clcRAMDiskId,+ "KernelId" =: _clcKernelId,+ "InstanceType" =: _clcInstanceType,+ "EbsOptimized" =: _clcEBSOptimized,+ "UserData" =: _clcUserData,+ "ClassicLinkVPCId" =: _clcClassicLinkVPCId,+ "IamInstanceProfile" =: _clcIAMInstanceProfile,+ "ImageId" =: _clcImageId,+ "PlacementTenancy" =: _clcPlacementTenancy,+ "BlockDeviceMappings" =:+ toQuery+ (toQueryList "member" <$> _clcBlockDeviceMappings),+ "LaunchConfigurationName" =:+ _clcLaunchConfigurationName] -instance AWSRequest CreateLaunchConfiguration where- type Sv CreateLaunchConfiguration = AutoScaling- type Rs CreateLaunchConfiguration = CreateLaunchConfigurationResponse+-- | /See:/ 'createLaunchConfigurationResponse' smart constructor.+data CreateLaunchConfigurationResponse =+ CreateLaunchConfigurationResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "CreateLaunchConfiguration"- response = nullResponse CreateLaunchConfigurationResponse+-- | Creates a value of 'CreateLaunchConfigurationResponse' with the minimum fields required to make a request.+--+createLaunchConfigurationResponse+ :: CreateLaunchConfigurationResponse+createLaunchConfigurationResponse = CreateLaunchConfigurationResponse'
gen/Network/AWS/AutoScaling/CreateOrUpdateTags.hs view
@@ -1,115 +1,108 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.CreateOrUpdateTags--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates or updates tags for the specified Auto Scaling group.+-- Creates or updates tags for the specified Auto Scaling group. ----- A tag's definition is composed of a resource ID, resource type, key and--- value, and the propagate flag. Value and the propagate flag are optional--- parameters. See the Request Parameters for more information. For more--- information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASTagging.html Add, Modify, or Remove Auto Scaling Group Tags> in the /AutoScaling Developer Guide/.+-- A tag is defined by its resource ID, resource type, key, value, and+-- propagate flag. The value and the propagate flag are optional+-- parameters. The only supported resource type is 'auto-scaling-group',+-- and the resource ID must be the name of the group. The+-- 'PropagateAtLaunch' flag determines whether the tag is added to+-- instances launched in the group. Valid values are 'true' or 'false'. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateOrUpdateTags.html>+-- When you specify a tag with a key that already exists, the operation+-- overwrites the previous tag definition, and you do not get an error+-- message.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASTagging.html Tagging Auto Scaling Groups and Instances>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateOrUpdateTags.html AWS API Reference> for CreateOrUpdateTags. module Network.AWS.AutoScaling.CreateOrUpdateTags (- -- * Request- CreateOrUpdateTags- -- ** Request constructor- , createOrUpdateTags- -- ** Request lenses+ -- * Creating a Request+ createOrUpdateTags+ , CreateOrUpdateTags+ -- * Request Lenses , coutTags - -- * Response- , CreateOrUpdateTagsResponse- -- ** Response constructor+ -- * Destructuring the Response , createOrUpdateTagsResponse+ , CreateOrUpdateTagsResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--newtype CreateOrUpdateTags = CreateOrUpdateTags- { _coutTags :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList CreateOrUpdateTags where- type Item CreateOrUpdateTags = Tag+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response - fromList = CreateOrUpdateTags . GHC.Exts.fromList- toList = GHC.Exts.toList . _coutTags+-- | /See:/ 'createOrUpdateTags' smart constructor.+newtype CreateOrUpdateTags = CreateOrUpdateTags'+ { _coutTags :: [Tag]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'CreateOrUpdateTags' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'CreateOrUpdateTags' with the minimum fields required to make a request. ----- * 'coutTags' @::@ ['Tag']+-- Use one of the following lenses to modify other fields as desired: ---createOrUpdateTags :: CreateOrUpdateTags-createOrUpdateTags = CreateOrUpdateTags+-- * 'coutTags'+createOrUpdateTags+ :: CreateOrUpdateTags+createOrUpdateTags =+ CreateOrUpdateTags' { _coutTags = mempty } --- | The tag to be created or updated. Each tag should be defined by its resource--- type, resource ID, key, value, and a propagate flag. The resource type and--- resource ID identify the type and name of resource for which the tag is--- created. Currently, 'auto-scaling-group' is the only supported resource type.--- The valid value for the resource ID is /groupname/.------ The 'PropagateAtLaunch' flag defines whether the new tag will be applied to--- instances launched by the group. Valid values are 'true' or 'false'. However,--- instances that are already running will not get the new or updated tag.--- Likewise, when you modify a tag, the updated version will be applied only to--- new instances launched by the group after the change. Running instances that--- had the previous version of the tag will continue to have the older tag.------ When you create a tag and a tag of the same name already exists, the--- operation overwrites the previous tag definition, but you will not get an--- error message.+-- | One or more tags. coutTags :: Lens' CreateOrUpdateTags [Tag]-coutTags = lens _coutTags (\s a -> s { _coutTags = a }) . _List+coutTags = lens _coutTags (\ s a -> s{_coutTags = a}) . _Coerce; -data CreateOrUpdateTagsResponse = CreateOrUpdateTagsResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest CreateOrUpdateTags where+ type Sv CreateOrUpdateTags = AutoScaling+ type Rs CreateOrUpdateTags =+ CreateOrUpdateTagsResponse+ request = postQuery+ response = receiveNull CreateOrUpdateTagsResponse' --- | 'CreateOrUpdateTagsResponse' constructor.-createOrUpdateTagsResponse :: CreateOrUpdateTagsResponse-createOrUpdateTagsResponse = CreateOrUpdateTagsResponse+instance ToHeaders CreateOrUpdateTags where+ toHeaders = const mempty instance ToPath CreateOrUpdateTags where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateOrUpdateTags where- toQuery CreateOrUpdateTags{..} = mconcat- [ "Tags" =? _coutTags- ]--instance ToHeaders CreateOrUpdateTags+ toQuery CreateOrUpdateTags'{..}+ = mconcat+ ["Action" =: ("CreateOrUpdateTags" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Tags" =: toQueryList "member" _coutTags] -instance AWSRequest CreateOrUpdateTags where- type Sv CreateOrUpdateTags = AutoScaling- type Rs CreateOrUpdateTags = CreateOrUpdateTagsResponse+-- | /See:/ 'createOrUpdateTagsResponse' smart constructor.+data CreateOrUpdateTagsResponse =+ CreateOrUpdateTagsResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "CreateOrUpdateTags"- response = nullResponse CreateOrUpdateTagsResponse+-- | Creates a value of 'CreateOrUpdateTagsResponse' with the minimum fields required to make a request.+--+createOrUpdateTagsResponse+ :: CreateOrUpdateTagsResponse+createOrUpdateTagsResponse = CreateOrUpdateTagsResponse'
gen/Network/AWS/AutoScaling/DeleteAutoScalingGroup.hs view
@@ -1,108 +1,115 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteAutoScalingGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified Auto Scaling group.+-- Deletes the specified Auto Scaling group. -- -- The group must have no instances and no scaling activities in progress. ----- To remove all instances before calling 'DeleteAutoScalingGroup', you can call 'UpdateAutoScalingGroup' to set the minimum and maximum size of the AutoScalingGroup to zero.+-- To remove all instances before calling 'DeleteAutoScalingGroup', call+-- UpdateAutoScalingGroup to set the minimum and maximum size of the Auto+-- Scaling group to zero. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteAutoScalingGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteAutoScalingGroup.html AWS API Reference> for DeleteAutoScalingGroup. module Network.AWS.AutoScaling.DeleteAutoScalingGroup (- -- * Request- DeleteAutoScalingGroup- -- ** Request constructor- , deleteAutoScalingGroup- -- ** Request lenses- , dasgAutoScalingGroupName+ -- * Creating a Request+ deleteAutoScalingGroup+ , DeleteAutoScalingGroup+ -- * Request Lenses , dasgForceDelete+ , dasgAutoScalingGroupName - -- * Response- , DeleteAutoScalingGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteAutoScalingGroupResponse+ , DeleteAutoScalingGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DeleteAutoScalingGroup = DeleteAutoScalingGroup- { _dasgAutoScalingGroupName :: Text- , _dasgForceDelete :: Maybe Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteAutoScalingGroup' smart constructor.+data DeleteAutoScalingGroup = DeleteAutoScalingGroup'+ { _dasgForceDelete :: !(Maybe Bool)+ , _dasgAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteAutoScalingGroup' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteAutoScalingGroup' with the minimum fields required to make a request. ----- * 'dasgAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasgForceDelete' @::@ 'Maybe' 'Bool'+-- * 'dasgForceDelete' ---deleteAutoScalingGroup :: Text -- ^ 'dasgAutoScalingGroupName'- -> DeleteAutoScalingGroup-deleteAutoScalingGroup p1 = DeleteAutoScalingGroup- { _dasgAutoScalingGroupName = p1- , _dasgForceDelete = Nothing+-- * 'dasgAutoScalingGroupName'+deleteAutoScalingGroup+ :: Text -- ^ 'dasgAutoScalingGroupName'+ -> DeleteAutoScalingGroup+deleteAutoScalingGroup pAutoScalingGroupName_ =+ DeleteAutoScalingGroup'+ { _dasgForceDelete = Nothing+ , _dasgAutoScalingGroupName = pAutoScalingGroupName_ } +-- | Specifies that the group will be deleted along with all instances+-- associated with the group, without waiting for all instances to be+-- terminated. This parameter also deletes any lifecycle actions associated+-- with the group.+dasgForceDelete :: Lens' DeleteAutoScalingGroup (Maybe Bool)+dasgForceDelete = lens _dasgForceDelete (\ s a -> s{_dasgForceDelete = a});+ -- | The name of the group to delete. dasgAutoScalingGroupName :: Lens' DeleteAutoScalingGroup Text-dasgAutoScalingGroupName =- lens _dasgAutoScalingGroupName- (\s a -> s { _dasgAutoScalingGroupName = a })---- | Specifies that the group will be deleted along with all instances associated--- with the group, without waiting for all instances to be terminated. This--- parameter also deletes any lifecycle actions associated with the group.-dasgForceDelete :: Lens' DeleteAutoScalingGroup (Maybe Bool)-dasgForceDelete = lens _dasgForceDelete (\s a -> s { _dasgForceDelete = a })+dasgAutoScalingGroupName = lens _dasgAutoScalingGroupName (\ s a -> s{_dasgAutoScalingGroupName = a}); -data DeleteAutoScalingGroupResponse = DeleteAutoScalingGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteAutoScalingGroup where+ type Sv DeleteAutoScalingGroup = AutoScaling+ type Rs DeleteAutoScalingGroup =+ DeleteAutoScalingGroupResponse+ request = postQuery+ response+ = receiveNull DeleteAutoScalingGroupResponse' --- | 'DeleteAutoScalingGroupResponse' constructor.-deleteAutoScalingGroupResponse :: DeleteAutoScalingGroupResponse-deleteAutoScalingGroupResponse = DeleteAutoScalingGroupResponse+instance ToHeaders DeleteAutoScalingGroup where+ toHeaders = const mempty instance ToPath DeleteAutoScalingGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteAutoScalingGroup where- toQuery DeleteAutoScalingGroup{..} = mconcat- [ "AutoScalingGroupName" =? _dasgAutoScalingGroupName- , "ForceDelete" =? _dasgForceDelete- ]--instance ToHeaders DeleteAutoScalingGroup+ toQuery DeleteAutoScalingGroup'{..}+ = mconcat+ ["Action" =:+ ("DeleteAutoScalingGroup" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "ForceDelete" =: _dasgForceDelete,+ "AutoScalingGroupName" =: _dasgAutoScalingGroupName] -instance AWSRequest DeleteAutoScalingGroup where- type Sv DeleteAutoScalingGroup = AutoScaling- type Rs DeleteAutoScalingGroup = DeleteAutoScalingGroupResponse+-- | /See:/ 'deleteAutoScalingGroupResponse' smart constructor.+data DeleteAutoScalingGroupResponse =+ DeleteAutoScalingGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteAutoScalingGroup"- response = nullResponse DeleteAutoScalingGroupResponse+-- | Creates a value of 'DeleteAutoScalingGroupResponse' with the minimum fields required to make a request.+--+deleteAutoScalingGroupResponse+ :: DeleteAutoScalingGroupResponse+deleteAutoScalingGroupResponse = DeleteAutoScalingGroupResponse'
gen/Network/AWS/AutoScaling/DeleteLaunchConfiguration.hs view
@@ -1,95 +1,101 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteLaunchConfiguration--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified launch configuration.+-- Deletes the specified launch configuration. ----- The launch configuration must not be attached to an Auto Scaling group. When--- this call completes, the launch configuration is no longer available for use.+-- The launch configuration must not be attached to an Auto Scaling group.+-- When this call completes, the launch configuration is no longer+-- available for use. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteLaunchConfiguration.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteLaunchConfiguration.html AWS API Reference> for DeleteLaunchConfiguration. module Network.AWS.AutoScaling.DeleteLaunchConfiguration (- -- * Request- DeleteLaunchConfiguration- -- ** Request constructor- , deleteLaunchConfiguration- -- ** Request lenses+ -- * Creating a Request+ deleteLaunchConfiguration+ , DeleteLaunchConfiguration+ -- * Request Lenses , dlcLaunchConfigurationName - -- * Response- , DeleteLaunchConfigurationResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteLaunchConfigurationResponse+ , DeleteLaunchConfigurationResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -newtype DeleteLaunchConfiguration = DeleteLaunchConfiguration+-- | /See:/ 'deleteLaunchConfiguration' smart constructor.+newtype DeleteLaunchConfiguration = DeleteLaunchConfiguration' { _dlcLaunchConfigurationName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteLaunchConfiguration' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteLaunchConfiguration' with the minimum fields required to make a request. ----- * 'dlcLaunchConfigurationName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteLaunchConfiguration :: Text -- ^ 'dlcLaunchConfigurationName'- -> DeleteLaunchConfiguration-deleteLaunchConfiguration p1 = DeleteLaunchConfiguration- { _dlcLaunchConfigurationName = p1+-- * 'dlcLaunchConfigurationName'+deleteLaunchConfiguration+ :: Text -- ^ 'dlcLaunchConfigurationName'+ -> DeleteLaunchConfiguration+deleteLaunchConfiguration pLaunchConfigurationName_ =+ DeleteLaunchConfiguration'+ { _dlcLaunchConfigurationName = pLaunchConfigurationName_ } -- | The name of the launch configuration. dlcLaunchConfigurationName :: Lens' DeleteLaunchConfiguration Text-dlcLaunchConfigurationName =- lens _dlcLaunchConfigurationName- (\s a -> s { _dlcLaunchConfigurationName = a })+dlcLaunchConfigurationName = lens _dlcLaunchConfigurationName (\ s a -> s{_dlcLaunchConfigurationName = a}); -data DeleteLaunchConfigurationResponse = DeleteLaunchConfigurationResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteLaunchConfiguration where+ type Sv DeleteLaunchConfiguration = AutoScaling+ type Rs DeleteLaunchConfiguration =+ DeleteLaunchConfigurationResponse+ request = postQuery+ response+ = receiveNull DeleteLaunchConfigurationResponse' --- | 'DeleteLaunchConfigurationResponse' constructor.-deleteLaunchConfigurationResponse :: DeleteLaunchConfigurationResponse-deleteLaunchConfigurationResponse = DeleteLaunchConfigurationResponse+instance ToHeaders DeleteLaunchConfiguration where+ toHeaders = const mempty instance ToPath DeleteLaunchConfiguration where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteLaunchConfiguration where- toQuery DeleteLaunchConfiguration{..} = mconcat- [ "LaunchConfigurationName" =? _dlcLaunchConfigurationName- ]--instance ToHeaders DeleteLaunchConfiguration+ toQuery DeleteLaunchConfiguration'{..}+ = mconcat+ ["Action" =:+ ("DeleteLaunchConfiguration" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LaunchConfigurationName" =:+ _dlcLaunchConfigurationName] -instance AWSRequest DeleteLaunchConfiguration where- type Sv DeleteLaunchConfiguration = AutoScaling- type Rs DeleteLaunchConfiguration = DeleteLaunchConfigurationResponse+-- | /See:/ 'deleteLaunchConfigurationResponse' smart constructor.+data DeleteLaunchConfigurationResponse =+ DeleteLaunchConfigurationResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteLaunchConfiguration"- response = nullResponse DeleteLaunchConfigurationResponse+-- | Creates a value of 'DeleteLaunchConfigurationResponse' with the minimum fields required to make a request.+--+deleteLaunchConfigurationResponse+ :: DeleteLaunchConfigurationResponse+deleteLaunchConfigurationResponse = DeleteLaunchConfigurationResponse'
gen/Network/AWS/AutoScaling/DeleteLifecycleHook.hs view
@@ -1,106 +1,125 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteLifecycleHook--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified lifecycle hook.+-- Deletes the specified lifecycle hook. ----- If there are any outstanding lifecycle actions, they are completed first ('ABANDON' for launching instances, 'CONTINUE' for terminating instances).+-- If there are any outstanding lifecycle actions, they are completed first+-- ('ABANDON' for launching instances, 'CONTINUE' for terminating+-- instances). ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteLifecycleHook.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteLifecycleHook.html AWS API Reference> for DeleteLifecycleHook. module Network.AWS.AutoScaling.DeleteLifecycleHook (- -- * Request- DeleteLifecycleHook- -- ** Request constructor- , deleteLifecycleHook- -- ** Request lenses- , dlh1AutoScalingGroupName- , dlh1LifecycleHookName+ -- * Creating a Request+ deleteLifecycleHook+ , DeleteLifecycleHook+ -- * Request Lenses+ , delLifecycleHookName+ , delAutoScalingGroupName - -- * Response- , DeleteLifecycleHookResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteLifecycleHookResponse+ , DeleteLifecycleHookResponse+ -- * Response Lenses+ , drsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DeleteLifecycleHook = DeleteLifecycleHook- { _dlh1AutoScalingGroupName :: Text- , _dlh1LifecycleHookName :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteLifecycleHook' smart constructor.+data DeleteLifecycleHook = DeleteLifecycleHook'+ { _delLifecycleHookName :: !Text+ , _delAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteLifecycleHook' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteLifecycleHook' with the minimum fields required to make a request. ----- * 'dlh1AutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dlh1LifecycleHookName' @::@ 'Text'+-- * 'delLifecycleHookName' ---deleteLifecycleHook :: Text -- ^ 'dlh1LifecycleHookName'- -> Text -- ^ 'dlh1AutoScalingGroupName'- -> DeleteLifecycleHook-deleteLifecycleHook p1 p2 = DeleteLifecycleHook- { _dlh1LifecycleHookName = p1- , _dlh1AutoScalingGroupName = p2+-- * 'delAutoScalingGroupName'+deleteLifecycleHook+ :: Text -- ^ 'delLifecycleHookName'+ -> Text -- ^ 'delAutoScalingGroupName'+ -> DeleteLifecycleHook+deleteLifecycleHook pLifecycleHookName_ pAutoScalingGroupName_ =+ DeleteLifecycleHook'+ { _delLifecycleHookName = pLifecycleHookName_+ , _delAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name of the Auto Scaling group for the lifecycle hook.-dlh1AutoScalingGroupName :: Lens' DeleteLifecycleHook Text-dlh1AutoScalingGroupName =- lens _dlh1AutoScalingGroupName- (\s a -> s { _dlh1AutoScalingGroupName = a })- -- | The name of the lifecycle hook.-dlh1LifecycleHookName :: Lens' DeleteLifecycleHook Text-dlh1LifecycleHookName =- lens _dlh1LifecycleHookName (\s a -> s { _dlh1LifecycleHookName = a })+delLifecycleHookName :: Lens' DeleteLifecycleHook Text+delLifecycleHookName = lens _delLifecycleHookName (\ s a -> s{_delLifecycleHookName = a}); -data DeleteLifecycleHookResponse = DeleteLifecycleHookResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name of the Auto Scaling group for the lifecycle hook.+delAutoScalingGroupName :: Lens' DeleteLifecycleHook Text+delAutoScalingGroupName = lens _delAutoScalingGroupName (\ s a -> s{_delAutoScalingGroupName = a}); --- | 'DeleteLifecycleHookResponse' constructor.-deleteLifecycleHookResponse :: DeleteLifecycleHookResponse-deleteLifecycleHookResponse = DeleteLifecycleHookResponse+instance AWSRequest DeleteLifecycleHook where+ type Sv DeleteLifecycleHook = AutoScaling+ type Rs DeleteLifecycleHook =+ DeleteLifecycleHookResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteLifecycleHookResult"+ (\ s h x ->+ DeleteLifecycleHookResponse' <$> (pure (fromEnum s))) +instance ToHeaders DeleteLifecycleHook where+ toHeaders = const mempty+ instance ToPath DeleteLifecycleHook where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteLifecycleHook where- toQuery DeleteLifecycleHook{..} = mconcat- [ "AutoScalingGroupName" =? _dlh1AutoScalingGroupName- , "LifecycleHookName" =? _dlh1LifecycleHookName- ]+ toQuery DeleteLifecycleHook'{..}+ = mconcat+ ["Action" =: ("DeleteLifecycleHook" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LifecycleHookName" =: _delLifecycleHookName,+ "AutoScalingGroupName" =: _delAutoScalingGroupName] -instance ToHeaders DeleteLifecycleHook+-- | /See:/ 'deleteLifecycleHookResponse' smart constructor.+newtype DeleteLifecycleHookResponse = DeleteLifecycleHookResponse'+ { _drsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteLifecycleHook where- type Sv DeleteLifecycleHook = AutoScaling- type Rs DeleteLifecycleHook = DeleteLifecycleHookResponse+-- | Creates a value of 'DeleteLifecycleHookResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drsStatus'+deleteLifecycleHookResponse+ :: Int -- ^ 'drsStatus'+ -> DeleteLifecycleHookResponse+deleteLifecycleHookResponse pStatus_ =+ DeleteLifecycleHookResponse'+ { _drsStatus = pStatus_+ } - request = post "DeleteLifecycleHook"- response = nullResponse DeleteLifecycleHookResponse+-- | The response status code.+drsStatus :: Lens' DeleteLifecycleHookResponse Int+drsStatus = lens _drsStatus (\ s a -> s{_drsStatus = a});
gen/Network/AWS/AutoScaling/DeleteNotificationConfiguration.hs view
@@ -1,103 +1,113 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteNotificationConfiguration--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified notification.+-- Deletes the specified notification. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteNotificationConfiguration.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteNotificationConfiguration.html AWS API Reference> for DeleteNotificationConfiguration. module Network.AWS.AutoScaling.DeleteNotificationConfiguration (- -- * Request- DeleteNotificationConfiguration- -- ** Request constructor- , deleteNotificationConfiguration- -- ** Request lenses+ -- * Creating a Request+ deleteNotificationConfiguration+ , DeleteNotificationConfiguration+ -- * Request Lenses , dncAutoScalingGroupName , dncTopicARN - -- * Response- , DeleteNotificationConfigurationResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteNotificationConfigurationResponse+ , DeleteNotificationConfigurationResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DeleteNotificationConfiguration = DeleteNotificationConfiguration- { _dncAutoScalingGroupName :: Text- , _dncTopicARN :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteNotificationConfiguration' smart constructor.+data DeleteNotificationConfiguration = DeleteNotificationConfiguration'+ { _dncAutoScalingGroupName :: !Text+ , _dncTopicARN :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteNotificationConfiguration' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteNotificationConfiguration' with the minimum fields required to make a request. ----- * 'dncAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dncTopicARN' @::@ 'Text'+-- * 'dncAutoScalingGroupName' ---deleteNotificationConfiguration :: Text -- ^ 'dncAutoScalingGroupName'- -> Text -- ^ 'dncTopicARN'- -> DeleteNotificationConfiguration-deleteNotificationConfiguration p1 p2 = DeleteNotificationConfiguration- { _dncAutoScalingGroupName = p1- , _dncTopicARN = p2+-- * 'dncTopicARN'+deleteNotificationConfiguration+ :: Text -- ^ 'dncAutoScalingGroupName'+ -> Text -- ^ 'dncTopicARN'+ -> DeleteNotificationConfiguration+deleteNotificationConfiguration pAutoScalingGroupName_ pTopicARN_ =+ DeleteNotificationConfiguration'+ { _dncAutoScalingGroupName = pAutoScalingGroupName_+ , _dncTopicARN = pTopicARN_ } -- | The name of the Auto Scaling group. dncAutoScalingGroupName :: Lens' DeleteNotificationConfiguration Text-dncAutoScalingGroupName =- lens _dncAutoScalingGroupName (\s a -> s { _dncAutoScalingGroupName = a })+dncAutoScalingGroupName = lens _dncAutoScalingGroupName (\ s a -> s{_dncAutoScalingGroupName = a}); -- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service -- (SNS) topic. dncTopicARN :: Lens' DeleteNotificationConfiguration Text-dncTopicARN = lens _dncTopicARN (\s a -> s { _dncTopicARN = a })+dncTopicARN = lens _dncTopicARN (\ s a -> s{_dncTopicARN = a}); -data DeleteNotificationConfigurationResponse = DeleteNotificationConfigurationResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteNotificationConfiguration+ where+ type Sv DeleteNotificationConfiguration = AutoScaling+ type Rs DeleteNotificationConfiguration =+ DeleteNotificationConfigurationResponse+ request = postQuery+ response+ = receiveNull+ DeleteNotificationConfigurationResponse' --- | 'DeleteNotificationConfigurationResponse' constructor.-deleteNotificationConfigurationResponse :: DeleteNotificationConfigurationResponse-deleteNotificationConfigurationResponse = DeleteNotificationConfigurationResponse+instance ToHeaders DeleteNotificationConfiguration+ where+ toHeaders = const mempty instance ToPath DeleteNotificationConfiguration where- toPath = const "/"--instance ToQuery DeleteNotificationConfiguration where- toQuery DeleteNotificationConfiguration{..} = mconcat- [ "AutoScalingGroupName" =? _dncAutoScalingGroupName- , "TopicARN" =? _dncTopicARN- ]+ toPath = const "/" -instance ToHeaders DeleteNotificationConfiguration+instance ToQuery DeleteNotificationConfiguration+ where+ toQuery DeleteNotificationConfiguration'{..}+ = mconcat+ ["Action" =:+ ("DeleteNotificationConfiguration" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _dncAutoScalingGroupName,+ "TopicARN" =: _dncTopicARN] -instance AWSRequest DeleteNotificationConfiguration where- type Sv DeleteNotificationConfiguration = AutoScaling- type Rs DeleteNotificationConfiguration = DeleteNotificationConfigurationResponse+-- | /See:/ 'deleteNotificationConfigurationResponse' smart constructor.+data DeleteNotificationConfigurationResponse =+ DeleteNotificationConfigurationResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteNotificationConfiguration"- response = nullResponse DeleteNotificationConfigurationResponse+-- | Creates a value of 'DeleteNotificationConfigurationResponse' with the minimum fields required to make a request.+--+deleteNotificationConfigurationResponse+ :: DeleteNotificationConfigurationResponse+deleteNotificationConfigurationResponse =+ DeleteNotificationConfigurationResponse'
gen/Network/AWS/AutoScaling/DeletePolicy.hs view
@@ -1,101 +1,105 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeletePolicy--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified Auto Scaling policy.+-- Deletes the specified Auto Scaling policy. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeletePolicy.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeletePolicy.html AWS API Reference> for DeletePolicy. module Network.AWS.AutoScaling.DeletePolicy (- -- * Request- DeletePolicy- -- ** Request constructor- , deletePolicy- -- ** Request lenses+ -- * Creating a Request+ deletePolicy+ , DeletePolicy+ -- * Request Lenses , dpAutoScalingGroupName , dpPolicyName - -- * Response- , DeletePolicyResponse- -- ** Response constructor+ -- * Destructuring the Response , deletePolicyResponse+ , DeletePolicyResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--data DeletePolicy = DeletePolicy- { _dpAutoScalingGroupName :: Maybe Text- , _dpPolicyName :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeletePolicy' constructor.+-- | ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deletePolicy' smart constructor.+data DeletePolicy = DeletePolicy'+ { _dpAutoScalingGroupName :: !(Maybe Text)+ , _dpPolicyName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeletePolicy' with the minimum fields required to make a request. ----- * 'dpAutoScalingGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dpPolicyName' @::@ 'Text'+-- * 'dpAutoScalingGroupName' ---deletePolicy :: Text -- ^ 'dpPolicyName'- -> DeletePolicy-deletePolicy p1 = DeletePolicy- { _dpPolicyName = p1- , _dpAutoScalingGroupName = Nothing+-- * 'dpPolicyName'+deletePolicy+ :: Text -- ^ 'dpPolicyName'+ -> DeletePolicy+deletePolicy pPolicyName_ =+ DeletePolicy'+ { _dpAutoScalingGroupName = Nothing+ , _dpPolicyName = pPolicyName_ } -- | The name of the Auto Scaling group. dpAutoScalingGroupName :: Lens' DeletePolicy (Maybe Text)-dpAutoScalingGroupName =- lens _dpAutoScalingGroupName (\s a -> s { _dpAutoScalingGroupName = a })+dpAutoScalingGroupName = lens _dpAutoScalingGroupName (\ s a -> s{_dpAutoScalingGroupName = a}); -- | The name or Amazon Resource Name (ARN) of the policy. dpPolicyName :: Lens' DeletePolicy Text-dpPolicyName = lens _dpPolicyName (\s a -> s { _dpPolicyName = a })+dpPolicyName = lens _dpPolicyName (\ s a -> s{_dpPolicyName = a}); -data DeletePolicyResponse = DeletePolicyResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeletePolicy where+ type Sv DeletePolicy = AutoScaling+ type Rs DeletePolicy = DeletePolicyResponse+ request = postQuery+ response = receiveNull DeletePolicyResponse' --- | 'DeletePolicyResponse' constructor.-deletePolicyResponse :: DeletePolicyResponse-deletePolicyResponse = DeletePolicyResponse+instance ToHeaders DeletePolicy where+ toHeaders = const mempty instance ToPath DeletePolicy where- toPath = const "/"+ toPath = const "/" instance ToQuery DeletePolicy where- toQuery DeletePolicy{..} = mconcat- [ "AutoScalingGroupName" =? _dpAutoScalingGroupName- , "PolicyName" =? _dpPolicyName- ]--instance ToHeaders DeletePolicy+ toQuery DeletePolicy'{..}+ = mconcat+ ["Action" =: ("DeletePolicy" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _dpAutoScalingGroupName,+ "PolicyName" =: _dpPolicyName] -instance AWSRequest DeletePolicy where- type Sv DeletePolicy = AutoScaling- type Rs DeletePolicy = DeletePolicyResponse+-- | /See:/ 'deletePolicyResponse' smart constructor.+data DeletePolicyResponse =+ DeletePolicyResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeletePolicy"- response = nullResponse DeletePolicyResponse+-- | Creates a value of 'DeletePolicyResponse' with the minimum fields required to make a request.+--+deletePolicyResponse+ :: DeletePolicyResponse+deletePolicyResponse = DeletePolicyResponse'
gen/Network/AWS/AutoScaling/DeleteScheduledAction.hs view
@@ -1,102 +1,104 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteScheduledAction--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified scheduled action.+-- Deletes the specified scheduled action. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteScheduledAction.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteScheduledAction.html AWS API Reference> for DeleteScheduledAction. module Network.AWS.AutoScaling.DeleteScheduledAction (- -- * Request- DeleteScheduledAction- -- ** Request constructor- , deleteScheduledAction- -- ** Request lenses+ -- * Creating a Request+ deleteScheduledAction+ , DeleteScheduledAction+ -- * Request Lenses , dsaAutoScalingGroupName , dsaScheduledActionName - -- * Response- , DeleteScheduledActionResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteScheduledActionResponse+ , DeleteScheduledActionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DeleteScheduledAction = DeleteScheduledAction- { _dsaAutoScalingGroupName :: Maybe Text- , _dsaScheduledActionName :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'deleteScheduledAction' smart constructor.+data DeleteScheduledAction = DeleteScheduledAction'+ { _dsaAutoScalingGroupName :: !(Maybe Text)+ , _dsaScheduledActionName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteScheduledAction' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteScheduledAction' with the minimum fields required to make a request. ----- * 'dsaAutoScalingGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsaScheduledActionName' @::@ 'Text'+-- * 'dsaAutoScalingGroupName' ---deleteScheduledAction :: Text -- ^ 'dsaScheduledActionName'- -> DeleteScheduledAction-deleteScheduledAction p1 = DeleteScheduledAction- { _dsaScheduledActionName = p1- , _dsaAutoScalingGroupName = Nothing+-- * 'dsaScheduledActionName'+deleteScheduledAction+ :: Text -- ^ 'dsaScheduledActionName'+ -> DeleteScheduledAction+deleteScheduledAction pScheduledActionName_ =+ DeleteScheduledAction'+ { _dsaAutoScalingGroupName = Nothing+ , _dsaScheduledActionName = pScheduledActionName_ } -- | The name of the Auto Scaling group. dsaAutoScalingGroupName :: Lens' DeleteScheduledAction (Maybe Text)-dsaAutoScalingGroupName =- lens _dsaAutoScalingGroupName (\s a -> s { _dsaAutoScalingGroupName = a })+dsaAutoScalingGroupName = lens _dsaAutoScalingGroupName (\ s a -> s{_dsaAutoScalingGroupName = a}); -- | The name of the action to delete. dsaScheduledActionName :: Lens' DeleteScheduledAction Text-dsaScheduledActionName =- lens _dsaScheduledActionName (\s a -> s { _dsaScheduledActionName = a })+dsaScheduledActionName = lens _dsaScheduledActionName (\ s a -> s{_dsaScheduledActionName = a}); -data DeleteScheduledActionResponse = DeleteScheduledActionResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteScheduledAction where+ type Sv DeleteScheduledAction = AutoScaling+ type Rs DeleteScheduledAction =+ DeleteScheduledActionResponse+ request = postQuery+ response = receiveNull DeleteScheduledActionResponse' --- | 'DeleteScheduledActionResponse' constructor.-deleteScheduledActionResponse :: DeleteScheduledActionResponse-deleteScheduledActionResponse = DeleteScheduledActionResponse+instance ToHeaders DeleteScheduledAction where+ toHeaders = const mempty instance ToPath DeleteScheduledAction where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteScheduledAction where- toQuery DeleteScheduledAction{..} = mconcat- [ "AutoScalingGroupName" =? _dsaAutoScalingGroupName- , "ScheduledActionName" =? _dsaScheduledActionName- ]--instance ToHeaders DeleteScheduledAction+ toQuery DeleteScheduledAction'{..}+ = mconcat+ ["Action" =: ("DeleteScheduledAction" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _dsaAutoScalingGroupName,+ "ScheduledActionName" =: _dsaScheduledActionName] -instance AWSRequest DeleteScheduledAction where- type Sv DeleteScheduledAction = AutoScaling- type Rs DeleteScheduledAction = DeleteScheduledActionResponse+-- | /See:/ 'deleteScheduledActionResponse' smart constructor.+data DeleteScheduledActionResponse =+ DeleteScheduledActionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteScheduledAction"- response = nullResponse DeleteScheduledActionResponse+-- | Creates a value of 'DeleteScheduledActionResponse' with the minimum fields required to make a request.+--+deleteScheduledActionResponse+ :: DeleteScheduledActionResponse+deleteScheduledActionResponse = DeleteScheduledActionResponse'
gen/Network/AWS/AutoScaling/DeleteTags.hs view
@@ -1,97 +1,95 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DeleteTags--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified tags.+-- Deletes the specified tags. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteTags.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DeleteTags.html AWS API Reference> for DeleteTags. module Network.AWS.AutoScaling.DeleteTags (- -- * Request- DeleteTags- -- ** Request constructor- , deleteTags- -- ** Request lenses+ -- * Creating a Request+ deleteTags+ , DeleteTags+ -- * Request Lenses , dtTags - -- * Response- , DeleteTagsResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteTagsResponse+ , DeleteTagsResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--newtype DeleteTags = DeleteTags- { _dtTags :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DeleteTags where- type Item DeleteTags = Tag+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response - fromList = DeleteTags . GHC.Exts.fromList- toList = GHC.Exts.toList . _dtTags+-- | /See:/ 'deleteTags' smart constructor.+newtype DeleteTags = DeleteTags'+ { _dtTags :: [Tag]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteTags' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteTags' with the minimum fields required to make a request. ----- * 'dtTags' @::@ ['Tag']+-- Use one of the following lenses to modify other fields as desired: ---deleteTags :: DeleteTags-deleteTags = DeleteTags+-- * 'dtTags'+deleteTags+ :: DeleteTags+deleteTags =+ DeleteTags' { _dtTags = mempty } --- | Each tag should be defined by its resource type, resource ID, key, value, and--- a propagate flag. Valid values are: Resource type = /auto-scaling-group/,--- Resource ID = /AutoScalingGroupName/, key=/value/, value=/value/, propagate=/true/ or /false/.+-- | Each tag should be defined by its resource type, resource ID, key,+-- value, and a propagate flag. Valid values are: Resource type =+-- /auto-scaling-group/, Resource ID = /AutoScalingGroupName/, key=/value/,+-- value=/value/, propagate=/true/ or /false/. dtTags :: Lens' DeleteTags [Tag]-dtTags = lens _dtTags (\s a -> s { _dtTags = a }) . _List+dtTags = lens _dtTags (\ s a -> s{_dtTags = a}) . _Coerce; -data DeleteTagsResponse = DeleteTagsResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteTags where+ type Sv DeleteTags = AutoScaling+ type Rs DeleteTags = DeleteTagsResponse+ request = postQuery+ response = receiveNull DeleteTagsResponse' --- | 'DeleteTagsResponse' constructor.-deleteTagsResponse :: DeleteTagsResponse-deleteTagsResponse = DeleteTagsResponse+instance ToHeaders DeleteTags where+ toHeaders = const mempty instance ToPath DeleteTags where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteTags where- toQuery DeleteTags{..} = mconcat- [ "Tags" =? _dtTags- ]--instance ToHeaders DeleteTags+ toQuery DeleteTags'{..}+ = mconcat+ ["Action" =: ("DeleteTags" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Tags" =: toQueryList "member" _dtTags] -instance AWSRequest DeleteTags where- type Sv DeleteTags = AutoScaling- type Rs DeleteTags = DeleteTagsResponse+-- | /See:/ 'deleteTagsResponse' smart constructor.+data DeleteTagsResponse =+ DeleteTagsResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteTags"- response = nullResponse DeleteTagsResponse+-- | Creates a value of 'DeleteTagsResponse' with the minimum fields required to make a request.+--+deleteTagsResponse+ :: DeleteTagsResponse+deleteTagsResponse = DeleteTagsResponse'
gen/Network/AWS/AutoScaling/DescribeAccountLimits.hs view
@@ -1,109 +1,124 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeAccountLimits--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the current Auto Scaling resource limits for your AWS account.+-- Describes the current Auto Scaling resource limits for your AWS account. ----- For information about requesting an increase in these limits, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html AWSService Limits>.+-- For information about requesting an increase in these limits, see+-- <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html AWS Service Limits>+-- in the /Amazon Web Services General Reference/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAccountLimits.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAccountLimits.html AWS API Reference> for DescribeAccountLimits. module Network.AWS.AutoScaling.DescribeAccountLimits (- -- * Request- DescribeAccountLimits- -- ** Request constructor- , describeAccountLimits+ -- * Creating a Request+ describeAccountLimits+ , DescribeAccountLimits - -- * Response- , DescribeAccountLimitsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeAccountLimitsResponse- -- ** Response lenses- , dalrMaxNumberOfAutoScalingGroups- , dalrMaxNumberOfLaunchConfigurations+ , DescribeAccountLimitsResponse+ -- * Response Lenses+ , dalrsMaxNumberOfLaunchConfigurations+ , dalrsMaxNumberOfAutoScalingGroups+ , dalrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--data DescribeAccountLimits = DescribeAccountLimits- deriving (Eq, Ord, Read, Show, Generic)---- | 'DescribeAccountLimits' constructor.-describeAccountLimits :: DescribeAccountLimits-describeAccountLimits = DescribeAccountLimits+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeAccountLimitsResponse = DescribeAccountLimitsResponse- { _dalrMaxNumberOfAutoScalingGroups :: Maybe Int- , _dalrMaxNumberOfLaunchConfigurations :: Maybe Int- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeAccountLimits' smart constructor.+data DescribeAccountLimits =+ DescribeAccountLimits'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAccountLimitsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dalrMaxNumberOfAutoScalingGroups' @::@ 'Maybe' 'Int'------ * 'dalrMaxNumberOfLaunchConfigurations' @::@ 'Maybe' 'Int'+-- | Creates a value of 'DescribeAccountLimits' with the minimum fields required to make a request. ---describeAccountLimitsResponse :: DescribeAccountLimitsResponse-describeAccountLimitsResponse = DescribeAccountLimitsResponse- { _dalrMaxNumberOfAutoScalingGroups = Nothing- , _dalrMaxNumberOfLaunchConfigurations = Nothing- }+describeAccountLimits+ :: DescribeAccountLimits+describeAccountLimits = DescribeAccountLimits' --- | The maximum number of groups allowed for your AWS account. The default limit--- is 20 per region.-dalrMaxNumberOfAutoScalingGroups :: Lens' DescribeAccountLimitsResponse (Maybe Int)-dalrMaxNumberOfAutoScalingGroups =- lens _dalrMaxNumberOfAutoScalingGroups- (\s a -> s { _dalrMaxNumberOfAutoScalingGroups = a })+instance AWSRequest DescribeAccountLimits where+ type Sv DescribeAccountLimits = AutoScaling+ type Rs DescribeAccountLimits =+ DescribeAccountLimitsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeAccountLimitsResult"+ (\ s h x ->+ DescribeAccountLimitsResponse' <$>+ (x .@? "MaxNumberOfLaunchConfigurations") <*>+ (x .@? "MaxNumberOfAutoScalingGroups")+ <*> (pure (fromEnum s))) --- | The maximum number of launch configurations allowed for your AWS account. The--- default limit is 100 per region.-dalrMaxNumberOfLaunchConfigurations :: Lens' DescribeAccountLimitsResponse (Maybe Int)-dalrMaxNumberOfLaunchConfigurations =- lens _dalrMaxNumberOfLaunchConfigurations- (\s a -> s { _dalrMaxNumberOfLaunchConfigurations = a })+instance ToHeaders DescribeAccountLimits where+ toHeaders = const mempty instance ToPath DescribeAccountLimits where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeAccountLimits where- toQuery = const mempty+ toQuery+ = const+ (mconcat+ ["Action" =: ("DescribeAccountLimits" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)]) -instance ToHeaders DescribeAccountLimits+-- | /See:/ 'describeAccountLimitsResponse' smart constructor.+data DescribeAccountLimitsResponse = DescribeAccountLimitsResponse'+ { _dalrsMaxNumberOfLaunchConfigurations :: !(Maybe Int)+ , _dalrsMaxNumberOfAutoScalingGroups :: !(Maybe Int)+ , _dalrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeAccountLimits where- type Sv DescribeAccountLimits = AutoScaling- type Rs DescribeAccountLimits = DescribeAccountLimitsResponse+-- | Creates a value of 'DescribeAccountLimitsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dalrsMaxNumberOfLaunchConfigurations'+--+-- * 'dalrsMaxNumberOfAutoScalingGroups'+--+-- * 'dalrsStatus'+describeAccountLimitsResponse+ :: Int -- ^ 'dalrsStatus'+ -> DescribeAccountLimitsResponse+describeAccountLimitsResponse pStatus_ =+ DescribeAccountLimitsResponse'+ { _dalrsMaxNumberOfLaunchConfigurations = Nothing+ , _dalrsMaxNumberOfAutoScalingGroups = Nothing+ , _dalrsStatus = pStatus_+ } - request = post "DescribeAccountLimits"- response = xmlResponse+-- | The maximum number of launch configurations allowed for your AWS+-- account. The default limit is 100 per region.+dalrsMaxNumberOfLaunchConfigurations :: Lens' DescribeAccountLimitsResponse (Maybe Int)+dalrsMaxNumberOfLaunchConfigurations = lens _dalrsMaxNumberOfLaunchConfigurations (\ s a -> s{_dalrsMaxNumberOfLaunchConfigurations = a}); -instance FromXML DescribeAccountLimitsResponse where- parseXML = withElement "DescribeAccountLimitsResult" $ \x -> DescribeAccountLimitsResponse- <$> x .@? "MaxNumberOfAutoScalingGroups"- <*> x .@? "MaxNumberOfLaunchConfigurations"+-- | The maximum number of groups allowed for your AWS account. The default+-- limit is 20 per region.+dalrsMaxNumberOfAutoScalingGroups :: Lens' DescribeAccountLimitsResponse (Maybe Int)+dalrsMaxNumberOfAutoScalingGroups = lens _dalrsMaxNumberOfAutoScalingGroups (\ s a -> s{_dalrsMaxNumberOfAutoScalingGroups = a});++-- | The response status code.+dalrsStatus :: Lens' DescribeAccountLimitsResponse Int+dalrsStatus = lens _dalrsStatus (\ s a -> s{_dalrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeAdjustmentTypes.hs view
@@ -1,99 +1,110 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeAdjustmentTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Lists the policy adjustment types for use with 'PutScalingPolicy'.+-- Describes the policy adjustment types for use with PutScalingPolicy. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAdjustmentTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAdjustmentTypes.html AWS API Reference> for DescribeAdjustmentTypes. module Network.AWS.AutoScaling.DescribeAdjustmentTypes (- -- * Request- DescribeAdjustmentTypes- -- ** Request constructor- , describeAdjustmentTypes+ -- * Creating a Request+ describeAdjustmentTypes+ , DescribeAdjustmentTypes - -- * Response- , DescribeAdjustmentTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeAdjustmentTypesResponse- -- ** Response lenses- , datrAdjustmentTypes+ , DescribeAdjustmentTypesResponse+ -- * Response Lenses+ , datrsAdjustmentTypes+ , datrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeAdjustmentTypes = DescribeAdjustmentTypes- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'describeAdjustmentTypes' smart constructor.+data DescribeAdjustmentTypes =+ DescribeAdjustmentTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAdjustmentTypes' constructor.-describeAdjustmentTypes :: DescribeAdjustmentTypes-describeAdjustmentTypes = DescribeAdjustmentTypes+-- | Creates a value of 'DescribeAdjustmentTypes' with the minimum fields required to make a request.+--+describeAdjustmentTypes+ :: DescribeAdjustmentTypes+describeAdjustmentTypes = DescribeAdjustmentTypes' -newtype DescribeAdjustmentTypesResponse = DescribeAdjustmentTypesResponse- { _datrAdjustmentTypes :: List "member" AdjustmentType- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest DescribeAdjustmentTypes where+ type Sv DescribeAdjustmentTypes = AutoScaling+ type Rs DescribeAdjustmentTypes =+ DescribeAdjustmentTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeAdjustmentTypesResult"+ (\ s h x ->+ DescribeAdjustmentTypesResponse' <$>+ (x .@? "AdjustmentTypes" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList DescribeAdjustmentTypesResponse where- type Item DescribeAdjustmentTypesResponse = AdjustmentType+instance ToHeaders DescribeAdjustmentTypes where+ toHeaders = const mempty - fromList = DescribeAdjustmentTypesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _datrAdjustmentTypes+instance ToPath DescribeAdjustmentTypes where+ toPath = const "/" --- | 'DescribeAdjustmentTypesResponse' constructor.+instance ToQuery DescribeAdjustmentTypes where+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeAdjustmentTypes" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)])++-- | /See:/ 'describeAdjustmentTypesResponse' smart constructor.+data DescribeAdjustmentTypesResponse = DescribeAdjustmentTypesResponse'+ { _datrsAdjustmentTypes :: !(Maybe [AdjustmentType])+ , _datrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeAdjustmentTypesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'datrAdjustmentTypes' @::@ ['AdjustmentType']+-- * 'datrsAdjustmentTypes' ---describeAdjustmentTypesResponse :: DescribeAdjustmentTypesResponse-describeAdjustmentTypesResponse = DescribeAdjustmentTypesResponse- { _datrAdjustmentTypes = mempty+-- * 'datrsStatus'+describeAdjustmentTypesResponse+ :: Int -- ^ 'datrsStatus'+ -> DescribeAdjustmentTypesResponse+describeAdjustmentTypesResponse pStatus_ =+ DescribeAdjustmentTypesResponse'+ { _datrsAdjustmentTypes = Nothing+ , _datrsStatus = pStatus_ } -- | The policy adjustment types.-datrAdjustmentTypes :: Lens' DescribeAdjustmentTypesResponse [AdjustmentType]-datrAdjustmentTypes =- lens _datrAdjustmentTypes (\s a -> s { _datrAdjustmentTypes = a })- . _List--instance ToPath DescribeAdjustmentTypes where- toPath = const "/"--instance ToQuery DescribeAdjustmentTypes where- toQuery = const mempty--instance ToHeaders DescribeAdjustmentTypes--instance AWSRequest DescribeAdjustmentTypes where- type Sv DescribeAdjustmentTypes = AutoScaling- type Rs DescribeAdjustmentTypes = DescribeAdjustmentTypesResponse-- request = post "DescribeAdjustmentTypes"- response = xmlResponse+datrsAdjustmentTypes :: Lens' DescribeAdjustmentTypesResponse [AdjustmentType]+datrsAdjustmentTypes = lens _datrsAdjustmentTypes (\ s a -> s{_datrsAdjustmentTypes = a}) . _Default . _Coerce; -instance FromXML DescribeAdjustmentTypesResponse where- parseXML = withElement "DescribeAdjustmentTypesResult" $ \x -> DescribeAdjustmentTypesResponse- <$> x .@? "AdjustmentTypes" .!@ mempty+-- | The response status code.+datrsStatus :: Lens' DescribeAdjustmentTypesResponse Int+datrsStatus = lens _datrsStatus (\ s a -> s{_datrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeAutoScalingGroups.hs view
@@ -1,156 +1,167 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeAutoScalingGroups--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes one or more Auto Scaling groups. If a list of names is not+-- Describes one or more Auto Scaling groups. If a list of names is not -- provided, the call describes all Auto Scaling groups. ----- You can specify a maximum number of items to be returned with a single call.--- If there are more items to return, the call returns a token. To get the next--- set of items, repeat the call with the returned token in the 'NextToken'--- parameter.+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingGroups.html AWS API Reference> for DescribeAutoScalingGroups. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingGroups.html>+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeAutoScalingGroups (- -- * Request- DescribeAutoScalingGroups- -- ** Request constructor- , describeAutoScalingGroups- -- ** Request lenses+ -- * Creating a Request+ describeAutoScalingGroups+ , DescribeAutoScalingGroups+ -- * Request Lenses , dasgAutoScalingGroupNames- , dasgMaxRecords , dasgNextToken+ , dasgMaxRecords - -- * Response- , DescribeAutoScalingGroupsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeAutoScalingGroupsResponse- -- ** Response lenses- , dasgrAutoScalingGroups- , dasgrNextToken+ , DescribeAutoScalingGroupsResponse+ -- * Response Lenses+ , dasgrsNextToken+ , dasgrsStatus+ , dasgrsAutoScalingGroups ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeAutoScalingGroups = DescribeAutoScalingGroups- { _dasgAutoScalingGroupNames :: List "member" Text- , _dasgMaxRecords :: Maybe Int- , _dasgNextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeAutoScalingGroups' smart constructor.+data DescribeAutoScalingGroups = DescribeAutoScalingGroups'+ { _dasgAutoScalingGroupNames :: !(Maybe [Text])+ , _dasgNextToken :: !(Maybe Text)+ , _dasgMaxRecords :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAutoScalingGroups' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeAutoScalingGroups' with the minimum fields required to make a request. ----- * 'dasgAutoScalingGroupNames' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasgMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dasgAutoScalingGroupNames' ----- * 'dasgNextToken' @::@ 'Maybe' 'Text'+-- * 'dasgNextToken' ---describeAutoScalingGroups :: DescribeAutoScalingGroups-describeAutoScalingGroups = DescribeAutoScalingGroups- { _dasgAutoScalingGroupNames = mempty- , _dasgNextToken = Nothing- , _dasgMaxRecords = Nothing+-- * 'dasgMaxRecords'+describeAutoScalingGroups+ :: DescribeAutoScalingGroups+describeAutoScalingGroups =+ DescribeAutoScalingGroups'+ { _dasgAutoScalingGroupNames = Nothing+ , _dasgNextToken = Nothing+ , _dasgMaxRecords = Nothing } -- | The group names. dasgAutoScalingGroupNames :: Lens' DescribeAutoScalingGroups [Text]-dasgAutoScalingGroupNames =- lens _dasgAutoScalingGroupNames- (\s a -> s { _dasgAutoScalingGroupNames = a })- . _List+dasgAutoScalingGroupNames = lens _dasgAutoScalingGroupNames (\ s a -> s{_dasgAutoScalingGroupNames = a}) . _Default . _Coerce; +-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dasgNextToken :: Lens' DescribeAutoScalingGroups (Maybe Text)+dasgNextToken = lens _dasgNextToken (\ s a -> s{_dasgNextToken = a});+ -- | The maximum number of items to return with this call. dasgMaxRecords :: Lens' DescribeAutoScalingGroups (Maybe Int)-dasgMaxRecords = lens _dasgMaxRecords (\s a -> s { _dasgMaxRecords = a })+dasgMaxRecords = lens _dasgMaxRecords (\ s a -> s{_dasgMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dasgNextToken :: Lens' DescribeAutoScalingGroups (Maybe Text)-dasgNextToken = lens _dasgNextToken (\s a -> s { _dasgNextToken = a })+instance AWSPager DescribeAutoScalingGroups where+ page rq rs+ | stop (rs ^. dasgrsNextToken) = Nothing+ | stop (rs ^. dasgrsAutoScalingGroups) = Nothing+ | otherwise =+ Just $ rq & dasgNextToken .~ rs ^. dasgrsNextToken -data DescribeAutoScalingGroupsResponse = DescribeAutoScalingGroupsResponse- { _dasgrAutoScalingGroups :: List "member" AutoScalingGroup- , _dasgrNextToken :: Maybe Text- } deriving (Eq, Read, Show)+instance AWSRequest DescribeAutoScalingGroups where+ type Sv DescribeAutoScalingGroups = AutoScaling+ type Rs DescribeAutoScalingGroups =+ DescribeAutoScalingGroupsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeAutoScalingGroupsResult"+ (\ s h x ->+ DescribeAutoScalingGroupsResponse' <$>+ (x .@? "NextToken") <*> (pure (fromEnum s)) <*>+ (x .@? "AutoScalingGroups" .!@ mempty >>=+ parseXMLList "member")) --- | 'DescribeAutoScalingGroupsResponse' constructor.+instance ToHeaders DescribeAutoScalingGroups where+ toHeaders = const mempty++instance ToPath DescribeAutoScalingGroups where+ toPath = const "/"++instance ToQuery DescribeAutoScalingGroups where+ toQuery DescribeAutoScalingGroups'{..}+ = mconcat+ ["Action" =:+ ("DescribeAutoScalingGroups" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupNames" =:+ toQuery+ (toQueryList "member" <$>+ _dasgAutoScalingGroupNames),+ "NextToken" =: _dasgNextToken,+ "MaxRecords" =: _dasgMaxRecords]++-- | /See:/ 'describeAutoScalingGroupsResponse' smart constructor.+data DescribeAutoScalingGroupsResponse = DescribeAutoScalingGroupsResponse'+ { _dasgrsNextToken :: !(Maybe Text)+ , _dasgrsStatus :: !Int+ , _dasgrsAutoScalingGroups :: ![AutoScalingGroup]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeAutoScalingGroupsResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasgrAutoScalingGroups' @::@ ['AutoScalingGroup']+-- * 'dasgrsNextToken' ----- * 'dasgrNextToken' @::@ 'Maybe' 'Text'+-- * 'dasgrsStatus' ---describeAutoScalingGroupsResponse :: DescribeAutoScalingGroupsResponse-describeAutoScalingGroupsResponse = DescribeAutoScalingGroupsResponse- { _dasgrAutoScalingGroups = mempty- , _dasgrNextToken = Nothing+-- * 'dasgrsAutoScalingGroups'+describeAutoScalingGroupsResponse+ :: Int -- ^ 'dasgrsStatus'+ -> DescribeAutoScalingGroupsResponse+describeAutoScalingGroupsResponse pStatus_ =+ DescribeAutoScalingGroupsResponse'+ { _dasgrsNextToken = Nothing+ , _dasgrsStatus = pStatus_+ , _dasgrsAutoScalingGroups = mempty } --- | The groups.-dasgrAutoScalingGroups :: Lens' DescribeAutoScalingGroupsResponse [AutoScalingGroup]-dasgrAutoScalingGroups =- lens _dasgrAutoScalingGroups (\s a -> s { _dasgrAutoScalingGroups = a })- . _List- -- | The token to use when requesting the next set of items. If there are no -- additional items to return, the string is empty.-dasgrNextToken :: Lens' DescribeAutoScalingGroupsResponse (Maybe Text)-dasgrNextToken = lens _dasgrNextToken (\s a -> s { _dasgrNextToken = a })--instance ToPath DescribeAutoScalingGroups where- toPath = const "/"--instance ToQuery DescribeAutoScalingGroups where- toQuery DescribeAutoScalingGroups{..} = mconcat- [ "AutoScalingGroupNames" =? _dasgAutoScalingGroupNames- , "MaxRecords" =? _dasgMaxRecords- , "NextToken" =? _dasgNextToken- ]--instance ToHeaders DescribeAutoScalingGroups--instance AWSRequest DescribeAutoScalingGroups where- type Sv DescribeAutoScalingGroups = AutoScaling- type Rs DescribeAutoScalingGroups = DescribeAutoScalingGroupsResponse-- request = post "DescribeAutoScalingGroups"- response = xmlResponse+dasgrsNextToken :: Lens' DescribeAutoScalingGroupsResponse (Maybe Text)+dasgrsNextToken = lens _dasgrsNextToken (\ s a -> s{_dasgrsNextToken = a}); -instance FromXML DescribeAutoScalingGroupsResponse where- parseXML = withElement "DescribeAutoScalingGroupsResult" $ \x -> DescribeAutoScalingGroupsResponse- <$> x .@? "AutoScalingGroups" .!@ mempty- <*> x .@? "NextToken"+-- | The response status code.+dasgrsStatus :: Lens' DescribeAutoScalingGroupsResponse Int+dasgrsStatus = lens _dasgrsStatus (\ s a -> s{_dasgrsStatus = a}); -instance AWSPager DescribeAutoScalingGroups where- page rq rs- | stop (rs ^. dasgrNextToken) = Nothing- | otherwise = (\x -> rq & dasgNextToken ?~ x)- <$> (rs ^. dasgrNextToken)+-- | The groups.+dasgrsAutoScalingGroups :: Lens' DescribeAutoScalingGroupsResponse [AutoScalingGroup]+dasgrsAutoScalingGroups = lens _dasgrsAutoScalingGroups (\ s a -> s{_dasgrsAutoScalingGroups = a}) . _Coerce;
gen/Network/AWS/AutoScaling/DescribeAutoScalingInstances.hs view
@@ -1,156 +1,170 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeAutoScalingInstances--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes one or more Auto Scaling instances. If a list is not provided, the--- call describes all instances.+-- Describes one or more Auto Scaling instances. If a list is not provided,+-- the call describes all instances. ----- You can describe up to a maximum of 50 instances with a single call. By--- default, a call returns up to 20 instances. If there are more items to--- return, the call returns a token. To get the next set of items, repeat the--- call with the returned token in the 'NextToken' parameter.+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingInstances.html AWS API Reference> for DescribeAutoScalingInstances. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingInstances.html>+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeAutoScalingInstances (- -- * Request- DescribeAutoScalingInstances- -- ** Request constructor- , describeAutoScalingInstances- -- ** Request lenses+ -- * Creating a Request+ describeAutoScalingInstances+ , DescribeAutoScalingInstances+ -- * Request Lenses+ , dasiNextToken , dasiInstanceIds , dasiMaxRecords- , dasiNextToken - -- * Response- , DescribeAutoScalingInstancesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeAutoScalingInstancesResponse- -- ** Response lenses- , dasirAutoScalingInstances- , dasirNextToken+ , DescribeAutoScalingInstancesResponse+ -- * Response Lenses+ , dasirsNextToken+ , dasirsAutoScalingInstances+ , dasirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeAutoScalingInstances = DescribeAutoScalingInstances- { _dasiInstanceIds :: List "member" Text- , _dasiMaxRecords :: Maybe Int- , _dasiNextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeAutoScalingInstances' smart constructor.+data DescribeAutoScalingInstances = DescribeAutoScalingInstances'+ { _dasiNextToken :: !(Maybe Text)+ , _dasiInstanceIds :: !(Maybe [Text])+ , _dasiMaxRecords :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAutoScalingInstances' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeAutoScalingInstances' with the minimum fields required to make a request. ----- * 'dasiInstanceIds' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasiMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dasiNextToken' ----- * 'dasiNextToken' @::@ 'Maybe' 'Text'+-- * 'dasiInstanceIds' ---describeAutoScalingInstances :: DescribeAutoScalingInstances-describeAutoScalingInstances = DescribeAutoScalingInstances- { _dasiInstanceIds = mempty- , _dasiMaxRecords = Nothing- , _dasiNextToken = Nothing+-- * 'dasiMaxRecords'+describeAutoScalingInstances+ :: DescribeAutoScalingInstances+describeAutoScalingInstances =+ DescribeAutoScalingInstances'+ { _dasiNextToken = Nothing+ , _dasiInstanceIds = Nothing+ , _dasiMaxRecords = Nothing } --- | One or more Auto Scaling instances to describe, up to 50 instances. If you--- omit this parameter, all Auto Scaling instances are described. If you specify--- an ID that does not exist, it is ignored with no error.+-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dasiNextToken :: Lens' DescribeAutoScalingInstances (Maybe Text)+dasiNextToken = lens _dasiNextToken (\ s a -> s{_dasiNextToken = a});++-- | One or more Auto Scaling instances to describe, up to 50 instances. If+-- you omit this parameter, all Auto Scaling instances are described. If+-- you specify an ID that does not exist, it is ignored with no error. dasiInstanceIds :: Lens' DescribeAutoScalingInstances [Text]-dasiInstanceIds = lens _dasiInstanceIds (\s a -> s { _dasiInstanceIds = a }) . _List+dasiInstanceIds = lens _dasiInstanceIds (\ s a -> s{_dasiInstanceIds = a}) . _Default . _Coerce; -- | The maximum number of items to return with this call. dasiMaxRecords :: Lens' DescribeAutoScalingInstances (Maybe Int)-dasiMaxRecords = lens _dasiMaxRecords (\s a -> s { _dasiMaxRecords = a })+dasiMaxRecords = lens _dasiMaxRecords (\ s a -> s{_dasiMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dasiNextToken :: Lens' DescribeAutoScalingInstances (Maybe Text)-dasiNextToken = lens _dasiNextToken (\s a -> s { _dasiNextToken = a })+instance AWSPager DescribeAutoScalingInstances where+ page rq rs+ | stop (rs ^. dasirsNextToken) = Nothing+ | stop (rs ^. dasirsAutoScalingInstances) = Nothing+ | otherwise =+ Just $ rq & dasiNextToken .~ rs ^. dasirsNextToken -data DescribeAutoScalingInstancesResponse = DescribeAutoScalingInstancesResponse- { _dasirAutoScalingInstances :: List "member" AutoScalingInstanceDetails- , _dasirNextToken :: Maybe Text- } deriving (Eq, Read, Show)+instance AWSRequest DescribeAutoScalingInstances+ where+ type Sv DescribeAutoScalingInstances = AutoScaling+ type Rs DescribeAutoScalingInstances =+ DescribeAutoScalingInstancesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeAutoScalingInstancesResult"+ (\ s h x ->+ DescribeAutoScalingInstancesResponse' <$>+ (x .@? "NextToken") <*>+ (x .@? "AutoScalingInstances" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) --- | 'DescribeAutoScalingInstancesResponse' constructor.+instance ToHeaders DescribeAutoScalingInstances where+ toHeaders = const mempty++instance ToPath DescribeAutoScalingInstances where+ toPath = const "/"++instance ToQuery DescribeAutoScalingInstances where+ toQuery DescribeAutoScalingInstances'{..}+ = mconcat+ ["Action" =:+ ("DescribeAutoScalingInstances" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "NextToken" =: _dasiNextToken,+ "InstanceIds" =:+ toQuery (toQueryList "member" <$> _dasiInstanceIds),+ "MaxRecords" =: _dasiMaxRecords]++-- | /See:/ 'describeAutoScalingInstancesResponse' smart constructor.+data DescribeAutoScalingInstancesResponse = DescribeAutoScalingInstancesResponse'+ { _dasirsNextToken :: !(Maybe Text)+ , _dasirsAutoScalingInstances :: !(Maybe [AutoScalingInstanceDetails])+ , _dasirsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeAutoScalingInstancesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasirAutoScalingInstances' @::@ ['AutoScalingInstanceDetails']+-- * 'dasirsNextToken' ----- * 'dasirNextToken' @::@ 'Maybe' 'Text'+-- * 'dasirsAutoScalingInstances' ---describeAutoScalingInstancesResponse :: DescribeAutoScalingInstancesResponse-describeAutoScalingInstancesResponse = DescribeAutoScalingInstancesResponse- { _dasirAutoScalingInstances = mempty- , _dasirNextToken = Nothing+-- * 'dasirsStatus'+describeAutoScalingInstancesResponse+ :: Int -- ^ 'dasirsStatus'+ -> DescribeAutoScalingInstancesResponse+describeAutoScalingInstancesResponse pStatus_ =+ DescribeAutoScalingInstancesResponse'+ { _dasirsNextToken = Nothing+ , _dasirsAutoScalingInstances = Nothing+ , _dasirsStatus = pStatus_ } --- | The instances.-dasirAutoScalingInstances :: Lens' DescribeAutoScalingInstancesResponse [AutoScalingInstanceDetails]-dasirAutoScalingInstances =- lens _dasirAutoScalingInstances- (\s a -> s { _dasirAutoScalingInstances = a })- . _List- -- | The token to use when requesting the next set of items. If there are no -- additional items to return, the string is empty.-dasirNextToken :: Lens' DescribeAutoScalingInstancesResponse (Maybe Text)-dasirNextToken = lens _dasirNextToken (\s a -> s { _dasirNextToken = a })--instance ToPath DescribeAutoScalingInstances where- toPath = const "/"--instance ToQuery DescribeAutoScalingInstances where- toQuery DescribeAutoScalingInstances{..} = mconcat- [ "InstanceIds" =? _dasiInstanceIds- , "MaxRecords" =? _dasiMaxRecords- , "NextToken" =? _dasiNextToken- ]--instance ToHeaders DescribeAutoScalingInstances--instance AWSRequest DescribeAutoScalingInstances where- type Sv DescribeAutoScalingInstances = AutoScaling- type Rs DescribeAutoScalingInstances = DescribeAutoScalingInstancesResponse-- request = post "DescribeAutoScalingInstances"- response = xmlResponse+dasirsNextToken :: Lens' DescribeAutoScalingInstancesResponse (Maybe Text)+dasirsNextToken = lens _dasirsNextToken (\ s a -> s{_dasirsNextToken = a}); -instance FromXML DescribeAutoScalingInstancesResponse where- parseXML = withElement "DescribeAutoScalingInstancesResult" $ \x -> DescribeAutoScalingInstancesResponse- <$> x .@? "AutoScalingInstances" .!@ mempty- <*> x .@? "NextToken"+-- | The instances.+dasirsAutoScalingInstances :: Lens' DescribeAutoScalingInstancesResponse [AutoScalingInstanceDetails]+dasirsAutoScalingInstances = lens _dasirsAutoScalingInstances (\ s a -> s{_dasirsAutoScalingInstances = a}) . _Default . _Coerce; -instance AWSPager DescribeAutoScalingInstances where- page rq rs- | stop (rs ^. dasirNextToken) = Nothing- | otherwise = (\x -> rq & dasiNextToken ?~ x)- <$> (rs ^. dasirNextToken)+-- | The response status code.+dasirsStatus :: Lens' DescribeAutoScalingInstancesResponse Int+dasirsStatus = lens _dasirsStatus (\ s a -> s{_dasirsStatus = a});
gen/Network/AWS/AutoScaling/DescribeAutoScalingNotificationTypes.hs view
@@ -1,112 +1,128 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Lists the notification types that are supported by Auto Scaling.+-- Describes the notification types that are supported by Auto Scaling. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingNotificationTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeAutoScalingNotificationTypes.html AWS API Reference> for DescribeAutoScalingNotificationTypes. module Network.AWS.AutoScaling.DescribeAutoScalingNotificationTypes (- -- * Request- DescribeAutoScalingNotificationTypes- -- ** Request constructor- , describeAutoScalingNotificationTypes+ -- * Creating a Request+ describeAutoScalingNotificationTypes+ , DescribeAutoScalingNotificationTypes - -- * Response- , DescribeAutoScalingNotificationTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeAutoScalingNotificationTypesResponse- -- ** Response lenses- , dasntrAutoScalingNotificationTypes+ , DescribeAutoScalingNotificationTypesResponse+ -- * Response Lenses+ , dasntrsAutoScalingNotificationTypes+ , dasntrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeAutoScalingNotificationTypes = DescribeAutoScalingNotificationTypes- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'describeAutoScalingNotificationTypes' smart constructor.+data DescribeAutoScalingNotificationTypes =+ DescribeAutoScalingNotificationTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeAutoScalingNotificationTypes' constructor.-describeAutoScalingNotificationTypes :: DescribeAutoScalingNotificationTypes-describeAutoScalingNotificationTypes = DescribeAutoScalingNotificationTypes+-- | Creates a value of 'DescribeAutoScalingNotificationTypes' with the minimum fields required to make a request.+--+describeAutoScalingNotificationTypes+ :: DescribeAutoScalingNotificationTypes+describeAutoScalingNotificationTypes = DescribeAutoScalingNotificationTypes' -newtype DescribeAutoScalingNotificationTypesResponse = DescribeAutoScalingNotificationTypesResponse- { _dasntrAutoScalingNotificationTypes :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+instance AWSRequest+ DescribeAutoScalingNotificationTypes where+ type Sv DescribeAutoScalingNotificationTypes =+ AutoScaling+ type Rs DescribeAutoScalingNotificationTypes =+ DescribeAutoScalingNotificationTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeAutoScalingNotificationTypesResult"+ (\ s h x ->+ DescribeAutoScalingNotificationTypesResponse' <$>+ (x .@? "AutoScalingNotificationTypes" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList DescribeAutoScalingNotificationTypesResponse where- type Item DescribeAutoScalingNotificationTypesResponse = Text+instance ToHeaders+ DescribeAutoScalingNotificationTypes where+ toHeaders = const mempty - fromList = DescribeAutoScalingNotificationTypesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dasntrAutoScalingNotificationTypes+instance ToPath DescribeAutoScalingNotificationTypes+ where+ toPath = const "/" --- | 'DescribeAutoScalingNotificationTypesResponse' constructor.+instance ToQuery DescribeAutoScalingNotificationTypes+ where+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeAutoScalingNotificationTypes" ::+ ByteString),+ "Version" =: ("2011-01-01" :: ByteString)])++-- | /See:/ 'describeAutoScalingNotificationTypesResponse' smart constructor.+data DescribeAutoScalingNotificationTypesResponse = DescribeAutoScalingNotificationTypesResponse'+ { _dasntrsAutoScalingNotificationTypes :: !(Maybe [Text])+ , _dasntrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeAutoScalingNotificationTypesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dasntrAutoScalingNotificationTypes' @::@ ['Text']+-- * 'dasntrsAutoScalingNotificationTypes' ---describeAutoScalingNotificationTypesResponse :: DescribeAutoScalingNotificationTypesResponse-describeAutoScalingNotificationTypesResponse = DescribeAutoScalingNotificationTypesResponse- { _dasntrAutoScalingNotificationTypes = mempty+-- * 'dasntrsStatus'+describeAutoScalingNotificationTypesResponse+ :: Int -- ^ 'dasntrsStatus'+ -> DescribeAutoScalingNotificationTypesResponse+describeAutoScalingNotificationTypesResponse pStatus_ =+ DescribeAutoScalingNotificationTypesResponse'+ { _dasntrsAutoScalingNotificationTypes = Nothing+ , _dasntrsStatus = pStatus_ } -- | One or more of the following notification types: ----- 'autoscaling:EC2_INSTANCE_LAUNCH'------ 'autoscaling:EC2_INSTANCE_LAUNCH_ERROR'+-- - 'autoscaling:EC2_INSTANCE_LAUNCH' ----- 'autoscaling:EC2_INSTANCE_TERMINATE'+-- - 'autoscaling:EC2_INSTANCE_LAUNCH_ERROR' ----- 'autoscaling:EC2_INSTANCE_TERMINATE_ERROR'+-- - 'autoscaling:EC2_INSTANCE_TERMINATE' ----- 'autoscaling:TEST_NOTIFICATION'+-- - 'autoscaling:EC2_INSTANCE_TERMINATE_ERROR' --+-- - 'autoscaling:TEST_NOTIFICATION' ---dasntrAutoScalingNotificationTypes :: Lens' DescribeAutoScalingNotificationTypesResponse [Text]-dasntrAutoScalingNotificationTypes =- lens _dasntrAutoScalingNotificationTypes- (\s a -> s { _dasntrAutoScalingNotificationTypes = a })- . _List--instance ToPath DescribeAutoScalingNotificationTypes where- toPath = const "/"--instance ToQuery DescribeAutoScalingNotificationTypes where- toQuery = const mempty--instance ToHeaders DescribeAutoScalingNotificationTypes--instance AWSRequest DescribeAutoScalingNotificationTypes where- type Sv DescribeAutoScalingNotificationTypes = AutoScaling- type Rs DescribeAutoScalingNotificationTypes = DescribeAutoScalingNotificationTypesResponse-- request = post "DescribeAutoScalingNotificationTypes"- response = xmlResponse+dasntrsAutoScalingNotificationTypes :: Lens' DescribeAutoScalingNotificationTypesResponse [Text]+dasntrsAutoScalingNotificationTypes = lens _dasntrsAutoScalingNotificationTypes (\ s a -> s{_dasntrsAutoScalingNotificationTypes = a}) . _Default . _Coerce; -instance FromXML DescribeAutoScalingNotificationTypesResponse where- parseXML = withElement "DescribeAutoScalingNotificationTypesResult" $ \x -> DescribeAutoScalingNotificationTypesResponse- <$> x .@? "AutoScalingNotificationTypes" .!@ mempty+-- | The response status code.+dasntrsStatus :: Lens' DescribeAutoScalingNotificationTypesResponse Int+dasntrsStatus = lens _dasntrsStatus (\ s a -> s{_dasntrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeLaunchConfigurations.hs view
@@ -1,157 +1,170 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeLaunchConfigurations--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes one or more launch configurations. If you omit the list of names,--- then the call describes all launch configurations.+-- Describes one or more launch configurations. If you omit the list of+-- names, then the call describes all launch configurations. ----- You can specify a maximum number of items to be returned with a single call.--- If there are more items to return, the call returns a token. To get the next--- set of items, repeat the call with the returned token in the 'NextToken'--- parameter.+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLaunchConfigurations.html AWS API Reference> for DescribeLaunchConfigurations. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLaunchConfigurations.html>+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeLaunchConfigurations (- -- * Request- DescribeLaunchConfigurations- -- ** Request constructor- , describeLaunchConfigurations- -- ** Request lenses+ -- * Creating a Request+ describeLaunchConfigurations+ , DescribeLaunchConfigurations+ -- * Request Lenses , dlcLaunchConfigurationNames- , dlcMaxRecords , dlcNextToken+ , dlcMaxRecords - -- * Response- , DescribeLaunchConfigurationsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeLaunchConfigurationsResponse- -- ** Response lenses- , dlcrLaunchConfigurations- , dlcrNextToken+ , DescribeLaunchConfigurationsResponse+ -- * Response Lenses+ , dlcrsNextToken+ , dlcrsStatus+ , dlcrsLaunchConfigurations ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeLaunchConfigurations = DescribeLaunchConfigurations- { _dlcLaunchConfigurationNames :: List "member" Text- , _dlcMaxRecords :: Maybe Int- , _dlcNextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeLaunchConfigurations' smart constructor.+data DescribeLaunchConfigurations = DescribeLaunchConfigurations'+ { _dlcLaunchConfigurationNames :: !(Maybe [Text])+ , _dlcNextToken :: !(Maybe Text)+ , _dlcMaxRecords :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeLaunchConfigurations' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeLaunchConfigurations' with the minimum fields required to make a request. ----- * 'dlcLaunchConfigurationNames' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dlcMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dlcLaunchConfigurationNames' ----- * 'dlcNextToken' @::@ 'Maybe' 'Text'+-- * 'dlcNextToken' ---describeLaunchConfigurations :: DescribeLaunchConfigurations-describeLaunchConfigurations = DescribeLaunchConfigurations- { _dlcLaunchConfigurationNames = mempty- , _dlcNextToken = Nothing- , _dlcMaxRecords = Nothing+-- * 'dlcMaxRecords'+describeLaunchConfigurations+ :: DescribeLaunchConfigurations+describeLaunchConfigurations =+ DescribeLaunchConfigurations'+ { _dlcLaunchConfigurationNames = Nothing+ , _dlcNextToken = Nothing+ , _dlcMaxRecords = Nothing } -- | The launch configuration names. dlcLaunchConfigurationNames :: Lens' DescribeLaunchConfigurations [Text]-dlcLaunchConfigurationNames =- lens _dlcLaunchConfigurationNames- (\s a -> s { _dlcLaunchConfigurationNames = a })- . _List---- | The maximum number of items to return with this call. The default is 100.-dlcMaxRecords :: Lens' DescribeLaunchConfigurations (Maybe Int)-dlcMaxRecords = lens _dlcMaxRecords (\s a -> s { _dlcMaxRecords = a })+dlcLaunchConfigurationNames = lens _dlcLaunchConfigurationNames (\ s a -> s{_dlcLaunchConfigurationNames = a}) . _Default . _Coerce; --- | The token for the next set of items to return. (You received this token from--- a previous call.)+-- | The token for the next set of items to return. (You received this token+-- from a previous call.) dlcNextToken :: Lens' DescribeLaunchConfigurations (Maybe Text)-dlcNextToken = lens _dlcNextToken (\s a -> s { _dlcNextToken = a })+dlcNextToken = lens _dlcNextToken (\ s a -> s{_dlcNextToken = a}); -data DescribeLaunchConfigurationsResponse = DescribeLaunchConfigurationsResponse- { _dlcrLaunchConfigurations :: List "member" LaunchConfiguration- , _dlcrNextToken :: Maybe Text- } deriving (Eq, Read, Show)+-- | The maximum number of items to return with this call. The default is+-- 100.+dlcMaxRecords :: Lens' DescribeLaunchConfigurations (Maybe Int)+dlcMaxRecords = lens _dlcMaxRecords (\ s a -> s{_dlcMaxRecords = a}); --- | 'DescribeLaunchConfigurationsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dlcrLaunchConfigurations' @::@ ['LaunchConfiguration']------ * 'dlcrNextToken' @::@ 'Maybe' 'Text'----describeLaunchConfigurationsResponse :: DescribeLaunchConfigurationsResponse-describeLaunchConfigurationsResponse = DescribeLaunchConfigurationsResponse- { _dlcrLaunchConfigurations = mempty- , _dlcrNextToken = Nothing- }+instance AWSPager DescribeLaunchConfigurations where+ page rq rs+ | stop (rs ^. dlcrsNextToken) = Nothing+ | stop (rs ^. dlcrsLaunchConfigurations) = Nothing+ | otherwise =+ Just $ rq & dlcNextToken .~ rs ^. dlcrsNextToken --- | The launch configurations.-dlcrLaunchConfigurations :: Lens' DescribeLaunchConfigurationsResponse [LaunchConfiguration]-dlcrLaunchConfigurations =- lens _dlcrLaunchConfigurations- (\s a -> s { _dlcrLaunchConfigurations = a })- . _List+instance AWSRequest DescribeLaunchConfigurations+ where+ type Sv DescribeLaunchConfigurations = AutoScaling+ type Rs DescribeLaunchConfigurations =+ DescribeLaunchConfigurationsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeLaunchConfigurationsResult"+ (\ s h x ->+ DescribeLaunchConfigurationsResponse' <$>+ (x .@? "NextToken") <*> (pure (fromEnum s)) <*>+ (x .@? "LaunchConfigurations" .!@ mempty >>=+ parseXMLList "member")) --- | The token to use when requesting the next set of items. If there are no--- additional items to return, the string is empty.-dlcrNextToken :: Lens' DescribeLaunchConfigurationsResponse (Maybe Text)-dlcrNextToken = lens _dlcrNextToken (\s a -> s { _dlcrNextToken = a })+instance ToHeaders DescribeLaunchConfigurations where+ toHeaders = const mempty instance ToPath DescribeLaunchConfigurations where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeLaunchConfigurations where- toQuery DescribeLaunchConfigurations{..} = mconcat- [ "LaunchConfigurationNames" =? _dlcLaunchConfigurationNames- , "MaxRecords" =? _dlcMaxRecords- , "NextToken" =? _dlcNextToken- ]+ toQuery DescribeLaunchConfigurations'{..}+ = mconcat+ ["Action" =:+ ("DescribeLaunchConfigurations" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LaunchConfigurationNames" =:+ toQuery+ (toQueryList "member" <$>+ _dlcLaunchConfigurationNames),+ "NextToken" =: _dlcNextToken,+ "MaxRecords" =: _dlcMaxRecords] -instance ToHeaders DescribeLaunchConfigurations+-- | /See:/ 'describeLaunchConfigurationsResponse' smart constructor.+data DescribeLaunchConfigurationsResponse = DescribeLaunchConfigurationsResponse'+ { _dlcrsNextToken :: !(Maybe Text)+ , _dlcrsStatus :: !Int+ , _dlcrsLaunchConfigurations :: ![LaunchConfiguration]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeLaunchConfigurations where- type Sv DescribeLaunchConfigurations = AutoScaling- type Rs DescribeLaunchConfigurations = DescribeLaunchConfigurationsResponse+-- | Creates a value of 'DescribeLaunchConfigurationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dlcrsNextToken'+--+-- * 'dlcrsStatus'+--+-- * 'dlcrsLaunchConfigurations'+describeLaunchConfigurationsResponse+ :: Int -- ^ 'dlcrsStatus'+ -> DescribeLaunchConfigurationsResponse+describeLaunchConfigurationsResponse pStatus_ =+ DescribeLaunchConfigurationsResponse'+ { _dlcrsNextToken = Nothing+ , _dlcrsStatus = pStatus_+ , _dlcrsLaunchConfigurations = mempty+ } - request = post "DescribeLaunchConfigurations"- response = xmlResponse+-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+dlcrsNextToken :: Lens' DescribeLaunchConfigurationsResponse (Maybe Text)+dlcrsNextToken = lens _dlcrsNextToken (\ s a -> s{_dlcrsNextToken = a}); -instance FromXML DescribeLaunchConfigurationsResponse where- parseXML = withElement "DescribeLaunchConfigurationsResult" $ \x -> DescribeLaunchConfigurationsResponse- <$> x .@? "LaunchConfigurations" .!@ mempty- <*> x .@? "NextToken"+-- | The response status code.+dlcrsStatus :: Lens' DescribeLaunchConfigurationsResponse Int+dlcrsStatus = lens _dlcrsStatus (\ s a -> s{_dlcrsStatus = a}); -instance AWSPager DescribeLaunchConfigurations where- page rq rs- | stop (rs ^. dlcrNextToken) = Nothing- | otherwise = (\x -> rq & dlcNextToken ?~ x)- <$> (rs ^. dlcrNextToken)+-- | The launch configurations.+dlcrsLaunchConfigurations :: Lens' DescribeLaunchConfigurationsResponse [LaunchConfiguration]+dlcrsLaunchConfigurations = lens _dlcrsLaunchConfigurations (\ s a -> s{_dlcrsLaunchConfigurations = a}) . _Coerce;
gen/Network/AWS/AutoScaling/DescribeLifecycleHookTypes.hs view
@@ -1,105 +1,116 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeLifecycleHookTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the available types of lifecycle hooks.+-- Describes the available types of lifecycle hooks. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLifecycleHookTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLifecycleHookTypes.html AWS API Reference> for DescribeLifecycleHookTypes. module Network.AWS.AutoScaling.DescribeLifecycleHookTypes (- -- * Request- DescribeLifecycleHookTypes- -- ** Request constructor- , describeLifecycleHookTypes+ -- * Creating a Request+ describeLifecycleHookTypes+ , DescribeLifecycleHookTypes - -- * Response- , DescribeLifecycleHookTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeLifecycleHookTypesResponse- -- ** Response lenses- , dlhtrLifecycleHookTypes+ , DescribeLifecycleHookTypesResponse+ -- * Response Lenses+ , dlhtrsLifecycleHookTypes+ , dlhtrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeLifecycleHookTypes = DescribeLifecycleHookTypes- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'describeLifecycleHookTypes' smart constructor.+data DescribeLifecycleHookTypes =+ DescribeLifecycleHookTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeLifecycleHookTypes' constructor.-describeLifecycleHookTypes :: DescribeLifecycleHookTypes-describeLifecycleHookTypes = DescribeLifecycleHookTypes+-- | Creates a value of 'DescribeLifecycleHookTypes' with the minimum fields required to make a request.+--+describeLifecycleHookTypes+ :: DescribeLifecycleHookTypes+describeLifecycleHookTypes = DescribeLifecycleHookTypes' -newtype DescribeLifecycleHookTypesResponse = DescribeLifecycleHookTypesResponse- { _dlhtrLifecycleHookTypes :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+instance AWSRequest DescribeLifecycleHookTypes where+ type Sv DescribeLifecycleHookTypes = AutoScaling+ type Rs DescribeLifecycleHookTypes =+ DescribeLifecycleHookTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeLifecycleHookTypesResult"+ (\ s h x ->+ DescribeLifecycleHookTypesResponse' <$>+ (x .@? "LifecycleHookTypes" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList DescribeLifecycleHookTypesResponse where- type Item DescribeLifecycleHookTypesResponse = Text+instance ToHeaders DescribeLifecycleHookTypes where+ toHeaders = const mempty - fromList = DescribeLifecycleHookTypesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dlhtrLifecycleHookTypes+instance ToPath DescribeLifecycleHookTypes where+ toPath = const "/" --- | 'DescribeLifecycleHookTypesResponse' constructor.+instance ToQuery DescribeLifecycleHookTypes where+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeLifecycleHookTypes" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)])++-- | /See:/ 'describeLifecycleHookTypesResponse' smart constructor.+data DescribeLifecycleHookTypesResponse = DescribeLifecycleHookTypesResponse'+ { _dlhtrsLifecycleHookTypes :: !(Maybe [Text])+ , _dlhtrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeLifecycleHookTypesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dlhtrLifecycleHookTypes' @::@ ['Text']+-- * 'dlhtrsLifecycleHookTypes' ---describeLifecycleHookTypesResponse :: DescribeLifecycleHookTypesResponse-describeLifecycleHookTypesResponse = DescribeLifecycleHookTypesResponse- { _dlhtrLifecycleHookTypes = mempty+-- * 'dlhtrsStatus'+describeLifecycleHookTypesResponse+ :: Int -- ^ 'dlhtrsStatus'+ -> DescribeLifecycleHookTypesResponse+describeLifecycleHookTypesResponse pStatus_ =+ DescribeLifecycleHookTypesResponse'+ { _dlhtrsLifecycleHookTypes = Nothing+ , _dlhtrsStatus = pStatus_ } -- | One or more of the following notification types: ----- 'autoscaling:EC2_INSTANCE_LAUNCHING'------ 'autoscaling:EC2_INSTANCE_TERMINATING'+-- - 'autoscaling:EC2_INSTANCE_LAUNCHING' --+-- - 'autoscaling:EC2_INSTANCE_TERMINATING' ---dlhtrLifecycleHookTypes :: Lens' DescribeLifecycleHookTypesResponse [Text]-dlhtrLifecycleHookTypes =- lens _dlhtrLifecycleHookTypes (\s a -> s { _dlhtrLifecycleHookTypes = a })- . _List--instance ToPath DescribeLifecycleHookTypes where- toPath = const "/"--instance ToQuery DescribeLifecycleHookTypes where- toQuery = const mempty--instance ToHeaders DescribeLifecycleHookTypes--instance AWSRequest DescribeLifecycleHookTypes where- type Sv DescribeLifecycleHookTypes = AutoScaling- type Rs DescribeLifecycleHookTypes = DescribeLifecycleHookTypesResponse-- request = post "DescribeLifecycleHookTypes"- response = xmlResponse+dlhtrsLifecycleHookTypes :: Lens' DescribeLifecycleHookTypesResponse [Text]+dlhtrsLifecycleHookTypes = lens _dlhtrsLifecycleHookTypes (\ s a -> s{_dlhtrsLifecycleHookTypes = a}) . _Default . _Coerce; -instance FromXML DescribeLifecycleHookTypesResponse where- parseXML = withElement "DescribeLifecycleHookTypesResult" $ \x -> DescribeLifecycleHookTypesResponse- <$> x .@? "LifecycleHookTypes" .!@ mempty+-- | The response status code.+dlhtrsStatus :: Lens' DescribeLifecycleHookTypesResponse Int+dlhtrsStatus = lens _dlhtrsStatus (\ s a -> s{_dlhtrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeLifecycleHooks.hs view
@@ -1,129 +1,135 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeLifecycleHooks--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the lifecycle hooks for the specified Auto Scaling group.+-- Describes the lifecycle hooks for the specified Auto Scaling group. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLifecycleHooks.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLifecycleHooks.html AWS API Reference> for DescribeLifecycleHooks. module Network.AWS.AutoScaling.DescribeLifecycleHooks (- -- * Request- DescribeLifecycleHooks- -- ** Request constructor- , describeLifecycleHooks- -- ** Request lenses- , dlhAutoScalingGroupName+ -- * Creating a Request+ describeLifecycleHooks+ , DescribeLifecycleHooks+ -- * Request Lenses , dlhLifecycleHookNames+ , dlhAutoScalingGroupName - -- * Response- , DescribeLifecycleHooksResponse- -- ** Response constructor+ -- * Destructuring the Response , describeLifecycleHooksResponse- -- ** Response lenses- , dlhrLifecycleHooks+ , DescribeLifecycleHooksResponse+ -- * Response Lenses+ , dlhrsLifecycleHooks+ , dlhrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeLifecycleHooks = DescribeLifecycleHooks- { _dlhAutoScalingGroupName :: Text- , _dlhLifecycleHookNames :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeLifecycleHooks' smart constructor.+data DescribeLifecycleHooks = DescribeLifecycleHooks'+ { _dlhLifecycleHookNames :: !(Maybe [Text])+ , _dlhAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeLifecycleHooks' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeLifecycleHooks' with the minimum fields required to make a request. ----- * 'dlhAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dlhLifecycleHookNames' @::@ ['Text']+-- * 'dlhLifecycleHookNames' ---describeLifecycleHooks :: Text -- ^ 'dlhAutoScalingGroupName'- -> DescribeLifecycleHooks-describeLifecycleHooks p1 = DescribeLifecycleHooks- { _dlhAutoScalingGroupName = p1- , _dlhLifecycleHookNames = mempty+-- * 'dlhAutoScalingGroupName'+describeLifecycleHooks+ :: Text -- ^ 'dlhAutoScalingGroupName'+ -> DescribeLifecycleHooks+describeLifecycleHooks pAutoScalingGroupName_ =+ DescribeLifecycleHooks'+ { _dlhLifecycleHookNames = Nothing+ , _dlhAutoScalingGroupName = pAutoScalingGroupName_ } +-- | The names of one or more lifecycle hooks.+dlhLifecycleHookNames :: Lens' DescribeLifecycleHooks [Text]+dlhLifecycleHookNames = lens _dlhLifecycleHookNames (\ s a -> s{_dlhLifecycleHookNames = a}) . _Default . _Coerce;+ -- | The name of the group. dlhAutoScalingGroupName :: Lens' DescribeLifecycleHooks Text-dlhAutoScalingGroupName =- lens _dlhAutoScalingGroupName (\s a -> s { _dlhAutoScalingGroupName = a })+dlhAutoScalingGroupName = lens _dlhAutoScalingGroupName (\ s a -> s{_dlhAutoScalingGroupName = a}); --- | The names of one or more lifecycle hooks.-dlhLifecycleHookNames :: Lens' DescribeLifecycleHooks [Text]-dlhLifecycleHookNames =- lens _dlhLifecycleHookNames (\s a -> s { _dlhLifecycleHookNames = a })- . _List+instance AWSRequest DescribeLifecycleHooks where+ type Sv DescribeLifecycleHooks = AutoScaling+ type Rs DescribeLifecycleHooks =+ DescribeLifecycleHooksResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeLifecycleHooksResult"+ (\ s h x ->+ DescribeLifecycleHooksResponse' <$>+ (x .@? "LifecycleHooks" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -newtype DescribeLifecycleHooksResponse = DescribeLifecycleHooksResponse- { _dlhrLifecycleHooks :: List "member" LifecycleHook- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance ToHeaders DescribeLifecycleHooks where+ toHeaders = const mempty -instance GHC.Exts.IsList DescribeLifecycleHooksResponse where- type Item DescribeLifecycleHooksResponse = LifecycleHook+instance ToPath DescribeLifecycleHooks where+ toPath = const "/" - fromList = DescribeLifecycleHooksResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dlhrLifecycleHooks+instance ToQuery DescribeLifecycleHooks where+ toQuery DescribeLifecycleHooks'{..}+ = mconcat+ ["Action" =:+ ("DescribeLifecycleHooks" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LifecycleHookNames" =:+ toQuery+ (toQueryList "member" <$> _dlhLifecycleHookNames),+ "AutoScalingGroupName" =: _dlhAutoScalingGroupName] --- | 'DescribeLifecycleHooksResponse' constructor.+-- | /See:/ 'describeLifecycleHooksResponse' smart constructor.+data DescribeLifecycleHooksResponse = DescribeLifecycleHooksResponse'+ { _dlhrsLifecycleHooks :: !(Maybe [LifecycleHook])+ , _dlhrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeLifecycleHooksResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dlhrLifecycleHooks' @::@ ['LifecycleHook']+-- * 'dlhrsLifecycleHooks' ---describeLifecycleHooksResponse :: DescribeLifecycleHooksResponse-describeLifecycleHooksResponse = DescribeLifecycleHooksResponse- { _dlhrLifecycleHooks = mempty+-- * 'dlhrsStatus'+describeLifecycleHooksResponse+ :: Int -- ^ 'dlhrsStatus'+ -> DescribeLifecycleHooksResponse+describeLifecycleHooksResponse pStatus_ =+ DescribeLifecycleHooksResponse'+ { _dlhrsLifecycleHooks = Nothing+ , _dlhrsStatus = pStatus_ } -- | The lifecycle hooks for the specified group.-dlhrLifecycleHooks :: Lens' DescribeLifecycleHooksResponse [LifecycleHook]-dlhrLifecycleHooks =- lens _dlhrLifecycleHooks (\s a -> s { _dlhrLifecycleHooks = a })- . _List--instance ToPath DescribeLifecycleHooks where- toPath = const "/"--instance ToQuery DescribeLifecycleHooks where- toQuery DescribeLifecycleHooks{..} = mconcat- [ "AutoScalingGroupName" =? _dlhAutoScalingGroupName- , "LifecycleHookNames" =? _dlhLifecycleHookNames- ]--instance ToHeaders DescribeLifecycleHooks--instance AWSRequest DescribeLifecycleHooks where- type Sv DescribeLifecycleHooks = AutoScaling- type Rs DescribeLifecycleHooks = DescribeLifecycleHooksResponse-- request = post "DescribeLifecycleHooks"- response = xmlResponse+dlhrsLifecycleHooks :: Lens' DescribeLifecycleHooksResponse [LifecycleHook]+dlhrsLifecycleHooks = lens _dlhrsLifecycleHooks (\ s a -> s{_dlhrsLifecycleHooks = a}) . _Default . _Coerce; -instance FromXML DescribeLifecycleHooksResponse where- parseXML = withElement "DescribeLifecycleHooksResult" $ \x -> DescribeLifecycleHooksResponse- <$> x .@? "LifecycleHooks" .!@ mempty+-- | The response status code.+dlhrsStatus :: Lens' DescribeLifecycleHooksResponse Int+dlhrsStatus = lens _dlhrsStatus (\ s a -> s{_dlhrsStatus = a});
+ gen/Network/AWS/AutoScaling/DescribeLoadBalancers.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.DescribeLoadBalancers+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the load balancers for the specified Auto Scaling group.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeLoadBalancers.html AWS API Reference> for DescribeLoadBalancers.+module Network.AWS.AutoScaling.DescribeLoadBalancers+ (+ -- * Creating a Request+ describeLoadBalancers+ , DescribeLoadBalancers+ -- * Request Lenses+ , dlbNextToken+ , dlbMaxRecords+ , dlbAutoScalingGroupName++ -- * Destructuring the Response+ , describeLoadBalancersResponse+ , DescribeLoadBalancersResponse+ -- * Response Lenses+ , dlbrsLoadBalancers+ , dlbrsNextToken+ , dlbrsStatus+ ) where++import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describeLoadBalancers' smart constructor.+data DescribeLoadBalancers = DescribeLoadBalancers'+ { _dlbNextToken :: !(Maybe Text)+ , _dlbMaxRecords :: !(Maybe Int)+ , _dlbAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeLoadBalancers' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dlbNextToken'+--+-- * 'dlbMaxRecords'+--+-- * 'dlbAutoScalingGroupName'+describeLoadBalancers+ :: Text -- ^ 'dlbAutoScalingGroupName'+ -> DescribeLoadBalancers+describeLoadBalancers pAutoScalingGroupName_ =+ DescribeLoadBalancers'+ { _dlbNextToken = Nothing+ , _dlbMaxRecords = Nothing+ , _dlbAutoScalingGroupName = pAutoScalingGroupName_+ }++-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dlbNextToken :: Lens' DescribeLoadBalancers (Maybe Text)+dlbNextToken = lens _dlbNextToken (\ s a -> s{_dlbNextToken = a});++-- | The maximum number of items to return with this call.+dlbMaxRecords :: Lens' DescribeLoadBalancers (Maybe Int)+dlbMaxRecords = lens _dlbMaxRecords (\ s a -> s{_dlbMaxRecords = a});++-- | The name of the group.+dlbAutoScalingGroupName :: Lens' DescribeLoadBalancers Text+dlbAutoScalingGroupName = lens _dlbAutoScalingGroupName (\ s a -> s{_dlbAutoScalingGroupName = a});++instance AWSRequest DescribeLoadBalancers where+ type Sv DescribeLoadBalancers = AutoScaling+ type Rs DescribeLoadBalancers =+ DescribeLoadBalancersResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeLoadBalancersResult"+ (\ s h x ->+ DescribeLoadBalancersResponse' <$>+ (x .@? "LoadBalancers" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "NextToken")+ <*> (pure (fromEnum s)))++instance ToHeaders DescribeLoadBalancers where+ toHeaders = const mempty++instance ToPath DescribeLoadBalancers where+ toPath = const "/"++instance ToQuery DescribeLoadBalancers where+ toQuery DescribeLoadBalancers'{..}+ = mconcat+ ["Action" =: ("DescribeLoadBalancers" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "NextToken" =: _dlbNextToken,+ "MaxRecords" =: _dlbMaxRecords,+ "AutoScalingGroupName" =: _dlbAutoScalingGroupName]++-- | /See:/ 'describeLoadBalancersResponse' smart constructor.+data DescribeLoadBalancersResponse = DescribeLoadBalancersResponse'+ { _dlbrsLoadBalancers :: !(Maybe [LoadBalancerState])+ , _dlbrsNextToken :: !(Maybe Text)+ , _dlbrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeLoadBalancersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dlbrsLoadBalancers'+--+-- * 'dlbrsNextToken'+--+-- * 'dlbrsStatus'+describeLoadBalancersResponse+ :: Int -- ^ 'dlbrsStatus'+ -> DescribeLoadBalancersResponse+describeLoadBalancersResponse pStatus_ =+ DescribeLoadBalancersResponse'+ { _dlbrsLoadBalancers = Nothing+ , _dlbrsNextToken = Nothing+ , _dlbrsStatus = pStatus_+ }++-- | The load balancers.+dlbrsLoadBalancers :: Lens' DescribeLoadBalancersResponse [LoadBalancerState]+dlbrsLoadBalancers = lens _dlbrsLoadBalancers (\ s a -> s{_dlbrsLoadBalancers = a}) . _Default . _Coerce;++-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+dlbrsNextToken :: Lens' DescribeLoadBalancersResponse (Maybe Text)+dlbrsNextToken = lens _dlbrsNextToken (\ s a -> s{_dlbrsNextToken = a});++-- | The response status code.+dlbrsStatus :: Lens' DescribeLoadBalancersResponse Int+dlbrsStatus = lens _dlbrsStatus (\ s a -> s{_dlbrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeMetricCollectionTypes.hs view
@@ -1,130 +1,129 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeMetricCollectionTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list of metrics and a corresponding list of granularities for each--- metric.------ The 'GroupStandbyInstances' metric is not returned by default. You must--- explicitly request it when calling 'EnableMetricsCollection'.---+-- Describes the available CloudWatch metrics for Auto Scaling. --+-- Note that the 'GroupStandbyInstances' metric is not returned by default.+-- You must explicitly request this metric when calling+-- EnableMetricsCollection. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeMetricCollectionTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeMetricCollectionTypes.html AWS API Reference> for DescribeMetricCollectionTypes. module Network.AWS.AutoScaling.DescribeMetricCollectionTypes (- -- * Request- DescribeMetricCollectionTypes- -- ** Request constructor- , describeMetricCollectionTypes+ -- * Creating a Request+ describeMetricCollectionTypes+ , DescribeMetricCollectionTypes - -- * Response- , DescribeMetricCollectionTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeMetricCollectionTypesResponse- -- ** Response lenses- , dmctrGranularities- , dmctrMetrics+ , DescribeMetricCollectionTypesResponse+ -- * Response Lenses+ , dmctrsMetrics+ , dmctrsGranularities+ , dmctrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--data DescribeMetricCollectionTypes = DescribeMetricCollectionTypes- deriving (Eq, Ord, Read, Show, Generic)---- | 'DescribeMetricCollectionTypes' constructor.-describeMetricCollectionTypes :: DescribeMetricCollectionTypes-describeMetricCollectionTypes = DescribeMetricCollectionTypes+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeMetricCollectionTypesResponse = DescribeMetricCollectionTypesResponse- { _dmctrGranularities :: List "member" MetricGranularityType- , _dmctrMetrics :: List "member" MetricCollectionType- } deriving (Eq, Read, Show)+-- | /See:/ 'describeMetricCollectionTypes' smart constructor.+data DescribeMetricCollectionTypes =+ DescribeMetricCollectionTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeMetricCollectionTypesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dmctrGranularities' @::@ ['MetricGranularityType']------ * 'dmctrMetrics' @::@ ['MetricCollectionType']+-- | Creates a value of 'DescribeMetricCollectionTypes' with the minimum fields required to make a request. ---describeMetricCollectionTypesResponse :: DescribeMetricCollectionTypesResponse-describeMetricCollectionTypesResponse = DescribeMetricCollectionTypesResponse- { _dmctrMetrics = mempty- , _dmctrGranularities = mempty- }+describeMetricCollectionTypes+ :: DescribeMetricCollectionTypes+describeMetricCollectionTypes = DescribeMetricCollectionTypes' --- | The granularities for the listed metrics.-dmctrGranularities :: Lens' DescribeMetricCollectionTypesResponse [MetricGranularityType]-dmctrGranularities =- lens _dmctrGranularities (\s a -> s { _dmctrGranularities = a })- . _List+instance AWSRequest DescribeMetricCollectionTypes+ where+ type Sv DescribeMetricCollectionTypes = AutoScaling+ type Rs DescribeMetricCollectionTypes =+ DescribeMetricCollectionTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeMetricCollectionTypesResult"+ (\ s h x ->+ DescribeMetricCollectionTypesResponse' <$>+ (x .@? "Metrics" .!@ mempty >>=+ may (parseXMLList "member"))+ <*>+ (x .@? "Granularities" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) --- | One or more of the following metrics:------ GroupMinSize------ GroupMaxSize------ GroupDesiredCapacity------ GroupInServiceInstances------ GroupPendingInstances------ GroupStandbyInstances------ GroupTerminatingInstances------ GroupTotalInstances------ The 'GroupStandbyInstances' metric is not returned by default. You must--- explicitly request it when calling 'EnableMetricsCollection'.-------dmctrMetrics :: Lens' DescribeMetricCollectionTypesResponse [MetricCollectionType]-dmctrMetrics = lens _dmctrMetrics (\s a -> s { _dmctrMetrics = a }) . _List+instance ToHeaders DescribeMetricCollectionTypes+ where+ toHeaders = const mempty instance ToPath DescribeMetricCollectionTypes where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeMetricCollectionTypes where- toQuery = const mempty+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeMetricCollectionTypes" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)]) -instance ToHeaders DescribeMetricCollectionTypes+-- | /See:/ 'describeMetricCollectionTypesResponse' smart constructor.+data DescribeMetricCollectionTypesResponse = DescribeMetricCollectionTypesResponse'+ { _dmctrsMetrics :: !(Maybe [MetricCollectionType])+ , _dmctrsGranularities :: !(Maybe [MetricGranularityType])+ , _dmctrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeMetricCollectionTypes where- type Sv DescribeMetricCollectionTypes = AutoScaling- type Rs DescribeMetricCollectionTypes = DescribeMetricCollectionTypesResponse+-- | Creates a value of 'DescribeMetricCollectionTypesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dmctrsMetrics'+--+-- * 'dmctrsGranularities'+--+-- * 'dmctrsStatus'+describeMetricCollectionTypesResponse+ :: Int -- ^ 'dmctrsStatus'+ -> DescribeMetricCollectionTypesResponse+describeMetricCollectionTypesResponse pStatus_ =+ DescribeMetricCollectionTypesResponse'+ { _dmctrsMetrics = Nothing+ , _dmctrsGranularities = Nothing+ , _dmctrsStatus = pStatus_+ } - request = post "DescribeMetricCollectionTypes"- response = xmlResponse+-- | One or more metrics.+dmctrsMetrics :: Lens' DescribeMetricCollectionTypesResponse [MetricCollectionType]+dmctrsMetrics = lens _dmctrsMetrics (\ s a -> s{_dmctrsMetrics = a}) . _Default . _Coerce; -instance FromXML DescribeMetricCollectionTypesResponse where- parseXML = withElement "DescribeMetricCollectionTypesResult" $ \x -> DescribeMetricCollectionTypesResponse- <$> x .@? "Granularities" .!@ mempty- <*> x .@? "Metrics" .!@ mempty+-- | The granularities for the metrics.+dmctrsGranularities :: Lens' DescribeMetricCollectionTypesResponse [MetricGranularityType]+dmctrsGranularities = lens _dmctrsGranularities (\ s a -> s{_dmctrsGranularities = a}) . _Default . _Coerce;++-- | The response status code.+dmctrsStatus :: Lens' DescribeMetricCollectionTypesResponse Int+dmctrsStatus = lens _dmctrsStatus (\ s a -> s{_dmctrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeNotificationConfigurations.hs view
@@ -1,152 +1,174 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeNotificationConfigurations--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the notification actions associated with the specified Auto Scaling--- group.+-- Describes the notification actions associated with the specified Auto+-- Scaling group. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeNotificationConfigurations.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeNotificationConfigurations.html AWS API Reference> for DescribeNotificationConfigurations.+--+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeNotificationConfigurations (- -- * Request- DescribeNotificationConfigurations- -- ** Request constructor- , describeNotificationConfigurations- -- ** Request lenses+ -- * Creating a Request+ describeNotificationConfigurations+ , DescribeNotificationConfigurations+ -- * Request Lenses , dncAutoScalingGroupNames- , dncMaxRecords , dncNextToken+ , dncMaxRecords - -- * Response- , DescribeNotificationConfigurationsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeNotificationConfigurationsResponse- -- ** Response lenses- , dncrNextToken- , dncrNotificationConfigurations+ , DescribeNotificationConfigurationsResponse+ -- * Response Lenses+ , dncrsNextToken+ , dncrsStatus+ , dncrsNotificationConfigurations ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeNotificationConfigurations = DescribeNotificationConfigurations- { _dncAutoScalingGroupNames :: List "member" Text- , _dncMaxRecords :: Maybe Int- , _dncNextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeNotificationConfigurations' smart constructor.+data DescribeNotificationConfigurations = DescribeNotificationConfigurations'+ { _dncAutoScalingGroupNames :: !(Maybe [Text])+ , _dncNextToken :: !(Maybe Text)+ , _dncMaxRecords :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeNotificationConfigurations' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeNotificationConfigurations' with the minimum fields required to make a request. ----- * 'dncAutoScalingGroupNames' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dncMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dncAutoScalingGroupNames' ----- * 'dncNextToken' @::@ 'Maybe' 'Text'+-- * 'dncNextToken' ---describeNotificationConfigurations :: DescribeNotificationConfigurations-describeNotificationConfigurations = DescribeNotificationConfigurations- { _dncAutoScalingGroupNames = mempty- , _dncNextToken = Nothing- , _dncMaxRecords = Nothing+-- * 'dncMaxRecords'+describeNotificationConfigurations+ :: DescribeNotificationConfigurations+describeNotificationConfigurations =+ DescribeNotificationConfigurations'+ { _dncAutoScalingGroupNames = Nothing+ , _dncNextToken = Nothing+ , _dncMaxRecords = Nothing } -- | The name of the group. dncAutoScalingGroupNames :: Lens' DescribeNotificationConfigurations [Text]-dncAutoScalingGroupNames =- lens _dncAutoScalingGroupNames- (\s a -> s { _dncAutoScalingGroupNames = a })- . _List+dncAutoScalingGroupNames = lens _dncAutoScalingGroupNames (\ s a -> s{_dncAutoScalingGroupNames = a}) . _Default . _Coerce; +-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dncNextToken :: Lens' DescribeNotificationConfigurations (Maybe Text)+dncNextToken = lens _dncNextToken (\ s a -> s{_dncNextToken = a});+ -- | The maximum number of items to return with this call. dncMaxRecords :: Lens' DescribeNotificationConfigurations (Maybe Int)-dncMaxRecords = lens _dncMaxRecords (\s a -> s { _dncMaxRecords = a })+dncMaxRecords = lens _dncMaxRecords (\ s a -> s{_dncMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dncNextToken :: Lens' DescribeNotificationConfigurations (Maybe Text)-dncNextToken = lens _dncNextToken (\s a -> s { _dncNextToken = a })+instance AWSPager DescribeNotificationConfigurations+ where+ page rq rs+ | stop (rs ^. dncrsNextToken) = Nothing+ | stop (rs ^. dncrsNotificationConfigurations) =+ Nothing+ | otherwise =+ Just $ rq & dncNextToken .~ rs ^. dncrsNextToken -data DescribeNotificationConfigurationsResponse = DescribeNotificationConfigurationsResponse- { _dncrNextToken :: Maybe Text- , _dncrNotificationConfigurations :: List "member" NotificationConfiguration- } deriving (Eq, Read, Show)+instance AWSRequest+ DescribeNotificationConfigurations where+ type Sv DescribeNotificationConfigurations =+ AutoScaling+ type Rs DescribeNotificationConfigurations =+ DescribeNotificationConfigurationsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeNotificationConfigurationsResult"+ (\ s h x ->+ DescribeNotificationConfigurationsResponse' <$>+ (x .@? "NextToken") <*> (pure (fromEnum s)) <*>+ (x .@? "NotificationConfigurations" .!@ mempty >>=+ parseXMLList "member")) --- | 'DescribeNotificationConfigurationsResponse' constructor.+instance ToHeaders DescribeNotificationConfigurations+ where+ toHeaders = const mempty++instance ToPath DescribeNotificationConfigurations+ where+ toPath = const "/"++instance ToQuery DescribeNotificationConfigurations+ where+ toQuery DescribeNotificationConfigurations'{..}+ = mconcat+ ["Action" =:+ ("DescribeNotificationConfigurations" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupNames" =:+ toQuery+ (toQueryList "member" <$> _dncAutoScalingGroupNames),+ "NextToken" =: _dncNextToken,+ "MaxRecords" =: _dncMaxRecords]++-- | /See:/ 'describeNotificationConfigurationsResponse' smart constructor.+data DescribeNotificationConfigurationsResponse = DescribeNotificationConfigurationsResponse'+ { _dncrsNextToken :: !(Maybe Text)+ , _dncrsStatus :: !Int+ , _dncrsNotificationConfigurations :: ![NotificationConfiguration]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeNotificationConfigurationsResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dncrNextToken' @::@ 'Maybe' 'Text'+-- * 'dncrsNextToken' ----- * 'dncrNotificationConfigurations' @::@ ['NotificationConfiguration']+-- * 'dncrsStatus' ---describeNotificationConfigurationsResponse :: DescribeNotificationConfigurationsResponse-describeNotificationConfigurationsResponse = DescribeNotificationConfigurationsResponse- { _dncrNotificationConfigurations = mempty- , _dncrNextToken = Nothing+-- * 'dncrsNotificationConfigurations'+describeNotificationConfigurationsResponse+ :: Int -- ^ 'dncrsStatus'+ -> DescribeNotificationConfigurationsResponse+describeNotificationConfigurationsResponse pStatus_ =+ DescribeNotificationConfigurationsResponse'+ { _dncrsNextToken = Nothing+ , _dncrsStatus = pStatus_+ , _dncrsNotificationConfigurations = mempty } -- | The token to use when requesting the next set of items. If there are no -- additional items to return, the string is empty.-dncrNextToken :: Lens' DescribeNotificationConfigurationsResponse (Maybe Text)-dncrNextToken = lens _dncrNextToken (\s a -> s { _dncrNextToken = a })---- | The notification configurations.-dncrNotificationConfigurations :: Lens' DescribeNotificationConfigurationsResponse [NotificationConfiguration]-dncrNotificationConfigurations =- lens _dncrNotificationConfigurations- (\s a -> s { _dncrNotificationConfigurations = a })- . _List--instance ToPath DescribeNotificationConfigurations where- toPath = const "/"--instance ToQuery DescribeNotificationConfigurations where- toQuery DescribeNotificationConfigurations{..} = mconcat- [ "AutoScalingGroupNames" =? _dncAutoScalingGroupNames- , "MaxRecords" =? _dncMaxRecords- , "NextToken" =? _dncNextToken- ]--instance ToHeaders DescribeNotificationConfigurations--instance AWSRequest DescribeNotificationConfigurations where- type Sv DescribeNotificationConfigurations = AutoScaling- type Rs DescribeNotificationConfigurations = DescribeNotificationConfigurationsResponse-- request = post "DescribeNotificationConfigurations"- response = xmlResponse+dncrsNextToken :: Lens' DescribeNotificationConfigurationsResponse (Maybe Text)+dncrsNextToken = lens _dncrsNextToken (\ s a -> s{_dncrsNextToken = a}); -instance FromXML DescribeNotificationConfigurationsResponse where- parseXML = withElement "DescribeNotificationConfigurationsResult" $ \x -> DescribeNotificationConfigurationsResponse- <$> x .@? "NextToken"- <*> x .@? "NotificationConfigurations" .!@ mempty+-- | The response status code.+dncrsStatus :: Lens' DescribeNotificationConfigurationsResponse Int+dncrsStatus = lens _dncrsStatus (\ s a -> s{_dncrsStatus = a}); -instance AWSPager DescribeNotificationConfigurations where- page rq rs- | stop (rs ^. dncrNextToken) = Nothing- | otherwise = (\x -> rq & dncNextToken ?~ x)- <$> (rs ^. dncrNextToken)+-- | The notification configurations.+dncrsNotificationConfigurations :: Lens' DescribeNotificationConfigurationsResponse [NotificationConfiguration]+dncrsNotificationConfigurations = lens _dncrsNotificationConfigurations (\ s a -> s{_dncrsNotificationConfigurations = a}) . _Coerce;
gen/Network/AWS/AutoScaling/DescribePolicies.hs view
@@ -1,166 +1,188 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribePolicies--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the policies for the specified Auto Scaling group.+-- Describes the policies for the specified Auto Scaling group. ----- You can specify a maximum number of items to be returned with a single call.--- If there are more items to return, the call returns a token. To get the next--- set of items, repeat the call with the returned token in the 'NextToken'--- parameter.+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribePolicies.html AWS API Reference> for DescribePolicies. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribePolicies.html>+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribePolicies (- -- * Request- DescribePolicies- -- ** Request constructor- , describePolicies- -- ** Request lenses- , dp1AutoScalingGroupName- , dp1MaxRecords- , dp1NextToken- , dp1PolicyNames+ -- * Creating a Request+ describePolicies+ , DescribePolicies+ -- * Request Lenses+ , dpsPolicyNames+ , dpsNextToken+ , dpsMaxRecords+ , dpsAutoScalingGroupName+ , dpsPolicyTypes - -- * Response- , DescribePoliciesResponse- -- ** Response constructor+ -- * Destructuring the Response , describePoliciesResponse- -- ** Response lenses- , dprNextToken- , dprScalingPolicies+ , DescribePoliciesResponse+ -- * Response Lenses+ , dprsNextToken+ , dprsScalingPolicies+ , dprsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribePolicies = DescribePolicies- { _dp1AutoScalingGroupName :: Maybe Text- , _dp1MaxRecords :: Maybe Int- , _dp1NextToken :: Maybe Text- , _dp1PolicyNames :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describePolicies' smart constructor.+data DescribePolicies = DescribePolicies'+ { _dpsPolicyNames :: !(Maybe [Text])+ , _dpsNextToken :: !(Maybe Text)+ , _dpsMaxRecords :: !(Maybe Int)+ , _dpsAutoScalingGroupName :: !(Maybe Text)+ , _dpsPolicyTypes :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribePolicies' constructor.+-- | Creates a value of 'DescribePolicies' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dp1AutoScalingGroupName' @::@ 'Maybe' 'Text'+-- * 'dpsPolicyNames' ----- * 'dp1MaxRecords' @::@ 'Maybe' 'Int'+-- * 'dpsNextToken' ----- * 'dp1NextToken' @::@ 'Maybe' 'Text'+-- * 'dpsMaxRecords' ----- * 'dp1PolicyNames' @::@ ['Text']+-- * 'dpsAutoScalingGroupName' ---describePolicies :: DescribePolicies-describePolicies = DescribePolicies- { _dp1AutoScalingGroupName = Nothing- , _dp1PolicyNames = mempty- , _dp1NextToken = Nothing- , _dp1MaxRecords = Nothing+-- * 'dpsPolicyTypes'+describePolicies+ :: DescribePolicies+describePolicies =+ DescribePolicies'+ { _dpsPolicyNames = Nothing+ , _dpsNextToken = Nothing+ , _dpsMaxRecords = Nothing+ , _dpsAutoScalingGroupName = Nothing+ , _dpsPolicyTypes = Nothing } --- | The name of the group.-dp1AutoScalingGroupName :: Lens' DescribePolicies (Maybe Text)-dp1AutoScalingGroupName =- lens _dp1AutoScalingGroupName (\s a -> s { _dp1AutoScalingGroupName = a })+-- | One or more policy names or policy ARNs to be described. If you omit+-- this list, all policy names are described. If an group name is provided,+-- the results are limited to that group. This list is limited to 50 items.+-- If you specify an unknown policy name, it is ignored with no error.+dpsPolicyNames :: Lens' DescribePolicies [Text]+dpsPolicyNames = lens _dpsPolicyNames (\ s a -> s{_dpsPolicyNames = a}) . _Default . _Coerce; +-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dpsNextToken :: Lens' DescribePolicies (Maybe Text)+dpsNextToken = lens _dpsNextToken (\ s a -> s{_dpsNextToken = a});+ -- | The maximum number of items to be returned with each call.-dp1MaxRecords :: Lens' DescribePolicies (Maybe Int)-dp1MaxRecords = lens _dp1MaxRecords (\s a -> s { _dp1MaxRecords = a })+dpsMaxRecords :: Lens' DescribePolicies (Maybe Int)+dpsMaxRecords = lens _dpsMaxRecords (\ s a -> s{_dpsMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dp1NextToken :: Lens' DescribePolicies (Maybe Text)-dp1NextToken = lens _dp1NextToken (\s a -> s { _dp1NextToken = a })+-- | The name of the group.+dpsAutoScalingGroupName :: Lens' DescribePolicies (Maybe Text)+dpsAutoScalingGroupName = lens _dpsAutoScalingGroupName (\ s a -> s{_dpsAutoScalingGroupName = a}); --- | One or more policy names or policy ARNs to be described. If you omit this--- list, all policy names are described. If an group name is provided, the--- results are limited to that group. This list is limited to 50 items. If you--- specify an unknown policy name, it is ignored with no error.-dp1PolicyNames :: Lens' DescribePolicies [Text]-dp1PolicyNames = lens _dp1PolicyNames (\s a -> s { _dp1PolicyNames = a }) . _List+-- | One or more policy types. Valid values are 'SimpleScaling' and+-- 'StepScaling'.+dpsPolicyTypes :: Lens' DescribePolicies [Text]+dpsPolicyTypes = lens _dpsPolicyTypes (\ s a -> s{_dpsPolicyTypes = a}) . _Default . _Coerce; -data DescribePoliciesResponse = DescribePoliciesResponse- { _dprNextToken :: Maybe Text- , _dprScalingPolicies :: List "member" ScalingPolicy- } deriving (Eq, Read, Show)+instance AWSPager DescribePolicies where+ page rq rs+ | stop (rs ^. dprsNextToken) = Nothing+ | stop (rs ^. dprsScalingPolicies) = Nothing+ | otherwise =+ Just $ rq & dpsNextToken .~ rs ^. dprsNextToken --- | 'DescribePoliciesResponse' constructor.+instance AWSRequest DescribePolicies where+ type Sv DescribePolicies = AutoScaling+ type Rs DescribePolicies = DescribePoliciesResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribePoliciesResult"+ (\ s h x ->+ DescribePoliciesResponse' <$>+ (x .@? "NextToken") <*>+ (x .@? "ScalingPolicies" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s)))++instance ToHeaders DescribePolicies where+ toHeaders = const mempty++instance ToPath DescribePolicies where+ toPath = const "/"++instance ToQuery DescribePolicies where+ toQuery DescribePolicies'{..}+ = mconcat+ ["Action" =: ("DescribePolicies" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "PolicyNames" =:+ toQuery (toQueryList "member" <$> _dpsPolicyNames),+ "NextToken" =: _dpsNextToken,+ "MaxRecords" =: _dpsMaxRecords,+ "AutoScalingGroupName" =: _dpsAutoScalingGroupName,+ "PolicyTypes" =:+ toQuery (toQueryList "member" <$> _dpsPolicyTypes)]++-- | /See:/ 'describePoliciesResponse' smart constructor.+data DescribePoliciesResponse = DescribePoliciesResponse'+ { _dprsNextToken :: !(Maybe Text)+ , _dprsScalingPolicies :: !(Maybe [ScalingPolicy])+ , _dprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribePoliciesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dprNextToken' @::@ 'Maybe' 'Text'+-- * 'dprsNextToken' ----- * 'dprScalingPolicies' @::@ ['ScalingPolicy']+-- * 'dprsScalingPolicies' ---describePoliciesResponse :: DescribePoliciesResponse-describePoliciesResponse = DescribePoliciesResponse- { _dprScalingPolicies = mempty- , _dprNextToken = Nothing+-- * 'dprsStatus'+describePoliciesResponse+ :: Int -- ^ 'dprsStatus'+ -> DescribePoliciesResponse+describePoliciesResponse pStatus_ =+ DescribePoliciesResponse'+ { _dprsNextToken = Nothing+ , _dprsScalingPolicies = Nothing+ , _dprsStatus = pStatus_ } -- | The token to use when requesting the next set of items. If there are no -- additional items to return, the string is empty.-dprNextToken :: Lens' DescribePoliciesResponse (Maybe Text)-dprNextToken = lens _dprNextToken (\s a -> s { _dprNextToken = a })+dprsNextToken :: Lens' DescribePoliciesResponse (Maybe Text)+dprsNextToken = lens _dprsNextToken (\ s a -> s{_dprsNextToken = a}); -- | The scaling policies.-dprScalingPolicies :: Lens' DescribePoliciesResponse [ScalingPolicy]-dprScalingPolicies =- lens _dprScalingPolicies (\s a -> s { _dprScalingPolicies = a })- . _List--instance ToPath DescribePolicies where- toPath = const "/"--instance ToQuery DescribePolicies where- toQuery DescribePolicies{..} = mconcat- [ "AutoScalingGroupName" =? _dp1AutoScalingGroupName- , "MaxRecords" =? _dp1MaxRecords- , "NextToken" =? _dp1NextToken- , "PolicyNames" =? _dp1PolicyNames- ]--instance ToHeaders DescribePolicies--instance AWSRequest DescribePolicies where- type Sv DescribePolicies = AutoScaling- type Rs DescribePolicies = DescribePoliciesResponse-- request = post "DescribePolicies"- response = xmlResponse--instance FromXML DescribePoliciesResponse where- parseXML = withElement "DescribePoliciesResult" $ \x -> DescribePoliciesResponse- <$> x .@? "NextToken"- <*> x .@? "ScalingPolicies" .!@ mempty+dprsScalingPolicies :: Lens' DescribePoliciesResponse [ScalingPolicy]+dprsScalingPolicies = lens _dprsScalingPolicies (\ s a -> s{_dprsScalingPolicies = a}) . _Default . _Coerce; -instance AWSPager DescribePolicies where- page rq rs- | stop (rs ^. dprNextToken) = Nothing- | otherwise = (\x -> rq & dp1NextToken ?~ x)- <$> (rs ^. dprNextToken)+-- | The response status code.+dprsStatus :: Lens' DescribePoliciesResponse Int+dprsStatus = lens _dprsStatus (\ s a -> s{_dprsStatus = a});
gen/Network/AWS/AutoScaling/DescribeScalingActivities.hs view
@@ -1,169 +1,181 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeScalingActivities--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes one or more scaling activities for the specified Auto Scaling--- group. If you omit the 'ActivityIds', the call returns all activities from the--- past six weeks. Activities are sorted by the start time. Activities still in--- progress appear first on the list.+-- Describes one or more scaling activities for the specified Auto Scaling+-- group. If you omit the 'ActivityIds', the call returns all activities+-- from the past six weeks. Activities are sorted by the start time.+-- Activities still in progress appear first on the list. ----- You can specify a maximum number of items to be returned with a single call.--- If there are more items to return, the call returns a token. To get the next--- set of items, repeat the call with the returned token in the 'NextToken'--- parameter.+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScalingActivities.html AWS API Reference> for DescribeScalingActivities. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScalingActivities.html>+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeScalingActivities (- -- * Request- DescribeScalingActivities- -- ** Request constructor- , describeScalingActivities- -- ** Request lenses- , dsa2ActivityIds- , dsa2AutoScalingGroupName- , dsa2MaxRecords- , dsa2NextToken+ -- * Creating a Request+ describeScalingActivities+ , DescribeScalingActivities+ -- * Request Lenses+ , desNextToken+ , desMaxRecords+ , desAutoScalingGroupName+ , desActivityIds - -- * Response- , DescribeScalingActivitiesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeScalingActivitiesResponse- -- ** Response lenses- , dsar1Activities- , dsar1NextToken+ , DescribeScalingActivitiesResponse+ -- * Response Lenses+ , dsasrsNextToken+ , dsasrsStatus+ , dsasrsActivities ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeScalingActivities = DescribeScalingActivities- { _dsa2ActivityIds :: List "member" Text- , _dsa2AutoScalingGroupName :: Maybe Text- , _dsa2MaxRecords :: Maybe Int- , _dsa2NextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeScalingActivities' smart constructor.+data DescribeScalingActivities = DescribeScalingActivities'+ { _desNextToken :: !(Maybe Text)+ , _desMaxRecords :: !(Maybe Int)+ , _desAutoScalingGroupName :: !(Maybe Text)+ , _desActivityIds :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeScalingActivities' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeScalingActivities' with the minimum fields required to make a request. ----- * 'dsa2ActivityIds' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsa2AutoScalingGroupName' @::@ 'Maybe' 'Text'+-- * 'desNextToken' ----- * 'dsa2MaxRecords' @::@ 'Maybe' 'Int'+-- * 'desMaxRecords' ----- * 'dsa2NextToken' @::@ 'Maybe' 'Text'+-- * 'desAutoScalingGroupName' ---describeScalingActivities :: DescribeScalingActivities-describeScalingActivities = DescribeScalingActivities- { _dsa2ActivityIds = mempty- , _dsa2AutoScalingGroupName = Nothing- , _dsa2MaxRecords = Nothing- , _dsa2NextToken = Nothing+-- * 'desActivityIds'+describeScalingActivities+ :: DescribeScalingActivities+describeScalingActivities =+ DescribeScalingActivities'+ { _desNextToken = Nothing+ , _desMaxRecords = Nothing+ , _desAutoScalingGroupName = Nothing+ , _desActivityIds = Nothing } --- | A list containing the activity IDs of the desired scaling activities. If--- this list is omitted, all activities are described. If an 'AutoScalingGroupName'--- is provided, the results are limited to that group. The list of requested--- activities cannot contain more than 50 items. If unknown activities are--- requested, they are ignored with no error.-dsa2ActivityIds :: Lens' DescribeScalingActivities [Text]-dsa2ActivityIds = lens _dsa2ActivityIds (\s a -> s { _dsa2ActivityIds = a }) . _List---- | The name of the group.-dsa2AutoScalingGroupName :: Lens' DescribeScalingActivities (Maybe Text)-dsa2AutoScalingGroupName =- lens _dsa2AutoScalingGroupName- (\s a -> s { _dsa2AutoScalingGroupName = a })+-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+desNextToken :: Lens' DescribeScalingActivities (Maybe Text)+desNextToken = lens _desNextToken (\ s a -> s{_desNextToken = a}); -- | The maximum number of items to return with this call.-dsa2MaxRecords :: Lens' DescribeScalingActivities (Maybe Int)-dsa2MaxRecords = lens _dsa2MaxRecords (\s a -> s { _dsa2MaxRecords = a })+desMaxRecords :: Lens' DescribeScalingActivities (Maybe Int)+desMaxRecords = lens _desMaxRecords (\ s a -> s{_desMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dsa2NextToken :: Lens' DescribeScalingActivities (Maybe Text)-dsa2NextToken = lens _dsa2NextToken (\s a -> s { _dsa2NextToken = a })+-- | The name of the group.+desAutoScalingGroupName :: Lens' DescribeScalingActivities (Maybe Text)+desAutoScalingGroupName = lens _desAutoScalingGroupName (\ s a -> s{_desAutoScalingGroupName = a}); -data DescribeScalingActivitiesResponse = DescribeScalingActivitiesResponse- { _dsar1Activities :: List "member" Activity- , _dsar1NextToken :: Maybe Text- } deriving (Eq, Read, Show)+-- | The activity IDs of the desired scaling activities. If this list is+-- omitted, all activities are described. If the 'AutoScalingGroupName'+-- parameter is provided, the results are limited to that group. The list+-- of requested activities cannot contain more than 50 items. If unknown+-- activities are requested, they are ignored with no error.+desActivityIds :: Lens' DescribeScalingActivities [Text]+desActivityIds = lens _desActivityIds (\ s a -> s{_desActivityIds = a}) . _Default . _Coerce; --- | 'DescribeScalingActivitiesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dsar1Activities' @::@ ['Activity']------ * 'dsar1NextToken' @::@ 'Maybe' 'Text'----describeScalingActivitiesResponse :: DescribeScalingActivitiesResponse-describeScalingActivitiesResponse = DescribeScalingActivitiesResponse- { _dsar1Activities = mempty- , _dsar1NextToken = Nothing- }+instance AWSPager DescribeScalingActivities where+ page rq rs+ | stop (rs ^. dsasrsNextToken) = Nothing+ | stop (rs ^. dsasrsActivities) = Nothing+ | otherwise =+ Just $ rq & desNextToken .~ rs ^. dsasrsNextToken --- | The scaling activities.-dsar1Activities :: Lens' DescribeScalingActivitiesResponse [Activity]-dsar1Activities = lens _dsar1Activities (\s a -> s { _dsar1Activities = a }) . _List+instance AWSRequest DescribeScalingActivities where+ type Sv DescribeScalingActivities = AutoScaling+ type Rs DescribeScalingActivities =+ DescribeScalingActivitiesResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeScalingActivitiesResult"+ (\ s h x ->+ DescribeScalingActivitiesResponse' <$>+ (x .@? "NextToken") <*> (pure (fromEnum s)) <*>+ (x .@? "Activities" .!@ mempty >>=+ parseXMLList "member")) --- | The token to use when requesting the next set of items. If there are no--- additional items to return, the string is empty.-dsar1NextToken :: Lens' DescribeScalingActivitiesResponse (Maybe Text)-dsar1NextToken = lens _dsar1NextToken (\s a -> s { _dsar1NextToken = a })+instance ToHeaders DescribeScalingActivities where+ toHeaders = const mempty instance ToPath DescribeScalingActivities where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeScalingActivities where- toQuery DescribeScalingActivities{..} = mconcat- [ "ActivityIds" =? _dsa2ActivityIds- , "AutoScalingGroupName" =? _dsa2AutoScalingGroupName- , "MaxRecords" =? _dsa2MaxRecords- , "NextToken" =? _dsa2NextToken- ]+ toQuery DescribeScalingActivities'{..}+ = mconcat+ ["Action" =:+ ("DescribeScalingActivities" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "NextToken" =: _desNextToken,+ "MaxRecords" =: _desMaxRecords,+ "AutoScalingGroupName" =: _desAutoScalingGroupName,+ "ActivityIds" =:+ toQuery (toQueryList "member" <$> _desActivityIds)] -instance ToHeaders DescribeScalingActivities+-- | /See:/ 'describeScalingActivitiesResponse' smart constructor.+data DescribeScalingActivitiesResponse = DescribeScalingActivitiesResponse'+ { _dsasrsNextToken :: !(Maybe Text)+ , _dsasrsStatus :: !Int+ , _dsasrsActivities :: ![Activity]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeScalingActivities where- type Sv DescribeScalingActivities = AutoScaling- type Rs DescribeScalingActivities = DescribeScalingActivitiesResponse+-- | Creates a value of 'DescribeScalingActivitiesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsasrsNextToken'+--+-- * 'dsasrsStatus'+--+-- * 'dsasrsActivities'+describeScalingActivitiesResponse+ :: Int -- ^ 'dsasrsStatus'+ -> DescribeScalingActivitiesResponse+describeScalingActivitiesResponse pStatus_ =+ DescribeScalingActivitiesResponse'+ { _dsasrsNextToken = Nothing+ , _dsasrsStatus = pStatus_+ , _dsasrsActivities = mempty+ } - request = post "DescribeScalingActivities"- response = xmlResponse+-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+dsasrsNextToken :: Lens' DescribeScalingActivitiesResponse (Maybe Text)+dsasrsNextToken = lens _dsasrsNextToken (\ s a -> s{_dsasrsNextToken = a}); -instance FromXML DescribeScalingActivitiesResponse where- parseXML = withElement "DescribeScalingActivitiesResult" $ \x -> DescribeScalingActivitiesResponse- <$> x .@? "Activities" .!@ mempty- <*> x .@? "NextToken"+-- | The response status code.+dsasrsStatus :: Lens' DescribeScalingActivitiesResponse Int+dsasrsStatus = lens _dsasrsStatus (\ s a -> s{_dsasrsStatus = a}); -instance AWSPager DescribeScalingActivities where- page rq rs- | stop (rs ^. dsar1NextToken) = Nothing- | otherwise = (\x -> rq & dsa2NextToken ?~ x)- <$> (rs ^. dsar1NextToken)+-- | The scaling activities.+dsasrsActivities :: Lens' DescribeScalingActivitiesResponse [Activity]+dsasrsActivities = lens _dsasrsActivities (\ s a -> s{_dsasrsActivities = a}) . _Coerce;
gen/Network/AWS/AutoScaling/DescribeScalingProcessTypes.hs view
@@ -1,97 +1,112 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeScalingProcessTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns scaling process types for use in the 'ResumeProcesses' and 'SuspendProcesses' actions.+-- Describes the scaling process types for use with ResumeProcesses and+-- SuspendProcesses. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScalingProcessTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScalingProcessTypes.html AWS API Reference> for DescribeScalingProcessTypes. module Network.AWS.AutoScaling.DescribeScalingProcessTypes (- -- * Request- DescribeScalingProcessTypes- -- ** Request constructor- , describeScalingProcessTypes+ -- * Creating a Request+ describeScalingProcessTypes+ , DescribeScalingProcessTypes - -- * Response- , DescribeScalingProcessTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeScalingProcessTypesResponse- -- ** Response lenses- , dsptrProcesses+ , DescribeScalingProcessTypesResponse+ -- * Response Lenses+ , dsptrsProcesses+ , dsptrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeScalingProcessTypes = DescribeScalingProcessTypes- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'describeScalingProcessTypes' smart constructor.+data DescribeScalingProcessTypes =+ DescribeScalingProcessTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeScalingProcessTypes' constructor.-describeScalingProcessTypes :: DescribeScalingProcessTypes-describeScalingProcessTypes = DescribeScalingProcessTypes+-- | Creates a value of 'DescribeScalingProcessTypes' with the minimum fields required to make a request.+--+describeScalingProcessTypes+ :: DescribeScalingProcessTypes+describeScalingProcessTypes = DescribeScalingProcessTypes' -newtype DescribeScalingProcessTypesResponse = DescribeScalingProcessTypesResponse- { _dsptrProcesses :: List "member" ProcessType- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest DescribeScalingProcessTypes where+ type Sv DescribeScalingProcessTypes = AutoScaling+ type Rs DescribeScalingProcessTypes =+ DescribeScalingProcessTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeScalingProcessTypesResult"+ (\ s h x ->+ DescribeScalingProcessTypesResponse' <$>+ (x .@? "Processes" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList DescribeScalingProcessTypesResponse where- type Item DescribeScalingProcessTypesResponse = ProcessType+instance ToHeaders DescribeScalingProcessTypes where+ toHeaders = const mempty - fromList = DescribeScalingProcessTypesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dsptrProcesses+instance ToPath DescribeScalingProcessTypes where+ toPath = const "/" --- | 'DescribeScalingProcessTypesResponse' constructor.+instance ToQuery DescribeScalingProcessTypes where+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeScalingProcessTypes" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)])++-- | /See:/ 'describeScalingProcessTypesResponse' smart constructor.+data DescribeScalingProcessTypesResponse = DescribeScalingProcessTypesResponse'+ { _dsptrsProcesses :: !(Maybe [ProcessType])+ , _dsptrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeScalingProcessTypesResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsptrProcesses' @::@ ['ProcessType']+-- * 'dsptrsProcesses' ---describeScalingProcessTypesResponse :: DescribeScalingProcessTypesResponse-describeScalingProcessTypesResponse = DescribeScalingProcessTypesResponse- { _dsptrProcesses = mempty+-- * 'dsptrsStatus'+describeScalingProcessTypesResponse+ :: Int -- ^ 'dsptrsStatus'+ -> DescribeScalingProcessTypesResponse+describeScalingProcessTypesResponse pStatus_ =+ DescribeScalingProcessTypesResponse'+ { _dsptrsProcesses = Nothing+ , _dsptrsStatus = pStatus_ } -- | The names of the process types.-dsptrProcesses :: Lens' DescribeScalingProcessTypesResponse [ProcessType]-dsptrProcesses = lens _dsptrProcesses (\s a -> s { _dsptrProcesses = a }) . _List--instance ToPath DescribeScalingProcessTypes where- toPath = const "/"--instance ToQuery DescribeScalingProcessTypes where- toQuery = const mempty--instance ToHeaders DescribeScalingProcessTypes--instance AWSRequest DescribeScalingProcessTypes where- type Sv DescribeScalingProcessTypes = AutoScaling- type Rs DescribeScalingProcessTypes = DescribeScalingProcessTypesResponse-- request = post "DescribeScalingProcessTypes"- response = xmlResponse+dsptrsProcesses :: Lens' DescribeScalingProcessTypesResponse [ProcessType]+dsptrsProcesses = lens _dsptrsProcesses (\ s a -> s{_dsptrsProcesses = a}) . _Default . _Coerce; -instance FromXML DescribeScalingProcessTypesResponse where- parseXML = withElement "DescribeScalingProcessTypesResult" $ \x -> DescribeScalingProcessTypesResponse- <$> x .@? "Processes" .!@ mempty+-- | The response status code.+dsptrsStatus :: Lens' DescribeScalingProcessTypesResponse Int+dsptrsStatus = lens _dsptrsStatus (\ s a -> s{_dsptrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeScheduledActions.hs view
@@ -1,192 +1,208 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeScheduledActions--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Lists the actions scheduled for your Auto Scaling group that haven't been--- executed. To list the actions that were already executed, use 'DescribeScalingActivities'.+-- Describes the actions scheduled for your Auto Scaling group that+-- haven\'t run. To describe the actions that have already run, use+-- DescribeScalingActivities. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScheduledActions.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeScheduledActions.html AWS API Reference> for DescribeScheduledActions.+--+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeScheduledActions (- -- * Request- DescribeScheduledActions- -- ** Request constructor- , describeScheduledActions- -- ** Request lenses- , dsa1AutoScalingGroupName- , dsa1EndTime- , dsa1MaxRecords- , dsa1NextToken- , dsa1ScheduledActionNames- , dsa1StartTime+ -- * Creating a Request+ describeScheduledActions+ , DescribeScheduledActions+ -- * Request Lenses+ , dsasStartTime+ , dsasNextToken+ , dsasMaxRecords+ , dsasEndTime+ , dsasAutoScalingGroupName+ , dsasScheduledActionNames - -- * Response- , DescribeScheduledActionsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeScheduledActionsResponse- -- ** Response lenses- , dsarNextToken- , dsarScheduledUpdateGroupActions+ , DescribeScheduledActionsResponse+ -- * Response Lenses+ , dsarsScheduledUpdateGroupActions+ , dsarsNextToken+ , dsarsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeScheduledActions = DescribeScheduledActions- { _dsa1AutoScalingGroupName :: Maybe Text- , _dsa1EndTime :: Maybe ISO8601- , _dsa1MaxRecords :: Maybe Int- , _dsa1NextToken :: Maybe Text- , _dsa1ScheduledActionNames :: List "member" Text- , _dsa1StartTime :: Maybe ISO8601- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'describeScheduledActions' smart constructor.+data DescribeScheduledActions = DescribeScheduledActions'+ { _dsasStartTime :: !(Maybe ISO8601)+ , _dsasNextToken :: !(Maybe Text)+ , _dsasMaxRecords :: !(Maybe Int)+ , _dsasEndTime :: !(Maybe ISO8601)+ , _dsasAutoScalingGroupName :: !(Maybe Text)+ , _dsasScheduledActionNames :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeScheduledActions' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeScheduledActions' with the minimum fields required to make a request. ----- * 'dsa1AutoScalingGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsa1EndTime' @::@ 'Maybe' 'UTCTime'+-- * 'dsasStartTime' ----- * 'dsa1MaxRecords' @::@ 'Maybe' 'Int'+-- * 'dsasNextToken' ----- * 'dsa1NextToken' @::@ 'Maybe' 'Text'+-- * 'dsasMaxRecords' ----- * 'dsa1ScheduledActionNames' @::@ ['Text']+-- * 'dsasEndTime' ----- * 'dsa1StartTime' @::@ 'Maybe' 'UTCTime'+-- * 'dsasAutoScalingGroupName' ---describeScheduledActions :: DescribeScheduledActions-describeScheduledActions = DescribeScheduledActions- { _dsa1AutoScalingGroupName = Nothing- , _dsa1ScheduledActionNames = mempty- , _dsa1StartTime = Nothing- , _dsa1EndTime = Nothing- , _dsa1NextToken = Nothing- , _dsa1MaxRecords = Nothing+-- * 'dsasScheduledActionNames'+describeScheduledActions+ :: DescribeScheduledActions+describeScheduledActions =+ DescribeScheduledActions'+ { _dsasStartTime = Nothing+ , _dsasNextToken = Nothing+ , _dsasMaxRecords = Nothing+ , _dsasEndTime = Nothing+ , _dsasAutoScalingGroupName = Nothing+ , _dsasScheduledActionNames = Nothing } --- | The name of the group.-dsa1AutoScalingGroupName :: Lens' DescribeScheduledActions (Maybe Text)-dsa1AutoScalingGroupName =- lens _dsa1AutoScalingGroupName- (\s a -> s { _dsa1AutoScalingGroupName = a })+-- | The earliest scheduled start time to return. If scheduled action names+-- are provided, this parameter is ignored.+dsasStartTime :: Lens' DescribeScheduledActions (Maybe UTCTime)+dsasStartTime = lens _dsasStartTime (\ s a -> s{_dsasStartTime = a}) . mapping _Time; --- | The latest scheduled start time to return. If scheduled action names are--- provided, this parameter is ignored.-dsa1EndTime :: Lens' DescribeScheduledActions (Maybe UTCTime)-dsa1EndTime = lens _dsa1EndTime (\s a -> s { _dsa1EndTime = a }) . mapping _Time+-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dsasNextToken :: Lens' DescribeScheduledActions (Maybe Text)+dsasNextToken = lens _dsasNextToken (\ s a -> s{_dsasNextToken = a}); -- | The maximum number of items to return with this call.-dsa1MaxRecords :: Lens' DescribeScheduledActions (Maybe Int)-dsa1MaxRecords = lens _dsa1MaxRecords (\s a -> s { _dsa1MaxRecords = a })+dsasMaxRecords :: Lens' DescribeScheduledActions (Maybe Int)+dsasMaxRecords = lens _dsasMaxRecords (\ s a -> s{_dsasMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dsa1NextToken :: Lens' DescribeScheduledActions (Maybe Text)-dsa1NextToken = lens _dsa1NextToken (\s a -> s { _dsa1NextToken = a })+-- | The latest scheduled start time to return. If scheduled action names are+-- provided, this parameter is ignored.+dsasEndTime :: Lens' DescribeScheduledActions (Maybe UTCTime)+dsasEndTime = lens _dsasEndTime (\ s a -> s{_dsasEndTime = a}) . mapping _Time; +-- | The name of the group.+dsasAutoScalingGroupName :: Lens' DescribeScheduledActions (Maybe Text)+dsasAutoScalingGroupName = lens _dsasAutoScalingGroupName (\ s a -> s{_dsasAutoScalingGroupName = a});+ -- | Describes one or more scheduled actions. If you omit this list, the call--- describes all scheduled actions. If you specify an unknown scheduled action--- it is ignored with no error.+-- describes all scheduled actions. If you specify an unknown scheduled+-- action it is ignored with no error. -- -- You can describe up to a maximum of 50 instances with a single call. If--- there are more items to return, the call returns a token. To get the next set--- of items, repeat the call with the returned token in the 'NextToken' parameter.-dsa1ScheduledActionNames :: Lens' DescribeScheduledActions [Text]-dsa1ScheduledActionNames =- lens _dsa1ScheduledActionNames- (\s a -> s { _dsa1ScheduledActionNames = a })- . _List---- | The earliest scheduled start time to return. If scheduled action names are--- provided, this parameter is ignored.-dsa1StartTime :: Lens' DescribeScheduledActions (Maybe UTCTime)-dsa1StartTime = lens _dsa1StartTime (\s a -> s { _dsa1StartTime = a }) . mapping _Time--data DescribeScheduledActionsResponse = DescribeScheduledActionsResponse- { _dsarNextToken :: Maybe Text- , _dsarScheduledUpdateGroupActions :: List "member" ScheduledUpdateGroupAction- } deriving (Eq, Read, Show)+-- there are more items to return, the call returns a token. To get the+-- next set of items, repeat the call with the returned token in the+-- 'NextToken' parameter.+dsasScheduledActionNames :: Lens' DescribeScheduledActions [Text]+dsasScheduledActionNames = lens _dsasScheduledActionNames (\ s a -> s{_dsasScheduledActionNames = a}) . _Default . _Coerce; --- | 'DescribeScheduledActionsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dsarNextToken' @::@ 'Maybe' 'Text'------ * 'dsarScheduledUpdateGroupActions' @::@ ['ScheduledUpdateGroupAction']----describeScheduledActionsResponse :: DescribeScheduledActionsResponse-describeScheduledActionsResponse = DescribeScheduledActionsResponse- { _dsarScheduledUpdateGroupActions = mempty- , _dsarNextToken = Nothing- }+instance AWSPager DescribeScheduledActions where+ page rq rs+ | stop (rs ^. dsarsNextToken) = Nothing+ | stop (rs ^. dsarsScheduledUpdateGroupActions) =+ Nothing+ | otherwise =+ Just $ rq & dsasNextToken .~ rs ^. dsarsNextToken --- | The token to use when requesting the next set of items. If there are no--- additional items to return, the string is empty.-dsarNextToken :: Lens' DescribeScheduledActionsResponse (Maybe Text)-dsarNextToken = lens _dsarNextToken (\s a -> s { _dsarNextToken = a })+instance AWSRequest DescribeScheduledActions where+ type Sv DescribeScheduledActions = AutoScaling+ type Rs DescribeScheduledActions =+ DescribeScheduledActionsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeScheduledActionsResult"+ (\ s h x ->+ DescribeScheduledActionsResponse' <$>+ (x .@? "ScheduledUpdateGroupActions" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "NextToken")+ <*> (pure (fromEnum s))) --- | The scheduled actions.-dsarScheduledUpdateGroupActions :: Lens' DescribeScheduledActionsResponse [ScheduledUpdateGroupAction]-dsarScheduledUpdateGroupActions =- lens _dsarScheduledUpdateGroupActions- (\s a -> s { _dsarScheduledUpdateGroupActions = a })- . _List+instance ToHeaders DescribeScheduledActions where+ toHeaders = const mempty instance ToPath DescribeScheduledActions where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeScheduledActions where- toQuery DescribeScheduledActions{..} = mconcat- [ "AutoScalingGroupName" =? _dsa1AutoScalingGroupName- , "EndTime" =? _dsa1EndTime- , "MaxRecords" =? _dsa1MaxRecords- , "NextToken" =? _dsa1NextToken- , "ScheduledActionNames" =? _dsa1ScheduledActionNames- , "StartTime" =? _dsa1StartTime- ]+ toQuery DescribeScheduledActions'{..}+ = mconcat+ ["Action" =:+ ("DescribeScheduledActions" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "StartTime" =: _dsasStartTime,+ "NextToken" =: _dsasNextToken,+ "MaxRecords" =: _dsasMaxRecords,+ "EndTime" =: _dsasEndTime,+ "AutoScalingGroupName" =: _dsasAutoScalingGroupName,+ "ScheduledActionNames" =:+ toQuery+ (toQueryList "member" <$> _dsasScheduledActionNames)] -instance ToHeaders DescribeScheduledActions+-- | /See:/ 'describeScheduledActionsResponse' smart constructor.+data DescribeScheduledActionsResponse = DescribeScheduledActionsResponse'+ { _dsarsScheduledUpdateGroupActions :: !(Maybe [ScheduledUpdateGroupAction])+ , _dsarsNextToken :: !(Maybe Text)+ , _dsarsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeScheduledActions where- type Sv DescribeScheduledActions = AutoScaling- type Rs DescribeScheduledActions = DescribeScheduledActionsResponse+-- | Creates a value of 'DescribeScheduledActionsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsarsScheduledUpdateGroupActions'+--+-- * 'dsarsNextToken'+--+-- * 'dsarsStatus'+describeScheduledActionsResponse+ :: Int -- ^ 'dsarsStatus'+ -> DescribeScheduledActionsResponse+describeScheduledActionsResponse pStatus_ =+ DescribeScheduledActionsResponse'+ { _dsarsScheduledUpdateGroupActions = Nothing+ , _dsarsNextToken = Nothing+ , _dsarsStatus = pStatus_+ } - request = post "DescribeScheduledActions"- response = xmlResponse+-- | The scheduled actions.+dsarsScheduledUpdateGroupActions :: Lens' DescribeScheduledActionsResponse [ScheduledUpdateGroupAction]+dsarsScheduledUpdateGroupActions = lens _dsarsScheduledUpdateGroupActions (\ s a -> s{_dsarsScheduledUpdateGroupActions = a}) . _Default . _Coerce; -instance FromXML DescribeScheduledActionsResponse where- parseXML = withElement "DescribeScheduledActionsResult" $ \x -> DescribeScheduledActionsResponse- <$> x .@? "NextToken"- <*> x .@? "ScheduledUpdateGroupActions" .!@ mempty+-- | The token to use when requesting the next set of items. If there are no+-- additional items to return, the string is empty.+dsarsNextToken :: Lens' DescribeScheduledActionsResponse (Maybe Text)+dsarsNextToken = lens _dsarsNextToken (\ s a -> s{_dsarsNextToken = a}); -instance AWSPager DescribeScheduledActions where- page rq rs- | stop (rs ^. dsarNextToken) = Nothing- | otherwise = (\x -> rq & dsa1NextToken ?~ x)- <$> (rs ^. dsarNextToken)+-- | The response status code.+dsarsStatus :: Lens' DescribeScheduledActionsResponse Int+dsarsStatus = lens _dsarsStatus (\ s a -> s{_dsarsStatus = a});
gen/Network/AWS/AutoScaling/DescribeTags.hs view
@@ -1,157 +1,172 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeTags--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Describes the specified tags.+-- Describes the specified tags. ----- You can use filters to limit the results. For example, you can query for the--- tags for a specific Auto Scaling group. You can specify multiple values for a--- filter. A tag must match at least one of the specified values for it to be--- included in the results.+-- You can use filters to limit the results. For example, you can query for+-- the tags for a specific Auto Scaling group. You can specify multiple+-- values for a filter. A tag must match at least one of the specified+-- values for it to be included in the results. ----- You can also specify multiple filters. The result includes information for a--- particular tag only if it matches all the filters. If there's no match, no--- special message is returned.+-- You can also specify multiple filters. The result includes information+-- for a particular tag only if it matches all the filters. If there\'s no+-- match, no special message is returned. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeTags.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeTags.html AWS API Reference> for DescribeTags.+--+-- This operation returns paginated results. module Network.AWS.AutoScaling.DescribeTags (- -- * Request- DescribeTags- -- ** Request constructor- , describeTags- -- ** Request lenses+ -- * Creating a Request+ describeTags+ , DescribeTags+ -- * Request Lenses , dtFilters- , dtMaxRecords , dtNextToken+ , dtMaxRecords - -- * Response- , DescribeTagsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeTagsResponse- -- ** Response lenses- , dtrNextToken- , dtrTags+ , DescribeTagsResponse+ -- * Response Lenses+ , dtrsNextToken+ , dtrsTags+ , dtrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DescribeTags = DescribeTags- { _dtFilters :: List "member" Filter- , _dtMaxRecords :: Maybe Int- , _dtNextToken :: Maybe Text- } deriving (Eq, Read, Show)+-- | /See:/ 'describeTags' smart constructor.+data DescribeTags = DescribeTags'+ { _dtFilters :: !(Maybe [Filter])+ , _dtNextToken :: !(Maybe Text)+ , _dtMaxRecords :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTags' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DescribeTags' with the minimum fields required to make a request. ----- * 'dtFilters' @::@ ['Filter']+-- Use one of the following lenses to modify other fields as desired: ----- * 'dtMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dtFilters' ----- * 'dtNextToken' @::@ 'Maybe' 'Text'+-- * 'dtNextToken' ---describeTags :: DescribeTags-describeTags = DescribeTags- { _dtFilters = mempty- , _dtNextToken = Nothing+-- * 'dtMaxRecords'+describeTags+ :: DescribeTags+describeTags =+ DescribeTags'+ { _dtFilters = Nothing+ , _dtNextToken = Nothing , _dtMaxRecords = Nothing } --- | The value of the filter type used to identify the tags to be returned. For--- example, you can filter so that tags are returned according to Auto Scaling--- group, the key and value, or whether the new tag will be applied to instances--- launched after the tag is created (PropagateAtLaunch).+-- | A filter used to scope the tags to return. dtFilters :: Lens' DescribeTags [Filter]-dtFilters = lens _dtFilters (\s a -> s { _dtFilters = a }) . _List+dtFilters = lens _dtFilters (\ s a -> s{_dtFilters = a}) . _Default . _Coerce; +-- | The token for the next set of items to return. (You received this token+-- from a previous call.)+dtNextToken :: Lens' DescribeTags (Maybe Text)+dtNextToken = lens _dtNextToken (\ s a -> s{_dtNextToken = a});+ -- | The maximum number of items to return with this call. dtMaxRecords :: Lens' DescribeTags (Maybe Int)-dtMaxRecords = lens _dtMaxRecords (\s a -> s { _dtMaxRecords = a })+dtMaxRecords = lens _dtMaxRecords (\ s a -> s{_dtMaxRecords = a}); --- | The token for the next set of items to return. (You received this token from--- a previous call.)-dtNextToken :: Lens' DescribeTags (Maybe Text)-dtNextToken = lens _dtNextToken (\s a -> s { _dtNextToken = a })+instance AWSPager DescribeTags where+ page rq rs+ | stop (rs ^. dtrsNextToken) = Nothing+ | stop (rs ^. dtrsTags) = Nothing+ | otherwise =+ Just $ rq & dtNextToken .~ rs ^. dtrsNextToken -data DescribeTagsResponse = DescribeTagsResponse- { _dtrNextToken :: Maybe Text- , _dtrTags :: List "member" TagDescription- } deriving (Eq, Read, Show)+instance AWSRequest DescribeTags where+ type Sv DescribeTags = AutoScaling+ type Rs DescribeTags = DescribeTagsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeTagsResult"+ (\ s h x ->+ DescribeTagsResponse' <$>+ (x .@? "NextToken") <*>+ (x .@? "Tags" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) --- | 'DescribeTagsResponse' constructor.+instance ToHeaders DescribeTags where+ toHeaders = const mempty++instance ToPath DescribeTags where+ toPath = const "/"++instance ToQuery DescribeTags where+ toQuery DescribeTags'{..}+ = mconcat+ ["Action" =: ("DescribeTags" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Filters" =:+ toQuery (toQueryList "member" <$> _dtFilters),+ "NextToken" =: _dtNextToken,+ "MaxRecords" =: _dtMaxRecords]++-- | /See:/ 'describeTagsResponse' smart constructor.+data DescribeTagsResponse = DescribeTagsResponse'+ { _dtrsNextToken :: !(Maybe Text)+ , _dtrsTags :: !(Maybe [TagDescription])+ , _dtrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeTagsResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'dtrNextToken' @::@ 'Maybe' 'Text'+-- * 'dtrsNextToken' ----- * 'dtrTags' @::@ ['TagDescription']+-- * 'dtrsTags' ---describeTagsResponse :: DescribeTagsResponse-describeTagsResponse = DescribeTagsResponse- { _dtrTags = mempty- , _dtrNextToken = Nothing+-- * 'dtrsStatus'+describeTagsResponse+ :: Int -- ^ 'dtrsStatus'+ -> DescribeTagsResponse+describeTagsResponse pStatus_ =+ DescribeTagsResponse'+ { _dtrsNextToken = Nothing+ , _dtrsTags = Nothing+ , _dtrsStatus = pStatus_ } -- | The token to use when requesting the next set of items. If there are no -- additional items to return, the string is empty.-dtrNextToken :: Lens' DescribeTagsResponse (Maybe Text)-dtrNextToken = lens _dtrNextToken (\s a -> s { _dtrNextToken = a })+dtrsNextToken :: Lens' DescribeTagsResponse (Maybe Text)+dtrsNextToken = lens _dtrsNextToken (\ s a -> s{_dtrsNextToken = a}); -- | The tags.-dtrTags :: Lens' DescribeTagsResponse [TagDescription]-dtrTags = lens _dtrTags (\s a -> s { _dtrTags = a }) . _List--instance ToPath DescribeTags where- toPath = const "/"--instance ToQuery DescribeTags where- toQuery DescribeTags{..} = mconcat- [ "Filters" =? _dtFilters- , "MaxRecords" =? _dtMaxRecords- , "NextToken" =? _dtNextToken- ]--instance ToHeaders DescribeTags--instance AWSRequest DescribeTags where- type Sv DescribeTags = AutoScaling- type Rs DescribeTags = DescribeTagsResponse-- request = post "DescribeTags"- response = xmlResponse--instance FromXML DescribeTagsResponse where- parseXML = withElement "DescribeTagsResult" $ \x -> DescribeTagsResponse- <$> x .@? "NextToken"- <*> x .@? "Tags" .!@ mempty+dtrsTags :: Lens' DescribeTagsResponse [TagDescription]+dtrsTags = lens _dtrsTags (\ s a -> s{_dtrsTags = a}) . _Default . _Coerce; -instance AWSPager DescribeTags where- page rq rs- | stop (rs ^. dtrNextToken) = Nothing- | otherwise = (\x -> rq & dtNextToken ?~ x)- <$> (rs ^. dtrNextToken)+-- | The response status code.+dtrsStatus :: Lens' DescribeTagsResponse Int+dtrsStatus = lens _dtrsStatus (\ s a -> s{_dtrsStatus = a});
gen/Network/AWS/AutoScaling/DescribeTerminationPolicyTypes.hs view
@@ -1,100 +1,115 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DescribeTerminationPolicyTypes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Lists the termination policies supported by Auto Scaling.+-- Describes the termination policies supported by Auto Scaling. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeTerminationPolicyTypes.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DescribeTerminationPolicyTypes.html AWS API Reference> for DescribeTerminationPolicyTypes. module Network.AWS.AutoScaling.DescribeTerminationPolicyTypes (- -- * Request- DescribeTerminationPolicyTypes- -- ** Request constructor- , describeTerminationPolicyTypes+ -- * Creating a Request+ describeTerminationPolicyTypes+ , DescribeTerminationPolicyTypes - -- * Response- , DescribeTerminationPolicyTypesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeTerminationPolicyTypesResponse- -- ** Response lenses- , dtptrTerminationPolicyTypes+ , DescribeTerminationPolicyTypesResponse+ -- * Response Lenses+ , dtptrsTerminationPolicyTypes+ , dtptrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts--data DescribeTerminationPolicyTypes = DescribeTerminationPolicyTypes- deriving (Eq, Ord, Read, Show, Generic)---- | 'DescribeTerminationPolicyTypes' constructor.-describeTerminationPolicyTypes :: DescribeTerminationPolicyTypes-describeTerminationPolicyTypes = DescribeTerminationPolicyTypes--newtype DescribeTerminationPolicyTypesResponse = DescribeTerminationPolicyTypesResponse- { _dtptrTerminationPolicyTypes :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList DescribeTerminationPolicyTypesResponse where- type Item DescribeTerminationPolicyTypesResponse = Text+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response - fromList = DescribeTerminationPolicyTypesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dtptrTerminationPolicyTypes+-- | /See:/ 'describeTerminationPolicyTypes' smart constructor.+data DescribeTerminationPolicyTypes =+ DescribeTerminationPolicyTypes'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DescribeTerminationPolicyTypesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dtptrTerminationPolicyTypes' @::@ ['Text']+-- | Creates a value of 'DescribeTerminationPolicyTypes' with the minimum fields required to make a request. ---describeTerminationPolicyTypesResponse :: DescribeTerminationPolicyTypesResponse-describeTerminationPolicyTypesResponse = DescribeTerminationPolicyTypesResponse- { _dtptrTerminationPolicyTypes = mempty- }+describeTerminationPolicyTypes+ :: DescribeTerminationPolicyTypes+describeTerminationPolicyTypes = DescribeTerminationPolicyTypes' --- | The Termination policies supported by Auto Scaling. They are: 'OldestInstance', 'OldestLaunchConfiguration', 'NewestInstance', 'ClosestToNextInstanceHour', and 'Default'.-dtptrTerminationPolicyTypes :: Lens' DescribeTerminationPolicyTypesResponse [Text]-dtptrTerminationPolicyTypes =- lens _dtptrTerminationPolicyTypes- (\s a -> s { _dtptrTerminationPolicyTypes = a })- . _List+instance AWSRequest DescribeTerminationPolicyTypes+ where+ type Sv DescribeTerminationPolicyTypes = AutoScaling+ type Rs DescribeTerminationPolicyTypes =+ DescribeTerminationPolicyTypesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeTerminationPolicyTypesResult"+ (\ s h x ->+ DescribeTerminationPolicyTypesResponse' <$>+ (x .@? "TerminationPolicyTypes" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) +instance ToHeaders DescribeTerminationPolicyTypes+ where+ toHeaders = const mempty+ instance ToPath DescribeTerminationPolicyTypes where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeTerminationPolicyTypes where- toQuery = const mempty+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("DescribeTerminationPolicyTypes" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString)]) -instance ToHeaders DescribeTerminationPolicyTypes+-- | /See:/ 'describeTerminationPolicyTypesResponse' smart constructor.+data DescribeTerminationPolicyTypesResponse = DescribeTerminationPolicyTypesResponse'+ { _dtptrsTerminationPolicyTypes :: !(Maybe [Text])+ , _dtptrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeTerminationPolicyTypes where- type Sv DescribeTerminationPolicyTypes = AutoScaling- type Rs DescribeTerminationPolicyTypes = DescribeTerminationPolicyTypesResponse+-- | Creates a value of 'DescribeTerminationPolicyTypesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtptrsTerminationPolicyTypes'+--+-- * 'dtptrsStatus'+describeTerminationPolicyTypesResponse+ :: Int -- ^ 'dtptrsStatus'+ -> DescribeTerminationPolicyTypesResponse+describeTerminationPolicyTypesResponse pStatus_ =+ DescribeTerminationPolicyTypesResponse'+ { _dtptrsTerminationPolicyTypes = Nothing+ , _dtptrsStatus = pStatus_+ } - request = post "DescribeTerminationPolicyTypes"- response = xmlResponse+-- | The termination policies supported by Auto Scaling ('OldestInstance',+-- 'OldestLaunchConfiguration', 'NewestInstance',+-- 'ClosestToNextInstanceHour', and 'Default').+dtptrsTerminationPolicyTypes :: Lens' DescribeTerminationPolicyTypesResponse [Text]+dtptrsTerminationPolicyTypes = lens _dtptrsTerminationPolicyTypes (\ s a -> s{_dtptrsTerminationPolicyTypes = a}) . _Default . _Coerce; -instance FromXML DescribeTerminationPolicyTypesResponse where- parseXML = withElement "DescribeTerminationPolicyTypesResult" $ \x -> DescribeTerminationPolicyTypesResponse- <$> x .@? "TerminationPolicyTypes" .!@ mempty+-- | The response status code.+dtptrsStatus :: Lens' DescribeTerminationPolicyTypesResponse Int+dtptrsStatus = lens _dtptrsStatus (\ s a -> s{_dtptrsStatus = a});
gen/Network/AWS/AutoScaling/DetachInstances.hs view
@@ -1,144 +1,152 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DetachInstances--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Removes one or more instances from the specified Auto Scaling group. After--- the instances are detached, you can manage them independently from the rest--- of the Auto Scaling group.+-- Removes one or more instances from the specified Auto Scaling group.+-- After the instances are detached, you can manage them independently from+-- the rest of the Auto Scaling group. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/detach-instance-asg.html Detach EC2 Instances from Your Auto Scaling Group>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/detach-instance-asg.html Detach EC2 Instances from Your Auto Scaling Group> -- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DetachInstances.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DetachInstances.html AWS API Reference> for DetachInstances. module Network.AWS.AutoScaling.DetachInstances (- -- * Request- DetachInstances- -- ** Request constructor- , detachInstances- -- ** Request lenses- , diAutoScalingGroupName+ -- * Creating a Request+ detachInstances+ , DetachInstances+ -- * Request Lenses , diInstanceIds+ , diAutoScalingGroupName , diShouldDecrementDesiredCapacity - -- * Response- , DetachInstancesResponse- -- ** Response constructor+ -- * Destructuring the Response , detachInstancesResponse- -- ** Response lenses- , dirActivities+ , DetachInstancesResponse+ -- * Response Lenses+ , dirsActivities+ , dirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DetachInstances = DetachInstances- { _diAutoScalingGroupName :: Text- , _diInstanceIds :: List "member" Text- , _diShouldDecrementDesiredCapacity :: Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'detachInstances' smart constructor.+data DetachInstances = DetachInstances'+ { _diInstanceIds :: !(Maybe [Text])+ , _diAutoScalingGroupName :: !Text+ , _diShouldDecrementDesiredCapacity :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DetachInstances' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DetachInstances' with the minimum fields required to make a request. ----- * 'diAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'diInstanceIds' @::@ ['Text']+-- * 'diInstanceIds' ----- * 'diShouldDecrementDesiredCapacity' @::@ 'Bool'+-- * 'diAutoScalingGroupName' ---detachInstances :: Text -- ^ 'diAutoScalingGroupName'- -> Bool -- ^ 'diShouldDecrementDesiredCapacity'- -> DetachInstances-detachInstances p1 p2 = DetachInstances- { _diAutoScalingGroupName = p1- , _diShouldDecrementDesiredCapacity = p2- , _diInstanceIds = mempty+-- * 'diShouldDecrementDesiredCapacity'+detachInstances+ :: Text -- ^ 'diAutoScalingGroupName'+ -> Bool -- ^ 'diShouldDecrementDesiredCapacity'+ -> DetachInstances+detachInstances pAutoScalingGroupName_ pShouldDecrementDesiredCapacity_ =+ DetachInstances'+ { _diInstanceIds = Nothing+ , _diAutoScalingGroupName = pAutoScalingGroupName_+ , _diShouldDecrementDesiredCapacity = pShouldDecrementDesiredCapacity_ } --- | The name of the group.-diAutoScalingGroupName :: Lens' DetachInstances Text-diAutoScalingGroupName =- lens _diAutoScalingGroupName (\s a -> s { _diAutoScalingGroupName = a })- -- | One or more instance IDs. diInstanceIds :: Lens' DetachInstances [Text]-diInstanceIds = lens _diInstanceIds (\s a -> s { _diInstanceIds = a }) . _List---- | If 'True', the Auto Scaling group decrements the desired capacity value by the--- number of instances detached.-diShouldDecrementDesiredCapacity :: Lens' DetachInstances Bool-diShouldDecrementDesiredCapacity =- lens _diShouldDecrementDesiredCapacity- (\s a -> s { _diShouldDecrementDesiredCapacity = a })--newtype DetachInstancesResponse = DetachInstancesResponse- { _dirActivities :: List "member" Activity- } deriving (Eq, Read, Show, Monoid, Semigroup)+diInstanceIds = lens _diInstanceIds (\ s a -> s{_diInstanceIds = a}) . _Default . _Coerce; -instance GHC.Exts.IsList DetachInstancesResponse where- type Item DetachInstancesResponse = Activity+-- | The name of the group.+diAutoScalingGroupName :: Lens' DetachInstances Text+diAutoScalingGroupName = lens _diAutoScalingGroupName (\ s a -> s{_diAutoScalingGroupName = a}); - fromList = DetachInstancesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _dirActivities+-- | If 'True', the Auto Scaling group decrements the desired capacity value+-- by the number of instances detached.+diShouldDecrementDesiredCapacity :: Lens' DetachInstances Bool+diShouldDecrementDesiredCapacity = lens _diShouldDecrementDesiredCapacity (\ s a -> s{_diShouldDecrementDesiredCapacity = a}); --- | 'DetachInstancesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dirActivities' @::@ ['Activity']----detachInstancesResponse :: DetachInstancesResponse-detachInstancesResponse = DetachInstancesResponse- { _dirActivities = mempty- }+instance AWSRequest DetachInstances where+ type Sv DetachInstances = AutoScaling+ type Rs DetachInstances = DetachInstancesResponse+ request = postQuery+ response+ = receiveXMLWrapper "DetachInstancesResult"+ (\ s h x ->+ DetachInstancesResponse' <$>+ (x .@? "Activities" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) --- | The activities related to detaching the instances from the Auto Scaling group.-dirActivities :: Lens' DetachInstancesResponse [Activity]-dirActivities = lens _dirActivities (\s a -> s { _dirActivities = a }) . _List+instance ToHeaders DetachInstances where+ toHeaders = const mempty instance ToPath DetachInstances where- toPath = const "/"+ toPath = const "/" instance ToQuery DetachInstances where- toQuery DetachInstances{..} = mconcat- [ "AutoScalingGroupName" =? _diAutoScalingGroupName- , "InstanceIds" =? _diInstanceIds- , "ShouldDecrementDesiredCapacity" =? _diShouldDecrementDesiredCapacity- ]+ toQuery DetachInstances'{..}+ = mconcat+ ["Action" =: ("DetachInstances" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceIds" =:+ toQuery (toQueryList "member" <$> _diInstanceIds),+ "AutoScalingGroupName" =: _diAutoScalingGroupName,+ "ShouldDecrementDesiredCapacity" =:+ _diShouldDecrementDesiredCapacity] -instance ToHeaders DetachInstances+-- | /See:/ 'detachInstancesResponse' smart constructor.+data DetachInstancesResponse = DetachInstancesResponse'+ { _dirsActivities :: !(Maybe [Activity])+ , _dirsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DetachInstances where- type Sv DetachInstances = AutoScaling- type Rs DetachInstances = DetachInstancesResponse+-- | Creates a value of 'DetachInstancesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dirsActivities'+--+-- * 'dirsStatus'+detachInstancesResponse+ :: Int -- ^ 'dirsStatus'+ -> DetachInstancesResponse+detachInstancesResponse pStatus_ =+ DetachInstancesResponse'+ { _dirsActivities = Nothing+ , _dirsStatus = pStatus_+ } - request = post "DetachInstances"- response = xmlResponse+-- | The activities related to detaching the instances from the Auto Scaling+-- group.+dirsActivities :: Lens' DetachInstancesResponse [Activity]+dirsActivities = lens _dirsActivities (\ s a -> s{_dirsActivities = a}) . _Default . _Coerce; -instance FromXML DetachInstancesResponse where- parseXML = withElement "DetachInstancesResult" $ \x -> DetachInstancesResponse- <$> x .@? "Activities" .!@ mempty+-- | The response status code.+dirsStatus :: Lens' DetachInstancesResponse Int+dirsStatus = lens _dirsStatus (\ s a -> s{_dirsStatus = a});
+ gen/Network/AWS/AutoScaling/DetachLoadBalancers.hs view
@@ -0,0 +1,127 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.DetachLoadBalancers+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes one or more load balancers from the specified Auto Scaling+-- group.+--+-- When you detach a load balancer, it enters the 'Removing' state while+-- deregistering the instances in the group. When all instances are+-- deregistered, then you can no longer describe the load balancer using+-- DescribeLoadBalancers. Note that the instances remain running.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DetachLoadBalancers.html AWS API Reference> for DetachLoadBalancers.+module Network.AWS.AutoScaling.DetachLoadBalancers+ (+ -- * Creating a Request+ detachLoadBalancers+ , DetachLoadBalancers+ -- * Request Lenses+ , dAutoScalingGroupName+ , dLoadBalancerNames++ -- * Destructuring the Response+ , detachLoadBalancersResponse+ , DetachLoadBalancersResponse+ -- * Response Lenses+ , dlbsrsStatus+ ) where++import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'detachLoadBalancers' smart constructor.+data DetachLoadBalancers = DetachLoadBalancers'+ { _dAutoScalingGroupName :: !(Maybe Text)+ , _dLoadBalancerNames :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DetachLoadBalancers' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dAutoScalingGroupName'+--+-- * 'dLoadBalancerNames'+detachLoadBalancers+ :: DetachLoadBalancers+detachLoadBalancers =+ DetachLoadBalancers'+ { _dAutoScalingGroupName = Nothing+ , _dLoadBalancerNames = Nothing+ }++-- | The name of the group.+dAutoScalingGroupName :: Lens' DetachLoadBalancers (Maybe Text)+dAutoScalingGroupName = lens _dAutoScalingGroupName (\ s a -> s{_dAutoScalingGroupName = a});++-- | One or more load balancer names.+dLoadBalancerNames :: Lens' DetachLoadBalancers [Text]+dLoadBalancerNames = lens _dLoadBalancerNames (\ s a -> s{_dLoadBalancerNames = a}) . _Default . _Coerce;++instance AWSRequest DetachLoadBalancers where+ type Sv DetachLoadBalancers = AutoScaling+ type Rs DetachLoadBalancers =+ DetachLoadBalancersResponse+ request = postQuery+ response+ = receiveXMLWrapper "DetachLoadBalancersResult"+ (\ s h x ->+ DetachLoadBalancersResponse' <$> (pure (fromEnum s)))++instance ToHeaders DetachLoadBalancers where+ toHeaders = const mempty++instance ToPath DetachLoadBalancers where+ toPath = const "/"++instance ToQuery DetachLoadBalancers where+ toQuery DetachLoadBalancers'{..}+ = mconcat+ ["Action" =: ("DetachLoadBalancers" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _dAutoScalingGroupName,+ "LoadBalancerNames" =:+ toQuery+ (toQueryList "member" <$> _dLoadBalancerNames)]++-- | /See:/ 'detachLoadBalancersResponse' smart constructor.+newtype DetachLoadBalancersResponse = DetachLoadBalancersResponse'+ { _dlbsrsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DetachLoadBalancersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dlbsrsStatus'+detachLoadBalancersResponse+ :: Int -- ^ 'dlbsrsStatus'+ -> DetachLoadBalancersResponse+detachLoadBalancersResponse pStatus_ =+ DetachLoadBalancersResponse'+ { _dlbsrsStatus = pStatus_+ }++-- | The response status code.+dlbsrsStatus :: Lens' DetachLoadBalancersResponse Int+dlbsrsStatus = lens _dlbsrsStatus (\ s a -> s{_dlbsrsStatus = a});
gen/Network/AWS/AutoScaling/DisableMetricsCollection.hs view
@@ -1,120 +1,126 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.DisableMetricsCollection--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Disables monitoring of the specified metrics for the specified Auto Scaling--- group.+-- Disables monitoring of the specified metrics for the specified Auto+-- Scaling group. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DisableMetricsCollection.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_DisableMetricsCollection.html AWS API Reference> for DisableMetricsCollection. module Network.AWS.AutoScaling.DisableMetricsCollection (- -- * Request- DisableMetricsCollection- -- ** Request constructor- , disableMetricsCollection- -- ** Request lenses- , dmcAutoScalingGroupName+ -- * Creating a Request+ disableMetricsCollection+ , DisableMetricsCollection+ -- * Request Lenses , dmcMetrics+ , dmcAutoScalingGroupName - -- * Response- , DisableMetricsCollectionResponse- -- ** Response constructor+ -- * Destructuring the Response , disableMetricsCollectionResponse+ , DisableMetricsCollectionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data DisableMetricsCollection = DisableMetricsCollection- { _dmcAutoScalingGroupName :: Text- , _dmcMetrics :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'disableMetricsCollection' smart constructor.+data DisableMetricsCollection = DisableMetricsCollection'+ { _dmcMetrics :: !(Maybe [Text])+ , _dmcAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DisableMetricsCollection' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DisableMetricsCollection' with the minimum fields required to make a request. ----- * 'dmcAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dmcMetrics' @::@ ['Text']+-- * 'dmcMetrics' ---disableMetricsCollection :: Text -- ^ 'dmcAutoScalingGroupName'- -> DisableMetricsCollection-disableMetricsCollection p1 = DisableMetricsCollection- { _dmcAutoScalingGroupName = p1- , _dmcMetrics = mempty+-- * 'dmcAutoScalingGroupName'+disableMetricsCollection+ :: Text -- ^ 'dmcAutoScalingGroupName'+ -> DisableMetricsCollection+disableMetricsCollection pAutoScalingGroupName_ =+ DisableMetricsCollection'+ { _dmcMetrics = Nothing+ , _dmcAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name or Amazon Resource Name (ARN) of the group.-dmcAutoScalingGroupName :: Lens' DisableMetricsCollection Text-dmcAutoScalingGroupName =- lens _dmcAutoScalingGroupName (\s a -> s { _dmcAutoScalingGroupName = a })---- | One or more of the following metrics:+-- | One or more metrics. If you omit this parameter, all metrics are+-- disabled. ----- GroupMinSize+-- - 'GroupMinSize' ----- GroupMaxSize+-- - 'GroupMaxSize' ----- GroupDesiredCapacity+-- - 'GroupDesiredCapacity' ----- GroupInServiceInstances+-- - 'GroupInServiceInstances' ----- GroupPendingInstances+-- - 'GroupPendingInstances' ----- GroupStandbyInstances+-- - 'GroupStandbyInstances' ----- GroupTerminatingInstances+-- - 'GroupTerminatingInstances' ----- GroupTotalInstances+-- - 'GroupTotalInstances' ----- If you omit this parameter, all metrics are disabled. dmcMetrics :: Lens' DisableMetricsCollection [Text]-dmcMetrics = lens _dmcMetrics (\s a -> s { _dmcMetrics = a }) . _List+dmcMetrics = lens _dmcMetrics (\ s a -> s{_dmcMetrics = a}) . _Default . _Coerce; -data DisableMetricsCollectionResponse = DisableMetricsCollectionResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name or Amazon Resource Name (ARN) of the group.+dmcAutoScalingGroupName :: Lens' DisableMetricsCollection Text+dmcAutoScalingGroupName = lens _dmcAutoScalingGroupName (\ s a -> s{_dmcAutoScalingGroupName = a}); --- | 'DisableMetricsCollectionResponse' constructor.-disableMetricsCollectionResponse :: DisableMetricsCollectionResponse-disableMetricsCollectionResponse = DisableMetricsCollectionResponse+instance AWSRequest DisableMetricsCollection where+ type Sv DisableMetricsCollection = AutoScaling+ type Rs DisableMetricsCollection =+ DisableMetricsCollectionResponse+ request = postQuery+ response+ = receiveNull DisableMetricsCollectionResponse' +instance ToHeaders DisableMetricsCollection where+ toHeaders = const mempty+ instance ToPath DisableMetricsCollection where- toPath = const "/"+ toPath = const "/" instance ToQuery DisableMetricsCollection where- toQuery DisableMetricsCollection{..} = mconcat- [ "AutoScalingGroupName" =? _dmcAutoScalingGroupName- , "Metrics" =? _dmcMetrics- ]--instance ToHeaders DisableMetricsCollection+ toQuery DisableMetricsCollection'{..}+ = mconcat+ ["Action" =:+ ("DisableMetricsCollection" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Metrics" =:+ toQuery (toQueryList "member" <$> _dmcMetrics),+ "AutoScalingGroupName" =: _dmcAutoScalingGroupName] -instance AWSRequest DisableMetricsCollection where- type Sv DisableMetricsCollection = AutoScaling- type Rs DisableMetricsCollection = DisableMetricsCollectionResponse+-- | /See:/ 'disableMetricsCollectionResponse' smart constructor.+data DisableMetricsCollectionResponse =+ DisableMetricsCollectionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DisableMetricsCollection"- response = nullResponse DisableMetricsCollectionResponse+-- | Creates a value of 'DisableMetricsCollectionResponse' with the minimum fields required to make a request.+--+disableMetricsCollectionResponse+ :: DisableMetricsCollectionResponse+disableMetricsCollectionResponse = DisableMetricsCollectionResponse'
gen/Network/AWS/AutoScaling/EnableMetricsCollection.hs view
@@ -1,140 +1,143 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.EnableMetricsCollection--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Enables monitoring of the specified metrics for the specified Auto Scaling--- group.+-- Enables monitoring of the specified metrics for the specified Auto+-- Scaling group. ----- You can only enable metrics collection if 'InstanceMonitoring' in the launch--- configuration for the group is set to 'True'.+-- You can only enable metrics collection if 'InstanceMonitoring' in the+-- launch configuration for the group is set to 'True'. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_EnableMetricsCollection.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_EnableMetricsCollection.html AWS API Reference> for EnableMetricsCollection. module Network.AWS.AutoScaling.EnableMetricsCollection (- -- * Request- EnableMetricsCollection- -- ** Request constructor- , enableMetricsCollection- -- ** Request lenses+ -- * Creating a Request+ enableMetricsCollection+ , EnableMetricsCollection+ -- * Request Lenses+ , emcMetrics , emcAutoScalingGroupName , emcGranularity- , emcMetrics - -- * Response- , EnableMetricsCollectionResponse- -- ** Response constructor+ -- * Destructuring the Response , enableMetricsCollectionResponse+ , EnableMetricsCollectionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data EnableMetricsCollection = EnableMetricsCollection- { _emcAutoScalingGroupName :: Text- , _emcGranularity :: Text- , _emcMetrics :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'enableMetricsCollection' smart constructor.+data EnableMetricsCollection = EnableMetricsCollection'+ { _emcMetrics :: !(Maybe [Text])+ , _emcAutoScalingGroupName :: !Text+ , _emcGranularity :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'EnableMetricsCollection' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'EnableMetricsCollection' with the minimum fields required to make a request. ----- * 'emcAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'emcGranularity' @::@ 'Text'+-- * 'emcMetrics' ----- * 'emcMetrics' @::@ ['Text']+-- * 'emcAutoScalingGroupName' ---enableMetricsCollection :: Text -- ^ 'emcAutoScalingGroupName'- -> Text -- ^ 'emcGranularity'- -> EnableMetricsCollection-enableMetricsCollection p1 p2 = EnableMetricsCollection- { _emcAutoScalingGroupName = p1- , _emcGranularity = p2- , _emcMetrics = mempty+-- * 'emcGranularity'+enableMetricsCollection+ :: Text -- ^ 'emcAutoScalingGroupName'+ -> Text -- ^ 'emcGranularity'+ -> EnableMetricsCollection+enableMetricsCollection pAutoScalingGroupName_ pGranularity_ =+ EnableMetricsCollection'+ { _emcMetrics = Nothing+ , _emcAutoScalingGroupName = pAutoScalingGroupName_+ , _emcGranularity = pGranularity_ } --- | The name or ARN of the Auto Scaling group.-emcAutoScalingGroupName :: Lens' EnableMetricsCollection Text-emcAutoScalingGroupName =- lens _emcAutoScalingGroupName (\s a -> s { _emcAutoScalingGroupName = a })---- | The granularity to associate with the metrics to collect. Currently, the only--- valid value is "1Minute".-emcGranularity :: Lens' EnableMetricsCollection Text-emcGranularity = lens _emcGranularity (\s a -> s { _emcGranularity = a })---- | One or more of the following metrics:------ GroupMinSize------ GroupMaxSize------ GroupDesiredCapacity+-- | One or more metrics. If you omit this parameter, all metrics are+-- enabled. ----- GroupInServiceInstances+-- - 'GroupMinSize' ----- GroupPendingInstances+-- - 'GroupMaxSize' ----- GroupStandbyInstances+-- - 'GroupDesiredCapacity' ----- GroupTerminatingInstances+-- - 'GroupInServiceInstances' ----- GroupTotalInstances+-- - 'GroupPendingInstances' ----- If you omit this parameter, all metrics are enabled.+-- - 'GroupStandbyInstances' ----- The 'GroupStandbyInstances' metric is not returned by default. You must--- explicitly request it when calling 'EnableMetricsCollection'.+-- - 'GroupTerminatingInstances' --+-- - 'GroupTotalInstances' --+-- Note that the 'GroupStandbyInstances' metric is not enabled by default.+-- You must explicitly request this metric. emcMetrics :: Lens' EnableMetricsCollection [Text]-emcMetrics = lens _emcMetrics (\s a -> s { _emcMetrics = a }) . _List+emcMetrics = lens _emcMetrics (\ s a -> s{_emcMetrics = a}) . _Default . _Coerce; -data EnableMetricsCollectionResponse = EnableMetricsCollectionResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name or ARN of the Auto Scaling group.+emcAutoScalingGroupName :: Lens' EnableMetricsCollection Text+emcAutoScalingGroupName = lens _emcAutoScalingGroupName (\ s a -> s{_emcAutoScalingGroupName = a}); --- | 'EnableMetricsCollectionResponse' constructor.-enableMetricsCollectionResponse :: EnableMetricsCollectionResponse-enableMetricsCollectionResponse = EnableMetricsCollectionResponse+-- | The granularity to associate with the metrics to collect. The only valid+-- value is '1Minute'.+emcGranularity :: Lens' EnableMetricsCollection Text+emcGranularity = lens _emcGranularity (\ s a -> s{_emcGranularity = a}); +instance AWSRequest EnableMetricsCollection where+ type Sv EnableMetricsCollection = AutoScaling+ type Rs EnableMetricsCollection =+ EnableMetricsCollectionResponse+ request = postQuery+ response+ = receiveNull EnableMetricsCollectionResponse'++instance ToHeaders EnableMetricsCollection where+ toHeaders = const mempty+ instance ToPath EnableMetricsCollection where- toPath = const "/"+ toPath = const "/" instance ToQuery EnableMetricsCollection where- toQuery EnableMetricsCollection{..} = mconcat- [ "AutoScalingGroupName" =? _emcAutoScalingGroupName- , "Granularity" =? _emcGranularity- , "Metrics" =? _emcMetrics- ]--instance ToHeaders EnableMetricsCollection+ toQuery EnableMetricsCollection'{..}+ = mconcat+ ["Action" =:+ ("EnableMetricsCollection" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Metrics" =:+ toQuery (toQueryList "member" <$> _emcMetrics),+ "AutoScalingGroupName" =: _emcAutoScalingGroupName,+ "Granularity" =: _emcGranularity] -instance AWSRequest EnableMetricsCollection where- type Sv EnableMetricsCollection = AutoScaling- type Rs EnableMetricsCollection = EnableMetricsCollectionResponse+-- | /See:/ 'enableMetricsCollectionResponse' smart constructor.+data EnableMetricsCollectionResponse =+ EnableMetricsCollectionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "EnableMetricsCollection"- response = nullResponse EnableMetricsCollectionResponse+-- | Creates a value of 'EnableMetricsCollectionResponse' with the minimum fields required to make a request.+--+enableMetricsCollectionResponse+ :: EnableMetricsCollectionResponse+enableMetricsCollectionResponse = EnableMetricsCollectionResponse'
gen/Network/AWS/AutoScaling/EnterStandby.hs view
@@ -1,144 +1,152 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.EnterStandby--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Moves the specified instances into 'Standby' mode.+-- Moves the specified instances into 'Standby' mode. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingInServiceState.html Auto Scaling InService State> in the /Auto ScalingDeveloper Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingInServiceState.html Auto Scaling InService State>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_EnterStandby.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_EnterStandby.html AWS API Reference> for EnterStandby. module Network.AWS.AutoScaling.EnterStandby (- -- * Request- EnterStandby- -- ** Request constructor- , enterStandby- -- ** Request lenses- , esAutoScalingGroupName+ -- * Creating a Request+ enterStandby+ , EnterStandby+ -- * Request Lenses , esInstanceIds+ , esAutoScalingGroupName , esShouldDecrementDesiredCapacity - -- * Response- , EnterStandbyResponse- -- ** Response constructor+ -- * Destructuring the Response , enterStandbyResponse- -- ** Response lenses- , esr1Activities+ , EnterStandbyResponse+ -- * Response Lenses+ , esrsActivities+ , esrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data EnterStandby = EnterStandby- { _esAutoScalingGroupName :: Text- , _esInstanceIds :: List "member" Text- , _esShouldDecrementDesiredCapacity :: Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'enterStandby' smart constructor.+data EnterStandby = EnterStandby'+ { _esInstanceIds :: !(Maybe [Text])+ , _esAutoScalingGroupName :: !Text+ , _esShouldDecrementDesiredCapacity :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'EnterStandby' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'EnterStandby' with the minimum fields required to make a request. ----- * 'esAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'esInstanceIds' @::@ ['Text']+-- * 'esInstanceIds' ----- * 'esShouldDecrementDesiredCapacity' @::@ 'Bool'+-- * 'esAutoScalingGroupName' ---enterStandby :: Text -- ^ 'esAutoScalingGroupName'- -> Bool -- ^ 'esShouldDecrementDesiredCapacity'- -> EnterStandby-enterStandby p1 p2 = EnterStandby- { _esAutoScalingGroupName = p1- , _esShouldDecrementDesiredCapacity = p2- , _esInstanceIds = mempty+-- * 'esShouldDecrementDesiredCapacity'+enterStandby+ :: Text -- ^ 'esAutoScalingGroupName'+ -> Bool -- ^ 'esShouldDecrementDesiredCapacity'+ -> EnterStandby+enterStandby pAutoScalingGroupName_ pShouldDecrementDesiredCapacity_ =+ EnterStandby'+ { _esInstanceIds = Nothing+ , _esAutoScalingGroupName = pAutoScalingGroupName_+ , _esShouldDecrementDesiredCapacity = pShouldDecrementDesiredCapacity_ } +-- | One or more instances to move into 'Standby' mode. You must specify at+-- least one instance ID.+esInstanceIds :: Lens' EnterStandby [Text]+esInstanceIds = lens _esInstanceIds (\ s a -> s{_esInstanceIds = a}) . _Default . _Coerce;+ -- | The name of the Auto Scaling group. esAutoScalingGroupName :: Lens' EnterStandby Text-esAutoScalingGroupName =- lens _esAutoScalingGroupName (\s a -> s { _esAutoScalingGroupName = a })---- | One or more instances to move into 'Standby' mode. You must specify at least--- one instance ID.-esInstanceIds :: Lens' EnterStandby [Text]-esInstanceIds = lens _esInstanceIds (\s a -> s { _esInstanceIds = a }) . _List+esAutoScalingGroupName = lens _esAutoScalingGroupName (\ s a -> s{_esAutoScalingGroupName = a}); --- | Specifies whether the instances moved to 'Standby' mode count as part of the--- Auto Scaling group's desired capacity. If set, the desired capacity for the--- Auto Scaling group decrements by the number of instances moved to 'Standby'--- mode.+-- | Specifies whether the instances moved to 'Standby' mode count as part of+-- the Auto Scaling group\'s desired capacity. If set, the desired capacity+-- for the Auto Scaling group decrements by the number of instances moved+-- to 'Standby' mode. esShouldDecrementDesiredCapacity :: Lens' EnterStandby Bool-esShouldDecrementDesiredCapacity =- lens _esShouldDecrementDesiredCapacity- (\s a -> s { _esShouldDecrementDesiredCapacity = a })+esShouldDecrementDesiredCapacity = lens _esShouldDecrementDesiredCapacity (\ s a -> s{_esShouldDecrementDesiredCapacity = a}); -newtype EnterStandbyResponse = EnterStandbyResponse- { _esr1Activities :: List "member" Activity- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest EnterStandby where+ type Sv EnterStandby = AutoScaling+ type Rs EnterStandby = EnterStandbyResponse+ request = postQuery+ response+ = receiveXMLWrapper "EnterStandbyResult"+ (\ s h x ->+ EnterStandbyResponse' <$>+ (x .@? "Activities" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList EnterStandbyResponse where- type Item EnterStandbyResponse = Activity+instance ToHeaders EnterStandby where+ toHeaders = const mempty - fromList = EnterStandbyResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _esr1Activities+instance ToPath EnterStandby where+ toPath = const "/" --- | 'EnterStandbyResponse' constructor.+instance ToQuery EnterStandby where+ toQuery EnterStandby'{..}+ = mconcat+ ["Action" =: ("EnterStandby" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceIds" =:+ toQuery (toQueryList "member" <$> _esInstanceIds),+ "AutoScalingGroupName" =: _esAutoScalingGroupName,+ "ShouldDecrementDesiredCapacity" =:+ _esShouldDecrementDesiredCapacity]++-- | /See:/ 'enterStandbyResponse' smart constructor.+data EnterStandbyResponse = EnterStandbyResponse'+ { _esrsActivities :: !(Maybe [Activity])+ , _esrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'EnterStandbyResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'esr1Activities' @::@ ['Activity']+-- * 'esrsActivities' ---enterStandbyResponse :: EnterStandbyResponse-enterStandbyResponse = EnterStandbyResponse- { _esr1Activities = mempty+-- * 'esrsStatus'+enterStandbyResponse+ :: Int -- ^ 'esrsStatus'+ -> EnterStandbyResponse+enterStandbyResponse pStatus_ =+ EnterStandbyResponse'+ { _esrsActivities = Nothing+ , _esrsStatus = pStatus_ } -- | The activities related to moving instances into 'Standby' mode.-esr1Activities :: Lens' EnterStandbyResponse [Activity]-esr1Activities = lens _esr1Activities (\s a -> s { _esr1Activities = a }) . _List--instance ToPath EnterStandby where- toPath = const "/"--instance ToQuery EnterStandby where- toQuery EnterStandby{..} = mconcat- [ "AutoScalingGroupName" =? _esAutoScalingGroupName- , "InstanceIds" =? _esInstanceIds- , "ShouldDecrementDesiredCapacity" =? _esShouldDecrementDesiredCapacity- ]--instance ToHeaders EnterStandby--instance AWSRequest EnterStandby where- type Sv EnterStandby = AutoScaling- type Rs EnterStandby = EnterStandbyResponse-- request = post "EnterStandby"- response = xmlResponse+esrsActivities :: Lens' EnterStandbyResponse [Activity]+esrsActivities = lens _esrsActivities (\ s a -> s{_esrsActivities = a}) . _Default . _Coerce; -instance FromXML EnterStandbyResponse where- parseXML = withElement "EnterStandbyResult" $ \x -> EnterStandbyResponse- <$> x .@? "Activities" .!@ mempty+-- | The response status code.+esrsStatus :: Lens' EnterStandbyResponse Int+esrsStatus = lens _esrsStatus (\ s a -> s{_esrsStatus = a});
gen/Network/AWS/AutoScaling/ExecutePolicy.hs view
@@ -1,119 +1,154 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.ExecutePolicy--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Executes the specified policy.+-- Executes the specified policy. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ExecutePolicy.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ExecutePolicy.html AWS API Reference> for ExecutePolicy. module Network.AWS.AutoScaling.ExecutePolicy (- -- * Request- ExecutePolicy- -- ** Request constructor- , executePolicy- -- ** Request lenses- , epAutoScalingGroupName+ -- * Creating a Request+ executePolicy+ , ExecutePolicy+ -- * Request Lenses , epHonorCooldown+ , epMetricValue+ , epAutoScalingGroupName+ , epBreachThreshold , epPolicyName - -- * Response- , ExecutePolicyResponse- -- ** Response constructor+ -- * Destructuring the Response , executePolicyResponse+ , ExecutePolicyResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data ExecutePolicy = ExecutePolicy- { _epAutoScalingGroupName :: Maybe Text- , _epHonorCooldown :: Maybe Bool- , _epPolicyName :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'executePolicy' smart constructor.+data ExecutePolicy = ExecutePolicy'+ { _epHonorCooldown :: !(Maybe Bool)+ , _epMetricValue :: !(Maybe Double)+ , _epAutoScalingGroupName :: !(Maybe Text)+ , _epBreachThreshold :: !(Maybe Double)+ , _epPolicyName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ExecutePolicy' constructor.+-- | Creates a value of 'ExecutePolicy' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'epAutoScalingGroupName' @::@ 'Maybe' 'Text'+-- * 'epHonorCooldown' ----- * 'epHonorCooldown' @::@ 'Maybe' 'Bool'+-- * 'epMetricValue' ----- * 'epPolicyName' @::@ 'Text'+-- * 'epAutoScalingGroupName' ---executePolicy :: Text -- ^ 'epPolicyName'- -> ExecutePolicy-executePolicy p1 = ExecutePolicy- { _epPolicyName = p1+-- * 'epBreachThreshold'+--+-- * 'epPolicyName'+executePolicy+ :: Text -- ^ 'epPolicyName'+ -> ExecutePolicy+executePolicy pPolicyName_ =+ ExecutePolicy'+ { _epHonorCooldown = Nothing+ , _epMetricValue = Nothing , _epAutoScalingGroupName = Nothing- , _epHonorCooldown = Nothing+ , _epBreachThreshold = Nothing+ , _epPolicyName = pPolicyName_ } +-- | If this parameter is true, Auto Scaling waits for the cooldown period to+-- complete before executing the policy. Otherwise, Auto Scaling executes+-- the policy without waiting for the cooldown period to complete.+--+-- This parameter is not supported if the policy type is 'StepScaling'.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns>+-- in the /Auto Scaling Developer Guide/.+epHonorCooldown :: Lens' ExecutePolicy (Maybe Bool)+epHonorCooldown = lens _epHonorCooldown (\ s a -> s{_epHonorCooldown = a});++-- | The metric value to compare to 'BreachThreshold'. This enables you to+-- execute a policy of type 'StepScaling' and determine which step+-- adjustment to use. For example, if the breach threshold is 50 and you+-- want to use a step adjustment with a lower bound of 0 and an upper bound+-- of 10, you can set the metric value to 59.+--+-- If you specify a metric value that doesn\'t correspond to a step+-- adjustment for the policy, the call returns an error.+--+-- This parameter is required if the policy type is 'StepScaling' and not+-- supported otherwise.+epMetricValue :: Lens' ExecutePolicy (Maybe Double)+epMetricValue = lens _epMetricValue (\ s a -> s{_epMetricValue = a});+ -- | The name or Amazon Resource Name (ARN) of the Auto Scaling group. epAutoScalingGroupName :: Lens' ExecutePolicy (Maybe Text)-epAutoScalingGroupName =- lens _epAutoScalingGroupName (\s a -> s { _epAutoScalingGroupName = a })+epAutoScalingGroupName = lens _epAutoScalingGroupName (\ s a -> s{_epAutoScalingGroupName = a}); --- | Set to 'True' if you want Auto Scaling to wait for the cooldown period--- associated with the Auto Scaling group to complete before executing the--- policy.------ Set to 'False' if you want Auto Scaling to circumvent the cooldown period--- associated with the Auto Scaling group and execute the policy before the--- cooldown period ends.+-- | The breach threshold for the alarm. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns> in the /AutoScaling Developer Guide/.-epHonorCooldown :: Lens' ExecutePolicy (Maybe Bool)-epHonorCooldown = lens _epHonorCooldown (\s a -> s { _epHonorCooldown = a })+-- This parameter is required if the policy type is 'StepScaling' and not+-- supported otherwise.+epBreachThreshold :: Lens' ExecutePolicy (Maybe Double)+epBreachThreshold = lens _epBreachThreshold (\ s a -> s{_epBreachThreshold = a}); -- | The name or ARN of the policy. epPolicyName :: Lens' ExecutePolicy Text-epPolicyName = lens _epPolicyName (\s a -> s { _epPolicyName = a })+epPolicyName = lens _epPolicyName (\ s a -> s{_epPolicyName = a}); -data ExecutePolicyResponse = ExecutePolicyResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest ExecutePolicy where+ type Sv ExecutePolicy = AutoScaling+ type Rs ExecutePolicy = ExecutePolicyResponse+ request = postQuery+ response = receiveNull ExecutePolicyResponse' --- | 'ExecutePolicyResponse' constructor.-executePolicyResponse :: ExecutePolicyResponse-executePolicyResponse = ExecutePolicyResponse+instance ToHeaders ExecutePolicy where+ toHeaders = const mempty instance ToPath ExecutePolicy where- toPath = const "/"+ toPath = const "/" instance ToQuery ExecutePolicy where- toQuery ExecutePolicy{..} = mconcat- [ "AutoScalingGroupName" =? _epAutoScalingGroupName- , "HonorCooldown" =? _epHonorCooldown- , "PolicyName" =? _epPolicyName- ]--instance ToHeaders ExecutePolicy+ toQuery ExecutePolicy'{..}+ = mconcat+ ["Action" =: ("ExecutePolicy" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "HonorCooldown" =: _epHonorCooldown,+ "MetricValue" =: _epMetricValue,+ "AutoScalingGroupName" =: _epAutoScalingGroupName,+ "BreachThreshold" =: _epBreachThreshold,+ "PolicyName" =: _epPolicyName] -instance AWSRequest ExecutePolicy where- type Sv ExecutePolicy = AutoScaling- type Rs ExecutePolicy = ExecutePolicyResponse+-- | /See:/ 'executePolicyResponse' smart constructor.+data ExecutePolicyResponse =+ ExecutePolicyResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "ExecutePolicy"- response = nullResponse ExecutePolicyResponse+-- | Creates a value of 'ExecutePolicyResponse' with the minimum fields required to make a request.+--+executePolicyResponse+ :: ExecutePolicyResponse+executePolicyResponse = ExecutePolicyResponse'
gen/Network/AWS/AutoScaling/ExitStandby.hs view
@@ -1,127 +1,136 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.ExitStandby--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Moves the specified instances out of 'Standby' mode.+-- Moves the specified instances out of 'Standby' mode. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingInServiceState.html Auto Scaling InService State> in the /Auto ScalingDeveloper Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingInServiceState.html Auto Scaling InService State>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ExitStandby.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ExitStandby.html AWS API Reference> for ExitStandby. module Network.AWS.AutoScaling.ExitStandby (- -- * Request- ExitStandby- -- ** Request constructor- , exitStandby- -- ** Request lenses- , es1AutoScalingGroupName- , es1InstanceIds+ -- * Creating a Request+ exitStandby+ , ExitStandby+ -- * Request Lenses+ , eInstanceIds+ , eAutoScalingGroupName - -- * Response- , ExitStandbyResponse- -- ** Response constructor+ -- * Destructuring the Response , exitStandbyResponse- -- ** Response lenses- , esrActivities+ , ExitStandbyResponse+ -- * Response Lenses+ , ersActivities+ , ersStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data ExitStandby = ExitStandby- { _es1AutoScalingGroupName :: Text- , _es1InstanceIds :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'exitStandby' smart constructor.+data ExitStandby = ExitStandby'+ { _eInstanceIds :: !(Maybe [Text])+ , _eAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ExitStandby' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ExitStandby' with the minimum fields required to make a request. ----- * 'es1AutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'es1InstanceIds' @::@ ['Text']+-- * 'eInstanceIds' ---exitStandby :: Text -- ^ 'es1AutoScalingGroupName'- -> ExitStandby-exitStandby p1 = ExitStandby- { _es1AutoScalingGroupName = p1- , _es1InstanceIds = mempty+-- * 'eAutoScalingGroupName'+exitStandby+ :: Text -- ^ 'eAutoScalingGroupName'+ -> ExitStandby+exitStandby pAutoScalingGroupName_ =+ ExitStandby'+ { _eInstanceIds = Nothing+ , _eAutoScalingGroupName = pAutoScalingGroupName_ } +-- | One or more instance IDs. You must specify at least one instance ID.+eInstanceIds :: Lens' ExitStandby [Text]+eInstanceIds = lens _eInstanceIds (\ s a -> s{_eInstanceIds = a}) . _Default . _Coerce;+ -- | The name of the Auto Scaling group.-es1AutoScalingGroupName :: Lens' ExitStandby Text-es1AutoScalingGroupName =- lens _es1AutoScalingGroupName (\s a -> s { _es1AutoScalingGroupName = a })+eAutoScalingGroupName :: Lens' ExitStandby Text+eAutoScalingGroupName = lens _eAutoScalingGroupName (\ s a -> s{_eAutoScalingGroupName = a}); --- | One or more instance IDs. You must specify at least one instance ID.-es1InstanceIds :: Lens' ExitStandby [Text]-es1InstanceIds = lens _es1InstanceIds (\s a -> s { _es1InstanceIds = a }) . _List+instance AWSRequest ExitStandby where+ type Sv ExitStandby = AutoScaling+ type Rs ExitStandby = ExitStandbyResponse+ request = postQuery+ response+ = receiveXMLWrapper "ExitStandbyResult"+ (\ s h x ->+ ExitStandbyResponse' <$>+ (x .@? "Activities" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -newtype ExitStandbyResponse = ExitStandbyResponse- { _esrActivities :: List "member" Activity- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance ToHeaders ExitStandby where+ toHeaders = const mempty -instance GHC.Exts.IsList ExitStandbyResponse where- type Item ExitStandbyResponse = Activity+instance ToPath ExitStandby where+ toPath = const "/" - fromList = ExitStandbyResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _esrActivities+instance ToQuery ExitStandby where+ toQuery ExitStandby'{..}+ = mconcat+ ["Action" =: ("ExitStandby" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceIds" =:+ toQuery (toQueryList "member" <$> _eInstanceIds),+ "AutoScalingGroupName" =: _eAutoScalingGroupName] --- | 'ExitStandbyResponse' constructor.+-- | /See:/ 'exitStandbyResponse' smart constructor.+data ExitStandbyResponse = ExitStandbyResponse'+ { _ersActivities :: !(Maybe [Activity])+ , _ersStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ExitStandbyResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'esrActivities' @::@ ['Activity']+-- * 'ersActivities' ---exitStandbyResponse :: ExitStandbyResponse-exitStandbyResponse = ExitStandbyResponse- { _esrActivities = mempty+-- * 'ersStatus'+exitStandbyResponse+ :: Int -- ^ 'ersStatus'+ -> ExitStandbyResponse+exitStandbyResponse pStatus_ =+ ExitStandbyResponse'+ { _ersActivities = Nothing+ , _ersStatus = pStatus_ } -- | The activities related to moving instances out of 'Standby' mode.-esrActivities :: Lens' ExitStandbyResponse [Activity]-esrActivities = lens _esrActivities (\s a -> s { _esrActivities = a }) . _List--instance ToPath ExitStandby where- toPath = const "/"--instance ToQuery ExitStandby where- toQuery ExitStandby{..} = mconcat- [ "AutoScalingGroupName" =? _es1AutoScalingGroupName- , "InstanceIds" =? _es1InstanceIds- ]--instance ToHeaders ExitStandby--instance AWSRequest ExitStandby where- type Sv ExitStandby = AutoScaling- type Rs ExitStandby = ExitStandbyResponse-- request = post "ExitStandby"- response = xmlResponse+ersActivities :: Lens' ExitStandbyResponse [Activity]+ersActivities = lens _ersActivities (\ s a -> s{_ersActivities = a}) . _Default . _Coerce; -instance FromXML ExitStandbyResponse where- parseXML = withElement "ExitStandbyResult" $ \x -> ExitStandbyResponse- <$> x .@? "Activities" .!@ mempty+-- | The response status code.+ersStatus :: Lens' ExitStandbyResponse Int+ersStatus = lens _ersStatus (\ s a -> s{_ersStatus = a});
gen/Network/AWS/AutoScaling/PutLifecycleHook.hs view
@@ -1,220 +1,251 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.PutLifecycleHook--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates or updates a lifecycle hook for the specified Auto Scaling Group.+-- Creates or updates a lifecycle hook for the specified Auto Scaling+-- Group. ----- A lifecycle hook tells Auto Scaling that you want to perform an action on an--- instance that is not actively in service; for example, either when the--- instance launches or before the instance terminates.+-- A lifecycle hook tells Auto Scaling that you want to perform an action+-- on an instance that is not actively in service; for example, either when+-- the instance launches or before the instance terminates. ----- This operation is a part of the basic sequence for adding a lifecycle hook--- to an Auto Scaling group:+-- This operation is a part of the basic sequence for adding a lifecycle+-- hook to an Auto Scaling group: ----- Create a notification target. A target can be either an Amazon SQS queue or--- an Amazon SNS topic. Create an IAM role. This role allows Auto Scaling to--- publish lifecycle notifications to the designated SQS queue or SNS topic. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.--- If necessary, record the lifecycle action heartbeat to keep the instance in--- a pending state. Complete the lifecycle action. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State> and <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State> in the /Auto Scaling Developer Guide/.+-- 1. Create a notification target. A target can be either an Amazon SQS+-- queue or an Amazon SNS topic.+-- 2. Create an IAM role. This role allows Auto Scaling to publish+-- lifecycle notifications to the designated SQS queue or SNS topic.+-- 3. __Create the lifecycle hook. You can create a hook that acts when+-- instances launch or when instances terminate.__+-- 4. If necessary, record the lifecycle action heartbeat to keep the+-- instance in a pending state.+-- 5. Complete the lifecycle action. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutLifecycleHook.html>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State>+-- and+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State>+-- in the /Auto Scaling Developer Guide/.+--+-- If you exceed your maximum limit of lifecycle hooks, which by default is+-- 50 per region, the call fails. For information about updating this+-- limit, see+-- <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html AWS Service Limits>+-- in the /Amazon Web Services General Reference/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutLifecycleHook.html AWS API Reference> for PutLifecycleHook. module Network.AWS.AutoScaling.PutLifecycleHook (- -- * Request- PutLifecycleHook- -- ** Request constructor- , putLifecycleHook- -- ** Request lenses- , plhAutoScalingGroupName+ -- * Creating a Request+ putLifecycleHook+ , PutLifecycleHook+ -- * Request Lenses , plhDefaultResult , plhHeartbeatTimeout- , plhLifecycleHookName- , plhLifecycleTransition , plhNotificationMetadata- , plhNotificationTargetARN , plhRoleARN+ , plhLifecycleTransition+ , plhNotificationTargetARN+ , plhLifecycleHookName+ , plhAutoScalingGroupName - -- * Response- , PutLifecycleHookResponse- -- ** Response constructor+ -- * Destructuring the Response , putLifecycleHookResponse+ , PutLifecycleHookResponse+ -- * Response Lenses+ , plhrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data PutLifecycleHook = PutLifecycleHook- { _plhAutoScalingGroupName :: Text- , _plhDefaultResult :: Maybe Text- , _plhHeartbeatTimeout :: Maybe Int- , _plhLifecycleHookName :: Text- , _plhLifecycleTransition :: Maybe Text- , _plhNotificationMetadata :: Maybe Text- , _plhNotificationTargetARN :: Maybe Text- , _plhRoleARN :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'putLifecycleHook' smart constructor.+data PutLifecycleHook = PutLifecycleHook'+ { _plhDefaultResult :: !(Maybe Text)+ , _plhHeartbeatTimeout :: !(Maybe Int)+ , _plhNotificationMetadata :: !(Maybe Text)+ , _plhRoleARN :: !(Maybe Text)+ , _plhLifecycleTransition :: !(Maybe Text)+ , _plhNotificationTargetARN :: !(Maybe Text)+ , _plhLifecycleHookName :: !Text+ , _plhAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'PutLifecycleHook' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'PutLifecycleHook' with the minimum fields required to make a request. ----- * 'plhAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'plhDefaultResult' @::@ 'Maybe' 'Text'+-- * 'plhDefaultResult' ----- * 'plhHeartbeatTimeout' @::@ 'Maybe' 'Int'+-- * 'plhHeartbeatTimeout' ----- * 'plhLifecycleHookName' @::@ 'Text'+-- * 'plhNotificationMetadata' ----- * 'plhLifecycleTransition' @::@ 'Maybe' 'Text'+-- * 'plhRoleARN' ----- * 'plhNotificationMetadata' @::@ 'Maybe' 'Text'+-- * 'plhLifecycleTransition' ----- * 'plhNotificationTargetARN' @::@ 'Maybe' 'Text'+-- * 'plhNotificationTargetARN' ----- * 'plhRoleARN' @::@ 'Maybe' 'Text'+-- * 'plhLifecycleHookName' ---putLifecycleHook :: Text -- ^ 'plhLifecycleHookName'- -> Text -- ^ 'plhAutoScalingGroupName'- -> PutLifecycleHook-putLifecycleHook p1 p2 = PutLifecycleHook- { _plhLifecycleHookName = p1- , _plhAutoScalingGroupName = p2- , _plhLifecycleTransition = Nothing- , _plhRoleARN = Nothing+-- * 'plhAutoScalingGroupName'+putLifecycleHook+ :: Text -- ^ 'plhLifecycleHookName'+ -> Text -- ^ 'plhAutoScalingGroupName'+ -> PutLifecycleHook+putLifecycleHook pLifecycleHookName_ pAutoScalingGroupName_ =+ PutLifecycleHook'+ { _plhDefaultResult = Nothing+ , _plhHeartbeatTimeout = Nothing+ , _plhNotificationMetadata = Nothing+ , _plhRoleARN = Nothing+ , _plhLifecycleTransition = Nothing , _plhNotificationTargetARN = Nothing- , _plhNotificationMetadata = Nothing- , _plhHeartbeatTimeout = Nothing- , _plhDefaultResult = Nothing+ , _plhLifecycleHookName = pLifecycleHookName_+ , _plhAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name of the Auto Scaling group to which you want to assign the lifecycle--- hook.-plhAutoScalingGroupName :: Lens' PutLifecycleHook Text-plhAutoScalingGroupName =- lens _plhAutoScalingGroupName (\s a -> s { _plhAutoScalingGroupName = a })---- | Defines the action the Auto Scaling group should take when the lifecycle hook--- timeout elapses or if an unexpected failure occurs. The value for this--- parameter can be either 'CONTINUE' or 'ABANDON'. The default value for this--- parameter is 'ABANDON'.+-- | Defines the action the Auto Scaling group should take when the lifecycle+-- hook timeout elapses or if an unexpected failure occurs. The value for+-- this parameter can be either 'CONTINUE' or 'ABANDON'. The default value+-- for this parameter is 'ABANDON'. plhDefaultResult :: Lens' PutLifecycleHook (Maybe Text)-plhDefaultResult = lens _plhDefaultResult (\s a -> s { _plhDefaultResult = a })+plhDefaultResult = lens _plhDefaultResult (\ s a -> s{_plhDefaultResult = a}); --- | Defines the amount of time, in seconds, that can elapse before the lifecycle--- hook times out. When the lifecycle hook times out, Auto Scaling performs the--- action defined in the 'DefaultResult' parameter. You can prevent the lifecycle--- hook from timing out by calling 'RecordLifecycleActionHeartbeat'. The default--- value for this parameter is 3600 seconds (1 hour).+-- | Defines the amount of time, in seconds, that can elapse before the+-- lifecycle hook times out. When the lifecycle hook times out, Auto+-- Scaling performs the action defined in the 'DefaultResult' parameter.+-- You can prevent the lifecycle hook from timing out by calling+-- RecordLifecycleActionHeartbeat. The default value for this parameter is+-- 3600 seconds (1 hour). plhHeartbeatTimeout :: Lens' PutLifecycleHook (Maybe Int)-plhHeartbeatTimeout =- lens _plhHeartbeatTimeout (\s a -> s { _plhHeartbeatTimeout = a })+plhHeartbeatTimeout = lens _plhHeartbeatTimeout (\ s a -> s{_plhHeartbeatTimeout = a}); --- | The name of the lifecycle hook.-plhLifecycleHookName :: Lens' PutLifecycleHook Text-plhLifecycleHookName =- lens _plhLifecycleHookName (\s a -> s { _plhLifecycleHookName = a })+-- | Contains additional information that you want to include any time Auto+-- Scaling sends a message to the notification target.+plhNotificationMetadata :: Lens' PutLifecycleHook (Maybe Text)+plhNotificationMetadata = lens _plhNotificationMetadata (\ s a -> s{_plhNotificationMetadata = a}); --- | The Amazon EC2 instance state to which you want to attach the lifecycle hook.--- See 'DescribeLifecycleHookTypes' for a list of available lifecycle hook types.+-- | The ARN of the IAM role that allows the Auto Scaling group to publish to+-- the specified notification target. -- -- This parameter is required for new lifecycle hooks, but optional when -- updating existing hooks.---+plhRoleARN :: Lens' PutLifecycleHook (Maybe Text)+plhRoleARN = lens _plhRoleARN (\ s a -> s{_plhRoleARN = a});++-- | The instance state to which you want to attach the lifecycle hook. For a+-- list of lifecycle hook types, see DescribeLifecycleHookTypes. --+-- This parameter is required for new lifecycle hooks, but optional when+-- updating existing hooks. plhLifecycleTransition :: Lens' PutLifecycleHook (Maybe Text)-plhLifecycleTransition =- lens _plhLifecycleTransition (\s a -> s { _plhLifecycleTransition = a })---- | Contains additional information that you want to include any time Auto--- Scaling sends a message to the notification target.-plhNotificationMetadata :: Lens' PutLifecycleHook (Maybe Text)-plhNotificationMetadata =- lens _plhNotificationMetadata (\s a -> s { _plhNotificationMetadata = a })+plhLifecycleTransition = lens _plhLifecycleTransition (\ s a -> s{_plhLifecycleTransition = a}); --- | The ARN of the notification target that Auto Scaling will use to notify you--- when an instance is in the transition state for the lifecycle hook. This ARN--- target can be either an SQS queue or an SNS topic.+-- | The ARN of the notification target that Auto Scaling will use to notify+-- you when an instance is in the transition state for the lifecycle hook.+-- This ARN target can be either an SQS queue or an SNS topic. -- -- This parameter is required for new lifecycle hooks, but optional when -- updating existing hooks. -- -- The notification message sent to the target will include: ----- LifecycleActionToken. The Lifecycle action token. AccountId. The user--- account ID. AutoScalingGroupName. The name of the Auto Scaling group. LifecycleHookName--- . The lifecycle hook name. EC2InstanceId. The EC2 instance ID. LifecycleTransition--- . The lifecycle transition. NotificationMetadata. The notification metadata.--- This operation uses the JSON format when sending notifications to an Amazon--- SQS queue, and an email key/value pair format when sending notifications to--- an Amazon SNS topic.+-- - __LifecycleActionToken__. The Lifecycle action token.+-- - __AccountId__. The user account ID.+-- - __AutoScalingGroupName__. The name of the Auto Scaling group.+-- - __LifecycleHookName__. The lifecycle hook name.+-- - __EC2InstanceId__. The EC2 instance ID.+-- - __LifecycleTransition__. The lifecycle transition.+-- - __NotificationMetadata__. The notification metadata. --+-- This operation uses the JSON format when sending notifications to an+-- Amazon SQS queue, and an email key\/value pair format when sending+-- notifications to an Amazon SNS topic.+-- -- When you call this operation, a test message is sent to the notification--- target. This test message contains an additional key/value pair: 'Event:autoscaling:TEST_NOTIFICATION'.+-- target. This test message contains an additional key\/value pair:+-- 'Event:autoscaling:TEST_NOTIFICATION'. plhNotificationTargetARN :: Lens' PutLifecycleHook (Maybe Text)-plhNotificationTargetARN =- lens _plhNotificationTargetARN- (\s a -> s { _plhNotificationTargetARN = a })+plhNotificationTargetARN = lens _plhNotificationTargetARN (\ s a -> s{_plhNotificationTargetARN = a}); --- | The ARN of the IAM role that allows the Auto Scaling group to publish to the--- specified notification target.------ This parameter is required for new lifecycle hooks, but optional when--- updating existing hooks.-------plhRoleARN :: Lens' PutLifecycleHook (Maybe Text)-plhRoleARN = lens _plhRoleARN (\s a -> s { _plhRoleARN = a })+-- | The name of the lifecycle hook.+plhLifecycleHookName :: Lens' PutLifecycleHook Text+plhLifecycleHookName = lens _plhLifecycleHookName (\ s a -> s{_plhLifecycleHookName = a}); -data PutLifecycleHookResponse = PutLifecycleHookResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name of the Auto Scaling group to which you want to assign the+-- lifecycle hook.+plhAutoScalingGroupName :: Lens' PutLifecycleHook Text+plhAutoScalingGroupName = lens _plhAutoScalingGroupName (\ s a -> s{_plhAutoScalingGroupName = a}); --- | 'PutLifecycleHookResponse' constructor.-putLifecycleHookResponse :: PutLifecycleHookResponse-putLifecycleHookResponse = PutLifecycleHookResponse+instance AWSRequest PutLifecycleHook where+ type Sv PutLifecycleHook = AutoScaling+ type Rs PutLifecycleHook = PutLifecycleHookResponse+ request = postQuery+ response+ = receiveXMLWrapper "PutLifecycleHookResult"+ (\ s h x ->+ PutLifecycleHookResponse' <$> (pure (fromEnum s))) +instance ToHeaders PutLifecycleHook where+ toHeaders = const mempty+ instance ToPath PutLifecycleHook where- toPath = const "/"+ toPath = const "/" instance ToQuery PutLifecycleHook where- toQuery PutLifecycleHook{..} = mconcat- [ "AutoScalingGroupName" =? _plhAutoScalingGroupName- , "DefaultResult" =? _plhDefaultResult- , "HeartbeatTimeout" =? _plhHeartbeatTimeout- , "LifecycleHookName" =? _plhLifecycleHookName- , "LifecycleTransition" =? _plhLifecycleTransition- , "NotificationMetadata" =? _plhNotificationMetadata- , "NotificationTargetARN" =? _plhNotificationTargetARN- , "RoleARN" =? _plhRoleARN- ]+ toQuery PutLifecycleHook'{..}+ = mconcat+ ["Action" =: ("PutLifecycleHook" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "DefaultResult" =: _plhDefaultResult,+ "HeartbeatTimeout" =: _plhHeartbeatTimeout,+ "NotificationMetadata" =: _plhNotificationMetadata,+ "RoleARN" =: _plhRoleARN,+ "LifecycleTransition" =: _plhLifecycleTransition,+ "NotificationTargetARN" =: _plhNotificationTargetARN,+ "LifecycleHookName" =: _plhLifecycleHookName,+ "AutoScalingGroupName" =: _plhAutoScalingGroupName] -instance ToHeaders PutLifecycleHook+-- | /See:/ 'putLifecycleHookResponse' smart constructor.+newtype PutLifecycleHookResponse = PutLifecycleHookResponse'+ { _plhrsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest PutLifecycleHook where- type Sv PutLifecycleHook = AutoScaling- type Rs PutLifecycleHook = PutLifecycleHookResponse+-- | Creates a value of 'PutLifecycleHookResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'plhrsStatus'+putLifecycleHookResponse+ :: Int -- ^ 'plhrsStatus'+ -> PutLifecycleHookResponse+putLifecycleHookResponse pStatus_ =+ PutLifecycleHookResponse'+ { _plhrsStatus = pStatus_+ } - request = post "PutLifecycleHook"- response = nullResponse PutLifecycleHookResponse+-- | The response status code.+plhrsStatus :: Lens' PutLifecycleHookResponse Int+plhrsStatus = lens _plhrsStatus (\ s a -> s{_plhrsStatus = a});
gen/Network/AWS/AutoScaling/PutNotificationConfiguration.hs view
@@ -1,122 +1,130 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.PutNotificationConfiguration--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Configures an Auto Scaling group to send notifications when specified events--- take place. Subscribers to this topic can have messages for events delivered--- to an endpoint such as a web server or email address.+-- Configures an Auto Scaling group to send notifications when specified+-- events take place. Subscribers to this topic can have messages for+-- events delivered to an endpoint such as a web server or email address. ----- For more information see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASGettingNotifications.html Getting Notifications When Your Auto Scaling GroupChanges> in the /Auto Scaling Developer Guide/.+-- For more information see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASGettingNotifications.html Getting Notifications When Your Auto Scaling Group Changes>+-- in the /Auto Scaling Developer Guide/. -- -- This configuration overwrites an existing configuration. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutNotificationConfiguration.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutNotificationConfiguration.html AWS API Reference> for PutNotificationConfiguration. module Network.AWS.AutoScaling.PutNotificationConfiguration (- -- * Request- PutNotificationConfiguration- -- ** Request constructor- , putNotificationConfiguration- -- ** Request lenses+ -- * Creating a Request+ putNotificationConfiguration+ , PutNotificationConfiguration+ -- * Request Lenses , pncAutoScalingGroupName- , pncNotificationTypes , pncTopicARN+ , pncNotificationTypes - -- * Response- , PutNotificationConfigurationResponse- -- ** Response constructor+ -- * Destructuring the Response , putNotificationConfigurationResponse+ , PutNotificationConfigurationResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data PutNotificationConfiguration = PutNotificationConfiguration- { _pncAutoScalingGroupName :: Text- , _pncNotificationTypes :: List "member" Text- , _pncTopicARN :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'putNotificationConfiguration' smart constructor.+data PutNotificationConfiguration = PutNotificationConfiguration'+ { _pncAutoScalingGroupName :: !Text+ , _pncTopicARN :: !Text+ , _pncNotificationTypes :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'PutNotificationConfiguration' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'PutNotificationConfiguration' with the minimum fields required to make a request. ----- * 'pncAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'pncNotificationTypes' @::@ ['Text']+-- * 'pncAutoScalingGroupName' ----- * 'pncTopicARN' @::@ 'Text'+-- * 'pncTopicARN' ---putNotificationConfiguration :: Text -- ^ 'pncAutoScalingGroupName'- -> Text -- ^ 'pncTopicARN'- -> PutNotificationConfiguration-putNotificationConfiguration p1 p2 = PutNotificationConfiguration- { _pncAutoScalingGroupName = p1- , _pncTopicARN = p2- , _pncNotificationTypes = mempty+-- * 'pncNotificationTypes'+putNotificationConfiguration+ :: Text -- ^ 'pncAutoScalingGroupName'+ -> Text -- ^ 'pncTopicARN'+ -> PutNotificationConfiguration+putNotificationConfiguration pAutoScalingGroupName_ pTopicARN_ =+ PutNotificationConfiguration'+ { _pncAutoScalingGroupName = pAutoScalingGroupName_+ , _pncTopicARN = pTopicARN_+ , _pncNotificationTypes = mempty } -- | The name of the Auto Scaling group. pncAutoScalingGroupName :: Lens' PutNotificationConfiguration Text-pncAutoScalingGroupName =- lens _pncAutoScalingGroupName (\s a -> s { _pncAutoScalingGroupName = a })---- | The type of event that will cause the notification to be sent. For details--- about notification types supported by Auto Scaling, see 'DescribeAutoScalingNotificationTypes'.-pncNotificationTypes :: Lens' PutNotificationConfiguration [Text]-pncNotificationTypes =- lens _pncNotificationTypes (\s a -> s { _pncNotificationTypes = a })- . _List+pncAutoScalingGroupName = lens _pncAutoScalingGroupName (\ s a -> s{_pncAutoScalingGroupName = a}); -- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service -- (SNS) topic. pncTopicARN :: Lens' PutNotificationConfiguration Text-pncTopicARN = lens _pncTopicARN (\s a -> s { _pncTopicARN = a })+pncTopicARN = lens _pncTopicARN (\ s a -> s{_pncTopicARN = a}); -data PutNotificationConfigurationResponse = PutNotificationConfigurationResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The type of event that will cause the notification to be sent. For+-- details about notification types supported by Auto Scaling, see+-- DescribeAutoScalingNotificationTypes.+pncNotificationTypes :: Lens' PutNotificationConfiguration [Text]+pncNotificationTypes = lens _pncNotificationTypes (\ s a -> s{_pncNotificationTypes = a}) . _Coerce; --- | 'PutNotificationConfigurationResponse' constructor.-putNotificationConfigurationResponse :: PutNotificationConfigurationResponse-putNotificationConfigurationResponse = PutNotificationConfigurationResponse+instance AWSRequest PutNotificationConfiguration+ where+ type Sv PutNotificationConfiguration = AutoScaling+ type Rs PutNotificationConfiguration =+ PutNotificationConfigurationResponse+ request = postQuery+ response+ = receiveNull PutNotificationConfigurationResponse' +instance ToHeaders PutNotificationConfiguration where+ toHeaders = const mempty+ instance ToPath PutNotificationConfiguration where- toPath = const "/"+ toPath = const "/" instance ToQuery PutNotificationConfiguration where- toQuery PutNotificationConfiguration{..} = mconcat- [ "AutoScalingGroupName" =? _pncAutoScalingGroupName- , "NotificationTypes" =? _pncNotificationTypes- , "TopicARN" =? _pncTopicARN- ]--instance ToHeaders PutNotificationConfiguration+ toQuery PutNotificationConfiguration'{..}+ = mconcat+ ["Action" =:+ ("PutNotificationConfiguration" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "AutoScalingGroupName" =: _pncAutoScalingGroupName,+ "TopicARN" =: _pncTopicARN,+ "NotificationTypes" =:+ toQueryList "member" _pncNotificationTypes] -instance AWSRequest PutNotificationConfiguration where- type Sv PutNotificationConfiguration = AutoScaling- type Rs PutNotificationConfiguration = PutNotificationConfigurationResponse+-- | /See:/ 'putNotificationConfigurationResponse' smart constructor.+data PutNotificationConfigurationResponse =+ PutNotificationConfigurationResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "PutNotificationConfiguration"- response = nullResponse PutNotificationConfigurationResponse+-- | Creates a value of 'PutNotificationConfigurationResponse' with the minimum fields required to make a request.+--+putNotificationConfigurationResponse+ :: PutNotificationConfigurationResponse+putNotificationConfigurationResponse = PutNotificationConfigurationResponse'
gen/Network/AWS/AutoScaling/PutScalingPolicy.hs view
@@ -1,184 +1,270 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.PutScalingPolicy--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates or updates a policy for an Auto Scaling group. To update an existing--- policy, use the existing policy name and set the parameters you want to--- change. Any existing parameter not changed in an update to an existing policy--- is not changed in this update request.+-- Creates or updates a policy for an Auto Scaling group. To update an+-- existing policy, use the existing policy name and set the parameters you+-- want to change. Any existing parameter not changed in an update to an+-- existing policy is not changed in this update request. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutScalingPolicy.html>+-- If you exceed your maximum limit of step adjustments, which by default+-- is 20 per region, the call fails. For information about updating this+-- limit, see+-- <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html AWS Service Limits>+-- in the /Amazon Web Services General Reference/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutScalingPolicy.html AWS API Reference> for PutScalingPolicy. module Network.AWS.AutoScaling.PutScalingPolicy (- -- * Request- PutScalingPolicy- -- ** Request constructor- , putScalingPolicy- -- ** Request lenses- , pspAdjustmentType- , pspAutoScalingGroupName- , pspCooldown+ -- * Creating a Request+ putScalingPolicy+ , PutScalingPolicy+ -- * Request Lenses+ , pspEstimatedInstanceWarmup , pspMinAdjustmentStep- , pspPolicyName+ , pspPolicyType+ , pspStepAdjustments , pspScalingAdjustment+ , pspCooldown+ , pspMetricAggregationType+ , pspMinAdjustmentMagnitude+ , pspAutoScalingGroupName+ , pspPolicyName+ , pspAdjustmentType - -- * Response- , PutScalingPolicyResponse- -- ** Response constructor+ -- * Destructuring the Response , putScalingPolicyResponse- -- ** Response lenses- , psprPolicyARN+ , PutScalingPolicyResponse+ -- * Response Lenses+ , psprsPolicyARN+ , psprsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data PutScalingPolicy = PutScalingPolicy- { _pspAdjustmentType :: Text- , _pspAutoScalingGroupName :: Text- , _pspCooldown :: Maybe Int- , _pspMinAdjustmentStep :: Maybe Int- , _pspPolicyName :: Text- , _pspScalingAdjustment :: Int- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'putScalingPolicy' smart constructor.+data PutScalingPolicy = PutScalingPolicy'+ { _pspEstimatedInstanceWarmup :: !(Maybe Int)+ , _pspMinAdjustmentStep :: !(Maybe Int)+ , _pspPolicyType :: !(Maybe Text)+ , _pspStepAdjustments :: !(Maybe [StepAdjustment])+ , _pspScalingAdjustment :: !(Maybe Int)+ , _pspCooldown :: !(Maybe Int)+ , _pspMetricAggregationType :: !(Maybe Text)+ , _pspMinAdjustmentMagnitude :: !(Maybe Int)+ , _pspAutoScalingGroupName :: !Text+ , _pspPolicyName :: !Text+ , _pspAdjustmentType :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'PutScalingPolicy' constructor.+-- | Creates a value of 'PutScalingPolicy' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'pspAdjustmentType' @::@ 'Text'+-- * 'pspEstimatedInstanceWarmup' ----- * 'pspAutoScalingGroupName' @::@ 'Text'+-- * 'pspMinAdjustmentStep' ----- * 'pspCooldown' @::@ 'Maybe' 'Int'+-- * 'pspPolicyType' ----- * 'pspMinAdjustmentStep' @::@ 'Maybe' 'Int'+-- * 'pspStepAdjustments' ----- * 'pspPolicyName' @::@ 'Text'+-- * 'pspScalingAdjustment' ----- * 'pspScalingAdjustment' @::@ 'Int'+-- * 'pspCooldown' ---putScalingPolicy :: Text -- ^ 'pspAutoScalingGroupName'- -> Text -- ^ 'pspPolicyName'- -> Int -- ^ 'pspScalingAdjustment'- -> Text -- ^ 'pspAdjustmentType'- -> PutScalingPolicy-putScalingPolicy p1 p2 p3 p4 = PutScalingPolicy- { _pspAutoScalingGroupName = p1- , _pspPolicyName = p2- , _pspScalingAdjustment = p3- , _pspAdjustmentType = p4- , _pspCooldown = Nothing- , _pspMinAdjustmentStep = Nothing+-- * 'pspMetricAggregationType'+--+-- * 'pspMinAdjustmentMagnitude'+--+-- * 'pspAutoScalingGroupName'+--+-- * 'pspPolicyName'+--+-- * 'pspAdjustmentType'+putScalingPolicy+ :: Text -- ^ 'pspAutoScalingGroupName'+ -> Text -- ^ 'pspPolicyName'+ -> Text -- ^ 'pspAdjustmentType'+ -> PutScalingPolicy+putScalingPolicy pAutoScalingGroupName_ pPolicyName_ pAdjustmentType_ =+ PutScalingPolicy'+ { _pspEstimatedInstanceWarmup = Nothing+ , _pspMinAdjustmentStep = Nothing+ , _pspPolicyType = Nothing+ , _pspStepAdjustments = Nothing+ , _pspScalingAdjustment = Nothing+ , _pspCooldown = Nothing+ , _pspMetricAggregationType = Nothing+ , _pspMinAdjustmentMagnitude = Nothing+ , _pspAutoScalingGroupName = pAutoScalingGroupName_+ , _pspPolicyName = pPolicyName_+ , _pspAdjustmentType = pAdjustmentType_ } --- | Specifies whether the 'ScalingAdjustment' is an absolute number or a percentage--- of the current capacity. Valid values are 'ChangeInCapacity', 'ExactCapacity',--- and 'PercentChangeInCapacity'.+-- | The estimated time, in seconds, until a newly launched instance can+-- contribute to the CloudWatch metrics. The default is to use the value+-- specified for the default cooldown period for the group. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html Dynamic Scaling> in the /Auto Scaling Developer Guide/--- .-pspAdjustmentType :: Lens' PutScalingPolicy Text-pspAdjustmentType =- lens _pspAdjustmentType (\s a -> s { _pspAdjustmentType = a })+-- This parameter is not supported if the policy type is 'SimpleScaling'.+pspEstimatedInstanceWarmup :: Lens' PutScalingPolicy (Maybe Int)+pspEstimatedInstanceWarmup = lens _pspEstimatedInstanceWarmup (\ s a -> s{_pspEstimatedInstanceWarmup = a}); --- | The name or ARN of the group.-pspAutoScalingGroupName :: Lens' PutScalingPolicy Text-pspAutoScalingGroupName =- lens _pspAutoScalingGroupName (\s a -> s { _pspAutoScalingGroupName = a })+-- | Available for backward compatibility. Use 'MinAdjustmentMagnitude'+-- instead.+pspMinAdjustmentStep :: Lens' PutScalingPolicy (Maybe Int)+pspMinAdjustmentStep = lens _pspMinAdjustmentStep (\ s a -> s{_pspMinAdjustmentStep = a}); --- | The amount of time, in seconds, after a scaling activity completes and before--- the next scaling activity can start.+-- | The policy type. Valid values are 'SimpleScaling' and 'StepScaling'. If+-- the policy type is null, the value is treated as 'SimpleScaling'.+pspPolicyType :: Lens' PutScalingPolicy (Maybe Text)+pspPolicyType = lens _pspPolicyType (\ s a -> s{_pspPolicyType = a});++-- | A set of adjustments that enable you to scale based on the size of the+-- alarm breach. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns> in the /AutoScaling Developer Guide/.+-- This parameter is required if the policy type is 'StepScaling' and not+-- supported otherwise.+pspStepAdjustments :: Lens' PutScalingPolicy [StepAdjustment]+pspStepAdjustments = lens _pspStepAdjustments (\ s a -> s{_pspStepAdjustments = a}) . _Default . _Coerce;++-- | The amount by which to scale, based on the specified adjustment type. A+-- positive value adds to the current capacity while a negative number+-- removes from the current capacity.+--+-- This parameter is required if the policy type is 'SimpleScaling' and not+-- supported otherwise.+pspScalingAdjustment :: Lens' PutScalingPolicy (Maybe Int)+pspScalingAdjustment = lens _pspScalingAdjustment (\ s a -> s{_pspScalingAdjustment = a});++-- | The amount of time, in seconds, after a scaling activity completes and+-- before the next scaling activity can start. If this parameter is not+-- specified, the default cooldown period for the group applies.+--+-- This parameter is not supported unless the policy type is+-- 'SimpleScaling'.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns>+-- in the /Auto Scaling Developer Guide/. pspCooldown :: Lens' PutScalingPolicy (Maybe Int)-pspCooldown = lens _pspCooldown (\s a -> s { _pspCooldown = a })+pspCooldown = lens _pspCooldown (\ s a -> s{_pspCooldown = a}); --- | Used with 'AdjustmentType' with the value 'PercentChangeInCapacity', the scaling--- policy changes the 'DesiredCapacity' of the Auto Scaling group by at least the--- number of instances specified in the value.+-- | The aggregation type for the CloudWatch metrics. Valid values are+-- 'Minimum', 'Maximum', and 'Average'. If the aggregation type is null,+-- the value is treated as 'Average'. ----- You will get a 'ValidationError' if you use 'MinAdjustmentStep' on a policy with--- an 'AdjustmentType' other than 'PercentChangeInCapacity'.-pspMinAdjustmentStep :: Lens' PutScalingPolicy (Maybe Int)-pspMinAdjustmentStep =- lens _pspMinAdjustmentStep (\s a -> s { _pspMinAdjustmentStep = a })+-- This parameter is not supported if the policy type is 'SimpleScaling'.+pspMetricAggregationType :: Lens' PutScalingPolicy (Maybe Text)+pspMetricAggregationType = lens _pspMetricAggregationType (\ s a -> s{_pspMetricAggregationType = a}); --- | The name of the policy.-pspPolicyName :: Lens' PutScalingPolicy Text-pspPolicyName = lens _pspPolicyName (\s a -> s { _pspPolicyName = a })+-- | The minimum number of instances to scale. If the value of+-- 'AdjustmentType' is 'PercentChangeInCapacity', the scaling policy+-- changes the 'DesiredCapacity' of the Auto Scaling group by at least this+-- many instances. Otherwise, the error is 'ValidationError'.+pspMinAdjustmentMagnitude :: Lens' PutScalingPolicy (Maybe Int)+pspMinAdjustmentMagnitude = lens _pspMinAdjustmentMagnitude (\ s a -> s{_pspMinAdjustmentMagnitude = a}); --- | The number of instances by which to scale. 'AdjustmentType' determines the--- interpretation of this number (e.g., as an absolute number or as a percentage--- of the existing Auto Scaling group size). A positive increment adds to the--- current capacity and a negative value removes from the current capacity.-pspScalingAdjustment :: Lens' PutScalingPolicy Int-pspScalingAdjustment =- lens _pspScalingAdjustment (\s a -> s { _pspScalingAdjustment = a })+-- | The name or ARN of the group.+pspAutoScalingGroupName :: Lens' PutScalingPolicy Text+pspAutoScalingGroupName = lens _pspAutoScalingGroupName (\ s a -> s{_pspAutoScalingGroupName = a}); -newtype PutScalingPolicyResponse = PutScalingPolicyResponse- { _psprPolicyARN :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)+-- | The name of the policy.+pspPolicyName :: Lens' PutScalingPolicy Text+pspPolicyName = lens _pspPolicyName (\ s a -> s{_pspPolicyName = a}); --- | 'PutScalingPolicyResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'psprPolicyARN' @::@ 'Maybe' 'Text'+-- | The adjustment type. Valid values are 'ChangeInCapacity',+-- 'ExactCapacity', and 'PercentChangeInCapacity'. ---putScalingPolicyResponse :: PutScalingPolicyResponse-putScalingPolicyResponse = PutScalingPolicyResponse- { _psprPolicyARN = Nothing- }+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html Dynamic Scaling>+-- in the /Auto Scaling Developer Guide/.+pspAdjustmentType :: Lens' PutScalingPolicy Text+pspAdjustmentType = lens _pspAdjustmentType (\ s a -> s{_pspAdjustmentType = a}); --- | The Amazon Resource Name (ARN) of the policy.-psprPolicyARN :: Lens' PutScalingPolicyResponse (Maybe Text)-psprPolicyARN = lens _psprPolicyARN (\s a -> s { _psprPolicyARN = a })+instance AWSRequest PutScalingPolicy where+ type Sv PutScalingPolicy = AutoScaling+ type Rs PutScalingPolicy = PutScalingPolicyResponse+ request = postQuery+ response+ = receiveXMLWrapper "PutScalingPolicyResult"+ (\ s h x ->+ PutScalingPolicyResponse' <$>+ (x .@? "PolicyARN") <*> (pure (fromEnum s))) +instance ToHeaders PutScalingPolicy where+ toHeaders = const mempty+ instance ToPath PutScalingPolicy where- toPath = const "/"+ toPath = const "/" instance ToQuery PutScalingPolicy where- toQuery PutScalingPolicy{..} = mconcat- [ "AdjustmentType" =? _pspAdjustmentType- , "AutoScalingGroupName" =? _pspAutoScalingGroupName- , "Cooldown" =? _pspCooldown- , "MinAdjustmentStep" =? _pspMinAdjustmentStep- , "PolicyName" =? _pspPolicyName- , "ScalingAdjustment" =? _pspScalingAdjustment- ]+ toQuery PutScalingPolicy'{..}+ = mconcat+ ["Action" =: ("PutScalingPolicy" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "EstimatedInstanceWarmup" =:+ _pspEstimatedInstanceWarmup,+ "MinAdjustmentStep" =: _pspMinAdjustmentStep,+ "PolicyType" =: _pspPolicyType,+ "StepAdjustments" =:+ toQuery+ (toQueryList "member" <$> _pspStepAdjustments),+ "ScalingAdjustment" =: _pspScalingAdjustment,+ "Cooldown" =: _pspCooldown,+ "MetricAggregationType" =: _pspMetricAggregationType,+ "MinAdjustmentMagnitude" =:+ _pspMinAdjustmentMagnitude,+ "AutoScalingGroupName" =: _pspAutoScalingGroupName,+ "PolicyName" =: _pspPolicyName,+ "AdjustmentType" =: _pspAdjustmentType] -instance ToHeaders PutScalingPolicy+-- | /See:/ 'putScalingPolicyResponse' smart constructor.+data PutScalingPolicyResponse = PutScalingPolicyResponse'+ { _psprsPolicyARN :: !(Maybe Text)+ , _psprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest PutScalingPolicy where- type Sv PutScalingPolicy = AutoScaling- type Rs PutScalingPolicy = PutScalingPolicyResponse+-- | Creates a value of 'PutScalingPolicyResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'psprsPolicyARN'+--+-- * 'psprsStatus'+putScalingPolicyResponse+ :: Int -- ^ 'psprsStatus'+ -> PutScalingPolicyResponse+putScalingPolicyResponse pStatus_ =+ PutScalingPolicyResponse'+ { _psprsPolicyARN = Nothing+ , _psprsStatus = pStatus_+ } - request = post "PutScalingPolicy"- response = xmlResponse+-- | The Amazon Resource Name (ARN) of the policy.+psprsPolicyARN :: Lens' PutScalingPolicyResponse (Maybe Text)+psprsPolicyARN = lens _psprsPolicyARN (\ s a -> s{_psprsPolicyARN = a}); -instance FromXML PutScalingPolicyResponse where- parseXML = withElement "PutScalingPolicyResult" $ \x -> PutScalingPolicyResponse- <$> x .@? "PolicyARN"+-- | The response status code.+psprsStatus :: Lens' PutScalingPolicyResponse Int+psprsStatus = lens _psprsStatus (\ s a -> s{_psprsStatus = a});
gen/Network/AWS/AutoScaling/PutScheduledUpdateGroupAction.hs view
@@ -1,201 +1,200 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.PutScheduledUpdateGroupAction--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Creates or updates a scheduled scaling action for an Auto Scaling group.+-- Creates or updates a scheduled scaling action for an Auto Scaling group. -- When updating a scheduled scaling action, if you leave a parameter--- unspecified, the corresponding value remains unchanged in the affected Auto--- Scaling group.------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/schedule_time.html Scheduled Scaling> in the /Auto Scaling DeveloperGuide/.------ Auto Scaling supports the date and time expressed in "YYYY-MM-DDThh:mm:ssZ"--- format in UTC/GMT only.---+-- unspecified, the corresponding value remains unchanged in the affected+-- Auto Scaling group. --+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/schedule_time.html Scheduled Scaling>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutScheduledUpdateGroupAction.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_PutScheduledUpdateGroupAction.html AWS API Reference> for PutScheduledUpdateGroupAction. module Network.AWS.AutoScaling.PutScheduledUpdateGroupAction (- -- * Request- PutScheduledUpdateGroupAction- -- ** Request constructor- , putScheduledUpdateGroupAction- -- ** Request lenses- , psugaAutoScalingGroupName- , psugaDesiredCapacity- , psugaEndTime+ -- * Creating a Request+ putScheduledUpdateGroupAction+ , PutScheduledUpdateGroupAction+ -- * Request Lenses+ , psugaTime+ , psugaStartTime , psugaMaxSize- , psugaMinSize+ , psugaDesiredCapacity , psugaRecurrence+ , psugaMinSize+ , psugaEndTime+ , psugaAutoScalingGroupName , psugaScheduledActionName- , psugaStartTime- , psugaTime - -- * Response- , PutScheduledUpdateGroupActionResponse- -- ** Response constructor+ -- * Destructuring the Response , putScheduledUpdateGroupActionResponse+ , PutScheduledUpdateGroupActionResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data PutScheduledUpdateGroupAction = PutScheduledUpdateGroupAction- { _psugaAutoScalingGroupName :: Text- , _psugaDesiredCapacity :: Maybe Int- , _psugaEndTime :: Maybe ISO8601- , _psugaMaxSize :: Maybe Int- , _psugaMinSize :: Maybe Int- , _psugaRecurrence :: Maybe Text- , _psugaScheduledActionName :: Text- , _psugaStartTime :: Maybe ISO8601- , _psugaTime :: Maybe ISO8601- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'putScheduledUpdateGroupAction' smart constructor.+data PutScheduledUpdateGroupAction = PutScheduledUpdateGroupAction'+ { _psugaTime :: !(Maybe ISO8601)+ , _psugaStartTime :: !(Maybe ISO8601)+ , _psugaMaxSize :: !(Maybe Int)+ , _psugaDesiredCapacity :: !(Maybe Int)+ , _psugaRecurrence :: !(Maybe Text)+ , _psugaMinSize :: !(Maybe Int)+ , _psugaEndTime :: !(Maybe ISO8601)+ , _psugaAutoScalingGroupName :: !Text+ , _psugaScheduledActionName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'PutScheduledUpdateGroupAction' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'PutScheduledUpdateGroupAction' with the minimum fields required to make a request. ----- * 'psugaAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'psugaDesiredCapacity' @::@ 'Maybe' 'Int'+-- * 'psugaTime' ----- * 'psugaEndTime' @::@ 'Maybe' 'UTCTime'+-- * 'psugaStartTime' ----- * 'psugaMaxSize' @::@ 'Maybe' 'Int'+-- * 'psugaMaxSize' ----- * 'psugaMinSize' @::@ 'Maybe' 'Int'+-- * 'psugaDesiredCapacity' ----- * 'psugaRecurrence' @::@ 'Maybe' 'Text'+-- * 'psugaRecurrence' ----- * 'psugaScheduledActionName' @::@ 'Text'+-- * 'psugaMinSize' ----- * 'psugaStartTime' @::@ 'Maybe' 'UTCTime'+-- * 'psugaEndTime' ----- * 'psugaTime' @::@ 'Maybe' 'UTCTime'+-- * 'psugaAutoScalingGroupName' ---putScheduledUpdateGroupAction :: Text -- ^ 'psugaAutoScalingGroupName'- -> Text -- ^ 'psugaScheduledActionName'- -> PutScheduledUpdateGroupAction-putScheduledUpdateGroupAction p1 p2 = PutScheduledUpdateGroupAction- { _psugaAutoScalingGroupName = p1- , _psugaScheduledActionName = p2- , _psugaTime = Nothing- , _psugaStartTime = Nothing- , _psugaEndTime = Nothing- , _psugaRecurrence = Nothing- , _psugaMinSize = Nothing- , _psugaMaxSize = Nothing- , _psugaDesiredCapacity = Nothing+-- * 'psugaScheduledActionName'+putScheduledUpdateGroupAction+ :: Text -- ^ 'psugaAutoScalingGroupName'+ -> Text -- ^ 'psugaScheduledActionName'+ -> PutScheduledUpdateGroupAction+putScheduledUpdateGroupAction pAutoScalingGroupName_ pScheduledActionName_ =+ PutScheduledUpdateGroupAction'+ { _psugaTime = Nothing+ , _psugaStartTime = Nothing+ , _psugaMaxSize = Nothing+ , _psugaDesiredCapacity = Nothing+ , _psugaRecurrence = Nothing+ , _psugaMinSize = Nothing+ , _psugaEndTime = Nothing+ , _psugaAutoScalingGroupName = pAutoScalingGroupName_+ , _psugaScheduledActionName = pScheduledActionName_ } --- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.-psugaAutoScalingGroupName :: Lens' PutScheduledUpdateGroupAction Text-psugaAutoScalingGroupName =- lens _psugaAutoScalingGroupName- (\s a -> s { _psugaAutoScalingGroupName = a })---- | The number of Amazon EC2 instances that should be running in the group.-psugaDesiredCapacity :: Lens' PutScheduledUpdateGroupAction (Maybe Int)-psugaDesiredCapacity =- lens _psugaDesiredCapacity (\s a -> s { _psugaDesiredCapacity = a })+-- | This parameter is deprecated; use 'StartTime' instead.+--+-- The time for this action to start. If both 'Time' and 'StartTime' are+-- specified, their values must be identical.+psugaTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)+psugaTime = lens _psugaTime (\ s a -> s{_psugaTime = a}) . mapping _Time; --- | The time for this action to end.-psugaEndTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)-psugaEndTime = lens _psugaEndTime (\s a -> s { _psugaEndTime = a }) . mapping _Time+-- | The time for this action to start, in \"YYYY-MM-DDThh:mm:ssZ\" format in+-- UTC\/GMT only (for example, '2014-06-01T00:00:00Z').+--+-- If you try to schedule your action in the past, Auto Scaling returns an+-- error message.+--+-- When 'StartTime' and 'EndTime' are specified with 'Recurrence', they+-- form the boundaries of when the recurring action starts and stops.+psugaStartTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)+psugaStartTime = lens _psugaStartTime (\ s a -> s{_psugaStartTime = a}) . mapping _Time; -- | The maximum size for the Auto Scaling group. psugaMaxSize :: Lens' PutScheduledUpdateGroupAction (Maybe Int)-psugaMaxSize = lens _psugaMaxSize (\s a -> s { _psugaMaxSize = a })+psugaMaxSize = lens _psugaMaxSize (\ s a -> s{_psugaMaxSize = a}); --- | The minimum size for the new Auto Scaling group.-psugaMinSize :: Lens' PutScheduledUpdateGroupAction (Maybe Int)-psugaMinSize = lens _psugaMinSize (\s a -> s { _psugaMinSize = a })+-- | The number of EC2 instances that should be running in the group.+psugaDesiredCapacity :: Lens' PutScheduledUpdateGroupAction (Maybe Int)+psugaDesiredCapacity = lens _psugaDesiredCapacity (\ s a -> s{_psugaDesiredCapacity = a}); --- | The time when recurring future actions will start. Start time is specified--- by the user following the Unix cron syntax format. For information about cron--- syntax, go to <http://en.wikipedia.org/wiki/Cron Wikipedia, The Free Encyclopedia>.+-- | The time when recurring future actions will start. Start time is+-- specified by the user following the Unix cron syntax format. For more+-- information, see <http://en.wikipedia.org/wiki/Cron Cron> in Wikipedia. ----- When 'StartTime' and 'EndTime' are specified with 'Recurrence', they form the--- boundaries of when the recurring action will start and stop.+-- When 'StartTime' and 'EndTime' are specified with 'Recurrence', they+-- form the boundaries of when the recurring action will start and stop. psugaRecurrence :: Lens' PutScheduledUpdateGroupAction (Maybe Text)-psugaRecurrence = lens _psugaRecurrence (\s a -> s { _psugaRecurrence = a })+psugaRecurrence = lens _psugaRecurrence (\ s a -> s{_psugaRecurrence = a}); --- | The name of this scaling action.-psugaScheduledActionName :: Lens' PutScheduledUpdateGroupAction Text-psugaScheduledActionName =- lens _psugaScheduledActionName- (\s a -> s { _psugaScheduledActionName = a })+-- | The minimum size for the Auto Scaling group.+psugaMinSize :: Lens' PutScheduledUpdateGroupAction (Maybe Int)+psugaMinSize = lens _psugaMinSize (\ s a -> s{_psugaMinSize = a}); --- | The time for this action to start, as in '--start-time 2010-06-01T00:00:00Z'.------ If you try to schedule your action in the past, Auto Scaling returns an--- error message.------ When 'StartTime' and 'EndTime' are specified with 'Recurrence', they form the--- boundaries of when the recurring action will start and stop.-psugaStartTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)-psugaStartTime = lens _psugaStartTime (\s a -> s { _psugaStartTime = a }) . mapping _Time+-- | The time for this action to end.+psugaEndTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)+psugaEndTime = lens _psugaEndTime (\ s a -> s{_psugaEndTime = a}) . mapping _Time; --- | 'Time' is deprecated.------ The time for this action to start. 'Time' is an alias for 'StartTime' and can be--- specified instead of 'StartTime', or vice versa. If both 'Time' and 'StartTime' are--- specified, their values should be identical. Otherwise, 'PutScheduledUpdateGroupAction' will return an error.-psugaTime :: Lens' PutScheduledUpdateGroupAction (Maybe UTCTime)-psugaTime = lens _psugaTime (\s a -> s { _psugaTime = a }) . mapping _Time+-- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.+psugaAutoScalingGroupName :: Lens' PutScheduledUpdateGroupAction Text+psugaAutoScalingGroupName = lens _psugaAutoScalingGroupName (\ s a -> s{_psugaAutoScalingGroupName = a}); -data PutScheduledUpdateGroupActionResponse = PutScheduledUpdateGroupActionResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name of this scaling action.+psugaScheduledActionName :: Lens' PutScheduledUpdateGroupAction Text+psugaScheduledActionName = lens _psugaScheduledActionName (\ s a -> s{_psugaScheduledActionName = a}); --- | 'PutScheduledUpdateGroupActionResponse' constructor.-putScheduledUpdateGroupActionResponse :: PutScheduledUpdateGroupActionResponse-putScheduledUpdateGroupActionResponse = PutScheduledUpdateGroupActionResponse+instance AWSRequest PutScheduledUpdateGroupAction+ where+ type Sv PutScheduledUpdateGroupAction = AutoScaling+ type Rs PutScheduledUpdateGroupAction =+ PutScheduledUpdateGroupActionResponse+ request = postQuery+ response+ = receiveNull PutScheduledUpdateGroupActionResponse' +instance ToHeaders PutScheduledUpdateGroupAction+ where+ toHeaders = const mempty+ instance ToPath PutScheduledUpdateGroupAction where- toPath = const "/"+ toPath = const "/" instance ToQuery PutScheduledUpdateGroupAction where- toQuery PutScheduledUpdateGroupAction{..} = mconcat- [ "AutoScalingGroupName" =? _psugaAutoScalingGroupName- , "DesiredCapacity" =? _psugaDesiredCapacity- , "EndTime" =? _psugaEndTime- , "MaxSize" =? _psugaMaxSize- , "MinSize" =? _psugaMinSize- , "Recurrence" =? _psugaRecurrence- , "ScheduledActionName" =? _psugaScheduledActionName- , "StartTime" =? _psugaStartTime- , "Time" =? _psugaTime- ]--instance ToHeaders PutScheduledUpdateGroupAction+ toQuery PutScheduledUpdateGroupAction'{..}+ = mconcat+ ["Action" =:+ ("PutScheduledUpdateGroupAction" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "Time" =: _psugaTime, "StartTime" =: _psugaStartTime,+ "MaxSize" =: _psugaMaxSize,+ "DesiredCapacity" =: _psugaDesiredCapacity,+ "Recurrence" =: _psugaRecurrence,+ "MinSize" =: _psugaMinSize,+ "EndTime" =: _psugaEndTime,+ "AutoScalingGroupName" =: _psugaAutoScalingGroupName,+ "ScheduledActionName" =: _psugaScheduledActionName] -instance AWSRequest PutScheduledUpdateGroupAction where- type Sv PutScheduledUpdateGroupAction = AutoScaling- type Rs PutScheduledUpdateGroupAction = PutScheduledUpdateGroupActionResponse+-- | /See:/ 'putScheduledUpdateGroupActionResponse' smart constructor.+data PutScheduledUpdateGroupActionResponse =+ PutScheduledUpdateGroupActionResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "PutScheduledUpdateGroupAction"- response = nullResponse PutScheduledUpdateGroupActionResponse+-- | Creates a value of 'PutScheduledUpdateGroupActionResponse' with the minimum fields required to make a request.+--+putScheduledUpdateGroupActionResponse+ :: PutScheduledUpdateGroupActionResponse+putScheduledUpdateGroupActionResponse = PutScheduledUpdateGroupActionResponse'
gen/Network/AWS/AutoScaling/RecordLifecycleActionHeartbeat.hs view
@@ -1,129 +1,160 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Records a heartbeat for the lifecycle action associated with a specific--- token. This extends the timeout by the length of time defined by the 'HeartbeatTimeout' parameter of 'PutLifecycleHook'.+-- Records a heartbeat for the lifecycle action associated with a specific+-- token. This extends the timeout by the length of time defined by the+-- 'HeartbeatTimeout' parameter of PutLifecycleHook. ----- This operation is a part of the basic sequence for adding a lifecycle hook--- to an Auto Scaling group:+-- This operation is a part of the basic sequence for adding a lifecycle+-- hook to an Auto Scaling group: ----- Create a notification target. A target can be either an Amazon SQS queue or--- an Amazon SNS topic. Create an IAM role. This role allows Auto Scaling to--- publish lifecycle notifications to the designated SQS queue or SNS topic. Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate.--- If necessary, record the lifecycle action heartbeat to keep the instance in--- a pending state. Complete the lifecycle action. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State> and <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State> in the /Auto Scaling Developer Guide/.+-- 1. Create a notification target. A target can be either an Amazon SQS+-- queue or an Amazon SNS topic.+-- 2. Create an IAM role. This role allows Auto Scaling to publish+-- lifecycle notifications to the designated SQS queue or SNS topic.+-- 3. Create the lifecycle hook. You can create a hook that acts when+-- instances launch or when instances terminate.+-- 4. __If necessary, record the lifecycle action heartbeat to keep the+-- instance in a pending state.__+-- 5. Complete the lifecycle action. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_RecordLifecycleActionHeartbeat.html>+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State>+-- and+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_RecordLifecycleActionHeartbeat.html AWS API Reference> for RecordLifecycleActionHeartbeat. module Network.AWS.AutoScaling.RecordLifecycleActionHeartbeat (- -- * Request- RecordLifecycleActionHeartbeat- -- ** Request constructor- , recordLifecycleActionHeartbeat- -- ** Request lenses+ -- * Creating a Request+ recordLifecycleActionHeartbeat+ , RecordLifecycleActionHeartbeat+ -- * Request Lenses+ , rlahLifecycleHookName , rlahAutoScalingGroupName , rlahLifecycleActionToken- , rlahLifecycleHookName - -- * Response- , RecordLifecycleActionHeartbeatResponse- -- ** Response constructor+ -- * Destructuring the Response , recordLifecycleActionHeartbeatResponse+ , RecordLifecycleActionHeartbeatResponse+ -- * Response Lenses+ , rlahrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data RecordLifecycleActionHeartbeat = RecordLifecycleActionHeartbeat- { _rlahAutoScalingGroupName :: Text- , _rlahLifecycleActionToken :: Text- , _rlahLifecycleHookName :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'recordLifecycleActionHeartbeat' smart constructor.+data RecordLifecycleActionHeartbeat = RecordLifecycleActionHeartbeat'+ { _rlahLifecycleHookName :: !Text+ , _rlahAutoScalingGroupName :: !Text+ , _rlahLifecycleActionToken :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'RecordLifecycleActionHeartbeat' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'RecordLifecycleActionHeartbeat' with the minimum fields required to make a request. ----- * 'rlahAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rlahLifecycleActionToken' @::@ 'Text'+-- * 'rlahLifecycleHookName' ----- * 'rlahLifecycleHookName' @::@ 'Text'+-- * 'rlahAutoScalingGroupName' ---recordLifecycleActionHeartbeat :: Text -- ^ 'rlahLifecycleHookName'- -> Text -- ^ 'rlahAutoScalingGroupName'- -> Text -- ^ 'rlahLifecycleActionToken'- -> RecordLifecycleActionHeartbeat-recordLifecycleActionHeartbeat p1 p2 p3 = RecordLifecycleActionHeartbeat- { _rlahLifecycleHookName = p1- , _rlahAutoScalingGroupName = p2- , _rlahLifecycleActionToken = p3+-- * 'rlahLifecycleActionToken'+recordLifecycleActionHeartbeat+ :: Text -- ^ 'rlahLifecycleHookName'+ -> Text -- ^ 'rlahAutoScalingGroupName'+ -> Text -- ^ 'rlahLifecycleActionToken'+ -> RecordLifecycleActionHeartbeat+recordLifecycleActionHeartbeat pLifecycleHookName_ pAutoScalingGroupName_ pLifecycleActionToken_ =+ RecordLifecycleActionHeartbeat'+ { _rlahLifecycleHookName = pLifecycleHookName_+ , _rlahAutoScalingGroupName = pAutoScalingGroupName_+ , _rlahLifecycleActionToken = pLifecycleActionToken_ } +-- | The name of the lifecycle hook.+rlahLifecycleHookName :: Lens' RecordLifecycleActionHeartbeat Text+rlahLifecycleHookName = lens _rlahLifecycleHookName (\ s a -> s{_rlahLifecycleHookName = a});+ -- | The name of the Auto Scaling group for the hook. rlahAutoScalingGroupName :: Lens' RecordLifecycleActionHeartbeat Text-rlahAutoScalingGroupName =- lens _rlahAutoScalingGroupName- (\s a -> s { _rlahAutoScalingGroupName = a })+rlahAutoScalingGroupName = lens _rlahAutoScalingGroupName (\ s a -> s{_rlahAutoScalingGroupName = a}); --- | A token that uniquely identifies a specific lifecycle action associated with--- an instance. Auto Scaling sends this token to the notification target you--- specified when you created the lifecycle hook.+-- | A token that uniquely identifies a specific lifecycle action associated+-- with an instance. Auto Scaling sends this token to the notification+-- target you specified when you created the lifecycle hook. rlahLifecycleActionToken :: Lens' RecordLifecycleActionHeartbeat Text-rlahLifecycleActionToken =- lens _rlahLifecycleActionToken- (\s a -> s { _rlahLifecycleActionToken = a })---- | The name of the lifecycle hook.-rlahLifecycleHookName :: Lens' RecordLifecycleActionHeartbeat Text-rlahLifecycleHookName =- lens _rlahLifecycleHookName (\s a -> s { _rlahLifecycleHookName = a })+rlahLifecycleActionToken = lens _rlahLifecycleActionToken (\ s a -> s{_rlahLifecycleActionToken = a}); -data RecordLifecycleActionHeartbeatResponse = RecordLifecycleActionHeartbeatResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest RecordLifecycleActionHeartbeat+ where+ type Sv RecordLifecycleActionHeartbeat = AutoScaling+ type Rs RecordLifecycleActionHeartbeat =+ RecordLifecycleActionHeartbeatResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "RecordLifecycleActionHeartbeatResult"+ (\ s h x ->+ RecordLifecycleActionHeartbeatResponse' <$>+ (pure (fromEnum s))) --- | 'RecordLifecycleActionHeartbeatResponse' constructor.-recordLifecycleActionHeartbeatResponse :: RecordLifecycleActionHeartbeatResponse-recordLifecycleActionHeartbeatResponse = RecordLifecycleActionHeartbeatResponse+instance ToHeaders RecordLifecycleActionHeartbeat+ where+ toHeaders = const mempty instance ToPath RecordLifecycleActionHeartbeat where- toPath = const "/"+ toPath = const "/" instance ToQuery RecordLifecycleActionHeartbeat where- toQuery RecordLifecycleActionHeartbeat{..} = mconcat- [ "AutoScalingGroupName" =? _rlahAutoScalingGroupName- , "LifecycleActionToken" =? _rlahLifecycleActionToken- , "LifecycleHookName" =? _rlahLifecycleHookName- ]+ toQuery RecordLifecycleActionHeartbeat'{..}+ = mconcat+ ["Action" =:+ ("RecordLifecycleActionHeartbeat" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "LifecycleHookName" =: _rlahLifecycleHookName,+ "AutoScalingGroupName" =: _rlahAutoScalingGroupName,+ "LifecycleActionToken" =: _rlahLifecycleActionToken] -instance ToHeaders RecordLifecycleActionHeartbeat+-- | /See:/ 'recordLifecycleActionHeartbeatResponse' smart constructor.+newtype RecordLifecycleActionHeartbeatResponse = RecordLifecycleActionHeartbeatResponse'+ { _rlahrsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest RecordLifecycleActionHeartbeat where- type Sv RecordLifecycleActionHeartbeat = AutoScaling- type Rs RecordLifecycleActionHeartbeat = RecordLifecycleActionHeartbeatResponse+-- | Creates a value of 'RecordLifecycleActionHeartbeatResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rlahrsStatus'+recordLifecycleActionHeartbeatResponse+ :: Int -- ^ 'rlahrsStatus'+ -> RecordLifecycleActionHeartbeatResponse+recordLifecycleActionHeartbeatResponse pStatus_ =+ RecordLifecycleActionHeartbeatResponse'+ { _rlahrsStatus = pStatus_+ } - request = post "RecordLifecycleActionHeartbeat"- response = nullResponse RecordLifecycleActionHeartbeatResponse+-- | The response status code.+rlahrsStatus :: Lens' RecordLifecycleActionHeartbeatResponse Int+rlahrsStatus = lens _rlahrsStatus (\ s a -> s{_rlahrsStatus = a});
gen/Network/AWS/AutoScaling/ResumeProcesses.hs view
@@ -1,109 +1,127 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.ResumeProcesses--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Resumes the specified suspended Auto Scaling processes for the specified Auto--- Scaling group. To resume specific processes, use the 'ScalingProcesses'--- parameter. To resume all processes, omit the 'ScalingProcesses' parameter. For--- more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SuspendResume.html Suspend and Resume Auto Scaling Processes> in the /AutoScaling Developer Guide/.+-- Resumes the specified suspended Auto Scaling processes for the specified+-- Auto Scaling group. To resume specific processes, use the+-- 'ScalingProcesses' parameter. To resume all processes, omit the+-- 'ScalingProcesses' parameter. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SuspendResume.html Suspend and Resume Auto Scaling Processes>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ResumeProcesses.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_ResumeProcesses.html AWS API Reference> for ResumeProcesses. module Network.AWS.AutoScaling.ResumeProcesses (- -- * Request- ResumeProcesses- -- ** Request constructor- , resumeProcesses- -- ** Request lenses- , rpAutoScalingGroupName+ -- * Creating a Request+ resumeProcesses+ , ResumeProcesses+ -- * Request Lenses , rpScalingProcesses+ , rpAutoScalingGroupName - -- * Response- , ResumeProcessesResponse- -- ** Response constructor+ -- * Destructuring the Response , resumeProcessesResponse+ , ResumeProcessesResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data ResumeProcesses = ResumeProcesses- { _rpAutoScalingGroupName :: Text- , _rpScalingProcesses :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'resumeProcesses' smart constructor.+data ResumeProcesses = ResumeProcesses'+ { _rpScalingProcesses :: !(Maybe [Text])+ , _rpAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ResumeProcesses' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ResumeProcesses' with the minimum fields required to make a request. ----- * 'rpAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rpScalingProcesses' @::@ ['Text']+-- * 'rpScalingProcesses' ---resumeProcesses :: Text -- ^ 'rpAutoScalingGroupName'- -> ResumeProcesses-resumeProcesses p1 = ResumeProcesses- { _rpAutoScalingGroupName = p1- , _rpScalingProcesses = mempty+-- * 'rpAutoScalingGroupName'+resumeProcesses+ :: Text -- ^ 'rpAutoScalingGroupName'+ -> ResumeProcesses+resumeProcesses pAutoScalingGroupName_ =+ ResumeProcesses'+ { _rpScalingProcesses = Nothing+ , _rpAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.-rpAutoScalingGroupName :: Lens' ResumeProcesses Text-rpAutoScalingGroupName =- lens _rpAutoScalingGroupName (\s a -> s { _rpAutoScalingGroupName = a })- -- | One or more of the following processes: ----- Launch Terminate HealthCheck ReplaceUnhealthy AZRebalance AlarmNotification--- ScheduledActions AddToLoadBalancer+-- - 'Launch'+--+-- - 'Terminate'+--+-- - 'HealthCheck'+--+-- - 'ReplaceUnhealthy'+--+-- - 'AZRebalance'+--+-- - 'AlarmNotification'+--+-- - 'ScheduledActions'+--+-- - 'AddToLoadBalancer'+-- rpScalingProcesses :: Lens' ResumeProcesses [Text]-rpScalingProcesses =- lens _rpScalingProcesses (\s a -> s { _rpScalingProcesses = a })- . _List+rpScalingProcesses = lens _rpScalingProcesses (\ s a -> s{_rpScalingProcesses = a}) . _Default . _Coerce; -data ResumeProcessesResponse = ResumeProcessesResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.+rpAutoScalingGroupName :: Lens' ResumeProcesses Text+rpAutoScalingGroupName = lens _rpAutoScalingGroupName (\ s a -> s{_rpAutoScalingGroupName = a}); --- | 'ResumeProcessesResponse' constructor.-resumeProcessesResponse :: ResumeProcessesResponse-resumeProcessesResponse = ResumeProcessesResponse+instance AWSRequest ResumeProcesses where+ type Sv ResumeProcesses = AutoScaling+ type Rs ResumeProcesses = ResumeProcessesResponse+ request = postQuery+ response = receiveNull ResumeProcessesResponse' +instance ToHeaders ResumeProcesses where+ toHeaders = const mempty+ instance ToPath ResumeProcesses where- toPath = const "/"+ toPath = const "/" instance ToQuery ResumeProcesses where- toQuery ResumeProcesses{..} = mconcat- [ "AutoScalingGroupName" =? _rpAutoScalingGroupName- , "ScalingProcesses" =? _rpScalingProcesses- ]--instance ToHeaders ResumeProcesses+ toQuery ResumeProcesses'{..}+ = mconcat+ ["Action" =: ("ResumeProcesses" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "ScalingProcesses" =:+ toQuery+ (toQueryList "member" <$> _rpScalingProcesses),+ "AutoScalingGroupName" =: _rpAutoScalingGroupName] -instance AWSRequest ResumeProcesses where- type Sv ResumeProcesses = AutoScaling- type Rs ResumeProcesses = ResumeProcessesResponse+-- | /See:/ 'resumeProcessesResponse' smart constructor.+data ResumeProcessesResponse =+ ResumeProcessesResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "ResumeProcesses"- response = nullResponse ResumeProcessesResponse+-- | Creates a value of 'ResumeProcessesResponse' with the minimum fields required to make a request.+--+resumeProcessesResponse+ :: ResumeProcessesResponse+resumeProcessesResponse = ResumeProcessesResponse'
gen/Network/AWS/AutoScaling/SetDesiredCapacity.hs view
@@ -1,117 +1,124 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.SetDesiredCapacity--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Sets the size of the specified 'AutoScalingGroup'.+-- Sets the size of the specified Auto Scaling group. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SetDesiredCapacity.html>+-- For more information about desired capacity, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/WhatIsAutoScaling.html What Is Auto Scaling?>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SetDesiredCapacity.html AWS API Reference> for SetDesiredCapacity. module Network.AWS.AutoScaling.SetDesiredCapacity (- -- * Request- SetDesiredCapacity- -- ** Request constructor- , setDesiredCapacity- -- ** Request lenses+ -- * Creating a Request+ setDesiredCapacity+ , SetDesiredCapacity+ -- * Request Lenses+ , sdcHonorCooldown , sdcAutoScalingGroupName , sdcDesiredCapacity- , sdcHonorCooldown - -- * Response- , SetDesiredCapacityResponse- -- ** Response constructor+ -- * Destructuring the Response , setDesiredCapacityResponse+ , SetDesiredCapacityResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data SetDesiredCapacity = SetDesiredCapacity- { _sdcAutoScalingGroupName :: Text- , _sdcDesiredCapacity :: Int- , _sdcHonorCooldown :: Maybe Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'setDesiredCapacity' smart constructor.+data SetDesiredCapacity = SetDesiredCapacity'+ { _sdcHonorCooldown :: !(Maybe Bool)+ , _sdcAutoScalingGroupName :: !Text+ , _sdcDesiredCapacity :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SetDesiredCapacity' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SetDesiredCapacity' with the minimum fields required to make a request. ----- * 'sdcAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'sdcDesiredCapacity' @::@ 'Int'+-- * 'sdcHonorCooldown' ----- * 'sdcHonorCooldown' @::@ 'Maybe' 'Bool'+-- * 'sdcAutoScalingGroupName' ---setDesiredCapacity :: Text -- ^ 'sdcAutoScalingGroupName'- -> Int -- ^ 'sdcDesiredCapacity'- -> SetDesiredCapacity-setDesiredCapacity p1 p2 = SetDesiredCapacity- { _sdcAutoScalingGroupName = p1- , _sdcDesiredCapacity = p2- , _sdcHonorCooldown = Nothing+-- * 'sdcDesiredCapacity'+setDesiredCapacity+ :: Text -- ^ 'sdcAutoScalingGroupName'+ -> Int -- ^ 'sdcDesiredCapacity'+ -> SetDesiredCapacity+setDesiredCapacity pAutoScalingGroupName_ pDesiredCapacity_ =+ SetDesiredCapacity'+ { _sdcHonorCooldown = Nothing+ , _sdcAutoScalingGroupName = pAutoScalingGroupName_+ , _sdcDesiredCapacity = pDesiredCapacity_ } +-- | By default, 'SetDesiredCapacity' overrides any cooldown period+-- associated with the Auto Scaling group. Specify 'True' to make Auto+-- Scaling to wait for the cool-down period associated with the Auto+-- Scaling group to complete before initiating a scaling activity to set+-- your Auto Scaling group to its new capacity.+sdcHonorCooldown :: Lens' SetDesiredCapacity (Maybe Bool)+sdcHonorCooldown = lens _sdcHonorCooldown (\ s a -> s{_sdcHonorCooldown = a});+ -- | The name of the Auto Scaling group. sdcAutoScalingGroupName :: Lens' SetDesiredCapacity Text-sdcAutoScalingGroupName =- lens _sdcAutoScalingGroupName (\s a -> s { _sdcAutoScalingGroupName = a })+sdcAutoScalingGroupName = lens _sdcAutoScalingGroupName (\ s a -> s{_sdcAutoScalingGroupName = a}); --- | The number of EC2 instances that should be running in the Auto Scaling group.+-- | The number of EC2 instances that should be running in the Auto Scaling+-- group. sdcDesiredCapacity :: Lens' SetDesiredCapacity Int-sdcDesiredCapacity =- lens _sdcDesiredCapacity (\s a -> s { _sdcDesiredCapacity = a })---- | By default, 'SetDesiredCapacity' overrides any cooldown period associated with--- the Auto Scaling group. Specify 'True' to make Auto Scaling to wait for the--- cool-down period associated with the Auto Scaling group to complete before--- initiating a scaling activity to set your Auto Scaling group to its new--- capacity.-sdcHonorCooldown :: Lens' SetDesiredCapacity (Maybe Bool)-sdcHonorCooldown = lens _sdcHonorCooldown (\s a -> s { _sdcHonorCooldown = a })+sdcDesiredCapacity = lens _sdcDesiredCapacity (\ s a -> s{_sdcDesiredCapacity = a}); -data SetDesiredCapacityResponse = SetDesiredCapacityResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest SetDesiredCapacity where+ type Sv SetDesiredCapacity = AutoScaling+ type Rs SetDesiredCapacity =+ SetDesiredCapacityResponse+ request = postQuery+ response = receiveNull SetDesiredCapacityResponse' --- | 'SetDesiredCapacityResponse' constructor.-setDesiredCapacityResponse :: SetDesiredCapacityResponse-setDesiredCapacityResponse = SetDesiredCapacityResponse+instance ToHeaders SetDesiredCapacity where+ toHeaders = const mempty instance ToPath SetDesiredCapacity where- toPath = const "/"+ toPath = const "/" instance ToQuery SetDesiredCapacity where- toQuery SetDesiredCapacity{..} = mconcat- [ "AutoScalingGroupName" =? _sdcAutoScalingGroupName- , "DesiredCapacity" =? _sdcDesiredCapacity- , "HonorCooldown" =? _sdcHonorCooldown- ]--instance ToHeaders SetDesiredCapacity+ toQuery SetDesiredCapacity'{..}+ = mconcat+ ["Action" =: ("SetDesiredCapacity" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "HonorCooldown" =: _sdcHonorCooldown,+ "AutoScalingGroupName" =: _sdcAutoScalingGroupName,+ "DesiredCapacity" =: _sdcDesiredCapacity] -instance AWSRequest SetDesiredCapacity where- type Sv SetDesiredCapacity = AutoScaling- type Rs SetDesiredCapacity = SetDesiredCapacityResponse+-- | /See:/ 'setDesiredCapacityResponse' smart constructor.+data SetDesiredCapacityResponse =+ SetDesiredCapacityResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "SetDesiredCapacity"- response = nullResponse SetDesiredCapacityResponse+-- | Creates a value of 'SetDesiredCapacityResponse' with the minimum fields required to make a request.+--+setDesiredCapacityResponse+ :: SetDesiredCapacityResponse+setDesiredCapacityResponse = SetDesiredCapacityResponse'
gen/Network/AWS/AutoScaling/SetInstanceHealth.hs view
@@ -1,122 +1,128 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.SetInstanceHealth--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Sets the health status of the specified instance.+-- Sets the health status of the specified instance. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/healthcheck.html Health Checks> in the /Auto Scaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/healthcheck.html Health Checks>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SetInstanceHealth.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SetInstanceHealth.html AWS API Reference> for SetInstanceHealth. module Network.AWS.AutoScaling.SetInstanceHealth (- -- * Request- SetInstanceHealth- -- ** Request constructor- , setInstanceHealth- -- ** Request lenses- , sihHealthStatus- , sihInstanceId+ -- * Creating a Request+ setInstanceHealth+ , SetInstanceHealth+ -- * Request Lenses , sihShouldRespectGracePeriod+ , sihInstanceId+ , sihHealthStatus - -- * Response- , SetInstanceHealthResponse- -- ** Response constructor+ -- * Destructuring the Response , setInstanceHealthResponse+ , SetInstanceHealthResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data SetInstanceHealth = SetInstanceHealth- { _sihHealthStatus :: Text- , _sihInstanceId :: Text- , _sihShouldRespectGracePeriod :: Maybe Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'setInstanceHealth' smart constructor.+data SetInstanceHealth = SetInstanceHealth'+ { _sihShouldRespectGracePeriod :: !(Maybe Bool)+ , _sihInstanceId :: !Text+ , _sihHealthStatus :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SetInstanceHealth' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SetInstanceHealth' with the minimum fields required to make a request. ----- * 'sihHealthStatus' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'sihInstanceId' @::@ 'Text'+-- * 'sihShouldRespectGracePeriod' ----- * 'sihShouldRespectGracePeriod' @::@ 'Maybe' 'Bool'+-- * 'sihInstanceId' ---setInstanceHealth :: Text -- ^ 'sihInstanceId'- -> Text -- ^ 'sihHealthStatus'- -> SetInstanceHealth-setInstanceHealth p1 p2 = SetInstanceHealth- { _sihInstanceId = p1- , _sihHealthStatus = p2- , _sihShouldRespectGracePeriod = Nothing+-- * 'sihHealthStatus'+setInstanceHealth+ :: Text -- ^ 'sihInstanceId'+ -> Text -- ^ 'sihHealthStatus'+ -> SetInstanceHealth+setInstanceHealth pInstanceId_ pHealthStatus_ =+ SetInstanceHealth'+ { _sihShouldRespectGracePeriod = Nothing+ , _sihInstanceId = pInstanceId_+ , _sihHealthStatus = pHealthStatus_ } --- | The health status of the instance. Set to 'Healthy' if you want the instance--- to remain in service. Set to 'Unhealthy' if you want the instance to be out of--- service. Auto Scaling will terminate and replace the unhealthy instance.-sihHealthStatus :: Lens' SetInstanceHealth Text-sihHealthStatus = lens _sihHealthStatus (\s a -> s { _sihHealthStatus = a })+-- | If the Auto Scaling group of the specified instance has a+-- 'HealthCheckGracePeriod' specified for the group, by default, this call+-- will respect the grace period. Set this to 'False', if you do not want+-- the call to respect the grace period associated with the group.+--+-- For more information, see the 'HealthCheckGracePeriod' parameter+-- description for CreateAutoScalingGroup.+sihShouldRespectGracePeriod :: Lens' SetInstanceHealth (Maybe Bool)+sihShouldRespectGracePeriod = lens _sihShouldRespectGracePeriod (\ s a -> s{_sihShouldRespectGracePeriod = a}); -- | The ID of the EC2 instance. sihInstanceId :: Lens' SetInstanceHealth Text-sihInstanceId = lens _sihInstanceId (\s a -> s { _sihInstanceId = a })+sihInstanceId = lens _sihInstanceId (\ s a -> s{_sihInstanceId = a}); --- | If the Auto Scaling group of the specified instance has a 'HealthCheckGracePeriod' specified for the group, by default, this call will respect the grace--- period. Set this to 'False', if you do not want the call to respect the grace--- period associated with the group.------ For more information, see the 'HealthCheckGracePeriod' parameter description--- for 'CreateAutoScalingGroup'.-sihShouldRespectGracePeriod :: Lens' SetInstanceHealth (Maybe Bool)-sihShouldRespectGracePeriod =- lens _sihShouldRespectGracePeriod- (\s a -> s { _sihShouldRespectGracePeriod = a })+-- | The health status of the instance. Set to 'Healthy' if you want the+-- instance to remain in service. Set to 'Unhealthy' if you want the+-- instance to be out of service. Auto Scaling will terminate and replace+-- the unhealthy instance.+sihHealthStatus :: Lens' SetInstanceHealth Text+sihHealthStatus = lens _sihHealthStatus (\ s a -> s{_sihHealthStatus = a}); -data SetInstanceHealthResponse = SetInstanceHealthResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest SetInstanceHealth where+ type Sv SetInstanceHealth = AutoScaling+ type Rs SetInstanceHealth = SetInstanceHealthResponse+ request = postQuery+ response = receiveNull SetInstanceHealthResponse' --- | 'SetInstanceHealthResponse' constructor.-setInstanceHealthResponse :: SetInstanceHealthResponse-setInstanceHealthResponse = SetInstanceHealthResponse+instance ToHeaders SetInstanceHealth where+ toHeaders = const mempty instance ToPath SetInstanceHealth where- toPath = const "/"+ toPath = const "/" instance ToQuery SetInstanceHealth where- toQuery SetInstanceHealth{..} = mconcat- [ "HealthStatus" =? _sihHealthStatus- , "InstanceId" =? _sihInstanceId- , "ShouldRespectGracePeriod" =? _sihShouldRespectGracePeriod- ]--instance ToHeaders SetInstanceHealth+ toQuery SetInstanceHealth'{..}+ = mconcat+ ["Action" =: ("SetInstanceHealth" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "ShouldRespectGracePeriod" =:+ _sihShouldRespectGracePeriod,+ "InstanceId" =: _sihInstanceId,+ "HealthStatus" =: _sihHealthStatus] -instance AWSRequest SetInstanceHealth where- type Sv SetInstanceHealth = AutoScaling- type Rs SetInstanceHealth = SetInstanceHealthResponse+-- | /See:/ 'setInstanceHealthResponse' smart constructor.+data SetInstanceHealthResponse =+ SetInstanceHealthResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "SetInstanceHealth"- response = nullResponse SetInstanceHealthResponse+-- | Creates a value of 'SetInstanceHealthResponse' with the minimum fields required to make a request.+--+setInstanceHealthResponse+ :: SetInstanceHealthResponse+setInstanceHealthResponse = SetInstanceHealthResponse'
gen/Network/AWS/AutoScaling/SuspendProcesses.hs view
@@ -1,115 +1,134 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.SuspendProcesses--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Suspends the specified Auto Scaling processes for the specified Auto Scaling--- group. To suspend specific processes, use the 'ScalingProcesses' parameter. To--- suspend all processes, omit the 'ScalingProcesses' parameter.+-- Suspends the specified Auto Scaling processes for the specified Auto+-- Scaling group. To suspend specific processes, use the 'ScalingProcesses'+-- parameter. To suspend all processes, omit the 'ScalingProcesses'+-- parameter. ----- Note that if you suspend either the 'Launch' or 'Terminate' process types, it--- can prevent other process types from functioning properly.+-- Note that if you suspend either the 'Launch' or 'Terminate' process+-- types, it can prevent other process types from functioning properly. ----- To resume processes that have been suspended, use 'ResumeProcesses'.+-- To resume processes that have been suspended, use ResumeProcesses. ----- For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SuspendResume.html Suspend and Resume Auto Scaling Processes> in the /Auto Scaling Developer Guide/.+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SuspendResume.html Suspend and Resume Auto Scaling Processes>+-- in the /Auto Scaling Developer Guide/. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SuspendProcesses.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_SuspendProcesses.html AWS API Reference> for SuspendProcesses. module Network.AWS.AutoScaling.SuspendProcesses (- -- * Request- SuspendProcesses- -- ** Request constructor- , suspendProcesses- -- ** Request lenses- , spAutoScalingGroupName+ -- * Creating a Request+ suspendProcesses+ , SuspendProcesses+ -- * Request Lenses , spScalingProcesses+ , spAutoScalingGroupName - -- * Response- , SuspendProcessesResponse- -- ** Response constructor+ -- * Destructuring the Response , suspendProcessesResponse+ , SuspendProcessesResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data SuspendProcesses = SuspendProcesses- { _spAutoScalingGroupName :: Text- , _spScalingProcesses :: List "member" Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'suspendProcesses' smart constructor.+data SuspendProcesses = SuspendProcesses'+ { _spScalingProcesses :: !(Maybe [Text])+ , _spAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SuspendProcesses' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SuspendProcesses' with the minimum fields required to make a request. ----- * 'spAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'spScalingProcesses' @::@ ['Text']+-- * 'spScalingProcesses' ---suspendProcesses :: Text -- ^ 'spAutoScalingGroupName'- -> SuspendProcesses-suspendProcesses p1 = SuspendProcesses- { _spAutoScalingGroupName = p1- , _spScalingProcesses = mempty+-- * 'spAutoScalingGroupName'+suspendProcesses+ :: Text -- ^ 'spAutoScalingGroupName'+ -> SuspendProcesses+suspendProcesses pAutoScalingGroupName_ =+ SuspendProcesses'+ { _spScalingProcesses = Nothing+ , _spAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.-spAutoScalingGroupName :: Lens' SuspendProcesses Text-spAutoScalingGroupName =- lens _spAutoScalingGroupName (\s a -> s { _spAutoScalingGroupName = a })- -- | One or more of the following processes: ----- Launch Terminate HealthCheck ReplaceUnhealthy AZRebalance AlarmNotification--- ScheduledActions AddToLoadBalancer+-- - 'Launch'+--+-- - 'Terminate'+--+-- - 'HealthCheck'+--+-- - 'ReplaceUnhealthy'+--+-- - 'AZRebalance'+--+-- - 'AlarmNotification'+--+-- - 'ScheduledActions'+--+-- - 'AddToLoadBalancer'+-- spScalingProcesses :: Lens' SuspendProcesses [Text]-spScalingProcesses =- lens _spScalingProcesses (\s a -> s { _spScalingProcesses = a })- . _List+spScalingProcesses = lens _spScalingProcesses (\ s a -> s{_spScalingProcesses = a}) . _Default . _Coerce; -data SuspendProcessesResponse = SuspendProcessesResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.+spAutoScalingGroupName :: Lens' SuspendProcesses Text+spAutoScalingGroupName = lens _spAutoScalingGroupName (\ s a -> s{_spAutoScalingGroupName = a}); --- | 'SuspendProcessesResponse' constructor.-suspendProcessesResponse :: SuspendProcessesResponse-suspendProcessesResponse = SuspendProcessesResponse+instance AWSRequest SuspendProcesses where+ type Sv SuspendProcesses = AutoScaling+ type Rs SuspendProcesses = SuspendProcessesResponse+ request = postQuery+ response = receiveNull SuspendProcessesResponse' +instance ToHeaders SuspendProcesses where+ toHeaders = const mempty+ instance ToPath SuspendProcesses where- toPath = const "/"+ toPath = const "/" instance ToQuery SuspendProcesses where- toQuery SuspendProcesses{..} = mconcat- [ "AutoScalingGroupName" =? _spAutoScalingGroupName- , "ScalingProcesses" =? _spScalingProcesses- ]--instance ToHeaders SuspendProcesses+ toQuery SuspendProcesses'{..}+ = mconcat+ ["Action" =: ("SuspendProcesses" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "ScalingProcesses" =:+ toQuery+ (toQueryList "member" <$> _spScalingProcesses),+ "AutoScalingGroupName" =: _spAutoScalingGroupName] -instance AWSRequest SuspendProcesses where- type Sv SuspendProcesses = AutoScaling- type Rs SuspendProcesses = SuspendProcessesResponse+-- | /See:/ 'suspendProcessesResponse' smart constructor.+data SuspendProcessesResponse =+ SuspendProcessesResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "SuspendProcesses"- response = nullResponse SuspendProcessesResponse+-- | Creates a value of 'SuspendProcessesResponse' with the minimum fields required to make a request.+--+suspendProcessesResponse+ :: SuspendProcessesResponse+suspendProcessesResponse = SuspendProcessesResponse'
gen/Network/AWS/AutoScaling/TerminateInstanceInAutoScalingGroup.hs view
@@ -1,126 +1,145 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Terminates the specified instance and optionally adjusts the desired group--- size.+-- Terminates the specified instance and optionally adjusts the desired+-- group size. -- -- This call simply makes a termination request. The instances is not -- terminated immediately. ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_TerminateInstanceInAutoScalingGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_TerminateInstanceInAutoScalingGroup.html AWS API Reference> for TerminateInstanceInAutoScalingGroup. module Network.AWS.AutoScaling.TerminateInstanceInAutoScalingGroup (- -- * Request- TerminateInstanceInAutoScalingGroup- -- ** Request constructor- , terminateInstanceInAutoScalingGroup- -- ** Request lenses+ -- * Creating a Request+ terminateInstanceInAutoScalingGroup+ , TerminateInstanceInAutoScalingGroup+ -- * Request Lenses , tiiasgInstanceId , tiiasgShouldDecrementDesiredCapacity - -- * Response- , TerminateInstanceInAutoScalingGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , terminateInstanceInAutoScalingGroupResponse- -- ** Response lenses- , tiiasgrActivity+ , TerminateInstanceInAutoScalingGroupResponse+ -- * Response Lenses+ , tiiasgrsActivity+ , tiiasgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data TerminateInstanceInAutoScalingGroup = TerminateInstanceInAutoScalingGroup- { _tiiasgInstanceId :: Text- , _tiiasgShouldDecrementDesiredCapacity :: Bool- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'terminateInstanceInAutoScalingGroup' smart constructor.+data TerminateInstanceInAutoScalingGroup = TerminateInstanceInAutoScalingGroup'+ { _tiiasgInstanceId :: !Text+ , _tiiasgShouldDecrementDesiredCapacity :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'TerminateInstanceInAutoScalingGroup' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'TerminateInstanceInAutoScalingGroup' with the minimum fields required to make a request. ----- * 'tiiasgInstanceId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'tiiasgShouldDecrementDesiredCapacity' @::@ 'Bool'+-- * 'tiiasgInstanceId' ---terminateInstanceInAutoScalingGroup :: Text -- ^ 'tiiasgInstanceId'- -> Bool -- ^ 'tiiasgShouldDecrementDesiredCapacity'- -> TerminateInstanceInAutoScalingGroup-terminateInstanceInAutoScalingGroup p1 p2 = TerminateInstanceInAutoScalingGroup- { _tiiasgInstanceId = p1- , _tiiasgShouldDecrementDesiredCapacity = p2+-- * 'tiiasgShouldDecrementDesiredCapacity'+terminateInstanceInAutoScalingGroup+ :: Text -- ^ 'tiiasgInstanceId'+ -> Bool -- ^ 'tiiasgShouldDecrementDesiredCapacity'+ -> TerminateInstanceInAutoScalingGroup+terminateInstanceInAutoScalingGroup pInstanceId_ pShouldDecrementDesiredCapacity_ =+ TerminateInstanceInAutoScalingGroup'+ { _tiiasgInstanceId = pInstanceId_+ , _tiiasgShouldDecrementDesiredCapacity = pShouldDecrementDesiredCapacity_ } -- | The ID of the EC2 instance. tiiasgInstanceId :: Lens' TerminateInstanceInAutoScalingGroup Text-tiiasgInstanceId = lens _tiiasgInstanceId (\s a -> s { _tiiasgInstanceId = a })+tiiasgInstanceId = lens _tiiasgInstanceId (\ s a -> s{_tiiasgInstanceId = a}); --- | If 'true', terminating this instance also decrements the size of the Auto--- Scaling group.+-- | If 'true', terminating this instance also decrements the size of the+-- Auto Scaling group. tiiasgShouldDecrementDesiredCapacity :: Lens' TerminateInstanceInAutoScalingGroup Bool-tiiasgShouldDecrementDesiredCapacity =- lens _tiiasgShouldDecrementDesiredCapacity- (\s a -> s { _tiiasgShouldDecrementDesiredCapacity = a })+tiiasgShouldDecrementDesiredCapacity = lens _tiiasgShouldDecrementDesiredCapacity (\ s a -> s{_tiiasgShouldDecrementDesiredCapacity = a}); -newtype TerminateInstanceInAutoScalingGroupResponse = TerminateInstanceInAutoScalingGroupResponse- { _tiiasgrActivity :: Maybe Activity- } deriving (Eq, Read, Show)+instance AWSRequest+ TerminateInstanceInAutoScalingGroup where+ type Sv TerminateInstanceInAutoScalingGroup =+ AutoScaling+ type Rs TerminateInstanceInAutoScalingGroup =+ TerminateInstanceInAutoScalingGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "TerminateInstanceInAutoScalingGroupResult"+ (\ s h x ->+ TerminateInstanceInAutoScalingGroupResponse' <$>+ (x .@? "Activity") <*> (pure (fromEnum s))) --- | 'TerminateInstanceInAutoScalingGroupResponse' constructor.+instance ToHeaders+ TerminateInstanceInAutoScalingGroup where+ toHeaders = const mempty++instance ToPath TerminateInstanceInAutoScalingGroup+ where+ toPath = const "/"++instance ToQuery TerminateInstanceInAutoScalingGroup+ where+ toQuery TerminateInstanceInAutoScalingGroup'{..}+ = mconcat+ ["Action" =:+ ("TerminateInstanceInAutoScalingGroup" ::+ ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "InstanceId" =: _tiiasgInstanceId,+ "ShouldDecrementDesiredCapacity" =:+ _tiiasgShouldDecrementDesiredCapacity]++-- | /See:/ 'terminateInstanceInAutoScalingGroupResponse' smart constructor.+data TerminateInstanceInAutoScalingGroupResponse = TerminateInstanceInAutoScalingGroupResponse'+ { _tiiasgrsActivity :: !(Maybe Activity)+ , _tiiasgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TerminateInstanceInAutoScalingGroupResponse' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'tiiasgrActivity' @::@ 'Maybe' 'Activity'+-- * 'tiiasgrsActivity' ---terminateInstanceInAutoScalingGroupResponse :: TerminateInstanceInAutoScalingGroupResponse-terminateInstanceInAutoScalingGroupResponse = TerminateInstanceInAutoScalingGroupResponse- { _tiiasgrActivity = Nothing+-- * 'tiiasgrsStatus'+terminateInstanceInAutoScalingGroupResponse+ :: Int -- ^ 'tiiasgrsStatus'+ -> TerminateInstanceInAutoScalingGroupResponse+terminateInstanceInAutoScalingGroupResponse pStatus_ =+ TerminateInstanceInAutoScalingGroupResponse'+ { _tiiasgrsActivity = Nothing+ , _tiiasgrsStatus = pStatus_ } -- | A scaling activity.-tiiasgrActivity :: Lens' TerminateInstanceInAutoScalingGroupResponse (Maybe Activity)-tiiasgrActivity = lens _tiiasgrActivity (\s a -> s { _tiiasgrActivity = a })--instance ToPath TerminateInstanceInAutoScalingGroup where- toPath = const "/"--instance ToQuery TerminateInstanceInAutoScalingGroup where- toQuery TerminateInstanceInAutoScalingGroup{..} = mconcat- [ "InstanceId" =? _tiiasgInstanceId- , "ShouldDecrementDesiredCapacity" =? _tiiasgShouldDecrementDesiredCapacity- ]--instance ToHeaders TerminateInstanceInAutoScalingGroup--instance AWSRequest TerminateInstanceInAutoScalingGroup where- type Sv TerminateInstanceInAutoScalingGroup = AutoScaling- type Rs TerminateInstanceInAutoScalingGroup = TerminateInstanceInAutoScalingGroupResponse-- request = post "TerminateInstanceInAutoScalingGroup"- response = xmlResponse+tiiasgrsActivity :: Lens' TerminateInstanceInAutoScalingGroupResponse (Maybe Activity)+tiiasgrsActivity = lens _tiiasgrsActivity (\ s a -> s{_tiiasgrsActivity = a}); -instance FromXML TerminateInstanceInAutoScalingGroupResponse where- parseXML = withElement "TerminateInstanceInAutoScalingGroupResult" $ \x -> TerminateInstanceInAutoScalingGroupResponse- <$> x .@? "Activity"+-- | The response status code.+tiiasgrsStatus :: Lens' TerminateInstanceInAutoScalingGroupResponse Int+tiiasgrsStatus = lens _tiiasgrsStatus (\ s a -> s{_tiiasgrsStatus = a});
gen/Network/AWS/AutoScaling/Types.hs view
@@ -1,2265 +1,337 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE ViewPatterns #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Module : Network.AWS.AutoScaling.Types--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental--- Portability : non-portable (GHC extensions)------ Derived from AWS service descriptions, licensed under Apache 2.0.--module Network.AWS.AutoScaling.Types- (- -- * Service- AutoScaling- -- ** Error- , RESTError- -- ** XML- , ns-- -- * TagDescription- , TagDescription- , tagDescription- , tdKey- , tdPropagateAtLaunch- , tdResourceId- , tdResourceType- , tdValue-- -- * Tag- , Tag- , tag- , tagKey- , tagPropagateAtLaunch- , tagResourceId- , tagResourceType- , tagValue-- -- * NotificationConfiguration- , NotificationConfiguration- , notificationConfiguration- , ncAutoScalingGroupName- , ncNotificationType- , ncTopicARN-- -- * BlockDeviceMapping- , BlockDeviceMapping- , blockDeviceMapping- , bdmDeviceName- , bdmEbs- , bdmNoDevice- , bdmVirtualName-- -- * LaunchConfiguration- , LaunchConfiguration- , launchConfiguration- , lcAssociatePublicIpAddress- , lcBlockDeviceMappings- , lcClassicLinkVPCId- , lcClassicLinkVPCSecurityGroups- , lcCreatedTime- , lcEbsOptimized- , lcIamInstanceProfile- , lcImageId- , lcInstanceMonitoring- , lcInstanceType- , lcKernelId- , lcKeyName- , lcLaunchConfigurationARN- , lcLaunchConfigurationName- , lcPlacementTenancy- , lcRamdiskId- , lcSecurityGroups- , lcSpotPrice- , lcUserData-- -- * AutoScalingGroup- , AutoScalingGroup- , autoScalingGroup- , asgAutoScalingGroupARN- , asgAutoScalingGroupName- , asgAvailabilityZones- , asgCreatedTime- , asgDefaultCooldown- , asgDesiredCapacity- , asgEnabledMetrics- , asgHealthCheckGracePeriod- , asgHealthCheckType- , asgInstances- , asgLaunchConfigurationName- , asgLoadBalancerNames- , asgMaxSize- , asgMinSize- , asgPlacementGroup- , asgStatus- , asgSuspendedProcesses- , asgTags- , asgTerminationPolicies- , asgVPCZoneIdentifier-- -- * ScalingPolicy- , ScalingPolicy- , scalingPolicy- , sp1AdjustmentType- , sp1Alarms- , sp1AutoScalingGroupName- , sp1Cooldown- , sp1MinAdjustmentStep- , sp1PolicyARN- , sp1PolicyName- , sp1ScalingAdjustment-- -- * InstanceMonitoring- , InstanceMonitoring- , instanceMonitoring- , imEnabled-- -- * ScheduledUpdateGroupAction- , ScheduledUpdateGroupAction- , scheduledUpdateGroupAction- , sugaAutoScalingGroupName- , sugaDesiredCapacity- , sugaEndTime- , sugaMaxSize- , sugaMinSize- , sugaRecurrence- , sugaScheduledActionARN- , sugaScheduledActionName- , sugaStartTime- , sugaTime-- -- * ScalingProcessQuery- , ScalingProcessQuery- , scalingProcessQuery- , spqAutoScalingGroupName- , spqScalingProcesses-- -- * Ebs- , Ebs- , ebs- , ebsDeleteOnTermination- , ebsIops- , ebsSnapshotId- , ebsVolumeSize- , ebsVolumeType-- -- * AdjustmentType- , AdjustmentType- , adjustmentType- , atAdjustmentType-- -- * MetricCollectionType- , MetricCollectionType- , metricCollectionType- , mctMetric-- -- * LifecycleHook- , LifecycleHook- , lifecycleHook- , lhAutoScalingGroupName- , lhDefaultResult- , lhGlobalTimeout- , lhHeartbeatTimeout- , lhLifecycleHookName- , lhLifecycleTransition- , lhNotificationMetadata- , lhNotificationTargetARN- , lhRoleARN-- -- * Activity- , Activity- , activity- , aActivityId- , aAutoScalingGroupName- , aCause- , aDescription- , aDetails- , aEndTime- , aProgress- , aStartTime- , aStatusCode- , aStatusMessage-- -- * SuspendedProcess- , SuspendedProcess- , suspendedProcess- , spProcessName- , spSuspensionReason-- -- * MetricGranularityType- , MetricGranularityType- , metricGranularityType- , mgtGranularity-- -- * Filter- , Filter- , filter'- , fName- , fValues-- -- * ProcessType- , ProcessType- , processType- , ptProcessName-- -- * Alarm- , Alarm- , alarm- , aAlarmARN- , aAlarmName-- -- * EnabledMetric- , EnabledMetric- , enabledMetric- , emGranularity- , emMetric-- -- * Instance- , Instance- , instance'- , iAvailabilityZone- , iHealthStatus- , iInstanceId- , iLaunchConfigurationName- , iLifecycleState-- -- * LifecycleState- , LifecycleState (..)-- -- * AutoScalingInstanceDetails- , AutoScalingInstanceDetails- , autoScalingInstanceDetails- , asidAutoScalingGroupName- , asidAvailabilityZone- , asidHealthStatus- , asidInstanceId- , asidLaunchConfigurationName- , asidLifecycleState-- -- * ScalingActivityStatusCode- , ScalingActivityStatusCode (..)- ) where--import Network.AWS.Prelude-import Network.AWS.Signing-import qualified GHC.Exts---- | Version @2011-01-01@ of the Amazon Auto Scaling service.-data AutoScaling--instance AWSService AutoScaling where- type Sg AutoScaling = V4- type Er AutoScaling = RESTError-- service = service'- where- service' :: Service AutoScaling- service' = Service- { _svcAbbrev = "AutoScaling"- , _svcPrefix = "autoscaling"- , _svcVersion = "2011-01-01"- , _svcTargetPrefix = Nothing- , _svcJSONVersion = Nothing- , _svcHandle = handle- , _svcRetry = retry- }-- handle :: Status- -> Maybe (LazyByteString -> ServiceError RESTError)- handle = restError statusSuccess service'-- retry :: Retry AutoScaling- retry = Exponential- { _retryBase = 0.05- , _retryGrowth = 2- , _retryAttempts = 5- , _retryCheck = check- }-- check :: Status- -> RESTError- -> Bool- check (statusCode -> s) (awsErrorCode -> e)- | s == 400 && (Just "Throttling") == e = True -- Throttling- | s == 500 = True -- General Server Error- | s == 509 = True -- Limit Exceeded- | s == 503 = True -- Service Unavailable- | otherwise = False--ns :: Text-ns = "http://autoscaling.amazonaws.com/doc/2011-01-01/"-{-# INLINE ns #-}--data TagDescription = TagDescription- { _tdKey :: Text- , _tdPropagateAtLaunch :: Bool- , _tdResourceId :: Text- , _tdResourceType :: Text- , _tdValue :: Text- } deriving (Eq, Ord, Read, Show)---- | 'TagDescription' constructor.------ The fields accessible through corresponding lenses are:------ * 'tdKey' @::@ 'Text'------ * 'tdPropagateAtLaunch' @::@ 'Bool'------ * 'tdResourceId' @::@ 'Text'------ * 'tdResourceType' @::@ 'Text'------ * 'tdValue' @::@ 'Text'----tagDescription :: Text -- ^ 'tdResourceId'- -> Text -- ^ 'tdResourceType'- -> Text -- ^ 'tdKey'- -> Text -- ^ 'tdValue'- -> Bool -- ^ 'tdPropagateAtLaunch'- -> TagDescription-tagDescription p1 p2 p3 p4 p5 = TagDescription- { _tdResourceId = p1- , _tdResourceType = p2- , _tdKey = p3- , _tdValue = p4- , _tdPropagateAtLaunch = p5- }---- | The tag key.-tdKey :: Lens' TagDescription Text-tdKey = lens _tdKey (\s a -> s { _tdKey = a })---- | Specifies whether the tag is applied to instances launched after the tag is--- created. The same behavior applies to updates: If you change a tag, it is--- applied to all instances launched after you made the change.-tdPropagateAtLaunch :: Lens' TagDescription Bool-tdPropagateAtLaunch =- lens _tdPropagateAtLaunch (\s a -> s { _tdPropagateAtLaunch = a })---- | The name of the group.-tdResourceId :: Lens' TagDescription Text-tdResourceId = lens _tdResourceId (\s a -> s { _tdResourceId = a })---- | The kind of resource to which the tag is applied. Currently, Auto Scaling--- supports the 'auto-scaling-group' resource type.-tdResourceType :: Lens' TagDescription Text-tdResourceType = lens _tdResourceType (\s a -> s { _tdResourceType = a })---- | The tag value.-tdValue :: Lens' TagDescription Text-tdValue = lens _tdValue (\s a -> s { _tdValue = a })--instance FromXML TagDescription where- parseXML x = TagDescription- <$> x .@ "Key"- <*> x .@ "PropagateAtLaunch"- <*> x .@ "ResourceId"- <*> x .@ "ResourceType"- <*> x .@ "Value"--instance ToQuery TagDescription where- toQuery TagDescription{..} = mconcat- [ "Key" =? _tdKey- , "PropagateAtLaunch" =? _tdPropagateAtLaunch- , "ResourceId" =? _tdResourceId- , "ResourceType" =? _tdResourceType- , "Value" =? _tdValue- ]--data Tag = Tag- { _tagKey :: Text- , _tagPropagateAtLaunch :: Bool- , _tagResourceId :: Text- , _tagResourceType :: Text- , _tagValue :: Text- } deriving (Eq, Ord, Read, Show)---- | 'Tag' constructor.------ The fields accessible through corresponding lenses are:------ * 'tagKey' @::@ 'Text'------ * 'tagPropagateAtLaunch' @::@ 'Bool'------ * 'tagResourceId' @::@ 'Text'------ * 'tagResourceType' @::@ 'Text'------ * 'tagValue' @::@ 'Text'----tag :: Text -- ^ 'tagResourceId'- -> Text -- ^ 'tagResourceType'- -> Text -- ^ 'tagKey'- -> Text -- ^ 'tagValue'- -> Bool -- ^ 'tagPropagateAtLaunch'- -> Tag-tag p1 p2 p3 p4 p5 = Tag- { _tagResourceId = p1- , _tagResourceType = p2- , _tagKey = p3- , _tagValue = p4- , _tagPropagateAtLaunch = p5- }---- | The tag key.-tagKey :: Lens' Tag Text-tagKey = lens _tagKey (\s a -> s { _tagKey = a })---- | Specifies whether the tag is applied to instances launched after the tag is--- created. The same behavior applies to updates: If you change a tag, it is--- applied to all instances launched after you made the change.-tagPropagateAtLaunch :: Lens' Tag Bool-tagPropagateAtLaunch =- lens _tagPropagateAtLaunch (\s a -> s { _tagPropagateAtLaunch = a })---- | The name of the group.-tagResourceId :: Lens' Tag Text-tagResourceId = lens _tagResourceId (\s a -> s { _tagResourceId = a })---- | The kind of resource to which the tag is applied. Currently, Auto Scaling--- supports the 'auto-scaling-group' resource type.-tagResourceType :: Lens' Tag Text-tagResourceType = lens _tagResourceType (\s a -> s { _tagResourceType = a })---- | The tag value.-tagValue :: Lens' Tag Text-tagValue = lens _tagValue (\s a -> s { _tagValue = a })--instance FromXML Tag where- parseXML x = Tag- <$> x .@ "Key"- <*> x .@ "PropagateAtLaunch"- <*> x .@ "ResourceId"- <*> x .@ "ResourceType"- <*> x .@ "Value"--instance ToQuery Tag where- toQuery Tag{..} = mconcat- [ "Key" =? _tagKey- , "PropagateAtLaunch" =? _tagPropagateAtLaunch- , "ResourceId" =? _tagResourceId- , "ResourceType" =? _tagResourceType- , "Value" =? _tagValue- ]--data NotificationConfiguration = NotificationConfiguration- { _ncAutoScalingGroupName :: Maybe Text- , _ncNotificationType :: Maybe Text- , _ncTopicARN :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'NotificationConfiguration' constructor.------ The fields accessible through corresponding lenses are:------ * 'ncAutoScalingGroupName' @::@ 'Maybe' 'Text'------ * 'ncNotificationType' @::@ 'Maybe' 'Text'------ * 'ncTopicARN' @::@ 'Maybe' 'Text'----notificationConfiguration :: NotificationConfiguration-notificationConfiguration = NotificationConfiguration- { _ncAutoScalingGroupName = Nothing- , _ncTopicARN = Nothing- , _ncNotificationType = Nothing- }---- | The name of the group.-ncAutoScalingGroupName :: Lens' NotificationConfiguration (Maybe Text)-ncAutoScalingGroupName =- lens _ncAutoScalingGroupName (\s a -> s { _ncAutoScalingGroupName = a })---- | The types of events for an action to start.-ncNotificationType :: Lens' NotificationConfiguration (Maybe Text)-ncNotificationType =- lens _ncNotificationType (\s a -> s { _ncNotificationType = a })---- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service--- (SNS) topic.-ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)-ncTopicARN = lens _ncTopicARN (\s a -> s { _ncTopicARN = a })--instance FromXML NotificationConfiguration where- parseXML x = NotificationConfiguration- <$> x .@? "AutoScalingGroupName"- <*> x .@? "NotificationType"- <*> x .@? "TopicARN"--instance ToQuery NotificationConfiguration where- toQuery NotificationConfiguration{..} = mconcat- [ "AutoScalingGroupName" =? _ncAutoScalingGroupName- , "NotificationType" =? _ncNotificationType- , "TopicARN" =? _ncTopicARN- ]--data BlockDeviceMapping = BlockDeviceMapping- { _bdmDeviceName :: Text- , _bdmEbs :: Maybe Ebs- , _bdmNoDevice :: Maybe Bool- , _bdmVirtualName :: Maybe Text- } deriving (Eq, Read, Show)---- | 'BlockDeviceMapping' constructor.------ The fields accessible through corresponding lenses are:------ * 'bdmDeviceName' @::@ 'Text'------ * 'bdmEbs' @::@ 'Maybe' 'Ebs'------ * 'bdmNoDevice' @::@ 'Maybe' 'Bool'------ * 'bdmVirtualName' @::@ 'Maybe' 'Text'----blockDeviceMapping :: Text -- ^ 'bdmDeviceName'- -> BlockDeviceMapping-blockDeviceMapping p1 = BlockDeviceMapping- { _bdmDeviceName = p1- , _bdmVirtualName = Nothing- , _bdmEbs = Nothing- , _bdmNoDevice = Nothing- }---- | The device name exposed to the EC2 instance (for example, '/dev/sdh' or 'xvdh').-bdmDeviceName :: Lens' BlockDeviceMapping Text-bdmDeviceName = lens _bdmDeviceName (\s a -> s { _bdmDeviceName = a })---- | The information about the Amazon EBS volume.-bdmEbs :: Lens' BlockDeviceMapping (Maybe Ebs)-bdmEbs = lens _bdmEbs (\s a -> s { _bdmEbs = a })---- | Suppresses a device mapping.------ If 'NoDevice' is set to 'true' for the root device, the instance might fail the--- EC2 health check. Auto Scaling launches a replacement instance if the--- instance fails the health check.-bdmNoDevice :: Lens' BlockDeviceMapping (Maybe Bool)-bdmNoDevice = lens _bdmNoDevice (\s a -> s { _bdmNoDevice = a })---- | The name of the virtual device, 'ephemeral0' to 'ephemeral3'.-bdmVirtualName :: Lens' BlockDeviceMapping (Maybe Text)-bdmVirtualName = lens _bdmVirtualName (\s a -> s { _bdmVirtualName = a })--instance FromXML BlockDeviceMapping where- parseXML x = BlockDeviceMapping- <$> x .@ "DeviceName"- <*> x .@? "Ebs"- <*> x .@? "NoDevice"- <*> x .@? "VirtualName"--instance ToQuery BlockDeviceMapping where- toQuery BlockDeviceMapping{..} = mconcat- [ "DeviceName" =? _bdmDeviceName- , "Ebs" =? _bdmEbs- , "NoDevice" =? _bdmNoDevice- , "VirtualName" =? _bdmVirtualName- ]--data LaunchConfiguration = LaunchConfiguration- { _lcAssociatePublicIpAddress :: Maybe Bool- , _lcBlockDeviceMappings :: List "member" BlockDeviceMapping- , _lcClassicLinkVPCId :: Maybe Text- , _lcClassicLinkVPCSecurityGroups :: List "member" Text- , _lcCreatedTime :: ISO8601- , _lcEbsOptimized :: Maybe Bool- , _lcIamInstanceProfile :: Maybe Text- , _lcImageId :: Text- , _lcInstanceMonitoring :: Maybe InstanceMonitoring- , _lcInstanceType :: Text- , _lcKernelId :: Maybe Text- , _lcKeyName :: Maybe Text- , _lcLaunchConfigurationARN :: Maybe Text- , _lcLaunchConfigurationName :: Text- , _lcPlacementTenancy :: Maybe Text- , _lcRamdiskId :: Maybe Text- , _lcSecurityGroups :: List "member" Text- , _lcSpotPrice :: Maybe Text- , _lcUserData :: Maybe Text- } deriving (Eq, Read, Show)---- | 'LaunchConfiguration' constructor.------ The fields accessible through corresponding lenses are:------ * 'lcAssociatePublicIpAddress' @::@ 'Maybe' 'Bool'------ * 'lcBlockDeviceMappings' @::@ ['BlockDeviceMapping']------ * 'lcClassicLinkVPCId' @::@ 'Maybe' 'Text'------ * 'lcClassicLinkVPCSecurityGroups' @::@ ['Text']------ * 'lcCreatedTime' @::@ 'UTCTime'------ * 'lcEbsOptimized' @::@ 'Maybe' 'Bool'------ * 'lcIamInstanceProfile' @::@ 'Maybe' 'Text'------ * 'lcImageId' @::@ 'Text'------ * 'lcInstanceMonitoring' @::@ 'Maybe' 'InstanceMonitoring'------ * 'lcInstanceType' @::@ 'Text'------ * 'lcKernelId' @::@ 'Maybe' 'Text'------ * 'lcKeyName' @::@ 'Maybe' 'Text'------ * 'lcLaunchConfigurationARN' @::@ 'Maybe' 'Text'------ * 'lcLaunchConfigurationName' @::@ 'Text'------ * 'lcPlacementTenancy' @::@ 'Maybe' 'Text'------ * 'lcRamdiskId' @::@ 'Maybe' 'Text'------ * 'lcSecurityGroups' @::@ ['Text']------ * 'lcSpotPrice' @::@ 'Maybe' 'Text'------ * 'lcUserData' @::@ 'Maybe' 'Text'----launchConfiguration :: Text -- ^ 'lcLaunchConfigurationName'- -> Text -- ^ 'lcImageId'- -> Text -- ^ 'lcInstanceType'- -> UTCTime -- ^ 'lcCreatedTime'- -> LaunchConfiguration-launchConfiguration p1 p2 p3 p4 = LaunchConfiguration- { _lcLaunchConfigurationName = p1- , _lcImageId = p2- , _lcInstanceType = p3- , _lcCreatedTime = withIso _Time (const id) p4- , _lcLaunchConfigurationARN = Nothing- , _lcKeyName = Nothing- , _lcSecurityGroups = mempty- , _lcClassicLinkVPCId = Nothing- , _lcClassicLinkVPCSecurityGroups = mempty- , _lcUserData = Nothing- , _lcKernelId = Nothing- , _lcRamdiskId = Nothing- , _lcBlockDeviceMappings = mempty- , _lcInstanceMonitoring = Nothing- , _lcSpotPrice = Nothing- , _lcIamInstanceProfile = Nothing- , _lcEbsOptimized = Nothing- , _lcAssociatePublicIpAddress = Nothing- , _lcPlacementTenancy = Nothing- }---- | Specifies whether the EC2 instances are associated with a public IP address ('true') or not ('false').-lcAssociatePublicIpAddress :: Lens' LaunchConfiguration (Maybe Bool)-lcAssociatePublicIpAddress =- lens _lcAssociatePublicIpAddress- (\s a -> s { _lcAssociatePublicIpAddress = a })---- | A block device mapping that specifies how block devices are exposed to the--- instance. Each mapping is made up of a 'virtualName' and a 'deviceName'.-lcBlockDeviceMappings :: Lens' LaunchConfiguration [BlockDeviceMapping]-lcBlockDeviceMappings =- lens _lcBlockDeviceMappings (\s a -> s { _lcBlockDeviceMappings = a })- . _List---- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.--- This parameter can only be used if you are launching EC2-Classic instances.--- For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink> in the /Amazon Elastic Compute CloudUser Guide/.-lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe Text)-lcClassicLinkVPCId =- lens _lcClassicLinkVPCId (\s a -> s { _lcClassicLinkVPCId = a })---- | The IDs of one or more security groups for the VPC specified in 'ClassicLinkVPCId'. This parameter is required if 'ClassicLinkVPCId' is specified, and cannot be--- used otherwise. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink> in the /Amazon ElasticCompute Cloud User Guide/.-lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration [Text]-lcClassicLinkVPCSecurityGroups =- lens _lcClassicLinkVPCSecurityGroups- (\s a -> s { _lcClassicLinkVPCSecurityGroups = a })- . _List---- | The creation date and time for the launch configuration.-lcCreatedTime :: Lens' LaunchConfiguration UTCTime-lcCreatedTime = lens _lcCreatedTime (\s a -> s { _lcCreatedTime = a }) . _Time---- | Controls whether the instance is optimized for EBS I/O ('true') or not ('false').-lcEbsOptimized :: Lens' LaunchConfiguration (Maybe Bool)-lcEbsOptimized = lens _lcEbsOptimized (\s a -> s { _lcEbsOptimized = a })---- | The name or Amazon Resource Name (ARN) of the instance profile associated--- with the IAM role for the instance.-lcIamInstanceProfile :: Lens' LaunchConfiguration (Maybe Text)-lcIamInstanceProfile =- lens _lcIamInstanceProfile (\s a -> s { _lcIamInstanceProfile = a })---- | The ID of the Amazon Machine Image (AMI).-lcImageId :: Lens' LaunchConfiguration Text-lcImageId = lens _lcImageId (\s a -> s { _lcImageId = a })---- | Controls whether instances in this group are launched with detailed--- monitoring.-lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe InstanceMonitoring)-lcInstanceMonitoring =- lens _lcInstanceMonitoring (\s a -> s { _lcInstanceMonitoring = a })---- | The instance type for the EC2 instances.-lcInstanceType :: Lens' LaunchConfiguration Text-lcInstanceType = lens _lcInstanceType (\s a -> s { _lcInstanceType = a })---- | The ID of the kernel associated with the AMI.-lcKernelId :: Lens' LaunchConfiguration (Maybe Text)-lcKernelId = lens _lcKernelId (\s a -> s { _lcKernelId = a })---- | The name of the key pair.-lcKeyName :: Lens' LaunchConfiguration (Maybe Text)-lcKeyName = lens _lcKeyName (\s a -> s { _lcKeyName = a })---- | The Amazon Resource Name (ARN) of the launch configuration.-lcLaunchConfigurationARN :: Lens' LaunchConfiguration (Maybe Text)-lcLaunchConfigurationARN =- lens _lcLaunchConfigurationARN- (\s a -> s { _lcLaunchConfigurationARN = a })---- | The name of the launch configuration.-lcLaunchConfigurationName :: Lens' LaunchConfiguration Text-lcLaunchConfigurationName =- lens _lcLaunchConfigurationName- (\s a -> s { _lcLaunchConfigurationName = a })---- | The tenancy of the instance, either 'default' or 'dedicated'. An instance with 'dedicated' tenancy runs in an isolated, single-tenant hardware and can only be launched--- in a VPC.-lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe Text)-lcPlacementTenancy =- lens _lcPlacementTenancy (\s a -> s { _lcPlacementTenancy = a })---- | The ID of the RAM disk associated with the AMI.-lcRamdiskId :: Lens' LaunchConfiguration (Maybe Text)-lcRamdiskId = lens _lcRamdiskId (\s a -> s { _lcRamdiskId = a })---- | The security groups to associate with the EC2 instances.-lcSecurityGroups :: Lens' LaunchConfiguration [Text]-lcSecurityGroups = lens _lcSecurityGroups (\s a -> s { _lcSecurityGroups = a }) . _List---- | The price to bid when launching Spot Instances.-lcSpotPrice :: Lens' LaunchConfiguration (Maybe Text)-lcSpotPrice = lens _lcSpotPrice (\s a -> s { _lcSpotPrice = a })---- | The user data available to the EC2 instances.-lcUserData :: Lens' LaunchConfiguration (Maybe Text)-lcUserData = lens _lcUserData (\s a -> s { _lcUserData = a })--instance FromXML LaunchConfiguration where- parseXML x = LaunchConfiguration- <$> x .@? "AssociatePublicIpAddress"- <*> x .@? "BlockDeviceMappings" .!@ mempty- <*> x .@? "ClassicLinkVPCId"- <*> x .@? "ClassicLinkVPCSecurityGroups" .!@ mempty- <*> x .@ "CreatedTime"- <*> x .@? "EbsOptimized"- <*> x .@? "IamInstanceProfile"- <*> x .@ "ImageId"- <*> x .@? "InstanceMonitoring"- <*> x .@ "InstanceType"- <*> x .@? "KernelId"- <*> x .@? "KeyName"- <*> x .@? "LaunchConfigurationARN"- <*> x .@ "LaunchConfigurationName"- <*> x .@? "PlacementTenancy"- <*> x .@? "RamdiskId"- <*> x .@? "SecurityGroups" .!@ mempty- <*> x .@? "SpotPrice"- <*> x .@? "UserData"--instance ToQuery LaunchConfiguration where- toQuery LaunchConfiguration{..} = mconcat- [ "AssociatePublicIpAddress" =? _lcAssociatePublicIpAddress- , "BlockDeviceMappings" =? _lcBlockDeviceMappings- , "ClassicLinkVPCId" =? _lcClassicLinkVPCId- , "ClassicLinkVPCSecurityGroups" =? _lcClassicLinkVPCSecurityGroups- , "CreatedTime" =? _lcCreatedTime- , "EbsOptimized" =? _lcEbsOptimized- , "IamInstanceProfile" =? _lcIamInstanceProfile- , "ImageId" =? _lcImageId- , "InstanceMonitoring" =? _lcInstanceMonitoring- , "InstanceType" =? _lcInstanceType- , "KernelId" =? _lcKernelId- , "KeyName" =? _lcKeyName- , "LaunchConfigurationARN" =? _lcLaunchConfigurationARN- , "LaunchConfigurationName" =? _lcLaunchConfigurationName- , "PlacementTenancy" =? _lcPlacementTenancy- , "RamdiskId" =? _lcRamdiskId- , "SecurityGroups" =? _lcSecurityGroups- , "SpotPrice" =? _lcSpotPrice- , "UserData" =? _lcUserData- ]--data AutoScalingGroup = AutoScalingGroup- { _asgAutoScalingGroupARN :: Maybe Text- , _asgAutoScalingGroupName :: Text- , _asgAvailabilityZones :: List1 "member" Text- , _asgCreatedTime :: ISO8601- , _asgDefaultCooldown :: Int- , _asgDesiredCapacity :: Int- , _asgEnabledMetrics :: List "member" EnabledMetric- , _asgHealthCheckGracePeriod :: Maybe Int- , _asgHealthCheckType :: Text- , _asgInstances :: List "member" Instance- , _asgLaunchConfigurationName :: Text- , _asgLoadBalancerNames :: List "member" Text- , _asgMaxSize :: Int- , _asgMinSize :: Int- , _asgPlacementGroup :: Maybe Text- , _asgStatus :: Maybe Text- , _asgSuspendedProcesses :: List "member" SuspendedProcess- , _asgTags :: List "member" TagDescription- , _asgTerminationPolicies :: List "member" Text- , _asgVPCZoneIdentifier :: Maybe Text- } deriving (Eq, Read, Show)---- | 'AutoScalingGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'asgAutoScalingGroupARN' @::@ 'Maybe' 'Text'------ * 'asgAutoScalingGroupName' @::@ 'Text'------ * 'asgAvailabilityZones' @::@ 'NonEmpty' 'Text'------ * 'asgCreatedTime' @::@ 'UTCTime'------ * 'asgDefaultCooldown' @::@ 'Int'------ * 'asgDesiredCapacity' @::@ 'Int'------ * 'asgEnabledMetrics' @::@ ['EnabledMetric']------ * 'asgHealthCheckGracePeriod' @::@ 'Maybe' 'Int'------ * 'asgHealthCheckType' @::@ 'Text'------ * 'asgInstances' @::@ ['Instance']------ * 'asgLaunchConfigurationName' @::@ 'Text'------ * 'asgLoadBalancerNames' @::@ ['Text']------ * 'asgMaxSize' @::@ 'Int'------ * 'asgMinSize' @::@ 'Int'------ * 'asgPlacementGroup' @::@ 'Maybe' 'Text'------ * 'asgStatus' @::@ 'Maybe' 'Text'------ * 'asgSuspendedProcesses' @::@ ['SuspendedProcess']------ * 'asgTags' @::@ ['TagDescription']------ * 'asgTerminationPolicies' @::@ ['Text']------ * 'asgVPCZoneIdentifier' @::@ 'Maybe' 'Text'----autoScalingGroup :: Text -- ^ 'asgAutoScalingGroupName'- -> Text -- ^ 'asgLaunchConfigurationName'- -> Int -- ^ 'asgMinSize'- -> Int -- ^ 'asgMaxSize'- -> Int -- ^ 'asgDesiredCapacity'- -> Int -- ^ 'asgDefaultCooldown'- -> NonEmpty Text -- ^ 'asgAvailabilityZones'- -> Text -- ^ 'asgHealthCheckType'- -> UTCTime -- ^ 'asgCreatedTime'- -> AutoScalingGroup-autoScalingGroup p1 p2 p3 p4 p5 p6 p7 p8 p9 = AutoScalingGroup- { _asgAutoScalingGroupName = p1- , _asgLaunchConfigurationName = p2- , _asgMinSize = p3- , _asgMaxSize = p4- , _asgDesiredCapacity = p5- , _asgDefaultCooldown = p6- , _asgAvailabilityZones = withIso _List1 (const id) p7- , _asgHealthCheckType = p8- , _asgCreatedTime = withIso _Time (const id) p9- , _asgAutoScalingGroupARN = Nothing- , _asgLoadBalancerNames = mempty- , _asgHealthCheckGracePeriod = Nothing- , _asgInstances = mempty- , _asgSuspendedProcesses = mempty- , _asgPlacementGroup = Nothing- , _asgVPCZoneIdentifier = Nothing- , _asgEnabledMetrics = mempty- , _asgStatus = Nothing- , _asgTags = mempty- , _asgTerminationPolicies = mempty- }---- | The Amazon Resource Name (ARN) of the group.-asgAutoScalingGroupARN :: Lens' AutoScalingGroup (Maybe Text)-asgAutoScalingGroupARN =- lens _asgAutoScalingGroupARN (\s a -> s { _asgAutoScalingGroupARN = a })---- | The name of the group.-asgAutoScalingGroupName :: Lens' AutoScalingGroup Text-asgAutoScalingGroupName =- lens _asgAutoScalingGroupName (\s a -> s { _asgAutoScalingGroupName = a })---- | One or more Availability Zones for the group.-asgAvailabilityZones :: Lens' AutoScalingGroup (NonEmpty Text)-asgAvailabilityZones =- lens _asgAvailabilityZones (\s a -> s { _asgAvailabilityZones = a })- . _List1---- | The date and time the group was created.-asgCreatedTime :: Lens' AutoScalingGroup UTCTime-asgCreatedTime = lens _asgCreatedTime (\s a -> s { _asgCreatedTime = a }) . _Time---- | The number of seconds after a scaling activity completes before any further--- scaling activities can start.-asgDefaultCooldown :: Lens' AutoScalingGroup Int-asgDefaultCooldown =- lens _asgDefaultCooldown (\s a -> s { _asgDefaultCooldown = a })---- | The size of the group.-asgDesiredCapacity :: Lens' AutoScalingGroup Int-asgDesiredCapacity =- lens _asgDesiredCapacity (\s a -> s { _asgDesiredCapacity = a })---- | The metrics enabled for this Auto Scaling group.-asgEnabledMetrics :: Lens' AutoScalingGroup [EnabledMetric]-asgEnabledMetrics =- lens _asgEnabledMetrics (\s a -> s { _asgEnabledMetrics = a })- . _List---- | The amount of time that Auto Scaling waits before checking an instance's--- health status. The grace period begins when an instance comes into service.-asgHealthCheckGracePeriod :: Lens' AutoScalingGroup (Maybe Int)-asgHealthCheckGracePeriod =- lens _asgHealthCheckGracePeriod- (\s a -> s { _asgHealthCheckGracePeriod = a })---- | The service of interest for the health status check, which can be either 'EC2'--- for Amazon EC2 or 'ELB' for Elastic Load Balancing.-asgHealthCheckType :: Lens' AutoScalingGroup Text-asgHealthCheckType =- lens _asgHealthCheckType (\s a -> s { _asgHealthCheckType = a })---- | The EC2 instances associated with the group.-asgInstances :: Lens' AutoScalingGroup [Instance]-asgInstances = lens _asgInstances (\s a -> s { _asgInstances = a }) . _List---- | The name of the associated launch configuration.-asgLaunchConfigurationName :: Lens' AutoScalingGroup Text-asgLaunchConfigurationName =- lens _asgLaunchConfigurationName- (\s a -> s { _asgLaunchConfigurationName = a })---- | One or more load balancers associated with the group.-asgLoadBalancerNames :: Lens' AutoScalingGroup [Text]-asgLoadBalancerNames =- lens _asgLoadBalancerNames (\s a -> s { _asgLoadBalancerNames = a })- . _List---- | The maximum size of the group.-asgMaxSize :: Lens' AutoScalingGroup Int-asgMaxSize = lens _asgMaxSize (\s a -> s { _asgMaxSize = a })---- | The minimum size of the group.-asgMinSize :: Lens' AutoScalingGroup Int-asgMinSize = lens _asgMinSize (\s a -> s { _asgMinSize = a })---- | The name of the placement group into which you'll launch your instances, if--- any. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>.-asgPlacementGroup :: Lens' AutoScalingGroup (Maybe Text)-asgPlacementGroup =- lens _asgPlacementGroup (\s a -> s { _asgPlacementGroup = a })---- | The current state of the Auto Scaling group when a 'DeleteAutoScalingGroup'--- action is in progress.-asgStatus :: Lens' AutoScalingGroup (Maybe Text)-asgStatus = lens _asgStatus (\s a -> s { _asgStatus = a })---- | The suspended processes associated with the group.-asgSuspendedProcesses :: Lens' AutoScalingGroup [SuspendedProcess]-asgSuspendedProcesses =- lens _asgSuspendedProcesses (\s a -> s { _asgSuspendedProcesses = a })- . _List---- | The tags for the Auto Scaling group.-asgTags :: Lens' AutoScalingGroup [TagDescription]-asgTags = lens _asgTags (\s a -> s { _asgTags = a }) . _List---- | The termination policies for this Auto Scaling group.-asgTerminationPolicies :: Lens' AutoScalingGroup [Text]-asgTerminationPolicies =- lens _asgTerminationPolicies (\s a -> s { _asgTerminationPolicies = a })- . _List---- | One or more subnet IDs, if applicable, separated by commas.------ If you specify 'VPCZoneIdentifier' and 'AvailabilityZones', ensure that the--- Availability Zones of the subnets match the values for 'AvailabilityZones'.-asgVPCZoneIdentifier :: Lens' AutoScalingGroup (Maybe Text)-asgVPCZoneIdentifier =- lens _asgVPCZoneIdentifier (\s a -> s { _asgVPCZoneIdentifier = a })--instance FromXML AutoScalingGroup where- parseXML x = AutoScalingGroup- <$> x .@? "AutoScalingGroupARN"- <*> x .@ "AutoScalingGroupName"- <*> x .@ "AvailabilityZones"- <*> x .@ "CreatedTime"- <*> x .@ "DefaultCooldown"- <*> x .@ "DesiredCapacity"- <*> x .@? "EnabledMetrics" .!@ mempty- <*> x .@? "HealthCheckGracePeriod"- <*> x .@ "HealthCheckType"- <*> x .@? "Instances" .!@ mempty- <*> x .@ "LaunchConfigurationName"- <*> x .@? "LoadBalancerNames" .!@ mempty- <*> x .@ "MaxSize"- <*> x .@ "MinSize"- <*> x .@? "PlacementGroup"- <*> x .@? "Status"- <*> x .@? "SuspendedProcesses" .!@ mempty- <*> x .@? "Tags" .!@ mempty- <*> x .@? "TerminationPolicies" .!@ mempty- <*> x .@? "VPCZoneIdentifier"--instance ToQuery AutoScalingGroup where- toQuery AutoScalingGroup{..} = mconcat- [ "AutoScalingGroupARN" =? _asgAutoScalingGroupARN- , "AutoScalingGroupName" =? _asgAutoScalingGroupName- , "AvailabilityZones" =? _asgAvailabilityZones- , "CreatedTime" =? _asgCreatedTime- , "DefaultCooldown" =? _asgDefaultCooldown- , "DesiredCapacity" =? _asgDesiredCapacity- , "EnabledMetrics" =? _asgEnabledMetrics- , "HealthCheckGracePeriod" =? _asgHealthCheckGracePeriod- , "HealthCheckType" =? _asgHealthCheckType- , "Instances" =? _asgInstances- , "LaunchConfigurationName" =? _asgLaunchConfigurationName- , "LoadBalancerNames" =? _asgLoadBalancerNames- , "MaxSize" =? _asgMaxSize- , "MinSize" =? _asgMinSize- , "PlacementGroup" =? _asgPlacementGroup- , "Status" =? _asgStatus- , "SuspendedProcesses" =? _asgSuspendedProcesses- , "Tags" =? _asgTags- , "TerminationPolicies" =? _asgTerminationPolicies- , "VPCZoneIdentifier" =? _asgVPCZoneIdentifier- ]--data ScalingPolicy = ScalingPolicy- { _sp1AdjustmentType :: Maybe Text- , _sp1Alarms :: List "member" Alarm- , _sp1AutoScalingGroupName :: Maybe Text- , _sp1Cooldown :: Maybe Int- , _sp1MinAdjustmentStep :: Maybe Int- , _sp1PolicyARN :: Maybe Text- , _sp1PolicyName :: Maybe Text- , _sp1ScalingAdjustment :: Maybe Int- } deriving (Eq, Read, Show)---- | 'ScalingPolicy' constructor.------ The fields accessible through corresponding lenses are:------ * 'sp1AdjustmentType' @::@ 'Maybe' 'Text'------ * 'sp1Alarms' @::@ ['Alarm']------ * 'sp1AutoScalingGroupName' @::@ 'Maybe' 'Text'------ * 'sp1Cooldown' @::@ 'Maybe' 'Int'------ * 'sp1MinAdjustmentStep' @::@ 'Maybe' 'Int'------ * 'sp1PolicyARN' @::@ 'Maybe' 'Text'------ * 'sp1PolicyName' @::@ 'Maybe' 'Text'------ * 'sp1ScalingAdjustment' @::@ 'Maybe' 'Int'----scalingPolicy :: ScalingPolicy-scalingPolicy = ScalingPolicy- { _sp1AutoScalingGroupName = Nothing- , _sp1PolicyName = Nothing- , _sp1ScalingAdjustment = Nothing- , _sp1AdjustmentType = Nothing- , _sp1Cooldown = Nothing- , _sp1PolicyARN = Nothing- , _sp1Alarms = mempty- , _sp1MinAdjustmentStep = Nothing- }---- | Specifies whether the 'ScalingAdjustment' is an absolute number or a percentage--- of the current capacity. Valid values are 'ChangeInCapacity', 'ExactCapacity',--- and 'PercentChangeInCapacity'.-sp1AdjustmentType :: Lens' ScalingPolicy (Maybe Text)-sp1AdjustmentType =- lens _sp1AdjustmentType (\s a -> s { _sp1AdjustmentType = a })---- | The CloudWatch Alarms related to the policy.-sp1Alarms :: Lens' ScalingPolicy [Alarm]-sp1Alarms = lens _sp1Alarms (\s a -> s { _sp1Alarms = a }) . _List---- | The name of the Auto Scaling group associated with this scaling policy.-sp1AutoScalingGroupName :: Lens' ScalingPolicy (Maybe Text)-sp1AutoScalingGroupName =- lens _sp1AutoScalingGroupName (\s a -> s { _sp1AutoScalingGroupName = a })---- | The amount of time, in seconds, after a scaling activity completes before any--- further trigger-related scaling activities can start.-sp1Cooldown :: Lens' ScalingPolicy (Maybe Int)-sp1Cooldown = lens _sp1Cooldown (\s a -> s { _sp1Cooldown = a })---- | Changes the 'DesiredCapacity' of the Auto Scaling group by at least the--- specified number of instances.-sp1MinAdjustmentStep :: Lens' ScalingPolicy (Maybe Int)-sp1MinAdjustmentStep =- lens _sp1MinAdjustmentStep (\s a -> s { _sp1MinAdjustmentStep = a })---- | The Amazon Resource Name (ARN) of the policy.-sp1PolicyARN :: Lens' ScalingPolicy (Maybe Text)-sp1PolicyARN = lens _sp1PolicyARN (\s a -> s { _sp1PolicyARN = a })---- | The name of the scaling policy.-sp1PolicyName :: Lens' ScalingPolicy (Maybe Text)-sp1PolicyName = lens _sp1PolicyName (\s a -> s { _sp1PolicyName = a })---- | The number associated with the specified adjustment type. A positive value--- adds to the current capacity and a negative value removes from the current--- capacity.-sp1ScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)-sp1ScalingAdjustment =- lens _sp1ScalingAdjustment (\s a -> s { _sp1ScalingAdjustment = a })--instance FromXML ScalingPolicy where- parseXML x = ScalingPolicy- <$> x .@? "AdjustmentType"- <*> x .@? "Alarms" .!@ mempty- <*> x .@? "AutoScalingGroupName"- <*> x .@? "Cooldown"- <*> x .@? "MinAdjustmentStep"- <*> x .@? "PolicyARN"- <*> x .@? "PolicyName"- <*> x .@? "ScalingAdjustment"--instance ToQuery ScalingPolicy where- toQuery ScalingPolicy{..} = mconcat- [ "AdjustmentType" =? _sp1AdjustmentType- , "Alarms" =? _sp1Alarms- , "AutoScalingGroupName" =? _sp1AutoScalingGroupName- , "Cooldown" =? _sp1Cooldown- , "MinAdjustmentStep" =? _sp1MinAdjustmentStep- , "PolicyARN" =? _sp1PolicyARN- , "PolicyName" =? _sp1PolicyName- , "ScalingAdjustment" =? _sp1ScalingAdjustment- ]--newtype InstanceMonitoring = InstanceMonitoring- { _imEnabled :: Maybe Bool- } deriving (Eq, Ord, Read, Show)---- | 'InstanceMonitoring' constructor.------ The fields accessible through corresponding lenses are:------ * 'imEnabled' @::@ 'Maybe' 'Bool'----instanceMonitoring :: InstanceMonitoring-instanceMonitoring = InstanceMonitoring- { _imEnabled = Nothing- }---- | If 'True', instance monitoring is enabled.-imEnabled :: Lens' InstanceMonitoring (Maybe Bool)-imEnabled = lens _imEnabled (\s a -> s { _imEnabled = a })--instance FromXML InstanceMonitoring where- parseXML x = InstanceMonitoring- <$> x .@? "Enabled"--instance ToQuery InstanceMonitoring where- toQuery InstanceMonitoring{..} = mconcat- [ "Enabled" =? _imEnabled- ]--data ScheduledUpdateGroupAction = ScheduledUpdateGroupAction- { _sugaAutoScalingGroupName :: Maybe Text- , _sugaDesiredCapacity :: Maybe Int- , _sugaEndTime :: Maybe ISO8601- , _sugaMaxSize :: Maybe Int- , _sugaMinSize :: Maybe Int- , _sugaRecurrence :: Maybe Text- , _sugaScheduledActionARN :: Maybe Text- , _sugaScheduledActionName :: Maybe Text- , _sugaStartTime :: Maybe ISO8601- , _sugaTime :: Maybe ISO8601- } deriving (Eq, Ord, Read, Show)---- | 'ScheduledUpdateGroupAction' constructor.------ The fields accessible through corresponding lenses are:------ * 'sugaAutoScalingGroupName' @::@ 'Maybe' 'Text'------ * 'sugaDesiredCapacity' @::@ 'Maybe' 'Int'------ * 'sugaEndTime' @::@ 'Maybe' 'UTCTime'------ * 'sugaMaxSize' @::@ 'Maybe' 'Int'------ * 'sugaMinSize' @::@ 'Maybe' 'Int'------ * 'sugaRecurrence' @::@ 'Maybe' 'Text'------ * 'sugaScheduledActionARN' @::@ 'Maybe' 'Text'------ * 'sugaScheduledActionName' @::@ 'Maybe' 'Text'------ * 'sugaStartTime' @::@ 'Maybe' 'UTCTime'------ * 'sugaTime' @::@ 'Maybe' 'UTCTime'----scheduledUpdateGroupAction :: ScheduledUpdateGroupAction-scheduledUpdateGroupAction = ScheduledUpdateGroupAction- { _sugaAutoScalingGroupName = Nothing- , _sugaScheduledActionName = Nothing- , _sugaScheduledActionARN = Nothing- , _sugaTime = Nothing- , _sugaStartTime = Nothing- , _sugaEndTime = Nothing- , _sugaRecurrence = Nothing- , _sugaMinSize = Nothing- , _sugaMaxSize = Nothing- , _sugaDesiredCapacity = Nothing- }---- | The name of the group.-sugaAutoScalingGroupName :: Lens' ScheduledUpdateGroupAction (Maybe Text)-sugaAutoScalingGroupName =- lens _sugaAutoScalingGroupName- (\s a -> s { _sugaAutoScalingGroupName = a })---- | The number of instances you prefer to maintain in the group.-sugaDesiredCapacity :: Lens' ScheduledUpdateGroupAction (Maybe Int)-sugaDesiredCapacity =- lens _sugaDesiredCapacity (\s a -> s { _sugaDesiredCapacity = a })---- | The time that the action is scheduled to end. This value can be up to one--- month in the future.-sugaEndTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)-sugaEndTime = lens _sugaEndTime (\s a -> s { _sugaEndTime = a }) . mapping _Time---- | The maximum size of the group.-sugaMaxSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)-sugaMaxSize = lens _sugaMaxSize (\s a -> s { _sugaMaxSize = a })---- | The minimum size of the group.-sugaMinSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)-sugaMinSize = lens _sugaMinSize (\s a -> s { _sugaMinSize = a })---- | The regular schedule that an action occurs.-sugaRecurrence :: Lens' ScheduledUpdateGroupAction (Maybe Text)-sugaRecurrence = lens _sugaRecurrence (\s a -> s { _sugaRecurrence = a })---- | The Amazon Resource Name (ARN) of the scheduled action.-sugaScheduledActionARN :: Lens' ScheduledUpdateGroupAction (Maybe Text)-sugaScheduledActionARN =- lens _sugaScheduledActionARN (\s a -> s { _sugaScheduledActionARN = a })---- | The name of the scheduled action.-sugaScheduledActionName :: Lens' ScheduledUpdateGroupAction (Maybe Text)-sugaScheduledActionName =- lens _sugaScheduledActionName (\s a -> s { _sugaScheduledActionName = a })---- | The time that the action is scheduled to begin. This value can be up to one--- month in the future.------ When 'StartTime' and 'EndTime' are specified with 'Recurrence', they form the--- boundaries of when the recurring action will start and stop.-sugaStartTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)-sugaStartTime = lens _sugaStartTime (\s a -> s { _sugaStartTime = a }) . mapping _Time---- | 'Time' is deprecated.------ The time that the action is scheduled to begin. 'Time' is an alias for 'StartTime'.-sugaTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)-sugaTime = lens _sugaTime (\s a -> s { _sugaTime = a }) . mapping _Time--instance FromXML ScheduledUpdateGroupAction where- parseXML x = ScheduledUpdateGroupAction- <$> x .@? "AutoScalingGroupName"- <*> x .@? "DesiredCapacity"- <*> x .@? "EndTime"- <*> x .@? "MaxSize"- <*> x .@? "MinSize"- <*> x .@? "Recurrence"- <*> x .@? "ScheduledActionARN"- <*> x .@? "ScheduledActionName"- <*> x .@? "StartTime"- <*> x .@? "Time"--instance ToQuery ScheduledUpdateGroupAction where- toQuery ScheduledUpdateGroupAction{..} = mconcat- [ "AutoScalingGroupName" =? _sugaAutoScalingGroupName- , "DesiredCapacity" =? _sugaDesiredCapacity- , "EndTime" =? _sugaEndTime- , "MaxSize" =? _sugaMaxSize- , "MinSize" =? _sugaMinSize- , "Recurrence" =? _sugaRecurrence- , "ScheduledActionARN" =? _sugaScheduledActionARN- , "ScheduledActionName" =? _sugaScheduledActionName- , "StartTime" =? _sugaStartTime- , "Time" =? _sugaTime- ]--data ScalingProcessQuery = ScalingProcessQuery- { _spqAutoScalingGroupName :: Text- , _spqScalingProcesses :: List "member" Text- } deriving (Eq, Ord, Read, Show)---- | 'ScalingProcessQuery' constructor.------ The fields accessible through corresponding lenses are:------ * 'spqAutoScalingGroupName' @::@ 'Text'------ * 'spqScalingProcesses' @::@ ['Text']----scalingProcessQuery :: Text -- ^ 'spqAutoScalingGroupName'- -> ScalingProcessQuery-scalingProcessQuery p1 = ScalingProcessQuery- { _spqAutoScalingGroupName = p1- , _spqScalingProcesses = mempty- }---- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.-spqAutoScalingGroupName :: Lens' ScalingProcessQuery Text-spqAutoScalingGroupName =- lens _spqAutoScalingGroupName (\s a -> s { _spqAutoScalingGroupName = a })---- | One or more of the following processes:------ Launch Terminate HealthCheck ReplaceUnhealthy AZRebalance AlarmNotification--- ScheduledActions AddToLoadBalancer-spqScalingProcesses :: Lens' ScalingProcessQuery [Text]-spqScalingProcesses =- lens _spqScalingProcesses (\s a -> s { _spqScalingProcesses = a })- . _List--instance FromXML ScalingProcessQuery where- parseXML x = ScalingProcessQuery- <$> x .@ "AutoScalingGroupName"- <*> x .@? "ScalingProcesses" .!@ mempty--instance ToQuery ScalingProcessQuery where- toQuery ScalingProcessQuery{..} = mconcat- [ "AutoScalingGroupName" =? _spqAutoScalingGroupName- , "ScalingProcesses" =? _spqScalingProcesses- ]--data Ebs = Ebs- { _ebsDeleteOnTermination :: Maybe Bool- , _ebsIops :: Maybe Nat- , _ebsSnapshotId :: Maybe Text- , _ebsVolumeSize :: Maybe Nat- , _ebsVolumeType :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'Ebs' constructor.------ The fields accessible through corresponding lenses are:------ * 'ebsDeleteOnTermination' @::@ 'Maybe' 'Bool'------ * 'ebsIops' @::@ 'Maybe' 'Natural'------ * 'ebsSnapshotId' @::@ 'Maybe' 'Text'------ * 'ebsVolumeSize' @::@ 'Maybe' 'Natural'------ * 'ebsVolumeType' @::@ 'Maybe' 'Text'----ebs :: Ebs-ebs = Ebs- { _ebsSnapshotId = Nothing- , _ebsVolumeSize = Nothing- , _ebsVolumeType = Nothing- , _ebsDeleteOnTermination = Nothing- , _ebsIops = Nothing- }---- | Indicates whether to delete the volume on instance termination.------ Default: 'true'-ebsDeleteOnTermination :: Lens' Ebs (Maybe Bool)-ebsDeleteOnTermination =- lens _ebsDeleteOnTermination (\s a -> s { _ebsDeleteOnTermination = a })---- | For Provisioned IOPS (SSD) volumes only. The number of I/O operations per--- second (IOPS) to provision for the volume.------ Valid values: Range is 100 to 4000.------ Default: None-ebsIops :: Lens' Ebs (Maybe Natural)-ebsIops = lens _ebsIops (\s a -> s { _ebsIops = a }) . mapping _Nat---- | The ID of the snapshot.-ebsSnapshotId :: Lens' Ebs (Maybe Text)-ebsSnapshotId = lens _ebsSnapshotId (\s a -> s { _ebsSnapshotId = a })---- | The volume size, in gigabytes.------ Valid values: If the volume type is 'io1', the minimum size of the volume is--- 10 GiB. If you specify 'SnapshotId' and 'VolumeSize', 'VolumeSize' must be equal to--- or larger than the size of the snapshot.------ Default: If you create a volume from a snapshot and you don't specify a--- volume size, the default is the size of the snapshot.------ Required: Required when the volume type is 'io1'.-ebsVolumeSize :: Lens' Ebs (Maybe Natural)-ebsVolumeSize = lens _ebsVolumeSize (\s a -> s { _ebsVolumeSize = a }) . mapping _Nat---- | The volume type.------ Valid values: 'standard | io1 | gp2'------ Default: 'standard'-ebsVolumeType :: Lens' Ebs (Maybe Text)-ebsVolumeType = lens _ebsVolumeType (\s a -> s { _ebsVolumeType = a })--instance FromXML Ebs where- parseXML x = Ebs- <$> x .@? "DeleteOnTermination"- <*> x .@? "Iops"- <*> x .@? "SnapshotId"- <*> x .@? "VolumeSize"- <*> x .@? "VolumeType"--instance ToQuery Ebs where- toQuery Ebs{..} = mconcat- [ "DeleteOnTermination" =? _ebsDeleteOnTermination- , "Iops" =? _ebsIops- , "SnapshotId" =? _ebsSnapshotId- , "VolumeSize" =? _ebsVolumeSize- , "VolumeType" =? _ebsVolumeType- ]--newtype AdjustmentType = AdjustmentType- { _atAdjustmentType :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)---- | 'AdjustmentType' constructor.------ The fields accessible through corresponding lenses are:------ * 'atAdjustmentType' @::@ 'Maybe' 'Text'----adjustmentType :: AdjustmentType-adjustmentType = AdjustmentType- { _atAdjustmentType = Nothing- }---- | The policy adjustment type. The valid values are 'ChangeInCapacity', 'ExactCapacity', and 'PercentChangeInCapacity'.------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html Dynamic Scaling> in the /Auto Scaling Developer Guide/--- .-atAdjustmentType :: Lens' AdjustmentType (Maybe Text)-atAdjustmentType = lens _atAdjustmentType (\s a -> s { _atAdjustmentType = a })--instance FromXML AdjustmentType where- parseXML x = AdjustmentType- <$> x .@? "AdjustmentType"--instance ToQuery AdjustmentType where- toQuery AdjustmentType{..} = mconcat- [ "AdjustmentType" =? _atAdjustmentType- ]--newtype MetricCollectionType = MetricCollectionType- { _mctMetric :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)---- | 'MetricCollectionType' constructor.------ The fields accessible through corresponding lenses are:------ * 'mctMetric' @::@ 'Maybe' 'Text'----metricCollectionType :: MetricCollectionType-metricCollectionType = MetricCollectionType- { _mctMetric = Nothing- }---- | The metric.-mctMetric :: Lens' MetricCollectionType (Maybe Text)-mctMetric = lens _mctMetric (\s a -> s { _mctMetric = a })--instance FromXML MetricCollectionType where- parseXML x = MetricCollectionType- <$> x .@? "Metric"--instance ToQuery MetricCollectionType where- toQuery MetricCollectionType{..} = mconcat- [ "Metric" =? _mctMetric- ]--data LifecycleHook = LifecycleHook- { _lhAutoScalingGroupName :: Maybe Text- , _lhDefaultResult :: Maybe Text- , _lhGlobalTimeout :: Maybe Int- , _lhHeartbeatTimeout :: Maybe Int- , _lhLifecycleHookName :: Maybe Text- , _lhLifecycleTransition :: Maybe Text- , _lhNotificationMetadata :: Maybe Text- , _lhNotificationTargetARN :: Maybe Text- , _lhRoleARN :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'LifecycleHook' constructor.------ The fields accessible through corresponding lenses are:------ * 'lhAutoScalingGroupName' @::@ 'Maybe' 'Text'------ * 'lhDefaultResult' @::@ 'Maybe' 'Text'------ * 'lhGlobalTimeout' @::@ 'Maybe' 'Int'------ * 'lhHeartbeatTimeout' @::@ 'Maybe' 'Int'------ * 'lhLifecycleHookName' @::@ 'Maybe' 'Text'------ * 'lhLifecycleTransition' @::@ 'Maybe' 'Text'------ * 'lhNotificationMetadata' @::@ 'Maybe' 'Text'------ * 'lhNotificationTargetARN' @::@ 'Maybe' 'Text'------ * 'lhRoleARN' @::@ 'Maybe' 'Text'----lifecycleHook :: LifecycleHook-lifecycleHook = LifecycleHook- { _lhLifecycleHookName = Nothing- , _lhAutoScalingGroupName = Nothing- , _lhLifecycleTransition = Nothing- , _lhNotificationTargetARN = Nothing- , _lhRoleARN = Nothing- , _lhNotificationMetadata = Nothing- , _lhHeartbeatTimeout = Nothing- , _lhGlobalTimeout = Nothing- , _lhDefaultResult = Nothing- }---- | The name of the Auto Scaling group for the lifecycle hook.-lhAutoScalingGroupName :: Lens' LifecycleHook (Maybe Text)-lhAutoScalingGroupName =- lens _lhAutoScalingGroupName (\s a -> s { _lhAutoScalingGroupName = a })---- | Defines the action the Auto Scaling group should take when the lifecycle hook--- timeout elapses or if an unexpected failure occurs. The valid values are 'CONTINUE' and 'ABANDON'. The default value is 'CONTINUE'.-lhDefaultResult :: Lens' LifecycleHook (Maybe Text)-lhDefaultResult = lens _lhDefaultResult (\s a -> s { _lhDefaultResult = a })---- | The maximum length of time an instance can remain in a 'Pending:Wait' or 'Terminating:Wait' state. Currently, this value is set at 48 hours.-lhGlobalTimeout :: Lens' LifecycleHook (Maybe Int)-lhGlobalTimeout = lens _lhGlobalTimeout (\s a -> s { _lhGlobalTimeout = a })---- | The amount of time that can elapse before the lifecycle hook times out. When--- the lifecycle hook times out, Auto Scaling performs the action defined in the 'DefaultResult' parameter. You can prevent the lifecycle hook from timing out--- by calling 'RecordLifecycleActionHeartbeat'.-lhHeartbeatTimeout :: Lens' LifecycleHook (Maybe Int)-lhHeartbeatTimeout =- lens _lhHeartbeatTimeout (\s a -> s { _lhHeartbeatTimeout = a })---- | The name of the lifecycle hook.-lhLifecycleHookName :: Lens' LifecycleHook (Maybe Text)-lhLifecycleHookName =- lens _lhLifecycleHookName (\s a -> s { _lhLifecycleHookName = a })---- | The state of the EC2 instance to which you want to attach the lifecycle hook.--- For a list of lifecycle hook types, see 'DescribeLifecycleHooks'.-lhLifecycleTransition :: Lens' LifecycleHook (Maybe Text)-lhLifecycleTransition =- lens _lhLifecycleTransition (\s a -> s { _lhLifecycleTransition = a })---- | Additional information that you want to include any time Auto Scaling sends a--- message to the notification target.-lhNotificationMetadata :: Lens' LifecycleHook (Maybe Text)-lhNotificationMetadata =- lens _lhNotificationMetadata (\s a -> s { _lhNotificationMetadata = a })---- | The ARN of the notification target that Auto Scaling uses to notify you when--- an instance is in the transition state for the lifecycle hook. This ARN--- target can be either an SQS queue or an SNS topic. The notification message--- sent to the target includes the following:------ Lifecycle action token User account ID Name of the Auto Scaling group Lifecycle hook name--- EC2 instance ID Lifecycle transition Notification metadata-lhNotificationTargetARN :: Lens' LifecycleHook (Maybe Text)-lhNotificationTargetARN =- lens _lhNotificationTargetARN (\s a -> s { _lhNotificationTargetARN = a })---- | The ARN of the IAM role that allows the Auto Scaling group to publish to the--- specified notification target.-lhRoleARN :: Lens' LifecycleHook (Maybe Text)-lhRoleARN = lens _lhRoleARN (\s a -> s { _lhRoleARN = a })--instance FromXML LifecycleHook where- parseXML x = LifecycleHook- <$> x .@? "AutoScalingGroupName"- <*> x .@? "DefaultResult"- <*> x .@? "GlobalTimeout"- <*> x .@? "HeartbeatTimeout"- <*> x .@? "LifecycleHookName"- <*> x .@? "LifecycleTransition"- <*> x .@? "NotificationMetadata"- <*> x .@? "NotificationTargetARN"- <*> x .@? "RoleARN"--instance ToQuery LifecycleHook where- toQuery LifecycleHook{..} = mconcat- [ "AutoScalingGroupName" =? _lhAutoScalingGroupName- , "DefaultResult" =? _lhDefaultResult- , "GlobalTimeout" =? _lhGlobalTimeout- , "HeartbeatTimeout" =? _lhHeartbeatTimeout- , "LifecycleHookName" =? _lhLifecycleHookName- , "LifecycleTransition" =? _lhLifecycleTransition- , "NotificationMetadata" =? _lhNotificationMetadata- , "NotificationTargetARN" =? _lhNotificationTargetARN- , "RoleARN" =? _lhRoleARN- ]--data Activity = Activity- { _aActivityId :: Text- , _aAutoScalingGroupName :: Text- , _aCause :: Text- , _aDescription :: Maybe Text- , _aDetails :: Maybe Text- , _aEndTime :: Maybe ISO8601- , _aProgress :: Maybe Int- , _aStartTime :: ISO8601- , _aStatusCode :: ScalingActivityStatusCode- , _aStatusMessage :: Maybe Text- } deriving (Eq, Read, Show)---- | 'Activity' constructor.------ The fields accessible through corresponding lenses are:------ * 'aActivityId' @::@ 'Text'------ * 'aAutoScalingGroupName' @::@ 'Text'------ * 'aCause' @::@ 'Text'------ * 'aDescription' @::@ 'Maybe' 'Text'------ * 'aDetails' @::@ 'Maybe' 'Text'------ * 'aEndTime' @::@ 'Maybe' 'UTCTime'------ * 'aProgress' @::@ 'Maybe' 'Int'------ * 'aStartTime' @::@ 'UTCTime'------ * 'aStatusCode' @::@ 'ScalingActivityStatusCode'------ * 'aStatusMessage' @::@ 'Maybe' 'Text'----activity :: Text -- ^ 'aActivityId'- -> Text -- ^ 'aAutoScalingGroupName'- -> Text -- ^ 'aCause'- -> UTCTime -- ^ 'aStartTime'- -> ScalingActivityStatusCode -- ^ 'aStatusCode'- -> Activity-activity p1 p2 p3 p4 p5 = Activity- { _aActivityId = p1- , _aAutoScalingGroupName = p2- , _aCause = p3- , _aStartTime = withIso _Time (const id) p4- , _aStatusCode = p5- , _aDescription = Nothing- , _aEndTime = Nothing- , _aStatusMessage = Nothing- , _aProgress = Nothing- , _aDetails = Nothing- }---- | The ID of the activity.-aActivityId :: Lens' Activity Text-aActivityId = lens _aActivityId (\s a -> s { _aActivityId = a })---- | The name of the Auto Scaling group.-aAutoScalingGroupName :: Lens' Activity Text-aAutoScalingGroupName =- lens _aAutoScalingGroupName (\s a -> s { _aAutoScalingGroupName = a })---- | The reason the activity was begun.-aCause :: Lens' Activity Text-aCause = lens _aCause (\s a -> s { _aCause = a })---- | A friendly, more verbose description of the scaling activity.-aDescription :: Lens' Activity (Maybe Text)-aDescription = lens _aDescription (\s a -> s { _aDescription = a })---- | The details about the scaling activity.-aDetails :: Lens' Activity (Maybe Text)-aDetails = lens _aDetails (\s a -> s { _aDetails = a })---- | The end time of this activity.-aEndTime :: Lens' Activity (Maybe UTCTime)-aEndTime = lens _aEndTime (\s a -> s { _aEndTime = a }) . mapping _Time---- | A value between 0 and 100 that indicates the progress of the activity.-aProgress :: Lens' Activity (Maybe Int)-aProgress = lens _aProgress (\s a -> s { _aProgress = a })---- | The start time of this activity.-aStartTime :: Lens' Activity UTCTime-aStartTime = lens _aStartTime (\s a -> s { _aStartTime = a }) . _Time---- | The current status of the activity.-aStatusCode :: Lens' Activity ScalingActivityStatusCode-aStatusCode = lens _aStatusCode (\s a -> s { _aStatusCode = a })---- | A friendly, more verbose description of the activity status.-aStatusMessage :: Lens' Activity (Maybe Text)-aStatusMessage = lens _aStatusMessage (\s a -> s { _aStatusMessage = a })--instance FromXML Activity where- parseXML x = Activity- <$> x .@ "ActivityId"- <*> x .@ "AutoScalingGroupName"- <*> x .@ "Cause"- <*> x .@? "Description"- <*> x .@? "Details"- <*> x .@? "EndTime"- <*> x .@? "Progress"- <*> x .@ "StartTime"- <*> x .@ "StatusCode"- <*> x .@? "StatusMessage"--instance ToQuery Activity where- toQuery Activity{..} = mconcat- [ "ActivityId" =? _aActivityId- , "AutoScalingGroupName" =? _aAutoScalingGroupName- , "Cause" =? _aCause- , "Description" =? _aDescription- , "Details" =? _aDetails- , "EndTime" =? _aEndTime- , "Progress" =? _aProgress- , "StartTime" =? _aStartTime- , "StatusCode" =? _aStatusCode- , "StatusMessage" =? _aStatusMessage- ]--data SuspendedProcess = SuspendedProcess- { _spProcessName :: Maybe Text- , _spSuspensionReason :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'SuspendedProcess' constructor.------ The fields accessible through corresponding lenses are:------ * 'spProcessName' @::@ 'Maybe' 'Text'------ * 'spSuspensionReason' @::@ 'Maybe' 'Text'----suspendedProcess :: SuspendedProcess-suspendedProcess = SuspendedProcess- { _spProcessName = Nothing- , _spSuspensionReason = Nothing- }---- | The name of the suspended process.-spProcessName :: Lens' SuspendedProcess (Maybe Text)-spProcessName = lens _spProcessName (\s a -> s { _spProcessName = a })---- | The reason that the process was suspended.-spSuspensionReason :: Lens' SuspendedProcess (Maybe Text)-spSuspensionReason =- lens _spSuspensionReason (\s a -> s { _spSuspensionReason = a })--instance FromXML SuspendedProcess where- parseXML x = SuspendedProcess- <$> x .@? "ProcessName"- <*> x .@? "SuspensionReason"--instance ToQuery SuspendedProcess where- toQuery SuspendedProcess{..} = mconcat- [ "ProcessName" =? _spProcessName- , "SuspensionReason" =? _spSuspensionReason- ]--newtype MetricGranularityType = MetricGranularityType- { _mgtGranularity :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)---- | 'MetricGranularityType' constructor.------ The fields accessible through corresponding lenses are:------ * 'mgtGranularity' @::@ 'Maybe' 'Text'----metricGranularityType :: MetricGranularityType-metricGranularityType = MetricGranularityType- { _mgtGranularity = Nothing- }---- | The granularity.-mgtGranularity :: Lens' MetricGranularityType (Maybe Text)-mgtGranularity = lens _mgtGranularity (\s a -> s { _mgtGranularity = a })--instance FromXML MetricGranularityType where- parseXML x = MetricGranularityType- <$> x .@? "Granularity"--instance ToQuery MetricGranularityType where- toQuery MetricGranularityType{..} = mconcat- [ "Granularity" =? _mgtGranularity- ]--data Filter = Filter- { _fName :: Text- , _fValues :: List "member" Text- } deriving (Eq, Ord, Read, Show)---- | 'Filter' constructor.------ The fields accessible through corresponding lenses are:------ * 'fName' @::@ 'Text'------ * 'fValues' @::@ ['Text']----filter' :: Text -- ^ 'fName'- -> Filter-filter' p1 = Filter- { _fName = p1- , _fValues = mempty- }---- | The name of the filter. The valid values are: '"auto-scaling-group"', '"key"', '"value"', and '"propagate-at-launch"'.-fName :: Lens' Filter Text-fName = lens _fName (\s a -> s { _fName = a })---- | The value of the filter.-fValues :: Lens' Filter [Text]-fValues = lens _fValues (\s a -> s { _fValues = a }) . _List--instance FromXML Filter where- parseXML x = Filter- <$> x .@ "Name"- <*> x .@? "Values" .!@ mempty--instance ToQuery Filter where- toQuery Filter{..} = mconcat- [ "Name" =? _fName- , "Values" =? _fValues- ]--newtype ProcessType = ProcessType- { _ptProcessName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)---- | 'ProcessType' constructor.------ The fields accessible through corresponding lenses are:------ * 'ptProcessName' @::@ 'Text'----processType :: Text -- ^ 'ptProcessName'- -> ProcessType-processType p1 = ProcessType- { _ptProcessName = p1- }---- | The name of the process.-ptProcessName :: Lens' ProcessType Text-ptProcessName = lens _ptProcessName (\s a -> s { _ptProcessName = a })--instance FromXML ProcessType where- parseXML x = ProcessType- <$> x .@ "ProcessName"--instance ToQuery ProcessType where- toQuery ProcessType{..} = mconcat- [ "ProcessName" =? _ptProcessName- ]--data Alarm = Alarm- { _aAlarmARN :: Maybe Text- , _aAlarmName :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'Alarm' constructor.------ The fields accessible through corresponding lenses are:------ * 'aAlarmARN' @::@ 'Maybe' 'Text'------ * 'aAlarmName' @::@ 'Maybe' 'Text'----alarm :: Alarm-alarm = Alarm- { _aAlarmName = Nothing- , _aAlarmARN = Nothing- }---- | The Amazon Resource Name (ARN) of the alarm.-aAlarmARN :: Lens' Alarm (Maybe Text)-aAlarmARN = lens _aAlarmARN (\s a -> s { _aAlarmARN = a })---- | The name of the alarm.-aAlarmName :: Lens' Alarm (Maybe Text)-aAlarmName = lens _aAlarmName (\s a -> s { _aAlarmName = a })--instance FromXML Alarm where- parseXML x = Alarm- <$> x .@? "AlarmARN"- <*> x .@? "AlarmName"--instance ToQuery Alarm where- toQuery Alarm{..} = mconcat- [ "AlarmARN" =? _aAlarmARN- , "AlarmName" =? _aAlarmName- ]--data EnabledMetric = EnabledMetric- { _emGranularity :: Maybe Text- , _emMetric :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'EnabledMetric' constructor.------ The fields accessible through corresponding lenses are:------ * 'emGranularity' @::@ 'Maybe' 'Text'------ * 'emMetric' @::@ 'Maybe' 'Text'----enabledMetric :: EnabledMetric-enabledMetric = EnabledMetric- { _emMetric = Nothing- , _emGranularity = Nothing- }---- | The granularity of the metric.-emGranularity :: Lens' EnabledMetric (Maybe Text)-emGranularity = lens _emGranularity (\s a -> s { _emGranularity = a })---- | The name of the metric.-emMetric :: Lens' EnabledMetric (Maybe Text)-emMetric = lens _emMetric (\s a -> s { _emMetric = a })--instance FromXML EnabledMetric where- parseXML x = EnabledMetric- <$> x .@? "Granularity"- <*> x .@? "Metric"--instance ToQuery EnabledMetric where- toQuery EnabledMetric{..} = mconcat- [ "Granularity" =? _emGranularity- , "Metric" =? _emMetric- ]--data Instance = Instance- { _iAvailabilityZone :: Text- , _iHealthStatus :: Text- , _iInstanceId :: Text- , _iLaunchConfigurationName :: Text- , _iLifecycleState :: LifecycleState- } deriving (Eq, Read, Show)---- | 'Instance' constructor.------ The fields accessible through corresponding lenses are:------ * 'iAvailabilityZone' @::@ 'Text'------ * 'iHealthStatus' @::@ 'Text'------ * 'iInstanceId' @::@ 'Text'------ * 'iLaunchConfigurationName' @::@ 'Text'------ * 'iLifecycleState' @::@ 'LifecycleState'----instance' :: Text -- ^ 'iInstanceId'- -> Text -- ^ 'iAvailabilityZone'- -> LifecycleState -- ^ 'iLifecycleState'- -> Text -- ^ 'iHealthStatus'- -> Text -- ^ 'iLaunchConfigurationName'- -> Instance-instance' p1 p2 p3 p4 p5 = Instance- { _iInstanceId = p1- , _iAvailabilityZone = p2- , _iLifecycleState = p3- , _iHealthStatus = p4- , _iLaunchConfigurationName = p5- }---- | The Availability Zone associated with this instance.-iAvailabilityZone :: Lens' Instance Text-iAvailabilityZone =- lens _iAvailabilityZone (\s a -> s { _iAvailabilityZone = a })---- | The health status of the instance.-iHealthStatus :: Lens' Instance Text-iHealthStatus = lens _iHealthStatus (\s a -> s { _iHealthStatus = a })---- | The ID of the instance.-iInstanceId :: Lens' Instance Text-iInstanceId = lens _iInstanceId (\s a -> s { _iInstanceId = a })---- | The launch configuration associated with the instance.-iLaunchConfigurationName :: Lens' Instance Text-iLaunchConfigurationName =- lens _iLaunchConfigurationName- (\s a -> s { _iLaunchConfigurationName = a })---- | A description of the current lifecycle state.------ The 'Quarantined' lifecycle state is not used.-------iLifecycleState :: Lens' Instance LifecycleState-iLifecycleState = lens _iLifecycleState (\s a -> s { _iLifecycleState = a })--instance FromXML Instance where- parseXML x = Instance- <$> x .@ "AvailabilityZone"- <*> x .@ "HealthStatus"- <*> x .@ "InstanceId"- <*> x .@ "LaunchConfigurationName"- <*> x .@ "LifecycleState"--instance ToQuery Instance where- toQuery Instance{..} = mconcat- [ "AvailabilityZone" =? _iAvailabilityZone- , "HealthStatus" =? _iHealthStatus- , "InstanceId" =? _iInstanceId- , "LaunchConfigurationName" =? _iLaunchConfigurationName- , "LifecycleState" =? _iLifecycleState- ]--data LifecycleState- = Detached -- ^ Detached- | Detaching -- ^ Detaching- | EnteringStandby -- ^ EnteringStandby- | InService -- ^ InService- | Pending -- ^ Pending- | PendingProceed -- ^ Pending:Proceed- | PendingWait -- ^ Pending:Wait- | Quarantined -- ^ Quarantined- | Standby -- ^ Standby- | Terminated -- ^ Terminated- | Terminating -- ^ Terminating- | TerminatingProceed -- ^ Terminating:Proceed- | TerminatingWait -- ^ Terminating:Wait- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable LifecycleState--instance FromText LifecycleState where- parser = takeLowerText >>= \case- "detached" -> pure Detached- "detaching" -> pure Detaching- "enteringstandby" -> pure EnteringStandby- "inservice" -> pure InService- "pending" -> pure Pending- "pending:proceed" -> pure PendingProceed- "pending:wait" -> pure PendingWait- "quarantined" -> pure Quarantined- "standby" -> pure Standby- "terminated" -> pure Terminated- "terminating" -> pure Terminating- "terminating:proceed" -> pure TerminatingProceed- "terminating:wait" -> pure TerminatingWait- e -> fail $- "Failure parsing LifecycleState from " ++ show e--instance ToText LifecycleState where- toText = \case- Detached -> "Detached"- Detaching -> "Detaching"- EnteringStandby -> "EnteringStandby"- InService -> "InService"- Pending -> "Pending"- PendingProceed -> "Pending:Proceed"- PendingWait -> "Pending:Wait"- Quarantined -> "Quarantined"- Standby -> "Standby"- Terminated -> "Terminated"- Terminating -> "Terminating"- TerminatingProceed -> "Terminating:Proceed"- TerminatingWait -> "Terminating:Wait"--instance ToByteString LifecycleState-instance ToHeader LifecycleState-instance ToQuery LifecycleState--instance FromXML LifecycleState where- parseXML = parseXMLText "LifecycleState"--data AutoScalingInstanceDetails = AutoScalingInstanceDetails- { _asidAutoScalingGroupName :: Text- , _asidAvailabilityZone :: Text- , _asidHealthStatus :: Text- , _asidInstanceId :: Text- , _asidLaunchConfigurationName :: Text- , _asidLifecycleState :: Text- } deriving (Eq, Ord, Read, Show)---- | 'AutoScalingInstanceDetails' constructor.------ The fields accessible through corresponding lenses are:------ * 'asidAutoScalingGroupName' @::@ 'Text'------ * 'asidAvailabilityZone' @::@ 'Text'------ * 'asidHealthStatus' @::@ 'Text'------ * 'asidInstanceId' @::@ 'Text'------ * 'asidLaunchConfigurationName' @::@ 'Text'------ * 'asidLifecycleState' @::@ 'Text'----autoScalingInstanceDetails :: Text -- ^ 'asidInstanceId'- -> Text -- ^ 'asidAutoScalingGroupName'- -> Text -- ^ 'asidAvailabilityZone'- -> Text -- ^ 'asidLifecycleState'- -> Text -- ^ 'asidHealthStatus'- -> Text -- ^ 'asidLaunchConfigurationName'- -> AutoScalingInstanceDetails-autoScalingInstanceDetails p1 p2 p3 p4 p5 p6 = AutoScalingInstanceDetails- { _asidInstanceId = p1- , _asidAutoScalingGroupName = p2- , _asidAvailabilityZone = p3- , _asidLifecycleState = p4- , _asidHealthStatus = p5- , _asidLaunchConfigurationName = p6- }---- | The name of the Auto Scaling group associated with the instance.-asidAutoScalingGroupName :: Lens' AutoScalingInstanceDetails Text-asidAutoScalingGroupName =- lens _asidAutoScalingGroupName- (\s a -> s { _asidAutoScalingGroupName = a })---- | The Availability Zone for the instance.-asidAvailabilityZone :: Lens' AutoScalingInstanceDetails Text-asidAvailabilityZone =- lens _asidAvailabilityZone (\s a -> s { _asidAvailabilityZone = a })---- | The health status of this instance. "Healthy" means that the instance is--- healthy and should remain in service. "Unhealthy" means that the instance is--- unhealthy and Auto Scaling should terminate and replace it.-asidHealthStatus :: Lens' AutoScalingInstanceDetails Text-asidHealthStatus = lens _asidHealthStatus (\s a -> s { _asidHealthStatus = a })---- | The ID of the instance.-asidInstanceId :: Lens' AutoScalingInstanceDetails Text-asidInstanceId = lens _asidInstanceId (\s a -> s { _asidInstanceId = a })---- | The launch configuration associated with the instance.-asidLaunchConfigurationName :: Lens' AutoScalingInstanceDetails Text-asidLaunchConfigurationName =- lens _asidLaunchConfigurationName- (\s a -> s { _asidLaunchConfigurationName = a })---- | The lifecycle state for the instance. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingGroupLifecycle.html#AutoScalingStates Auto ScalingInstance States> in the /Auto Scaling Developer Guide/.-asidLifecycleState :: Lens' AutoScalingInstanceDetails Text-asidLifecycleState =- lens _asidLifecycleState (\s a -> s { _asidLifecycleState = a })--instance FromXML AutoScalingInstanceDetails where- parseXML x = AutoScalingInstanceDetails- <$> x .@ "AutoScalingGroupName"- <*> x .@ "AvailabilityZone"- <*> x .@ "HealthStatus"- <*> x .@ "InstanceId"- <*> x .@ "LaunchConfigurationName"- <*> x .@ "LifecycleState"--instance ToQuery AutoScalingInstanceDetails where- toQuery AutoScalingInstanceDetails{..} = mconcat- [ "AutoScalingGroupName" =? _asidAutoScalingGroupName- , "AvailabilityZone" =? _asidAvailabilityZone- , "HealthStatus" =? _asidHealthStatus- , "InstanceId" =? _asidInstanceId- , "LaunchConfigurationName" =? _asidLaunchConfigurationName- , "LifecycleState" =? _asidLifecycleState- ]--data ScalingActivityStatusCode- = Cancelled -- ^ Cancelled- | Failed -- ^ Failed- | InProgress -- ^ InProgress- | MidLifecycleAction -- ^ MidLifecycleAction- | PreInService -- ^ PreInService- | Successful -- ^ Successful- | WaitingForELBConnectionDraining -- ^ WaitingForELBConnectionDraining- | WaitingForInstanceId -- ^ WaitingForInstanceId- | WaitingForSpotInstanceId -- ^ WaitingForSpotInstanceId- | WaitingForSpotInstanceRequestId -- ^ WaitingForSpotInstanceRequestId- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable ScalingActivityStatusCode--instance FromText ScalingActivityStatusCode where- parser = takeLowerText >>= \case- "cancelled" -> pure Cancelled- "failed" -> pure Failed- "inprogress" -> pure InProgress- "midlifecycleaction" -> pure MidLifecycleAction- "preinservice" -> pure PreInService- "successful" -> pure Successful- "waitingforelbconnectiondraining" -> pure WaitingForELBConnectionDraining- "waitingforinstanceid" -> pure WaitingForInstanceId- "waitingforspotinstanceid" -> pure WaitingForSpotInstanceId- "waitingforspotinstancerequestid" -> pure WaitingForSpotInstanceRequestId- e -> fail $- "Failure parsing ScalingActivityStatusCode from " ++ show e--instance ToText ScalingActivityStatusCode where- toText = \case- Cancelled -> "Cancelled"- Failed -> "Failed"- InProgress -> "InProgress"- MidLifecycleAction -> "MidLifecycleAction"- PreInService -> "PreInService"- Successful -> "Successful"- WaitingForELBConnectionDraining -> "WaitingForELBConnectionDraining"- WaitingForInstanceId -> "WaitingForInstanceId"- WaitingForSpotInstanceId -> "WaitingForSpotInstanceId"- WaitingForSpotInstanceRequestId -> "WaitingForSpotInstanceRequestId"--instance ToByteString ScalingActivityStatusCode-instance ToHeader ScalingActivityStatusCode-instance ToQuery ScalingActivityStatusCode--instance FromXML ScalingActivityStatusCode where- parseXML = parseXMLText "ScalingActivityStatusCode"+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.Types+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.AutoScaling.Types+ (+ -- * Service+ AutoScaling++ -- * Errors+ , _LimitExceededFault+ , _AlreadyExistsFault+ , _ResourceInUseFault+ , _InvalidNextToken+ , _ScalingActivityInProgressFault+ , _ResourceContentionFault++ -- * LifecycleState+ , LifecycleState (..)++ -- * ScalingActivityStatusCode+ , ScalingActivityStatusCode (..)++ -- * Activity+ , Activity+ , activity+ , aProgress+ , aStatusMessage+ , aDetails+ , aEndTime+ , aDescription+ , aActivityId+ , aAutoScalingGroupName+ , aCause+ , aStartTime+ , aStatusCode++ -- * AdjustmentType+ , AdjustmentType+ , adjustmentType+ , atAdjustmentType++ -- * Alarm+ , Alarm+ , alarm+ , aAlarmName+ , aAlarmARN++ -- * AutoScalingGroup+ , AutoScalingGroup+ , autoScalingGroup+ , asgStatus+ , asgTerminationPolicies+ , asgHealthCheckGracePeriod+ , asgVPCZoneIdentifier+ , asgEnabledMetrics+ , asgInstances+ , asgAutoScalingGroupARN+ , asgSuspendedProcesses+ , asgPlacementGroup+ , asgLoadBalancerNames+ , asgTags+ , asgAutoScalingGroupName+ , asgLaunchConfigurationName+ , asgMinSize+ , asgMaxSize+ , asgDesiredCapacity+ , asgDefaultCooldown+ , asgAvailabilityZones+ , asgHealthCheckType+ , asgCreatedTime++ -- * AutoScalingInstanceDetails+ , AutoScalingInstanceDetails+ , autoScalingInstanceDetails+ , asidInstanceId+ , asidAutoScalingGroupName+ , asidAvailabilityZone+ , asidLifecycleState+ , asidHealthStatus+ , asidLaunchConfigurationName++ -- * BlockDeviceMapping+ , BlockDeviceMapping+ , blockDeviceMapping+ , bdmVirtualName+ , bdmNoDevice+ , bdmEBS+ , bdmDeviceName++ -- * EBS+ , EBS+ , ebs+ , ebsDeleteOnTermination+ , ebsVolumeSize+ , ebsIOPS+ , ebsVolumeType+ , ebsSnapshotId++ -- * EnabledMetric+ , EnabledMetric+ , enabledMetric+ , emGranularity+ , emMetric++ -- * Filter+ , Filter+ , filter'+ , fValues+ , fName++ -- * Instance+ , Instance+ , instance'+ , iInstanceId+ , iAvailabilityZone+ , iLifecycleState+ , iHealthStatus+ , iLaunchConfigurationName++ -- * InstanceMonitoring+ , InstanceMonitoring+ , instanceMonitoring+ , imEnabled++ -- * LaunchConfiguration+ , LaunchConfiguration+ , launchConfiguration+ , lcSecurityGroups+ , lcAssociatePublicIPAddress+ , lcInstanceMonitoring+ , lcSpotPrice+ , lcKeyName+ , lcClassicLinkVPCSecurityGroups+ , lcRAMDiskId+ , lcKernelId+ , lcEBSOptimized+ , lcUserData+ , lcClassicLinkVPCId+ , lcIAMInstanceProfile+ , lcLaunchConfigurationARN+ , lcPlacementTenancy+ , lcBlockDeviceMappings+ , lcLaunchConfigurationName+ , lcImageId+ , lcInstanceType+ , lcCreatedTime++ -- * LifecycleHook+ , LifecycleHook+ , lifecycleHook+ , lhDefaultResult+ , lhLifecycleHookName+ , lhHeartbeatTimeout+ , lhAutoScalingGroupName+ , lhNotificationMetadata+ , lhGlobalTimeout+ , lhRoleARN+ , lhLifecycleTransition+ , lhNotificationTargetARN++ -- * LoadBalancerState+ , LoadBalancerState+ , loadBalancerState+ , lbsState+ , lbsLoadBalancerName++ -- * MetricCollectionType+ , MetricCollectionType+ , metricCollectionType+ , mctMetric++ -- * MetricGranularityType+ , MetricGranularityType+ , metricGranularityType+ , mgtGranularity++ -- * NotificationConfiguration+ , NotificationConfiguration+ , notificationConfiguration+ , ncTopicARN+ , ncAutoScalingGroupName+ , ncNotificationType++ -- * ProcessType+ , ProcessType+ , processType+ , ptProcessName++ -- * ScalingPolicy+ , ScalingPolicy+ , scalingPolicy+ , sEstimatedInstanceWarmup+ , sMinAdjustmentStep+ , sPolicyName+ , sPolicyType+ , sStepAdjustments+ , sAdjustmentType+ , sScalingAdjustment+ , sAutoScalingGroupName+ , sCooldown+ , sPolicyARN+ , sAlarms+ , sMetricAggregationType+ , sMinAdjustmentMagnitude++ -- * ScalingProcessQuery+ , ScalingProcessQuery+ , scalingProcessQuery+ , spqScalingProcesses+ , spqAutoScalingGroupName++ -- * ScheduledUpdateGroupAction+ , ScheduledUpdateGroupAction+ , scheduledUpdateGroupAction+ , sugaScheduledActionARN+ , sugaTime+ , sugaStartTime+ , sugaScheduledActionName+ , sugaMaxSize+ , sugaDesiredCapacity+ , sugaRecurrence+ , sugaMinSize+ , sugaEndTime+ , sugaAutoScalingGroupName++ -- * StepAdjustment+ , StepAdjustment+ , stepAdjustment+ , saMetricIntervalLowerBound+ , saMetricIntervalUpperBound+ , saScalingAdjustment++ -- * SuspendedProcess+ , SuspendedProcess+ , suspendedProcess+ , spProcessName+ , spSuspensionReason++ -- * Tag+ , Tag+ , tag+ , tagKey+ , tagResourceId+ , tagResourceType+ , tagPropagateAtLaunch+ , tagValue++ -- * TagDescription+ , TagDescription+ , tagDescription+ , tdResourceId+ , tdResourceType+ , tdKey+ , tdPropagateAtLaunch+ , tdValue+ ) where++import Network.AWS.AutoScaling.Types.Product+import Network.AWS.AutoScaling.Types.Sum+import Network.AWS.Prelude+import Network.AWS.Sign.V4++-- | Version @2011-01-01@ of the Amazon Auto Scaling SDK.+data AutoScaling++instance AWSService AutoScaling where+ type Sg AutoScaling = V4+ service = const svc+ where+ svc =+ Service+ { _svcAbbrev = "AutoScaling"+ , _svcPrefix = "autoscaling"+ , _svcVersion = "2011-01-01"+ , _svcEndpoint = defaultEndpoint svc+ , _svcTimeout = Just 70+ , _svcStatus = statusSuccess+ , _svcError = parseXMLError+ , _svcRetry = retry+ }+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2+ , _retryAttempts = 5+ , _retryCheck = check+ }+ check e+ | has (hasCode "ThrottlingException" . hasStatus 400) e =+ Just "throttling_exception"+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+ | has (hasStatus 503) e = Just "service_unavailable"+ | has (hasStatus 500) e = Just "general_server_error"+ | has (hasStatus 509) e = Just "limit_exceeded"+ | otherwise = Nothing++-- | You have already reached a limit for your Auto Scaling resources (for+-- example, groups, launch configurations, or lifecycle hooks). For more+-- information, see DescribeAccountLimits.+_LimitExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_LimitExceededFault = _ServiceError . hasStatus 400 . hasCode "LimitExceeded"++-- | You already have an Auto Scaling group or launch configuration with this+-- name.+_AlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_AlreadyExistsFault = _ServiceError . hasStatus 400 . hasCode "AlreadyExists"++-- | The Auto Scaling group or launch configuration can\'t be deleted because+-- it is in use.+_ResourceInUseFault :: AsError a => Getting (First ServiceError) a ServiceError+_ResourceInUseFault = _ServiceError . hasStatus 400 . hasCode "ResourceInUse"++-- | The 'NextToken' value is not valid.+_InvalidNextToken :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidNextToken = _ServiceError . hasStatus 400 . hasCode "InvalidNextToken"++-- | The Auto Scaling group can\'t be deleted because there are scaling+-- activities in progress.+_ScalingActivityInProgressFault :: AsError a => Getting (First ServiceError) a ServiceError+_ScalingActivityInProgressFault =+ _ServiceError . hasStatus 400 . hasCode "ScalingActivityInProgress"++-- | You already have a pending update to an Auto Scaling resource (for+-- example, a group, instance, or load balancer).+_ResourceContentionFault :: AsError a => Getting (First ServiceError) a ServiceError+_ResourceContentionFault =+ _ServiceError . hasStatus 500 . hasCode "ResourceContention"
+ gen/Network/AWS/AutoScaling/Types/Product.hs view
@@ -0,0 +1,2040 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.Types.Product+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.AutoScaling.Types.Product where++import Network.AWS.AutoScaling.Types.Sum+import Network.AWS.Prelude++-- | Describes scaling activity, which is a long-running process that+-- represents a change to your Auto Scaling group, such as changing its+-- size or replacing an instance.+--+-- /See:/ 'activity' smart constructor.+data Activity = Activity'+ { _aProgress :: !(Maybe Int)+ , _aStatusMessage :: !(Maybe Text)+ , _aDetails :: !(Maybe Text)+ , _aEndTime :: !(Maybe ISO8601)+ , _aDescription :: !(Maybe Text)+ , _aActivityId :: !Text+ , _aAutoScalingGroupName :: !Text+ , _aCause :: !Text+ , _aStartTime :: !ISO8601+ , _aStatusCode :: !ScalingActivityStatusCode+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Activity' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aProgress'+--+-- * 'aStatusMessage'+--+-- * 'aDetails'+--+-- * 'aEndTime'+--+-- * 'aDescription'+--+-- * 'aActivityId'+--+-- * 'aAutoScalingGroupName'+--+-- * 'aCause'+--+-- * 'aStartTime'+--+-- * 'aStatusCode'+activity+ :: Text -- ^ 'aActivityId'+ -> Text -- ^ 'aAutoScalingGroupName'+ -> Text -- ^ 'aCause'+ -> UTCTime -- ^ 'aStartTime'+ -> ScalingActivityStatusCode -- ^ 'aStatusCode'+ -> Activity+activity pActivityId_ pAutoScalingGroupName_ pCause_ pStartTime_ pStatusCode_ =+ Activity'+ { _aProgress = Nothing+ , _aStatusMessage = Nothing+ , _aDetails = Nothing+ , _aEndTime = Nothing+ , _aDescription = Nothing+ , _aActivityId = pActivityId_+ , _aAutoScalingGroupName = pAutoScalingGroupName_+ , _aCause = pCause_+ , _aStartTime = _Time # pStartTime_+ , _aStatusCode = pStatusCode_+ }++-- | A value between 0 and 100 that indicates the progress of the activity.+aProgress :: Lens' Activity (Maybe Int)+aProgress = lens _aProgress (\ s a -> s{_aProgress = a});++-- | A friendly, more verbose description of the activity status.+aStatusMessage :: Lens' Activity (Maybe Text)+aStatusMessage = lens _aStatusMessage (\ s a -> s{_aStatusMessage = a});++-- | The details about the activity.+aDetails :: Lens' Activity (Maybe Text)+aDetails = lens _aDetails (\ s a -> s{_aDetails = a});++-- | The end time of the activity.+aEndTime :: Lens' Activity (Maybe UTCTime)+aEndTime = lens _aEndTime (\ s a -> s{_aEndTime = a}) . mapping _Time;++-- | A friendly, more verbose description of the activity.+aDescription :: Lens' Activity (Maybe Text)+aDescription = lens _aDescription (\ s a -> s{_aDescription = a});++-- | The ID of the activity.+aActivityId :: Lens' Activity Text+aActivityId = lens _aActivityId (\ s a -> s{_aActivityId = a});++-- | The name of the Auto Scaling group.+aAutoScalingGroupName :: Lens' Activity Text+aAutoScalingGroupName = lens _aAutoScalingGroupName (\ s a -> s{_aAutoScalingGroupName = a});++-- | The reason the activity began.+aCause :: Lens' Activity Text+aCause = lens _aCause (\ s a -> s{_aCause = a});++-- | The start time of the activity.+aStartTime :: Lens' Activity UTCTime+aStartTime = lens _aStartTime (\ s a -> s{_aStartTime = a}) . _Time;++-- | The current status of the activity.+aStatusCode :: Lens' Activity ScalingActivityStatusCode+aStatusCode = lens _aStatusCode (\ s a -> s{_aStatusCode = a});++instance FromXML Activity where+ parseXML x+ = Activity' <$>+ (x .@? "Progress") <*> (x .@? "StatusMessage") <*>+ (x .@? "Details")+ <*> (x .@? "EndTime")+ <*> (x .@? "Description")+ <*> (x .@ "ActivityId")+ <*> (x .@ "AutoScalingGroupName")+ <*> (x .@ "Cause")+ <*> (x .@ "StartTime")+ <*> (x .@ "StatusCode")++-- | Describes a policy adjustment type.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html Dynamic Scaling>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ 'adjustmentType' smart constructor.+newtype AdjustmentType = AdjustmentType'+ { _atAdjustmentType :: Maybe Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdjustmentType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atAdjustmentType'+adjustmentType+ :: AdjustmentType+adjustmentType =+ AdjustmentType'+ { _atAdjustmentType = Nothing+ }++-- | The policy adjustment type. The valid values are 'ChangeInCapacity',+-- 'ExactCapacity', and 'PercentChangeInCapacity'.+atAdjustmentType :: Lens' AdjustmentType (Maybe Text)+atAdjustmentType = lens _atAdjustmentType (\ s a -> s{_atAdjustmentType = a});++instance FromXML AdjustmentType where+ parseXML x+ = AdjustmentType' <$> (x .@? "AdjustmentType")++-- | Describes an alarm.+--+-- /See:/ 'alarm' smart constructor.+data Alarm = Alarm'+ { _aAlarmName :: !(Maybe Text)+ , _aAlarmARN :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Alarm' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aAlarmName'+--+-- * 'aAlarmARN'+alarm+ :: Alarm+alarm =+ Alarm'+ { _aAlarmName = Nothing+ , _aAlarmARN = Nothing+ }++-- | The name of the alarm.+aAlarmName :: Lens' Alarm (Maybe Text)+aAlarmName = lens _aAlarmName (\ s a -> s{_aAlarmName = a});++-- | The Amazon Resource Name (ARN) of the alarm.+aAlarmARN :: Lens' Alarm (Maybe Text)+aAlarmARN = lens _aAlarmARN (\ s a -> s{_aAlarmARN = a});++instance FromXML Alarm where+ parseXML x+ = Alarm' <$>+ (x .@? "AlarmName") <*> (x .@? "AlarmARN")++-- | Describes an Auto Scaling group.+--+-- /See:/ 'autoScalingGroup' smart constructor.+data AutoScalingGroup = AutoScalingGroup'+ { _asgStatus :: !(Maybe Text)+ , _asgTerminationPolicies :: !(Maybe [Text])+ , _asgHealthCheckGracePeriod :: !(Maybe Int)+ , _asgVPCZoneIdentifier :: !(Maybe Text)+ , _asgEnabledMetrics :: !(Maybe [EnabledMetric])+ , _asgInstances :: !(Maybe [Instance])+ , _asgAutoScalingGroupARN :: !(Maybe Text)+ , _asgSuspendedProcesses :: !(Maybe [SuspendedProcess])+ , _asgPlacementGroup :: !(Maybe Text)+ , _asgLoadBalancerNames :: !(Maybe [Text])+ , _asgTags :: !(Maybe [TagDescription])+ , _asgAutoScalingGroupName :: !Text+ , _asgLaunchConfigurationName :: !Text+ , _asgMinSize :: !Int+ , _asgMaxSize :: !Int+ , _asgDesiredCapacity :: !Int+ , _asgDefaultCooldown :: !Int+ , _asgAvailabilityZones :: !(List1 Text)+ , _asgHealthCheckType :: !Text+ , _asgCreatedTime :: !ISO8601+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoScalingGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asgStatus'+--+-- * 'asgTerminationPolicies'+--+-- * 'asgHealthCheckGracePeriod'+--+-- * 'asgVPCZoneIdentifier'+--+-- * 'asgEnabledMetrics'+--+-- * 'asgInstances'+--+-- * 'asgAutoScalingGroupARN'+--+-- * 'asgSuspendedProcesses'+--+-- * 'asgPlacementGroup'+--+-- * 'asgLoadBalancerNames'+--+-- * 'asgTags'+--+-- * 'asgAutoScalingGroupName'+--+-- * 'asgLaunchConfigurationName'+--+-- * 'asgMinSize'+--+-- * 'asgMaxSize'+--+-- * 'asgDesiredCapacity'+--+-- * 'asgDefaultCooldown'+--+-- * 'asgAvailabilityZones'+--+-- * 'asgHealthCheckType'+--+-- * 'asgCreatedTime'+autoScalingGroup+ :: Text -- ^ 'asgAutoScalingGroupName'+ -> Text -- ^ 'asgLaunchConfigurationName'+ -> Int -- ^ 'asgMinSize'+ -> Int -- ^ 'asgMaxSize'+ -> Int -- ^ 'asgDesiredCapacity'+ -> Int -- ^ 'asgDefaultCooldown'+ -> NonEmpty Text -- ^ 'asgAvailabilityZones'+ -> Text -- ^ 'asgHealthCheckType'+ -> UTCTime -- ^ 'asgCreatedTime'+ -> AutoScalingGroup+autoScalingGroup pAutoScalingGroupName_ pLaunchConfigurationName_ pMinSize_ pMaxSize_ pDesiredCapacity_ pDefaultCooldown_ pAvailabilityZones_ pHealthCheckType_ pCreatedTime_ =+ AutoScalingGroup'+ { _asgStatus = Nothing+ , _asgTerminationPolicies = Nothing+ , _asgHealthCheckGracePeriod = Nothing+ , _asgVPCZoneIdentifier = Nothing+ , _asgEnabledMetrics = Nothing+ , _asgInstances = Nothing+ , _asgAutoScalingGroupARN = Nothing+ , _asgSuspendedProcesses = Nothing+ , _asgPlacementGroup = Nothing+ , _asgLoadBalancerNames = Nothing+ , _asgTags = Nothing+ , _asgAutoScalingGroupName = pAutoScalingGroupName_+ , _asgLaunchConfigurationName = pLaunchConfigurationName_+ , _asgMinSize = pMinSize_+ , _asgMaxSize = pMaxSize_+ , _asgDesiredCapacity = pDesiredCapacity_+ , _asgDefaultCooldown = pDefaultCooldown_+ , _asgAvailabilityZones = _List1 # pAvailabilityZones_+ , _asgHealthCheckType = pHealthCheckType_+ , _asgCreatedTime = _Time # pCreatedTime_+ }++-- | The current state of the group when DeleteAutoScalingGroup is in+-- progress.+asgStatus :: Lens' AutoScalingGroup (Maybe Text)+asgStatus = lens _asgStatus (\ s a -> s{_asgStatus = a});++-- | The termination policies for the group.+asgTerminationPolicies :: Lens' AutoScalingGroup [Text]+asgTerminationPolicies = lens _asgTerminationPolicies (\ s a -> s{_asgTerminationPolicies = a}) . _Default . _Coerce;++-- | The amount of time that Auto Scaling waits before checking an+-- instance\'s health status. The grace period begins when an instance+-- comes into service.+asgHealthCheckGracePeriod :: Lens' AutoScalingGroup (Maybe Int)+asgHealthCheckGracePeriod = lens _asgHealthCheckGracePeriod (\ s a -> s{_asgHealthCheckGracePeriod = a});++-- | One or more subnet IDs, if applicable, separated by commas.+--+-- If you specify 'VPCZoneIdentifier' and 'AvailabilityZones', ensure that+-- the Availability Zones of the subnets match the values for+-- 'AvailabilityZones'.+asgVPCZoneIdentifier :: Lens' AutoScalingGroup (Maybe Text)+asgVPCZoneIdentifier = lens _asgVPCZoneIdentifier (\ s a -> s{_asgVPCZoneIdentifier = a});++-- | The metrics enabled for the group.+asgEnabledMetrics :: Lens' AutoScalingGroup [EnabledMetric]+asgEnabledMetrics = lens _asgEnabledMetrics (\ s a -> s{_asgEnabledMetrics = a}) . _Default . _Coerce;++-- | The EC2 instances associated with the group.+asgInstances :: Lens' AutoScalingGroup [Instance]+asgInstances = lens _asgInstances (\ s a -> s{_asgInstances = a}) . _Default . _Coerce;++-- | The Amazon Resource Name (ARN) of the group.+asgAutoScalingGroupARN :: Lens' AutoScalingGroup (Maybe Text)+asgAutoScalingGroupARN = lens _asgAutoScalingGroupARN (\ s a -> s{_asgAutoScalingGroupARN = a});++-- | The suspended processes associated with the group.+asgSuspendedProcesses :: Lens' AutoScalingGroup [SuspendedProcess]+asgSuspendedProcesses = lens _asgSuspendedProcesses (\ s a -> s{_asgSuspendedProcesses = a}) . _Default . _Coerce;++-- | The name of the placement group into which you\'ll launch your+-- instances, if any. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>.+asgPlacementGroup :: Lens' AutoScalingGroup (Maybe Text)+asgPlacementGroup = lens _asgPlacementGroup (\ s a -> s{_asgPlacementGroup = a});++-- | One or more load balancers associated with the group.+asgLoadBalancerNames :: Lens' AutoScalingGroup [Text]+asgLoadBalancerNames = lens _asgLoadBalancerNames (\ s a -> s{_asgLoadBalancerNames = a}) . _Default . _Coerce;++-- | The tags for the group.+asgTags :: Lens' AutoScalingGroup [TagDescription]+asgTags = lens _asgTags (\ s a -> s{_asgTags = a}) . _Default . _Coerce;++-- | The name of the group.+asgAutoScalingGroupName :: Lens' AutoScalingGroup Text+asgAutoScalingGroupName = lens _asgAutoScalingGroupName (\ s a -> s{_asgAutoScalingGroupName = a});++-- | The name of the associated launch configuration.+asgLaunchConfigurationName :: Lens' AutoScalingGroup Text+asgLaunchConfigurationName = lens _asgLaunchConfigurationName (\ s a -> s{_asgLaunchConfigurationName = a});++-- | The minimum size of the group.+asgMinSize :: Lens' AutoScalingGroup Int+asgMinSize = lens _asgMinSize (\ s a -> s{_asgMinSize = a});++-- | The maximum size of the group.+asgMaxSize :: Lens' AutoScalingGroup Int+asgMaxSize = lens _asgMaxSize (\ s a -> s{_asgMaxSize = a});++-- | The desired size of the group.+asgDesiredCapacity :: Lens' AutoScalingGroup Int+asgDesiredCapacity = lens _asgDesiredCapacity (\ s a -> s{_asgDesiredCapacity = a});++-- | The number of seconds after a scaling activity completes before any+-- further scaling activities can start.+asgDefaultCooldown :: Lens' AutoScalingGroup Int+asgDefaultCooldown = lens _asgDefaultCooldown (\ s a -> s{_asgDefaultCooldown = a});++-- | One or more Availability Zones for the group.+asgAvailabilityZones :: Lens' AutoScalingGroup (NonEmpty Text)+asgAvailabilityZones = lens _asgAvailabilityZones (\ s a -> s{_asgAvailabilityZones = a}) . _List1;++-- | The service of interest for the health status check, which can be either+-- 'EC2' for Amazon EC2 or 'ELB' for Elastic Load Balancing.+asgHealthCheckType :: Lens' AutoScalingGroup Text+asgHealthCheckType = lens _asgHealthCheckType (\ s a -> s{_asgHealthCheckType = a});++-- | The date and time the group was created.+asgCreatedTime :: Lens' AutoScalingGroup UTCTime+asgCreatedTime = lens _asgCreatedTime (\ s a -> s{_asgCreatedTime = a}) . _Time;++instance FromXML AutoScalingGroup where+ parseXML x+ = AutoScalingGroup' <$>+ (x .@? "Status") <*>+ (x .@? "TerminationPolicies" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "HealthCheckGracePeriod")+ <*> (x .@? "VPCZoneIdentifier")+ <*>+ (x .@? "EnabledMetrics" .!@ mempty >>=+ may (parseXMLList "member"))+ <*>+ (x .@? "Instances" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "AutoScalingGroupARN")+ <*>+ (x .@? "SuspendedProcesses" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "PlacementGroup")+ <*>+ (x .@? "LoadBalancerNames" .!@ mempty >>=+ may (parseXMLList "member"))+ <*>+ (x .@? "Tags" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@ "AutoScalingGroupName")+ <*> (x .@ "LaunchConfigurationName")+ <*> (x .@ "MinSize")+ <*> (x .@ "MaxSize")+ <*> (x .@ "DesiredCapacity")+ <*> (x .@ "DefaultCooldown")+ <*>+ (x .@? "AvailabilityZones" .!@ mempty >>=+ parseXMLList1 "member")+ <*> (x .@ "HealthCheckType")+ <*> (x .@ "CreatedTime")++-- | Describes an EC2 instance associated with an Auto Scaling group.+--+-- /See:/ 'autoScalingInstanceDetails' smart constructor.+data AutoScalingInstanceDetails = AutoScalingInstanceDetails'+ { _asidInstanceId :: !Text+ , _asidAutoScalingGroupName :: !Text+ , _asidAvailabilityZone :: !Text+ , _asidLifecycleState :: !Text+ , _asidHealthStatus :: !Text+ , _asidLaunchConfigurationName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoScalingInstanceDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asidInstanceId'+--+-- * 'asidAutoScalingGroupName'+--+-- * 'asidAvailabilityZone'+--+-- * 'asidLifecycleState'+--+-- * 'asidHealthStatus'+--+-- * 'asidLaunchConfigurationName'+autoScalingInstanceDetails+ :: Text -- ^ 'asidInstanceId'+ -> Text -- ^ 'asidAutoScalingGroupName'+ -> Text -- ^ 'asidAvailabilityZone'+ -> Text -- ^ 'asidLifecycleState'+ -> Text -- ^ 'asidHealthStatus'+ -> Text -- ^ 'asidLaunchConfigurationName'+ -> AutoScalingInstanceDetails+autoScalingInstanceDetails pInstanceId_ pAutoScalingGroupName_ pAvailabilityZone_ pLifecycleState_ pHealthStatus_ pLaunchConfigurationName_ =+ AutoScalingInstanceDetails'+ { _asidInstanceId = pInstanceId_+ , _asidAutoScalingGroupName = pAutoScalingGroupName_+ , _asidAvailabilityZone = pAvailabilityZone_+ , _asidLifecycleState = pLifecycleState_+ , _asidHealthStatus = pHealthStatus_+ , _asidLaunchConfigurationName = pLaunchConfigurationName_+ }++-- | The ID of the instance.+asidInstanceId :: Lens' AutoScalingInstanceDetails Text+asidInstanceId = lens _asidInstanceId (\ s a -> s{_asidInstanceId = a});++-- | The name of the Auto Scaling group associated with the instance.+asidAutoScalingGroupName :: Lens' AutoScalingInstanceDetails Text+asidAutoScalingGroupName = lens _asidAutoScalingGroupName (\ s a -> s{_asidAutoScalingGroupName = a});++-- | The Availability Zone for the instance.+asidAvailabilityZone :: Lens' AutoScalingInstanceDetails Text+asidAvailabilityZone = lens _asidAvailabilityZone (\ s a -> s{_asidAvailabilityZone = a});++-- | The lifecycle state for the instance. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingGroupLifecycle.html#AutoScalingStates Auto Scaling Instance States>+-- in the /Auto Scaling Developer Guide/.+asidLifecycleState :: Lens' AutoScalingInstanceDetails Text+asidLifecycleState = lens _asidLifecycleState (\ s a -> s{_asidLifecycleState = a});++-- | The health status of this instance. \"Healthy\" means that the instance+-- is healthy and should remain in service. \"Unhealthy\" means that the+-- instance is unhealthy and Auto Scaling should terminate and replace it.+asidHealthStatus :: Lens' AutoScalingInstanceDetails Text+asidHealthStatus = lens _asidHealthStatus (\ s a -> s{_asidHealthStatus = a});++-- | The launch configuration associated with the instance.+asidLaunchConfigurationName :: Lens' AutoScalingInstanceDetails Text+asidLaunchConfigurationName = lens _asidLaunchConfigurationName (\ s a -> s{_asidLaunchConfigurationName = a});++instance FromXML AutoScalingInstanceDetails where+ parseXML x+ = AutoScalingInstanceDetails' <$>+ (x .@ "InstanceId") <*> (x .@ "AutoScalingGroupName")+ <*> (x .@ "AvailabilityZone")+ <*> (x .@ "LifecycleState")+ <*> (x .@ "HealthStatus")+ <*> (x .@ "LaunchConfigurationName")++-- | Describes a block device mapping.+--+-- /See:/ 'blockDeviceMapping' smart constructor.+data BlockDeviceMapping = BlockDeviceMapping'+ { _bdmVirtualName :: !(Maybe Text)+ , _bdmNoDevice :: !(Maybe Bool)+ , _bdmEBS :: !(Maybe EBS)+ , _bdmDeviceName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'BlockDeviceMapping' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bdmVirtualName'+--+-- * 'bdmNoDevice'+--+-- * 'bdmEBS'+--+-- * 'bdmDeviceName'+blockDeviceMapping+ :: Text -- ^ 'bdmDeviceName'+ -> BlockDeviceMapping+blockDeviceMapping pDeviceName_ =+ BlockDeviceMapping'+ { _bdmVirtualName = Nothing+ , _bdmNoDevice = Nothing+ , _bdmEBS = Nothing+ , _bdmDeviceName = pDeviceName_+ }++-- | The name of the virtual device, 'ephemeral0' to 'ephemeral3'.+bdmVirtualName :: Lens' BlockDeviceMapping (Maybe Text)+bdmVirtualName = lens _bdmVirtualName (\ s a -> s{_bdmVirtualName = a});++-- | Suppresses a device mapping.+--+-- If this parameter is true for the root device, the instance might fail+-- the EC2 health check. Auto Scaling launches a replacement instance if+-- the instance fails the health check.+bdmNoDevice :: Lens' BlockDeviceMapping (Maybe Bool)+bdmNoDevice = lens _bdmNoDevice (\ s a -> s{_bdmNoDevice = a});++-- | The information about the Amazon EBS volume.+bdmEBS :: Lens' BlockDeviceMapping (Maybe EBS)+bdmEBS = lens _bdmEBS (\ s a -> s{_bdmEBS = a});++-- | The device name exposed to the EC2 instance (for example, '\/dev\/sdh'+-- or 'xvdh').+bdmDeviceName :: Lens' BlockDeviceMapping Text+bdmDeviceName = lens _bdmDeviceName (\ s a -> s{_bdmDeviceName = a});++instance FromXML BlockDeviceMapping where+ parseXML x+ = BlockDeviceMapping' <$>+ (x .@? "VirtualName") <*> (x .@? "NoDevice") <*>+ (x .@? "Ebs")+ <*> (x .@ "DeviceName")++instance ToQuery BlockDeviceMapping where+ toQuery BlockDeviceMapping'{..}+ = mconcat+ ["VirtualName" =: _bdmVirtualName,+ "NoDevice" =: _bdmNoDevice, "Ebs" =: _bdmEBS,+ "DeviceName" =: _bdmDeviceName]++-- | Describes an Amazon EBS volume.+--+-- /See:/ 'ebs' smart constructor.+data EBS = EBS'+ { _ebsDeleteOnTermination :: !(Maybe Bool)+ , _ebsVolumeSize :: !(Maybe Nat)+ , _ebsIOPS :: !(Maybe Nat)+ , _ebsVolumeType :: !(Maybe Text)+ , _ebsSnapshotId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'EBS' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ebsDeleteOnTermination'+--+-- * 'ebsVolumeSize'+--+-- * 'ebsIOPS'+--+-- * 'ebsVolumeType'+--+-- * 'ebsSnapshotId'+ebs+ :: EBS+ebs =+ EBS'+ { _ebsDeleteOnTermination = Nothing+ , _ebsVolumeSize = Nothing+ , _ebsIOPS = Nothing+ , _ebsVolumeType = Nothing+ , _ebsSnapshotId = Nothing+ }++-- | Indicates whether to delete the volume on instance termination.+--+-- Default: 'true'+ebsDeleteOnTermination :: Lens' EBS (Maybe Bool)+ebsDeleteOnTermination = lens _ebsDeleteOnTermination (\ s a -> s{_ebsDeleteOnTermination = a});++-- | The volume size, in gigabytes.+--+-- Valid values: If the volume type is 'io1', the minimum size of the+-- volume is 10 GiB. If you specify 'SnapshotId' and 'VolumeSize',+-- 'VolumeSize' must be equal to or larger than the size of the snapshot.+--+-- Default: If you create a volume from a snapshot and you don\'t specify a+-- volume size, the default is the size of the snapshot.+--+-- Required: Required when the volume type is 'io1'.+ebsVolumeSize :: Lens' EBS (Maybe Natural)+ebsVolumeSize = lens _ebsVolumeSize (\ s a -> s{_ebsVolumeSize = a}) . mapping _Nat;++-- | For Provisioned IOPS (SSD) volumes only. The number of I\/O operations+-- per second (IOPS) to provision for the volume.+--+-- Valid values: Range is 100 to 4000.+--+-- Default: None+ebsIOPS :: Lens' EBS (Maybe Natural)+ebsIOPS = lens _ebsIOPS (\ s a -> s{_ebsIOPS = a}) . mapping _Nat;++-- | The volume type.+--+-- Valid values: 'standard | io1 | gp2'+--+-- Default: 'standard'+ebsVolumeType :: Lens' EBS (Maybe Text)+ebsVolumeType = lens _ebsVolumeType (\ s a -> s{_ebsVolumeType = a});++-- | The ID of the snapshot.+ebsSnapshotId :: Lens' EBS (Maybe Text)+ebsSnapshotId = lens _ebsSnapshotId (\ s a -> s{_ebsSnapshotId = a});++instance FromXML EBS where+ parseXML x+ = EBS' <$>+ (x .@? "DeleteOnTermination") <*>+ (x .@? "VolumeSize")+ <*> (x .@? "Iops")+ <*> (x .@? "VolumeType")+ <*> (x .@? "SnapshotId")++instance ToQuery EBS where+ toQuery EBS'{..}+ = mconcat+ ["DeleteOnTermination" =: _ebsDeleteOnTermination,+ "VolumeSize" =: _ebsVolumeSize, "Iops" =: _ebsIOPS,+ "VolumeType" =: _ebsVolumeType,+ "SnapshotId" =: _ebsSnapshotId]++-- | Describes an enabled metric.+--+-- /See:/ 'enabledMetric' smart constructor.+data EnabledMetric = EnabledMetric'+ { _emGranularity :: !(Maybe Text)+ , _emMetric :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'EnabledMetric' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'emGranularity'+--+-- * 'emMetric'+enabledMetric+ :: EnabledMetric+enabledMetric =+ EnabledMetric'+ { _emGranularity = Nothing+ , _emMetric = Nothing+ }++-- | The granularity of the metric. The only valid value is '1Minute'.+emGranularity :: Lens' EnabledMetric (Maybe Text)+emGranularity = lens _emGranularity (\ s a -> s{_emGranularity = a});++-- | The name of the metric.+--+-- - 'GroupMinSize'+--+-- - 'GroupMaxSize'+--+-- - 'GroupDesiredCapacity'+--+-- - 'GroupInServiceInstances'+--+-- - 'GroupPendingInstances'+--+-- - 'GroupStandbyInstances'+--+-- - 'GroupTerminatingInstances'+--+-- - 'GroupTotalInstances'+--+emMetric :: Lens' EnabledMetric (Maybe Text)+emMetric = lens _emMetric (\ s a -> s{_emMetric = a});++instance FromXML EnabledMetric where+ parseXML x+ = EnabledMetric' <$>+ (x .@? "Granularity") <*> (x .@? "Metric")++-- | Describes a filter.+--+-- /See:/ 'filter'' smart constructor.+data Filter = Filter'+ { _fValues :: !(Maybe [Text])+ , _fName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Filter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fValues'+--+-- * 'fName'+filter'+ :: Text -- ^ 'fName'+ -> Filter+filter' pName_ =+ Filter'+ { _fValues = Nothing+ , _fName = pName_+ }++-- | The value of the filter.+fValues :: Lens' Filter [Text]+fValues = lens _fValues (\ s a -> s{_fValues = a}) . _Default . _Coerce;++-- | The name of the filter. The valid values are: '\"auto-scaling-group\"',+-- '\"key\"', '\"value\"', and '\"propagate-at-launch\"'.+fName :: Lens' Filter Text+fName = lens _fName (\ s a -> s{_fName = a});++instance ToQuery Filter where+ toQuery Filter'{..}+ = mconcat+ ["Values" =:+ toQuery (toQueryList "member" <$> _fValues),+ "Name" =: _fName]++-- | Describes an EC2 instance.+--+-- /See:/ 'instance'' smart constructor.+data Instance = Instance'+ { _iInstanceId :: !Text+ , _iAvailabilityZone :: !Text+ , _iLifecycleState :: !LifecycleState+ , _iHealthStatus :: !Text+ , _iLaunchConfigurationName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Instance' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'iInstanceId'+--+-- * 'iAvailabilityZone'+--+-- * 'iLifecycleState'+--+-- * 'iHealthStatus'+--+-- * 'iLaunchConfigurationName'+instance'+ :: Text -- ^ 'iInstanceId'+ -> Text -- ^ 'iAvailabilityZone'+ -> LifecycleState -- ^ 'iLifecycleState'+ -> Text -- ^ 'iHealthStatus'+ -> Text -- ^ 'iLaunchConfigurationName'+ -> Instance+instance' pInstanceId_ pAvailabilityZone_ pLifecycleState_ pHealthStatus_ pLaunchConfigurationName_ =+ Instance'+ { _iInstanceId = pInstanceId_+ , _iAvailabilityZone = pAvailabilityZone_+ , _iLifecycleState = pLifecycleState_+ , _iHealthStatus = pHealthStatus_+ , _iLaunchConfigurationName = pLaunchConfigurationName_+ }++-- | The ID of the instance.+iInstanceId :: Lens' Instance Text+iInstanceId = lens _iInstanceId (\ s a -> s{_iInstanceId = a});++-- | The Availability Zone in which the instance is running.+iAvailabilityZone :: Lens' Instance Text+iAvailabilityZone = lens _iAvailabilityZone (\ s a -> s{_iAvailabilityZone = a});++-- | A description of the current lifecycle state. Note that the+-- 'Quarantined' state is not used.+iLifecycleState :: Lens' Instance LifecycleState+iLifecycleState = lens _iLifecycleState (\ s a -> s{_iLifecycleState = a});++-- | The health status of the instance.+iHealthStatus :: Lens' Instance Text+iHealthStatus = lens _iHealthStatus (\ s a -> s{_iHealthStatus = a});++-- | The launch configuration associated with the instance.+iLaunchConfigurationName :: Lens' Instance Text+iLaunchConfigurationName = lens _iLaunchConfigurationName (\ s a -> s{_iLaunchConfigurationName = a});++instance FromXML Instance where+ parseXML x+ = Instance' <$>+ (x .@ "InstanceId") <*> (x .@ "AvailabilityZone") <*>+ (x .@ "LifecycleState")+ <*> (x .@ "HealthStatus")+ <*> (x .@ "LaunchConfigurationName")++-- | Describes whether instance monitoring is enabled.+--+-- /See:/ 'instanceMonitoring' smart constructor.+newtype InstanceMonitoring = InstanceMonitoring'+ { _imEnabled :: Maybe Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'InstanceMonitoring' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'imEnabled'+instanceMonitoring+ :: InstanceMonitoring+instanceMonitoring =+ InstanceMonitoring'+ { _imEnabled = Nothing+ }++-- | If 'True', instance monitoring is enabled.+imEnabled :: Lens' InstanceMonitoring (Maybe Bool)+imEnabled = lens _imEnabled (\ s a -> s{_imEnabled = a});++instance FromXML InstanceMonitoring where+ parseXML x+ = InstanceMonitoring' <$> (x .@? "Enabled")++instance ToQuery InstanceMonitoring where+ toQuery InstanceMonitoring'{..}+ = mconcat ["Enabled" =: _imEnabled]++-- | Describes a launch configuration.+--+-- /See:/ 'launchConfiguration' smart constructor.+data LaunchConfiguration = LaunchConfiguration'+ { _lcSecurityGroups :: !(Maybe [Text])+ , _lcAssociatePublicIPAddress :: !(Maybe Bool)+ , _lcInstanceMonitoring :: !(Maybe InstanceMonitoring)+ , _lcSpotPrice :: !(Maybe Text)+ , _lcKeyName :: !(Maybe Text)+ , _lcClassicLinkVPCSecurityGroups :: !(Maybe [Text])+ , _lcRAMDiskId :: !(Maybe Text)+ , _lcKernelId :: !(Maybe Text)+ , _lcEBSOptimized :: !(Maybe Bool)+ , _lcUserData :: !(Maybe Text)+ , _lcClassicLinkVPCId :: !(Maybe Text)+ , _lcIAMInstanceProfile :: !(Maybe Text)+ , _lcLaunchConfigurationARN :: !(Maybe Text)+ , _lcPlacementTenancy :: !(Maybe Text)+ , _lcBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])+ , _lcLaunchConfigurationName :: !Text+ , _lcImageId :: !Text+ , _lcInstanceType :: !Text+ , _lcCreatedTime :: !ISO8601+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'LaunchConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lcSecurityGroups'+--+-- * 'lcAssociatePublicIPAddress'+--+-- * 'lcInstanceMonitoring'+--+-- * 'lcSpotPrice'+--+-- * 'lcKeyName'+--+-- * 'lcClassicLinkVPCSecurityGroups'+--+-- * 'lcRAMDiskId'+--+-- * 'lcKernelId'+--+-- * 'lcEBSOptimized'+--+-- * 'lcUserData'+--+-- * 'lcClassicLinkVPCId'+--+-- * 'lcIAMInstanceProfile'+--+-- * 'lcLaunchConfigurationARN'+--+-- * 'lcPlacementTenancy'+--+-- * 'lcBlockDeviceMappings'+--+-- * 'lcLaunchConfigurationName'+--+-- * 'lcImageId'+--+-- * 'lcInstanceType'+--+-- * 'lcCreatedTime'+launchConfiguration+ :: Text -- ^ 'lcLaunchConfigurationName'+ -> Text -- ^ 'lcImageId'+ -> Text -- ^ 'lcInstanceType'+ -> UTCTime -- ^ 'lcCreatedTime'+ -> LaunchConfiguration+launchConfiguration pLaunchConfigurationName_ pImageId_ pInstanceType_ pCreatedTime_ =+ LaunchConfiguration'+ { _lcSecurityGroups = Nothing+ , _lcAssociatePublicIPAddress = Nothing+ , _lcInstanceMonitoring = Nothing+ , _lcSpotPrice = Nothing+ , _lcKeyName = Nothing+ , _lcClassicLinkVPCSecurityGroups = Nothing+ , _lcRAMDiskId = Nothing+ , _lcKernelId = Nothing+ , _lcEBSOptimized = Nothing+ , _lcUserData = Nothing+ , _lcClassicLinkVPCId = Nothing+ , _lcIAMInstanceProfile = Nothing+ , _lcLaunchConfigurationARN = Nothing+ , _lcPlacementTenancy = Nothing+ , _lcBlockDeviceMappings = Nothing+ , _lcLaunchConfigurationName = pLaunchConfigurationName_+ , _lcImageId = pImageId_+ , _lcInstanceType = pInstanceType_+ , _lcCreatedTime = _Time # pCreatedTime_+ }++-- | The security groups to associate with the instances.+lcSecurityGroups :: Lens' LaunchConfiguration [Text]+lcSecurityGroups = lens _lcSecurityGroups (\ s a -> s{_lcSecurityGroups = a}) . _Default . _Coerce;++-- | Specifies whether the instances are associated with a public IP address+-- ('true') or not ('false').+lcAssociatePublicIPAddress :: Lens' LaunchConfiguration (Maybe Bool)+lcAssociatePublicIPAddress = lens _lcAssociatePublicIPAddress (\ s a -> s{_lcAssociatePublicIPAddress = a});++-- | Controls whether instances in this group are launched with detailed+-- monitoring.+lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe InstanceMonitoring)+lcInstanceMonitoring = lens _lcInstanceMonitoring (\ s a -> s{_lcInstanceMonitoring = a});++-- | The price to bid when launching Spot Instances.+lcSpotPrice :: Lens' LaunchConfiguration (Maybe Text)+lcSpotPrice = lens _lcSpotPrice (\ s a -> s{_lcSpotPrice = a});++-- | The name of the key pair.+lcKeyName :: Lens' LaunchConfiguration (Maybe Text)+lcKeyName = lens _lcKeyName (\ s a -> s{_lcKeyName = a});++-- | The IDs of one or more security groups for the VPC specified in+-- 'ClassicLinkVPCId'. This parameter is required if 'ClassicLinkVPCId' is+-- specified, and cannot be used otherwise. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink>+-- in the /Amazon Elastic Compute Cloud User Guide/.+lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration [Text]+lcClassicLinkVPCSecurityGroups = lens _lcClassicLinkVPCSecurityGroups (\ s a -> s{_lcClassicLinkVPCSecurityGroups = a}) . _Default . _Coerce;++-- | The ID of the RAM disk associated with the AMI.+lcRAMDiskId :: Lens' LaunchConfiguration (Maybe Text)+lcRAMDiskId = lens _lcRAMDiskId (\ s a -> s{_lcRAMDiskId = a});++-- | The ID of the kernel associated with the AMI.+lcKernelId :: Lens' LaunchConfiguration (Maybe Text)+lcKernelId = lens _lcKernelId (\ s a -> s{_lcKernelId = a});++-- | Controls whether the instance is optimized for EBS I\/O ('true') or not+-- ('false').+lcEBSOptimized :: Lens' LaunchConfiguration (Maybe Bool)+lcEBSOptimized = lens _lcEBSOptimized (\ s a -> s{_lcEBSOptimized = a});++-- | The user data available to the instances.+lcUserData :: Lens' LaunchConfiguration (Maybe Text)+lcUserData = lens _lcUserData (\ s a -> s{_lcUserData = a});++-- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances+-- to. This parameter can only be used if you are launching EC2-Classic+-- instances. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html ClassicLink>+-- in the /Amazon Elastic Compute Cloud User Guide/.+lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe Text)+lcClassicLinkVPCId = lens _lcClassicLinkVPCId (\ s a -> s{_lcClassicLinkVPCId = a});++-- | The name or Amazon Resource Name (ARN) of the instance profile+-- associated with the IAM role for the instance.+lcIAMInstanceProfile :: Lens' LaunchConfiguration (Maybe Text)+lcIAMInstanceProfile = lens _lcIAMInstanceProfile (\ s a -> s{_lcIAMInstanceProfile = a});++-- | The Amazon Resource Name (ARN) of the launch configuration.+lcLaunchConfigurationARN :: Lens' LaunchConfiguration (Maybe Text)+lcLaunchConfigurationARN = lens _lcLaunchConfigurationARN (\ s a -> s{_lcLaunchConfigurationARN = a});++-- | The tenancy of the instance, either 'default' or 'dedicated'. An+-- instance with 'dedicated' tenancy runs in an isolated, single-tenant+-- hardware and can only be launched into a VPC.+lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe Text)+lcPlacementTenancy = lens _lcPlacementTenancy (\ s a -> s{_lcPlacementTenancy = a});++-- | A block device mapping, which specifies the block devices for the+-- instance.+lcBlockDeviceMappings :: Lens' LaunchConfiguration [BlockDeviceMapping]+lcBlockDeviceMappings = lens _lcBlockDeviceMappings (\ s a -> s{_lcBlockDeviceMappings = a}) . _Default . _Coerce;++-- | The name of the launch configuration.+lcLaunchConfigurationName :: Lens' LaunchConfiguration Text+lcLaunchConfigurationName = lens _lcLaunchConfigurationName (\ s a -> s{_lcLaunchConfigurationName = a});++-- | The ID of the Amazon Machine Image (AMI).+lcImageId :: Lens' LaunchConfiguration Text+lcImageId = lens _lcImageId (\ s a -> s{_lcImageId = a});++-- | The instance type for the instances.+lcInstanceType :: Lens' LaunchConfiguration Text+lcInstanceType = lens _lcInstanceType (\ s a -> s{_lcInstanceType = a});++-- | The creation date and time for the launch configuration.+lcCreatedTime :: Lens' LaunchConfiguration UTCTime+lcCreatedTime = lens _lcCreatedTime (\ s a -> s{_lcCreatedTime = a}) . _Time;++instance FromXML LaunchConfiguration where+ parseXML x+ = LaunchConfiguration' <$>+ (x .@? "SecurityGroups" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "AssociatePublicIpAddress")+ <*> (x .@? "InstanceMonitoring")+ <*> (x .@? "SpotPrice")+ <*> (x .@? "KeyName")+ <*>+ (x .@? "ClassicLinkVPCSecurityGroups" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "RamdiskId")+ <*> (x .@? "KernelId")+ <*> (x .@? "EbsOptimized")+ <*> (x .@? "UserData")+ <*> (x .@? "ClassicLinkVPCId")+ <*> (x .@? "IamInstanceProfile")+ <*> (x .@? "LaunchConfigurationARN")+ <*> (x .@? "PlacementTenancy")+ <*>+ (x .@? "BlockDeviceMappings" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@ "LaunchConfigurationName")+ <*> (x .@ "ImageId")+ <*> (x .@ "InstanceType")+ <*> (x .@ "CreatedTime")++-- | Describes a lifecycle hook, which tells Auto Scaling that you want to+-- perform an action when an instance launches or terminates. When you have+-- a lifecycle hook in place, the Auto Scaling group will either:+--+-- - Pause the instance after it launches, but before it is put into+-- service+-- - Pause the instance as it terminates, but before it is fully+-- terminated+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingPendingState.html Auto Scaling Pending State>+-- and+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingTerminatingState.html Auto Scaling Terminating State>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ 'lifecycleHook' smart constructor.+data LifecycleHook = LifecycleHook'+ { _lhDefaultResult :: !(Maybe Text)+ , _lhLifecycleHookName :: !(Maybe Text)+ , _lhHeartbeatTimeout :: !(Maybe Int)+ , _lhAutoScalingGroupName :: !(Maybe Text)+ , _lhNotificationMetadata :: !(Maybe Text)+ , _lhGlobalTimeout :: !(Maybe Int)+ , _lhRoleARN :: !(Maybe Text)+ , _lhLifecycleTransition :: !(Maybe Text)+ , _lhNotificationTargetARN :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'LifecycleHook' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lhDefaultResult'+--+-- * 'lhLifecycleHookName'+--+-- * 'lhHeartbeatTimeout'+--+-- * 'lhAutoScalingGroupName'+--+-- * 'lhNotificationMetadata'+--+-- * 'lhGlobalTimeout'+--+-- * 'lhRoleARN'+--+-- * 'lhLifecycleTransition'+--+-- * 'lhNotificationTargetARN'+lifecycleHook+ :: LifecycleHook+lifecycleHook =+ LifecycleHook'+ { _lhDefaultResult = Nothing+ , _lhLifecycleHookName = Nothing+ , _lhHeartbeatTimeout = Nothing+ , _lhAutoScalingGroupName = Nothing+ , _lhNotificationMetadata = Nothing+ , _lhGlobalTimeout = Nothing+ , _lhRoleARN = Nothing+ , _lhLifecycleTransition = Nothing+ , _lhNotificationTargetARN = Nothing+ }++-- | Defines the action the Auto Scaling group should take when the lifecycle+-- hook timeout elapses or if an unexpected failure occurs. The valid+-- values are 'CONTINUE' and 'ABANDON'. The default value is 'CONTINUE'.+lhDefaultResult :: Lens' LifecycleHook (Maybe Text)+lhDefaultResult = lens _lhDefaultResult (\ s a -> s{_lhDefaultResult = a});++-- | The name of the lifecycle hook.+lhLifecycleHookName :: Lens' LifecycleHook (Maybe Text)+lhLifecycleHookName = lens _lhLifecycleHookName (\ s a -> s{_lhLifecycleHookName = a});++-- | The amount of time that can elapse before the lifecycle hook times out.+-- When the lifecycle hook times out, Auto Scaling performs the action+-- defined in the 'DefaultResult' parameter. You can prevent the lifecycle+-- hook from timing out by calling RecordLifecycleActionHeartbeat.+lhHeartbeatTimeout :: Lens' LifecycleHook (Maybe Int)+lhHeartbeatTimeout = lens _lhHeartbeatTimeout (\ s a -> s{_lhHeartbeatTimeout = a});++-- | The name of the Auto Scaling group for the lifecycle hook.+lhAutoScalingGroupName :: Lens' LifecycleHook (Maybe Text)+lhAutoScalingGroupName = lens _lhAutoScalingGroupName (\ s a -> s{_lhAutoScalingGroupName = a});++-- | Additional information that you want to include any time Auto Scaling+-- sends a message to the notification target.+lhNotificationMetadata :: Lens' LifecycleHook (Maybe Text)+lhNotificationMetadata = lens _lhNotificationMetadata (\ s a -> s{_lhNotificationMetadata = a});++-- | The maximum length of time an instance can remain in a 'Pending:Wait' or+-- 'Terminating:Wait' state. Currently, the maximum is set to 48 hours.+lhGlobalTimeout :: Lens' LifecycleHook (Maybe Int)+lhGlobalTimeout = lens _lhGlobalTimeout (\ s a -> s{_lhGlobalTimeout = a});++-- | The ARN of the IAM role that allows the Auto Scaling group to publish to+-- the specified notification target.+lhRoleARN :: Lens' LifecycleHook (Maybe Text)+lhRoleARN = lens _lhRoleARN (\ s a -> s{_lhRoleARN = a});++-- | The state of the EC2 instance to which you want to attach the lifecycle+-- hook. For a list of lifecycle hook types, see+-- DescribeLifecycleHookTypes.+lhLifecycleTransition :: Lens' LifecycleHook (Maybe Text)+lhLifecycleTransition = lens _lhLifecycleTransition (\ s a -> s{_lhLifecycleTransition = a});++-- | The ARN of the notification target that Auto Scaling uses to notify you+-- when an instance is in the transition state for the lifecycle hook. This+-- ARN target can be either an SQS queue or an SNS topic. The notification+-- message sent to the target includes the following:+--+-- - Lifecycle action token+-- - User account ID+-- - Name of the Auto Scaling group+-- - Lifecycle hook name+-- - EC2 instance ID+-- - Lifecycle transition+-- - Notification metadata+lhNotificationTargetARN :: Lens' LifecycleHook (Maybe Text)+lhNotificationTargetARN = lens _lhNotificationTargetARN (\ s a -> s{_lhNotificationTargetARN = a});++instance FromXML LifecycleHook where+ parseXML x+ = LifecycleHook' <$>+ (x .@? "DefaultResult") <*>+ (x .@? "LifecycleHookName")+ <*> (x .@? "HeartbeatTimeout")+ <*> (x .@? "AutoScalingGroupName")+ <*> (x .@? "NotificationMetadata")+ <*> (x .@? "GlobalTimeout")+ <*> (x .@? "RoleARN")+ <*> (x .@? "LifecycleTransition")+ <*> (x .@? "NotificationTargetARN")++-- | Describes the state of a load balancer.+--+-- /See:/ 'loadBalancerState' smart constructor.+data LoadBalancerState = LoadBalancerState'+ { _lbsState :: !(Maybe Text)+ , _lbsLoadBalancerName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'LoadBalancerState' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lbsState'+--+-- * 'lbsLoadBalancerName'+loadBalancerState+ :: LoadBalancerState+loadBalancerState =+ LoadBalancerState'+ { _lbsState = Nothing+ , _lbsLoadBalancerName = Nothing+ }++-- | The state of the load balancer.+--+-- - 'Adding' - The instances in the group are being registered with the+-- load balancer.+--+-- - 'Added' - All instances in the group are registered with the load+-- balancer.+--+-- - 'InService' - At least one instance in the group passed an ELB+-- health check.+--+-- - 'Removing' - The instances are being deregistered from the load+-- balancer. If connection draining is enabled, Elastic Load Balancing+-- waits for in-flight requests to complete before deregistering the+-- instances.+--+lbsState :: Lens' LoadBalancerState (Maybe Text)+lbsState = lens _lbsState (\ s a -> s{_lbsState = a});++-- | The name of the load balancer.+lbsLoadBalancerName :: Lens' LoadBalancerState (Maybe Text)+lbsLoadBalancerName = lens _lbsLoadBalancerName (\ s a -> s{_lbsLoadBalancerName = a});++instance FromXML LoadBalancerState where+ parseXML x+ = LoadBalancerState' <$>+ (x .@? "State") <*> (x .@? "LoadBalancerName")++-- | Describes a metric.+--+-- /See:/ 'metricCollectionType' smart constructor.+newtype MetricCollectionType = MetricCollectionType'+ { _mctMetric :: Maybe Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'MetricCollectionType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mctMetric'+metricCollectionType+ :: MetricCollectionType+metricCollectionType =+ MetricCollectionType'+ { _mctMetric = Nothing+ }++-- | The metric.+--+-- - 'GroupMinSize'+--+-- - 'GroupMaxSize'+--+-- - 'GroupDesiredCapacity'+--+-- - 'GroupInServiceInstances'+--+-- - 'GroupPendingInstances'+--+-- - 'GroupStandbyInstances'+--+-- - 'GroupTerminatingInstances'+--+-- - 'GroupTotalInstances'+--+mctMetric :: Lens' MetricCollectionType (Maybe Text)+mctMetric = lens _mctMetric (\ s a -> s{_mctMetric = a});++instance FromXML MetricCollectionType where+ parseXML x+ = MetricCollectionType' <$> (x .@? "Metric")++-- | Describes a granularity of a metric.+--+-- /See:/ 'metricGranularityType' smart constructor.+newtype MetricGranularityType = MetricGranularityType'+ { _mgtGranularity :: Maybe Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'MetricGranularityType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mgtGranularity'+metricGranularityType+ :: MetricGranularityType+metricGranularityType =+ MetricGranularityType'+ { _mgtGranularity = Nothing+ }++-- | The granularity. The only valid value is '1Minute'.+mgtGranularity :: Lens' MetricGranularityType (Maybe Text)+mgtGranularity = lens _mgtGranularity (\ s a -> s{_mgtGranularity = a});++instance FromXML MetricGranularityType where+ parseXML x+ = MetricGranularityType' <$> (x .@? "Granularity")++-- | Describes a notification.+--+-- /See:/ 'notificationConfiguration' smart constructor.+data NotificationConfiguration = NotificationConfiguration'+ { _ncTopicARN :: !(Maybe Text)+ , _ncAutoScalingGroupName :: !(Maybe Text)+ , _ncNotificationType :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ncTopicARN'+--+-- * 'ncAutoScalingGroupName'+--+-- * 'ncNotificationType'+notificationConfiguration+ :: NotificationConfiguration+notificationConfiguration =+ NotificationConfiguration'+ { _ncTopicARN = Nothing+ , _ncAutoScalingGroupName = Nothing+ , _ncNotificationType = Nothing+ }++-- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service+-- (SNS) topic.+ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)+ncTopicARN = lens _ncTopicARN (\ s a -> s{_ncTopicARN = a});++-- | The name of the group.+ncAutoScalingGroupName :: Lens' NotificationConfiguration (Maybe Text)+ncAutoScalingGroupName = lens _ncAutoScalingGroupName (\ s a -> s{_ncAutoScalingGroupName = a});++-- | The types of events for an action to start.+--+-- - 'autoscaling:EC2_INSTANCE_LAUNCH'+--+-- - 'autoscaling:EC2_INSTANCE_LAUNCH_ERROR'+--+-- - 'autoscaling:EC2_INSTANCE_TERMINATE'+--+-- - 'autoscaling:EC2_INSTANCE_TERMINATE_ERROR'+--+-- - 'autoscaling:TEST_NOTIFICATION'+--+ncNotificationType :: Lens' NotificationConfiguration (Maybe Text)+ncNotificationType = lens _ncNotificationType (\ s a -> s{_ncNotificationType = a});++instance FromXML NotificationConfiguration where+ parseXML x+ = NotificationConfiguration' <$>+ (x .@? "TopicARN") <*> (x .@? "AutoScalingGroupName")+ <*> (x .@? "NotificationType")++-- | Describes a process type.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/US_SuspendResume.html#process-types Auto Scaling Processes>+-- in the /Auto Scaling Developer Guide/.+--+-- /See:/ 'processType' smart constructor.+newtype ProcessType = ProcessType'+ { _ptProcessName :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProcessType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ptProcessName'+processType+ :: Text -- ^ 'ptProcessName'+ -> ProcessType+processType pProcessName_ =+ ProcessType'+ { _ptProcessName = pProcessName_+ }++-- | The name of the process.+--+-- - 'Launch'+--+-- - 'Terminate'+--+-- - 'AddToLoadBalancer'+--+-- - 'AlarmNotification'+--+-- - 'AZRebalance'+--+-- - 'HealthCheck'+--+-- - 'ReplaceUnhealthy'+--+-- - 'ScheduledActions'+--+ptProcessName :: Lens' ProcessType Text+ptProcessName = lens _ptProcessName (\ s a -> s{_ptProcessName = a});++instance FromXML ProcessType where+ parseXML x = ProcessType' <$> (x .@ "ProcessName")++-- | Describes a scaling policy.+--+-- /See:/ 'scalingPolicy' smart constructor.+data ScalingPolicy = ScalingPolicy'+ { _sEstimatedInstanceWarmup :: !(Maybe Int)+ , _sMinAdjustmentStep :: !(Maybe Int)+ , _sPolicyName :: !(Maybe Text)+ , _sPolicyType :: !(Maybe Text)+ , _sStepAdjustments :: !(Maybe [StepAdjustment])+ , _sAdjustmentType :: !(Maybe Text)+ , _sScalingAdjustment :: !(Maybe Int)+ , _sAutoScalingGroupName :: !(Maybe Text)+ , _sCooldown :: !(Maybe Int)+ , _sPolicyARN :: !(Maybe Text)+ , _sAlarms :: !(Maybe [Alarm])+ , _sMetricAggregationType :: !(Maybe Text)+ , _sMinAdjustmentMagnitude :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScalingPolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sEstimatedInstanceWarmup'+--+-- * 'sMinAdjustmentStep'+--+-- * 'sPolicyName'+--+-- * 'sPolicyType'+--+-- * 'sStepAdjustments'+--+-- * 'sAdjustmentType'+--+-- * 'sScalingAdjustment'+--+-- * 'sAutoScalingGroupName'+--+-- * 'sCooldown'+--+-- * 'sPolicyARN'+--+-- * 'sAlarms'+--+-- * 'sMetricAggregationType'+--+-- * 'sMinAdjustmentMagnitude'+scalingPolicy+ :: ScalingPolicy+scalingPolicy =+ ScalingPolicy'+ { _sEstimatedInstanceWarmup = Nothing+ , _sMinAdjustmentStep = Nothing+ , _sPolicyName = Nothing+ , _sPolicyType = Nothing+ , _sStepAdjustments = Nothing+ , _sAdjustmentType = Nothing+ , _sScalingAdjustment = Nothing+ , _sAutoScalingGroupName = Nothing+ , _sCooldown = Nothing+ , _sPolicyARN = Nothing+ , _sAlarms = Nothing+ , _sMetricAggregationType = Nothing+ , _sMinAdjustmentMagnitude = Nothing+ }++-- | The estimated time, in seconds, until a newly launched instance can+-- contribute to the CloudWatch metrics.+sEstimatedInstanceWarmup :: Lens' ScalingPolicy (Maybe Int)+sEstimatedInstanceWarmup = lens _sEstimatedInstanceWarmup (\ s a -> s{_sEstimatedInstanceWarmup = a});++-- | Available for backward compatibility. Use 'MinAdjustmentMagnitude'+-- instead.+sMinAdjustmentStep :: Lens' ScalingPolicy (Maybe Int)+sMinAdjustmentStep = lens _sMinAdjustmentStep (\ s a -> s{_sMinAdjustmentStep = a});++-- | The name of the scaling policy.+sPolicyName :: Lens' ScalingPolicy (Maybe Text)+sPolicyName = lens _sPolicyName (\ s a -> s{_sPolicyName = a});++-- | The policy type. Valid values are 'SimpleScaling' and 'StepScaling'.+sPolicyType :: Lens' ScalingPolicy (Maybe Text)+sPolicyType = lens _sPolicyType (\ s a -> s{_sPolicyType = a});++-- | A set of adjustments that enable you to scale based on the size of the+-- alarm breach.+sStepAdjustments :: Lens' ScalingPolicy [StepAdjustment]+sStepAdjustments = lens _sStepAdjustments (\ s a -> s{_sStepAdjustments = a}) . _Default . _Coerce;++-- | The adjustment type, which specifies how 'ScalingAdjustment' is+-- interpreted. Valid values are 'ChangeInCapacity', 'ExactCapacity', and+-- 'PercentChangeInCapacity'.+sAdjustmentType :: Lens' ScalingPolicy (Maybe Text)+sAdjustmentType = lens _sAdjustmentType (\ s a -> s{_sAdjustmentType = a});++-- | The amount by which to scale, based on the specified adjustment type. A+-- positive value adds to the current capacity while a negative number+-- removes from the current capacity.+sScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)+sScalingAdjustment = lens _sScalingAdjustment (\ s a -> s{_sScalingAdjustment = a});++-- | The name of the Auto Scaling group associated with this scaling policy.+sAutoScalingGroupName :: Lens' ScalingPolicy (Maybe Text)+sAutoScalingGroupName = lens _sAutoScalingGroupName (\ s a -> s{_sAutoScalingGroupName = a});++-- | The amount of time, in seconds, after a scaling activity completes+-- before any further trigger-related scaling activities can start.+sCooldown :: Lens' ScalingPolicy (Maybe Int)+sCooldown = lens _sCooldown (\ s a -> s{_sCooldown = a});++-- | The Amazon Resource Name (ARN) of the policy.+sPolicyARN :: Lens' ScalingPolicy (Maybe Text)+sPolicyARN = lens _sPolicyARN (\ s a -> s{_sPolicyARN = a});++-- | The CloudWatch alarms related to the policy.+sAlarms :: Lens' ScalingPolicy [Alarm]+sAlarms = lens _sAlarms (\ s a -> s{_sAlarms = a}) . _Default . _Coerce;++-- | The aggregation type for the CloudWatch metrics. Valid values are+-- 'Minimum', 'Maximum', and 'Average'.+sMetricAggregationType :: Lens' ScalingPolicy (Maybe Text)+sMetricAggregationType = lens _sMetricAggregationType (\ s a -> s{_sMetricAggregationType = a});++-- | The minimum number of instances to scale. If the value of+-- 'AdjustmentType' is 'PercentChangeInCapacity', the scaling policy+-- changes the 'DesiredCapacity' of the Auto Scaling group by at least this+-- many instances. Otherwise, the error is 'ValidationError'.+sMinAdjustmentMagnitude :: Lens' ScalingPolicy (Maybe Int)+sMinAdjustmentMagnitude = lens _sMinAdjustmentMagnitude (\ s a -> s{_sMinAdjustmentMagnitude = a});++instance FromXML ScalingPolicy where+ parseXML x+ = ScalingPolicy' <$>+ (x .@? "EstimatedInstanceWarmup") <*>+ (x .@? "MinAdjustmentStep")+ <*> (x .@? "PolicyName")+ <*> (x .@? "PolicyType")+ <*>+ (x .@? "StepAdjustments" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "AdjustmentType")+ <*> (x .@? "ScalingAdjustment")+ <*> (x .@? "AutoScalingGroupName")+ <*> (x .@? "Cooldown")+ <*> (x .@? "PolicyARN")+ <*>+ (x .@? "Alarms" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "MetricAggregationType")+ <*> (x .@? "MinAdjustmentMagnitude")++-- | /See:/ 'scalingProcessQuery' smart constructor.+data ScalingProcessQuery = ScalingProcessQuery'+ { _spqScalingProcesses :: !(Maybe [Text])+ , _spqAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScalingProcessQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spqScalingProcesses'+--+-- * 'spqAutoScalingGroupName'+scalingProcessQuery+ :: Text -- ^ 'spqAutoScalingGroupName'+ -> ScalingProcessQuery+scalingProcessQuery pAutoScalingGroupName_ =+ ScalingProcessQuery'+ { _spqScalingProcesses = Nothing+ , _spqAutoScalingGroupName = pAutoScalingGroupName_+ }++-- | One or more of the following processes:+--+-- - 'Launch'+--+-- - 'Terminate'+--+-- - 'HealthCheck'+--+-- - 'ReplaceUnhealthy'+--+-- - 'AZRebalance'+--+-- - 'AlarmNotification'+--+-- - 'ScheduledActions'+--+-- - 'AddToLoadBalancer'+--+spqScalingProcesses :: Lens' ScalingProcessQuery [Text]+spqScalingProcesses = lens _spqScalingProcesses (\ s a -> s{_spqScalingProcesses = a}) . _Default . _Coerce;++-- | The name or Amazon Resource Name (ARN) of the Auto Scaling group.+spqAutoScalingGroupName :: Lens' ScalingProcessQuery Text+spqAutoScalingGroupName = lens _spqAutoScalingGroupName (\ s a -> s{_spqAutoScalingGroupName = a});++instance ToQuery ScalingProcessQuery where+ toQuery ScalingProcessQuery'{..}+ = mconcat+ ["ScalingProcesses" =:+ toQuery+ (toQueryList "member" <$> _spqScalingProcesses),+ "AutoScalingGroupName" =: _spqAutoScalingGroupName]++-- | Describes a scheduled update to an Auto Scaling group.+--+-- /See:/ 'scheduledUpdateGroupAction' smart constructor.+data ScheduledUpdateGroupAction = ScheduledUpdateGroupAction'+ { _sugaScheduledActionARN :: !(Maybe Text)+ , _sugaTime :: !(Maybe ISO8601)+ , _sugaStartTime :: !(Maybe ISO8601)+ , _sugaScheduledActionName :: !(Maybe Text)+ , _sugaMaxSize :: !(Maybe Int)+ , _sugaDesiredCapacity :: !(Maybe Int)+ , _sugaRecurrence :: !(Maybe Text)+ , _sugaMinSize :: !(Maybe Int)+ , _sugaEndTime :: !(Maybe ISO8601)+ , _sugaAutoScalingGroupName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScheduledUpdateGroupAction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sugaScheduledActionARN'+--+-- * 'sugaTime'+--+-- * 'sugaStartTime'+--+-- * 'sugaScheduledActionName'+--+-- * 'sugaMaxSize'+--+-- * 'sugaDesiredCapacity'+--+-- * 'sugaRecurrence'+--+-- * 'sugaMinSize'+--+-- * 'sugaEndTime'+--+-- * 'sugaAutoScalingGroupName'+scheduledUpdateGroupAction+ :: ScheduledUpdateGroupAction+scheduledUpdateGroupAction =+ ScheduledUpdateGroupAction'+ { _sugaScheduledActionARN = Nothing+ , _sugaTime = Nothing+ , _sugaStartTime = Nothing+ , _sugaScheduledActionName = Nothing+ , _sugaMaxSize = Nothing+ , _sugaDesiredCapacity = Nothing+ , _sugaRecurrence = Nothing+ , _sugaMinSize = Nothing+ , _sugaEndTime = Nothing+ , _sugaAutoScalingGroupName = Nothing+ }++-- | The Amazon Resource Name (ARN) of the scheduled action.+sugaScheduledActionARN :: Lens' ScheduledUpdateGroupAction (Maybe Text)+sugaScheduledActionARN = lens _sugaScheduledActionARN (\ s a -> s{_sugaScheduledActionARN = a});++-- | This parameter is deprecated; use 'StartTime' instead.+sugaTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)+sugaTime = lens _sugaTime (\ s a -> s{_sugaTime = a}) . mapping _Time;++-- | The date and time that the action is scheduled to begin. This date and+-- time can be up to one month in the future.+--+-- When 'StartTime' and 'EndTime' are specified with 'Recurrence', they+-- form the boundaries of when the recurring action will start and stop.+sugaStartTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)+sugaStartTime = lens _sugaStartTime (\ s a -> s{_sugaStartTime = a}) . mapping _Time;++-- | The name of the scheduled action.+sugaScheduledActionName :: Lens' ScheduledUpdateGroupAction (Maybe Text)+sugaScheduledActionName = lens _sugaScheduledActionName (\ s a -> s{_sugaScheduledActionName = a});++-- | The maximum size of the group.+sugaMaxSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)+sugaMaxSize = lens _sugaMaxSize (\ s a -> s{_sugaMaxSize = a});++-- | The number of instances you prefer to maintain in the group.+sugaDesiredCapacity :: Lens' ScheduledUpdateGroupAction (Maybe Int)+sugaDesiredCapacity = lens _sugaDesiredCapacity (\ s a -> s{_sugaDesiredCapacity = a});++-- | The recurring schedule for the action.+sugaRecurrence :: Lens' ScheduledUpdateGroupAction (Maybe Text)+sugaRecurrence = lens _sugaRecurrence (\ s a -> s{_sugaRecurrence = a});++-- | The minimum size of the group.+sugaMinSize :: Lens' ScheduledUpdateGroupAction (Maybe Int)+sugaMinSize = lens _sugaMinSize (\ s a -> s{_sugaMinSize = a});++-- | The date and time that the action is scheduled to end. This date and+-- time can be up to one month in the future.+sugaEndTime :: Lens' ScheduledUpdateGroupAction (Maybe UTCTime)+sugaEndTime = lens _sugaEndTime (\ s a -> s{_sugaEndTime = a}) . mapping _Time;++-- | The name of the group.+sugaAutoScalingGroupName :: Lens' ScheduledUpdateGroupAction (Maybe Text)+sugaAutoScalingGroupName = lens _sugaAutoScalingGroupName (\ s a -> s{_sugaAutoScalingGroupName = a});++instance FromXML ScheduledUpdateGroupAction where+ parseXML x+ = ScheduledUpdateGroupAction' <$>+ (x .@? "ScheduledActionARN") <*> (x .@? "Time") <*>+ (x .@? "StartTime")+ <*> (x .@? "ScheduledActionName")+ <*> (x .@? "MaxSize")+ <*> (x .@? "DesiredCapacity")+ <*> (x .@? "Recurrence")+ <*> (x .@? "MinSize")+ <*> (x .@? "EndTime")+ <*> (x .@? "AutoScalingGroupName")++-- | Describes an adjustment based on the difference between the value of the+-- aggregated CloudWatch metric and the breach threshold that you\'ve+-- defined for the alarm.+--+-- For the following examples, suppose that you have an alarm with a breach+-- threshold of 50:+--+-- - If you want the adjustment to be triggered when the metric is+-- greater than or equal to 50 and less than 60, specify a lower bound+-- of 0 and an upper bound of 10.+--+-- - If you want the adjustment to be triggered when the metric is+-- greater than 40 and less than or equal to 50, specify a lower bound+-- of -10 and an upper bound of 0.+--+-- There are a few rules for the step adjustments for your step policy:+--+-- - The ranges of your step adjustments can\'t overlap or have a gap.+--+-- - At most one step adjustment can have a null lower bound. If one step+-- adjustment has a negative lower bound, then there must be a step+-- adjustment with a null lower bound.+--+-- - At most one step adjustment can have a null upper bound. If one step+-- adjustment has a positive upper bound, then there must be a step+-- adjustment with a null upper bound.+--+-- - The upper and lower bound can\'t be null in the same step+-- adjustment.+--+--+-- /See:/ 'stepAdjustment' smart constructor.+data StepAdjustment = StepAdjustment'+ { _saMetricIntervalLowerBound :: !(Maybe Double)+ , _saMetricIntervalUpperBound :: !(Maybe Double)+ , _saScalingAdjustment :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'StepAdjustment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'saMetricIntervalLowerBound'+--+-- * 'saMetricIntervalUpperBound'+--+-- * 'saScalingAdjustment'+stepAdjustment+ :: Int -- ^ 'saScalingAdjustment'+ -> StepAdjustment+stepAdjustment pScalingAdjustment_ =+ StepAdjustment'+ { _saMetricIntervalLowerBound = Nothing+ , _saMetricIntervalUpperBound = Nothing+ , _saScalingAdjustment = pScalingAdjustment_+ }++-- | The lower bound for the difference between the alarm threshold and the+-- CloudWatch metric. If the metric value is above the breach threshold,+-- the lower bound is inclusive (the metric must be greater than or equal+-- to the threshold plus the lower bound). Otherwise, it is exclusive (the+-- metric must be greater than the threshold plus the lower bound). A null+-- value indicates negative infinity.+saMetricIntervalLowerBound :: Lens' StepAdjustment (Maybe Double)+saMetricIntervalLowerBound = lens _saMetricIntervalLowerBound (\ s a -> s{_saMetricIntervalLowerBound = a});++-- | The upper bound for the difference between the alarm threshold and the+-- CloudWatch metric. If the metric value is above the breach threshold,+-- the upper bound is exclusive (the metric must be less than the threshold+-- plus the upper bound). Otherwise, it is inclusive (the metric must be+-- less than or equal to the threshold plus the upper bound). A null value+-- indicates positive infinity.+--+-- The upper bound must be greater than the lower bound.+saMetricIntervalUpperBound :: Lens' StepAdjustment (Maybe Double)+saMetricIntervalUpperBound = lens _saMetricIntervalUpperBound (\ s a -> s{_saMetricIntervalUpperBound = a});++-- | The amount by which to scale, based on the specified adjustment type. A+-- positive value adds to the current capacity while a negative number+-- removes from the current capacity.+saScalingAdjustment :: Lens' StepAdjustment Int+saScalingAdjustment = lens _saScalingAdjustment (\ s a -> s{_saScalingAdjustment = a});++instance FromXML StepAdjustment where+ parseXML x+ = StepAdjustment' <$>+ (x .@? "MetricIntervalLowerBound") <*>+ (x .@? "MetricIntervalUpperBound")+ <*> (x .@ "ScalingAdjustment")++instance ToQuery StepAdjustment where+ toQuery StepAdjustment'{..}+ = mconcat+ ["MetricIntervalLowerBound" =:+ _saMetricIntervalLowerBound,+ "MetricIntervalUpperBound" =:+ _saMetricIntervalUpperBound,+ "ScalingAdjustment" =: _saScalingAdjustment]++-- | Describes an Auto Scaling process that has been suspended. For more+-- information, see ProcessType.+--+-- /See:/ 'suspendedProcess' smart constructor.+data SuspendedProcess = SuspendedProcess'+ { _spProcessName :: !(Maybe Text)+ , _spSuspensionReason :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SuspendedProcess' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spProcessName'+--+-- * 'spSuspensionReason'+suspendedProcess+ :: SuspendedProcess+suspendedProcess =+ SuspendedProcess'+ { _spProcessName = Nothing+ , _spSuspensionReason = Nothing+ }++-- | The name of the suspended process.+spProcessName :: Lens' SuspendedProcess (Maybe Text)+spProcessName = lens _spProcessName (\ s a -> s{_spProcessName = a});++-- | The reason that the process was suspended.+spSuspensionReason :: Lens' SuspendedProcess (Maybe Text)+spSuspensionReason = lens _spSuspensionReason (\ s a -> s{_spSuspensionReason = a});++instance FromXML SuspendedProcess where+ parseXML x+ = SuspendedProcess' <$>+ (x .@? "ProcessName") <*> (x .@? "SuspensionReason")++-- | Describes a tag for an Auto Scaling group.+--+-- /See:/ 'tag' smart constructor.+data Tag = Tag'+ { _tagKey :: !Text+ , _tagResourceId :: !Text+ , _tagResourceType :: !Text+ , _tagPropagateAtLaunch :: !Bool+ , _tagValue :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Tag' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tagKey'+--+-- * 'tagResourceId'+--+-- * 'tagResourceType'+--+-- * 'tagPropagateAtLaunch'+--+-- * 'tagValue'+tag+ :: Text -- ^ 'tagKey'+ -> Text -- ^ 'tagResourceId'+ -> Text -- ^ 'tagResourceType'+ -> Bool -- ^ 'tagPropagateAtLaunch'+ -> Text -- ^ 'tagValue'+ -> Tag+tag pKey_ pResourceId_ pResourceType_ pPropagateAtLaunch_ pValue_ =+ Tag'+ { _tagKey = pKey_+ , _tagResourceId = pResourceId_+ , _tagResourceType = pResourceType_+ , _tagPropagateAtLaunch = pPropagateAtLaunch_+ , _tagValue = pValue_+ }++-- | The tag key.+tagKey :: Lens' Tag Text+tagKey = lens _tagKey (\ s a -> s{_tagKey = a});++-- | The name of the group.+tagResourceId :: Lens' Tag Text+tagResourceId = lens _tagResourceId (\ s a -> s{_tagResourceId = a});++-- | The type of resource. The only supported value is 'auto-scaling-group'.+tagResourceType :: Lens' Tag Text+tagResourceType = lens _tagResourceType (\ s a -> s{_tagResourceType = a});++-- | Determines whether the tag is added to new instances as they are+-- launched in the group.+tagPropagateAtLaunch :: Lens' Tag Bool+tagPropagateAtLaunch = lens _tagPropagateAtLaunch (\ s a -> s{_tagPropagateAtLaunch = a});++-- | The tag value.+tagValue :: Lens' Tag Text+tagValue = lens _tagValue (\ s a -> s{_tagValue = a});++instance ToQuery Tag where+ toQuery Tag'{..}+ = mconcat+ ["Key" =: _tagKey, "ResourceId" =: _tagResourceId,+ "ResourceType" =: _tagResourceType,+ "PropagateAtLaunch" =: _tagPropagateAtLaunch,+ "Value" =: _tagValue]++-- | Describes a tag for an Auto Scaling group.+--+-- /See:/ 'tagDescription' smart constructor.+data TagDescription = TagDescription'+ { _tdResourceId :: !Text+ , _tdResourceType :: !Text+ , _tdKey :: !Text+ , _tdPropagateAtLaunch :: !Bool+ , _tdValue :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TagDescription' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdResourceId'+--+-- * 'tdResourceType'+--+-- * 'tdKey'+--+-- * 'tdPropagateAtLaunch'+--+-- * 'tdValue'+tagDescription+ :: Text -- ^ 'tdResourceId'+ -> Text -- ^ 'tdResourceType'+ -> Text -- ^ 'tdKey'+ -> Bool -- ^ 'tdPropagateAtLaunch'+ -> Text -- ^ 'tdValue'+ -> TagDescription+tagDescription pResourceId_ pResourceType_ pKey_ pPropagateAtLaunch_ pValue_ =+ TagDescription'+ { _tdResourceId = pResourceId_+ , _tdResourceType = pResourceType_+ , _tdKey = pKey_+ , _tdPropagateAtLaunch = pPropagateAtLaunch_+ , _tdValue = pValue_+ }++-- | The name of the group.+tdResourceId :: Lens' TagDescription Text+tdResourceId = lens _tdResourceId (\ s a -> s{_tdResourceId = a});++-- | The type of resource. The only supported value is 'auto-scaling-group'.+tdResourceType :: Lens' TagDescription Text+tdResourceType = lens _tdResourceType (\ s a -> s{_tdResourceType = a});++-- | The tag key.+tdKey :: Lens' TagDescription Text+tdKey = lens _tdKey (\ s a -> s{_tdKey = a});++-- | Determines whether the tag is added to new instances as they are+-- launched in the group.+tdPropagateAtLaunch :: Lens' TagDescription Bool+tdPropagateAtLaunch = lens _tdPropagateAtLaunch (\ s a -> s{_tdPropagateAtLaunch = a});++-- | The tag value.+tdValue :: Lens' TagDescription Text+tdValue = lens _tdValue (\ s a -> s{_tdValue = a});++instance FromXML TagDescription where+ parseXML x+ = TagDescription' <$>+ (x .@ "ResourceId") <*> (x .@ "ResourceType") <*>+ (x .@ "Key")+ <*> (x .@ "PropagateAtLaunch")+ <*> (x .@ "Value")
+ gen/Network/AWS/AutoScaling/Types/Sum.hs view
@@ -0,0 +1,130 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.Types.Sum+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.AutoScaling.Types.Sum where++import Network.AWS.Prelude++data LifecycleState+ = Detached+ | Detaching+ | EnteringStandby+ | InService+ | Pending+ | PendingProceed+ | PendingWait+ | Quarantined+ | Standby+ | Terminated+ | Terminating+ | TerminatingProceed+ | TerminatingWait+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText LifecycleState where+ parser = takeLowerText >>= \case+ "detached" -> pure Detached+ "detaching" -> pure Detaching+ "enteringstandby" -> pure EnteringStandby+ "inservice" -> pure InService+ "pending" -> pure Pending+ "pending:proceed" -> pure PendingProceed+ "pending:wait" -> pure PendingWait+ "quarantined" -> pure Quarantined+ "standby" -> pure Standby+ "terminated" -> pure Terminated+ "terminating" -> pure Terminating+ "terminating:proceed" -> pure TerminatingProceed+ "terminating:wait" -> pure TerminatingWait+ e -> fromTextError $ "Failure parsing LifecycleState from value: '" <> e+ <> "'. Accepted values: detached, detaching, enteringstandby, inservice, pending, pending:proceed, pending:wait, quarantined, standby, terminated, terminating, terminating:proceed, terminating:wait"++instance ToText LifecycleState where+ toText = \case+ Detached -> "detached"+ Detaching -> "detaching"+ EnteringStandby -> "enteringstandby"+ InService -> "inservice"+ Pending -> "pending"+ PendingProceed -> "pending:proceed"+ PendingWait -> "pending:wait"+ Quarantined -> "quarantined"+ Standby -> "standby"+ Terminated -> "terminated"+ Terminating -> "terminating"+ TerminatingProceed -> "terminating:proceed"+ TerminatingWait -> "terminating:wait"++instance Hashable LifecycleState+instance ToByteString LifecycleState+instance ToQuery LifecycleState+instance ToHeader LifecycleState++instance FromXML LifecycleState where+ parseXML = parseXMLText "LifecycleState"++data ScalingActivityStatusCode+ = Cancelled+ | Failed+ | InProgress+ | MidLifecycleAction+ | PreInService+ | Successful+ | WaitingForELBConnectionDraining+ | WaitingForInstanceId+ | WaitingForInstanceWarmup+ | WaitingForSpotInstanceId+ | WaitingForSpotInstanceRequestId+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText ScalingActivityStatusCode where+ parser = takeLowerText >>= \case+ "cancelled" -> pure Cancelled+ "failed" -> pure Failed+ "inprogress" -> pure InProgress+ "midlifecycleaction" -> pure MidLifecycleAction+ "preinservice" -> pure PreInService+ "successful" -> pure Successful+ "waitingforelbconnectiondraining" -> pure WaitingForELBConnectionDraining+ "waitingforinstanceid" -> pure WaitingForInstanceId+ "waitingforinstancewarmup" -> pure WaitingForInstanceWarmup+ "waitingforspotinstanceid" -> pure WaitingForSpotInstanceId+ "waitingforspotinstancerequestid" -> pure WaitingForSpotInstanceRequestId+ e -> fromTextError $ "Failure parsing ScalingActivityStatusCode from value: '" <> e+ <> "'. Accepted values: cancelled, failed, inprogress, midlifecycleaction, preinservice, successful, waitingforelbconnectiondraining, waitingforinstanceid, waitingforinstancewarmup, waitingforspotinstanceid, waitingforspotinstancerequestid"++instance ToText ScalingActivityStatusCode where+ toText = \case+ Cancelled -> "cancelled"+ Failed -> "failed"+ InProgress -> "inprogress"+ MidLifecycleAction -> "midlifecycleaction"+ PreInService -> "preinservice"+ Successful -> "successful"+ WaitingForELBConnectionDraining -> "waitingforelbconnectiondraining"+ WaitingForInstanceId -> "waitingforinstanceid"+ WaitingForInstanceWarmup -> "waitingforinstancewarmup"+ WaitingForSpotInstanceId -> "waitingforspotinstanceid"+ WaitingForSpotInstanceRequestId -> "waitingforspotinstancerequestid"++instance Hashable ScalingActivityStatusCode+instance ToByteString ScalingActivityStatusCode+instance ToQuery ScalingActivityStatusCode+instance ToHeader ScalingActivityStatusCode++instance FromXML ScalingActivityStatusCode where+ parseXML = parseXMLText "ScalingActivityStatusCode"
gen/Network/AWS/AutoScaling/UpdateAutoScalingGroup.hs view
@@ -1,258 +1,264 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.AutoScaling.UpdateAutoScalingGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Updates the configuration for the specified 'AutoScalingGroup'.+-- Updates the configuration for the specified Auto Scaling group. ----- To update an Auto Scaling group with a launch configuration that has the 'InstanceMonitoring' flag set to 'False', you must first ensure that collection of group metrics is--- disabled. Otherwise, calls to 'UpdateAutoScalingGroup' will fail. If you have--- previously enabled group metrics collection, you can disable collection of--- all group metrics by calling 'DisableMetricsCollection'.+-- To update an Auto Scaling group with a launch configuration with+-- 'InstanceMonitoring' set to 'False', you must first disable the+-- collection of group metrics. Otherwise, you will get an error. If you+-- have previously enabled the collection of group metrics, you can disable+-- it using DisableMetricsCollection. -- -- The new settings are registered upon the completion of this call. Any--- launch configuration settings take effect on any triggers after this call--- returns. Scaling activities that are currently in progress aren't affected.+-- launch configuration settings take effect on any triggers after this+-- call returns. Scaling activities that are currently in progress aren\'t+-- affected. ----- If a new value is specified for /MinSize/ without specifying the value for /DesiredCapacity/, and if the new /MinSize/ is larger than the current size of the Auto Scaling--- group, there will be an implicit call to 'SetDesiredCapacity' to set the group--- to the new /MinSize/.+-- Note the following: ----- If a new value is specified for /MaxSize/ without specifying the value for /DesiredCapacity/, and the new /MaxSize/ is smaller than the current size of the Auto Scaling--- group, there will be an implicit call to 'SetDesiredCapacity' to set the group--- to the new /MaxSize/.+-- - If you specify a new value for 'MinSize' without specifying a value+-- for 'DesiredCapacity', and the new 'MinSize' is larger than the+-- current size of the group, we implicitly call SetDesiredCapacity to+-- set the size of the group to the new value of 'MinSize'. ----- All other optional parameters are left unchanged if not passed in the--- request.+-- - If you specify a new value for 'MaxSize' without specifying a value+-- for 'DesiredCapacity', and the new 'MaxSize' is smaller than the+-- current size of the group, we implicitly call SetDesiredCapacity to+-- set the size of the group to the new value of 'MaxSize'. --+-- - All other optional parameters are left unchanged if not specified. -- ----- <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_UpdateAutoScalingGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_UpdateAutoScalingGroup.html AWS API Reference> for UpdateAutoScalingGroup. module Network.AWS.AutoScaling.UpdateAutoScalingGroup (- -- * Request- UpdateAutoScalingGroup- -- ** Request constructor- , updateAutoScalingGroup- -- ** Request lenses- , uasgAutoScalingGroupName- , uasgAvailabilityZones+ -- * Creating a Request+ updateAutoScalingGroup+ , UpdateAutoScalingGroup+ -- * Request Lenses+ , uasgTerminationPolicies+ , uasgHealthCheckGracePeriod+ , uasgVPCZoneIdentifier , uasgDefaultCooldown+ , uasgMaxSize , uasgDesiredCapacity- , uasgHealthCheckGracePeriod+ , uasgAvailabilityZones+ , uasgMinSize , uasgHealthCheckType , uasgLaunchConfigurationName- , uasgMaxSize- , uasgMinSize , uasgPlacementGroup- , uasgTerminationPolicies- , uasgVPCZoneIdentifier+ , uasgAutoScalingGroupName - -- * Response- , UpdateAutoScalingGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , updateAutoScalingGroupResponse+ , UpdateAutoScalingGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.AutoScaling.Types-import qualified GHC.Exts+import Network.AWS.AutoScaling.Types+import Network.AWS.AutoScaling.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -data UpdateAutoScalingGroup = UpdateAutoScalingGroup- { _uasgAutoScalingGroupName :: Text- , _uasgAvailabilityZones :: List1 "member" Text- , _uasgDefaultCooldown :: Maybe Int- , _uasgDesiredCapacity :: Maybe Int- , _uasgHealthCheckGracePeriod :: Maybe Int- , _uasgHealthCheckType :: Maybe Text- , _uasgLaunchConfigurationName :: Maybe Text- , _uasgMaxSize :: Maybe Int- , _uasgMinSize :: Maybe Int- , _uasgPlacementGroup :: Maybe Text- , _uasgTerminationPolicies :: List "member" Text- , _uasgVPCZoneIdentifier :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'updateAutoScalingGroup' smart constructor.+data UpdateAutoScalingGroup = UpdateAutoScalingGroup'+ { _uasgTerminationPolicies :: !(Maybe [Text])+ , _uasgHealthCheckGracePeriod :: !(Maybe Int)+ , _uasgVPCZoneIdentifier :: !(Maybe Text)+ , _uasgDefaultCooldown :: !(Maybe Int)+ , _uasgMaxSize :: !(Maybe Int)+ , _uasgDesiredCapacity :: !(Maybe Int)+ , _uasgAvailabilityZones :: !(Maybe (List1 Text))+ , _uasgMinSize :: !(Maybe Int)+ , _uasgHealthCheckType :: !(Maybe Text)+ , _uasgLaunchConfigurationName :: !(Maybe Text)+ , _uasgPlacementGroup :: !(Maybe Text)+ , _uasgAutoScalingGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'UpdateAutoScalingGroup' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'UpdateAutoScalingGroup' with the minimum fields required to make a request. ----- * 'uasgAutoScalingGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'uasgAvailabilityZones' @::@ 'NonEmpty' 'Text'+-- * 'uasgTerminationPolicies' ----- * 'uasgDefaultCooldown' @::@ 'Maybe' 'Int'+-- * 'uasgHealthCheckGracePeriod' ----- * 'uasgDesiredCapacity' @::@ 'Maybe' 'Int'+-- * 'uasgVPCZoneIdentifier' ----- * 'uasgHealthCheckGracePeriod' @::@ 'Maybe' 'Int'+-- * 'uasgDefaultCooldown' ----- * 'uasgHealthCheckType' @::@ 'Maybe' 'Text'+-- * 'uasgMaxSize' ----- * 'uasgLaunchConfigurationName' @::@ 'Maybe' 'Text'+-- * 'uasgDesiredCapacity' ----- * 'uasgMaxSize' @::@ 'Maybe' 'Int'+-- * 'uasgAvailabilityZones' ----- * 'uasgMinSize' @::@ 'Maybe' 'Int'+-- * 'uasgMinSize' ----- * 'uasgPlacementGroup' @::@ 'Maybe' 'Text'+-- * 'uasgHealthCheckType' ----- * 'uasgTerminationPolicies' @::@ ['Text']+-- * 'uasgLaunchConfigurationName' ----- * 'uasgVPCZoneIdentifier' @::@ 'Maybe' 'Text'+-- * 'uasgPlacementGroup' ---updateAutoScalingGroup :: Text -- ^ 'uasgAutoScalingGroupName'- -> NonEmpty Text -- ^ 'uasgAvailabilityZones'- -> UpdateAutoScalingGroup-updateAutoScalingGroup p1 p2 = UpdateAutoScalingGroup- { _uasgAutoScalingGroupName = p1- , _uasgAvailabilityZones = withIso _List1 (const id) p2+-- * 'uasgAutoScalingGroupName'+updateAutoScalingGroup+ :: Text -- ^ 'uasgAutoScalingGroupName'+ -> UpdateAutoScalingGroup+updateAutoScalingGroup pAutoScalingGroupName_ =+ UpdateAutoScalingGroup'+ { _uasgTerminationPolicies = Nothing+ , _uasgHealthCheckGracePeriod = Nothing+ , _uasgVPCZoneIdentifier = Nothing+ , _uasgDefaultCooldown = Nothing+ , _uasgMaxSize = Nothing+ , _uasgDesiredCapacity = Nothing+ , _uasgAvailabilityZones = Nothing+ , _uasgMinSize = Nothing+ , _uasgHealthCheckType = Nothing , _uasgLaunchConfigurationName = Nothing- , _uasgMinSize = Nothing- , _uasgMaxSize = Nothing- , _uasgDesiredCapacity = Nothing- , _uasgDefaultCooldown = Nothing- , _uasgHealthCheckType = Nothing- , _uasgHealthCheckGracePeriod = Nothing- , _uasgPlacementGroup = Nothing- , _uasgVPCZoneIdentifier = Nothing- , _uasgTerminationPolicies = mempty+ , _uasgPlacementGroup = Nothing+ , _uasgAutoScalingGroupName = pAutoScalingGroupName_ } --- | The name of the Auto Scaling group.-uasgAutoScalingGroupName :: Lens' UpdateAutoScalingGroup Text-uasgAutoScalingGroupName =- lens _uasgAutoScalingGroupName- (\s a -> s { _uasgAutoScalingGroupName = a })+-- | A standalone termination policy or a list of termination policies used+-- to select the instance to terminate. The policies are executed in the+-- order that they are listed.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-termination-policy.html Choosing a Termination Policy for Your Auto Scaling Group>+-- in the /Auto Scaling Developer Guide/.+uasgTerminationPolicies :: Lens' UpdateAutoScalingGroup [Text]+uasgTerminationPolicies = lens _uasgTerminationPolicies (\ s a -> s{_uasgTerminationPolicies = a}) . _Default . _Coerce; --- | One or more Availability Zones for the group.-uasgAvailabilityZones :: Lens' UpdateAutoScalingGroup (NonEmpty Text)-uasgAvailabilityZones =- lens _uasgAvailabilityZones (\s a -> s { _uasgAvailabilityZones = a })- . _List1+-- | The amount of time, in seconds, that Auto Scaling waits before checking+-- the health status of an instance. The grace period begins when the+-- instance passes the system status and instance status checks from Amazon+-- EC2. For more information, see < >.+uasgHealthCheckGracePeriod :: Lens' UpdateAutoScalingGroup (Maybe Int)+uasgHealthCheckGracePeriod = lens _uasgHealthCheckGracePeriod (\ s a -> s{_uasgHealthCheckGracePeriod = a}); --- | The amount of time, in seconds, after a scaling activity completes before--- another scaling activity can start. For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html UnderstandingAuto Scaling Cooldowns>.+-- | The ID of the subnet, if you are launching into a VPC. You can specify+-- several subnets in a comma-separated list.+--+-- When you specify 'VPCZoneIdentifier' with 'AvailabilityZones', ensure+-- that the subnets\' Availability Zones match the values you specify for+-- 'AvailabilityZones'.+--+-- For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon Virtual Private Cloud>+-- in the /Auto Scaling Developer Guide/.+uasgVPCZoneIdentifier :: Lens' UpdateAutoScalingGroup (Maybe Text)+uasgVPCZoneIdentifier = lens _uasgVPCZoneIdentifier (\ s a -> s{_uasgVPCZoneIdentifier = a});++-- | The amount of time, in seconds, after a scaling activity completes+-- before another scaling activity can start. For more information, see+-- <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/Cooldown.html Understanding Auto Scaling Cooldowns>. uasgDefaultCooldown :: Lens' UpdateAutoScalingGroup (Maybe Int)-uasgDefaultCooldown =- lens _uasgDefaultCooldown (\s a -> s { _uasgDefaultCooldown = a })+uasgDefaultCooldown = lens _uasgDefaultCooldown (\ s a -> s{_uasgDefaultCooldown = a}); --- | The number of EC2 instances that should be running in the Auto Scaling group.--- This value must be greater than or equal to the minimum size of the group and--- less than or equal to the maximum size of the group.+-- | The maximum size of the Auto Scaling group.+uasgMaxSize :: Lens' UpdateAutoScalingGroup (Maybe Int)+uasgMaxSize = lens _uasgMaxSize (\ s a -> s{_uasgMaxSize = a});++-- | The number of EC2 instances that should be running in the Auto Scaling+-- group. This number must be greater than or equal to the minimum size of+-- the group and less than or equal to the maximum size of the group. uasgDesiredCapacity :: Lens' UpdateAutoScalingGroup (Maybe Int)-uasgDesiredCapacity =- lens _uasgDesiredCapacity (\s a -> s { _uasgDesiredCapacity = a })+uasgDesiredCapacity = lens _uasgDesiredCapacity (\ s a -> s{_uasgDesiredCapacity = a}); --- | The amount of time, in second, that Auto Scaling waits before checking the--- health status of an instance. The grace period begins when the instance--- passes System Status and the Instance Status checks from Amazon EC2. For more--- information, see <http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeInstanceStatus.html DescribeInstanceStatus>.-uasgHealthCheckGracePeriod :: Lens' UpdateAutoScalingGroup (Maybe Int)-uasgHealthCheckGracePeriod =- lens _uasgHealthCheckGracePeriod- (\s a -> s { _uasgHealthCheckGracePeriod = a })+-- | One or more Availability Zones for the group.+uasgAvailabilityZones :: Lens' UpdateAutoScalingGroup (Maybe (NonEmpty Text))+uasgAvailabilityZones = lens _uasgAvailabilityZones (\ s a -> s{_uasgAvailabilityZones = a}) . mapping _List1; --- | The type of health check for the instances in the Auto Scaling group. The--- health check type can either be 'EC2' for Amazon EC2 or 'ELB' for Elastic Load--- Balancing.+-- | The minimum size of the Auto Scaling group.+uasgMinSize :: Lens' UpdateAutoScalingGroup (Maybe Int)+uasgMinSize = lens _uasgMinSize (\ s a -> s{_uasgMinSize = a});++-- | The type of health check for the instances in the Auto Scaling group.+-- The health check type can either be 'EC2' for Amazon EC2 or 'ELB' for+-- Elastic Load Balancing. uasgHealthCheckType :: Lens' UpdateAutoScalingGroup (Maybe Text)-uasgHealthCheckType =- lens _uasgHealthCheckType (\s a -> s { _uasgHealthCheckType = a })+uasgHealthCheckType = lens _uasgHealthCheckType (\ s a -> s{_uasgHealthCheckType = a}); -- | The name of the launch configuration. uasgLaunchConfigurationName :: Lens' UpdateAutoScalingGroup (Maybe Text)-uasgLaunchConfigurationName =- lens _uasgLaunchConfigurationName- (\s a -> s { _uasgLaunchConfigurationName = a })---- | The maximum size of the Auto Scaling group.-uasgMaxSize :: Lens' UpdateAutoScalingGroup (Maybe Int)-uasgMaxSize = lens _uasgMaxSize (\s a -> s { _uasgMaxSize = a })---- | The minimum size of the Auto Scaling group.-uasgMinSize :: Lens' UpdateAutoScalingGroup (Maybe Int)-uasgMinSize = lens _uasgMinSize (\s a -> s { _uasgMinSize = a })+uasgLaunchConfigurationName = lens _uasgLaunchConfigurationName (\ s a -> s{_uasgLaunchConfigurationName = a}); --- | The name of the placement group into which you'll launch your instances, if--- any. For more information, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>.+-- | The name of the placement group into which you\'ll launch your+-- instances, if any. For more information, see+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html Placement Groups>. uasgPlacementGroup :: Lens' UpdateAutoScalingGroup (Maybe Text)-uasgPlacementGroup =- lens _uasgPlacementGroup (\s a -> s { _uasgPlacementGroup = a })---- | A standalone termination policy or a list of termination policies used to--- select the instance to terminate. The policies are executed in the order that--- they are listed.------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/us-termination-policy.html Choosing a Termination Policy for Your AutoScaling Group> in the /Auto Scaling Developer Guide/.-uasgTerminationPolicies :: Lens' UpdateAutoScalingGroup [Text]-uasgTerminationPolicies =- lens _uasgTerminationPolicies (\s a -> s { _uasgTerminationPolicies = a })- . _List+uasgPlacementGroup = lens _uasgPlacementGroup (\ s a -> s{_uasgPlacementGroup = a}); --- | The subnet identifier for the Amazon VPC connection, if applicable. You can--- specify several subnets in a comma-separated list.------ When you specify 'VPCZoneIdentifier' with 'AvailabilityZones', ensure that the--- subnets' Availability Zones match the values you specify for 'AvailabilityZones'--- .------ For more information, see <http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/autoscalingsubnets.html Auto Scaling and Amazon VPC> in the /Auto ScalingDeveloper Guide/.-uasgVPCZoneIdentifier :: Lens' UpdateAutoScalingGroup (Maybe Text)-uasgVPCZoneIdentifier =- lens _uasgVPCZoneIdentifier (\s a -> s { _uasgVPCZoneIdentifier = a })+-- | The name of the Auto Scaling group.+uasgAutoScalingGroupName :: Lens' UpdateAutoScalingGroup Text+uasgAutoScalingGroupName = lens _uasgAutoScalingGroupName (\ s a -> s{_uasgAutoScalingGroupName = a}); -data UpdateAutoScalingGroupResponse = UpdateAutoScalingGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest UpdateAutoScalingGroup where+ type Sv UpdateAutoScalingGroup = AutoScaling+ type Rs UpdateAutoScalingGroup =+ UpdateAutoScalingGroupResponse+ request = postQuery+ response+ = receiveNull UpdateAutoScalingGroupResponse' --- | 'UpdateAutoScalingGroupResponse' constructor.-updateAutoScalingGroupResponse :: UpdateAutoScalingGroupResponse-updateAutoScalingGroupResponse = UpdateAutoScalingGroupResponse+instance ToHeaders UpdateAutoScalingGroup where+ toHeaders = const mempty instance ToPath UpdateAutoScalingGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery UpdateAutoScalingGroup where- toQuery UpdateAutoScalingGroup{..} = mconcat- [ "AutoScalingGroupName" =? _uasgAutoScalingGroupName- , "AvailabilityZones" =? _uasgAvailabilityZones- , "DefaultCooldown" =? _uasgDefaultCooldown- , "DesiredCapacity" =? _uasgDesiredCapacity- , "HealthCheckGracePeriod" =? _uasgHealthCheckGracePeriod- , "HealthCheckType" =? _uasgHealthCheckType- , "LaunchConfigurationName" =? _uasgLaunchConfigurationName- , "MaxSize" =? _uasgMaxSize- , "MinSize" =? _uasgMinSize- , "PlacementGroup" =? _uasgPlacementGroup- , "TerminationPolicies" =? _uasgTerminationPolicies- , "VPCZoneIdentifier" =? _uasgVPCZoneIdentifier- ]--instance ToHeaders UpdateAutoScalingGroup+ toQuery UpdateAutoScalingGroup'{..}+ = mconcat+ ["Action" =:+ ("UpdateAutoScalingGroup" :: ByteString),+ "Version" =: ("2011-01-01" :: ByteString),+ "TerminationPolicies" =:+ toQuery+ (toQueryList "member" <$> _uasgTerminationPolicies),+ "HealthCheckGracePeriod" =:+ _uasgHealthCheckGracePeriod,+ "VPCZoneIdentifier" =: _uasgVPCZoneIdentifier,+ "DefaultCooldown" =: _uasgDefaultCooldown,+ "MaxSize" =: _uasgMaxSize,+ "DesiredCapacity" =: _uasgDesiredCapacity,+ "AvailabilityZones" =:+ toQuery+ (toQueryList "member" <$> _uasgAvailabilityZones),+ "MinSize" =: _uasgMinSize,+ "HealthCheckType" =: _uasgHealthCheckType,+ "LaunchConfigurationName" =:+ _uasgLaunchConfigurationName,+ "PlacementGroup" =: _uasgPlacementGroup,+ "AutoScalingGroupName" =: _uasgAutoScalingGroupName] -instance AWSRequest UpdateAutoScalingGroup where- type Sv UpdateAutoScalingGroup = AutoScaling- type Rs UpdateAutoScalingGroup = UpdateAutoScalingGroupResponse+-- | /See:/ 'updateAutoScalingGroupResponse' smart constructor.+data UpdateAutoScalingGroupResponse =+ UpdateAutoScalingGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "UpdateAutoScalingGroup"- response = nullResponse UpdateAutoScalingGroupResponse+-- | Creates a value of 'UpdateAutoScalingGroupResponse' with the minimum fields required to make a request.+--+updateAutoScalingGroupResponse+ :: UpdateAutoScalingGroupResponse+updateAutoScalingGroupResponse = UpdateAutoScalingGroupResponse'
+ gen/Network/AWS/AutoScaling/Waiters.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.AutoScaling.Waiters+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.AutoScaling.Waiters where++import Network.AWS.AutoScaling.Types+import Network.AWS.Prelude+import Network.AWS.Waiter
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Main (main) where++import Test.Tasty+import Test.AWS.AutoScaling+import Test.AWS.AutoScaling.Internal++main :: IO ()+main = defaultMain $ testGroup "AutoScaling"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/AutoScaling.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module : Test.AWS.AutoScaling+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.AutoScaling+ ( tests+ , fixtures+ ) where++import Network.AWS.AutoScaling+import Test.AWS.Gen.AutoScaling+import Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/AutoScaling/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.AutoScaling.Internal+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.AutoScaling.Internal where++import Test.AWS.Prelude
+ test/Test/AWS/Gen/AutoScaling.hs view
@@ -0,0 +1,855 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.AWS.Gen.AutoScaling+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.Gen.AutoScaling where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.AutoScaling+import Test.AWS.AutoScaling.Internal++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ testDescribeMetricCollectionTypes $+-- describeMetricCollectionTypes+--+-- , testPutScalingPolicy $+-- putScalingPolicy+--+-- , testDeleteNotificationConfiguration $+-- deleteNotificationConfiguration+--+-- , testDescribeTags $+-- describeTags+--+-- , testDeleteLaunchConfiguration $+-- deleteLaunchConfiguration+--+-- , testDescribeLoadBalancers $+-- describeLoadBalancers+--+-- , testPutNotificationConfiguration $+-- putNotificationConfiguration+--+-- , testSetInstanceHealth $+-- setInstanceHealth+--+-- , testEnterStandby $+-- enterStandby+--+-- , testSuspendProcesses $+-- suspendProcesses+--+-- , testExitStandby $+-- exitStandby+--+-- , testDescribeTerminationPolicyTypes $+-- describeTerminationPolicyTypes+--+-- , testDescribeAutoScalingInstances $+-- describeAutoScalingInstances+--+-- , testDetachInstances $+-- detachInstances+--+-- , testDisableMetricsCollection $+-- disableMetricsCollection+--+-- , testRecordLifecycleActionHeartbeat $+-- recordLifecycleActionHeartbeat+--+-- , testDeleteTags $+-- deleteTags+--+-- , testDescribeScalingProcessTypes $+-- describeScalingProcessTypes+--+-- , testEnableMetricsCollection $+-- enableMetricsCollection+--+-- , testDescribeLifecycleHooks $+-- describeLifecycleHooks+--+-- , testDescribeAutoScalingGroups $+-- describeAutoScalingGroups+--+-- , testSetDesiredCapacity $+-- setDesiredCapacity+--+-- , testDetachLoadBalancers $+-- detachLoadBalancers+--+-- , testDeleteScheduledAction $+-- deleteScheduledAction+--+-- , testCreateOrUpdateTags $+-- createOrUpdateTags+--+-- , testDeletePolicy $+-- deletePolicy+--+-- , testDescribeAutoScalingNotificationTypes $+-- describeAutoScalingNotificationTypes+--+-- , testCompleteLifecycleAction $+-- completeLifecycleAction+--+-- , testAttachInstances $+-- attachInstances+--+-- , testDescribeScheduledActions $+-- describeScheduledActions+--+-- , testDeleteAutoScalingGroup $+-- deleteAutoScalingGroup+--+-- , testPutLifecycleHook $+-- putLifecycleHook+--+-- , testUpdateAutoScalingGroup $+-- updateAutoScalingGroup+--+-- , testDeleteLifecycleHook $+-- deleteLifecycleHook+--+-- , testResumeProcesses $+-- resumeProcesses+--+-- , testExecutePolicy $+-- executePolicy+--+-- , testTerminateInstanceInAutoScalingGroup $+-- terminateInstanceInAutoScalingGroup+--+-- , testDescribeAccountLimits $+-- describeAccountLimits+--+-- , testAttachLoadBalancers $+-- attachLoadBalancers+--+-- , testPutScheduledUpdateGroupAction $+-- putScheduledUpdateGroupAction+--+-- , testDescribePolicies $+-- describePolicies+--+-- , testDescribeNotificationConfigurations $+-- describeNotificationConfigurations+--+-- , testDescribeLaunchConfigurations $+-- describeLaunchConfigurations+--+-- , testDescribeLifecycleHookTypes $+-- describeLifecycleHookTypes+--+-- , testDescribeScalingActivities $+-- describeScalingActivities+--+-- , testCreateAutoScalingGroup $+-- createAutoScalingGroup+--+-- , testCreateLaunchConfiguration $+-- createLaunchConfiguration+--+-- , testDescribeAdjustmentTypes $+-- describeAdjustmentTypes+--+-- ]++-- , testGroup "response"+-- [ testDescribeMetricCollectionTypesResponse $+-- describeMetricCollectionTypesResponse+--+-- , testPutScalingPolicyResponse $+-- putScalingPolicyResponse+--+-- , testDeleteNotificationConfigurationResponse $+-- deleteNotificationConfigurationResponse+--+-- , testDescribeTagsResponse $+-- describeTagsResponse+--+-- , testDeleteLaunchConfigurationResponse $+-- deleteLaunchConfigurationResponse+--+-- , testDescribeLoadBalancersResponse $+-- describeLoadBalancersResponse+--+-- , testPutNotificationConfigurationResponse $+-- putNotificationConfigurationResponse+--+-- , testSetInstanceHealthResponse $+-- setInstanceHealthResponse+--+-- , testEnterStandbyResponse $+-- enterStandbyResponse+--+-- , testSuspendProcessesResponse $+-- suspendProcessesResponse+--+-- , testExitStandbyResponse $+-- exitStandbyResponse+--+-- , testDescribeTerminationPolicyTypesResponse $+-- describeTerminationPolicyTypesResponse+--+-- , testDescribeAutoScalingInstancesResponse $+-- describeAutoScalingInstancesResponse+--+-- , testDetachInstancesResponse $+-- detachInstancesResponse+--+-- , testDisableMetricsCollectionResponse $+-- disableMetricsCollectionResponse+--+-- , testRecordLifecycleActionHeartbeatResponse $+-- recordLifecycleActionHeartbeatResponse+--+-- , testDeleteTagsResponse $+-- deleteTagsResponse+--+-- , testDescribeScalingProcessTypesResponse $+-- describeScalingProcessTypesResponse+--+-- , testEnableMetricsCollectionResponse $+-- enableMetricsCollectionResponse+--+-- , testDescribeLifecycleHooksResponse $+-- describeLifecycleHooksResponse+--+-- , testDescribeAutoScalingGroupsResponse $+-- describeAutoScalingGroupsResponse+--+-- , testSetDesiredCapacityResponse $+-- setDesiredCapacityResponse+--+-- , testDetachLoadBalancersResponse $+-- detachLoadBalancersResponse+--+-- , testDeleteScheduledActionResponse $+-- deleteScheduledActionResponse+--+-- , testCreateOrUpdateTagsResponse $+-- createOrUpdateTagsResponse+--+-- , testDeletePolicyResponse $+-- deletePolicyResponse+--+-- , testDescribeAutoScalingNotificationTypesResponse $+-- describeAutoScalingNotificationTypesResponse+--+-- , testCompleteLifecycleActionResponse $+-- completeLifecycleActionResponse+--+-- , testAttachInstancesResponse $+-- attachInstancesResponse+--+-- , testDescribeScheduledActionsResponse $+-- describeScheduledActionsResponse+--+-- , testDeleteAutoScalingGroupResponse $+-- deleteAutoScalingGroupResponse+--+-- , testPutLifecycleHookResponse $+-- putLifecycleHookResponse+--+-- , testUpdateAutoScalingGroupResponse $+-- updateAutoScalingGroupResponse+--+-- , testDeleteLifecycleHookResponse $+-- deleteLifecycleHookResponse+--+-- , testResumeProcessesResponse $+-- resumeProcessesResponse+--+-- , testExecutePolicyResponse $+-- executePolicyResponse+--+-- , testTerminateInstanceInAutoScalingGroupResponse $+-- terminateInstanceInAutoScalingGroupResponse+--+-- , testDescribeAccountLimitsResponse $+-- describeAccountLimitsResponse+--+-- , testAttachLoadBalancersResponse $+-- attachLoadBalancersResponse+--+-- , testPutScheduledUpdateGroupActionResponse $+-- putScheduledUpdateGroupActionResponse+--+-- , testDescribePoliciesResponse $+-- describePoliciesResponse+--+-- , testDescribeNotificationConfigurationsResponse $+-- describeNotificationConfigurationsResponse+--+-- , testDescribeLaunchConfigurationsResponse $+-- describeLaunchConfigurationsResponse+--+-- , testDescribeLifecycleHookTypesResponse $+-- describeLifecycleHookTypesResponse+--+-- , testDescribeScalingActivitiesResponse $+-- describeScalingActivitiesResponse+--+-- , testCreateAutoScalingGroupResponse $+-- createAutoScalingGroupResponse+--+-- , testCreateLaunchConfigurationResponse $+-- createLaunchConfigurationResponse+--+-- , testDescribeAdjustmentTypesResponse $+-- describeAdjustmentTypesResponse+--+-- ]+-- ]++-- Requests++testDescribeMetricCollectionTypes :: DescribeMetricCollectionTypes -> TestTree+testDescribeMetricCollectionTypes = req+ "DescribeMetricCollectionTypes"+ "fixture/DescribeMetricCollectionTypes"++testPutScalingPolicy :: PutScalingPolicy -> TestTree+testPutScalingPolicy = req+ "PutScalingPolicy"+ "fixture/PutScalingPolicy"++testDeleteNotificationConfiguration :: DeleteNotificationConfiguration -> TestTree+testDeleteNotificationConfiguration = req+ "DeleteNotificationConfiguration"+ "fixture/DeleteNotificationConfiguration"++testDescribeTags :: DescribeTags -> TestTree+testDescribeTags = req+ "DescribeTags"+ "fixture/DescribeTags"++testDeleteLaunchConfiguration :: DeleteLaunchConfiguration -> TestTree+testDeleteLaunchConfiguration = req+ "DeleteLaunchConfiguration"+ "fixture/DeleteLaunchConfiguration"++testDescribeLoadBalancers :: DescribeLoadBalancers -> TestTree+testDescribeLoadBalancers = req+ "DescribeLoadBalancers"+ "fixture/DescribeLoadBalancers"++testPutNotificationConfiguration :: PutNotificationConfiguration -> TestTree+testPutNotificationConfiguration = req+ "PutNotificationConfiguration"+ "fixture/PutNotificationConfiguration"++testSetInstanceHealth :: SetInstanceHealth -> TestTree+testSetInstanceHealth = req+ "SetInstanceHealth"+ "fixture/SetInstanceHealth"++testEnterStandby :: EnterStandby -> TestTree+testEnterStandby = req+ "EnterStandby"+ "fixture/EnterStandby"++testSuspendProcesses :: SuspendProcesses -> TestTree+testSuspendProcesses = req+ "SuspendProcesses"+ "fixture/SuspendProcesses"++testExitStandby :: ExitStandby -> TestTree+testExitStandby = req+ "ExitStandby"+ "fixture/ExitStandby"++testDescribeTerminationPolicyTypes :: DescribeTerminationPolicyTypes -> TestTree+testDescribeTerminationPolicyTypes = req+ "DescribeTerminationPolicyTypes"+ "fixture/DescribeTerminationPolicyTypes"++testDescribeAutoScalingInstances :: DescribeAutoScalingInstances -> TestTree+testDescribeAutoScalingInstances = req+ "DescribeAutoScalingInstances"+ "fixture/DescribeAutoScalingInstances"++testDetachInstances :: DetachInstances -> TestTree+testDetachInstances = req+ "DetachInstances"+ "fixture/DetachInstances"++testDisableMetricsCollection :: DisableMetricsCollection -> TestTree+testDisableMetricsCollection = req+ "DisableMetricsCollection"+ "fixture/DisableMetricsCollection"++testRecordLifecycleActionHeartbeat :: RecordLifecycleActionHeartbeat -> TestTree+testRecordLifecycleActionHeartbeat = req+ "RecordLifecycleActionHeartbeat"+ "fixture/RecordLifecycleActionHeartbeat"++testDeleteTags :: DeleteTags -> TestTree+testDeleteTags = req+ "DeleteTags"+ "fixture/DeleteTags"++testDescribeScalingProcessTypes :: DescribeScalingProcessTypes -> TestTree+testDescribeScalingProcessTypes = req+ "DescribeScalingProcessTypes"+ "fixture/DescribeScalingProcessTypes"++testEnableMetricsCollection :: EnableMetricsCollection -> TestTree+testEnableMetricsCollection = req+ "EnableMetricsCollection"+ "fixture/EnableMetricsCollection"++testDescribeLifecycleHooks :: DescribeLifecycleHooks -> TestTree+testDescribeLifecycleHooks = req+ "DescribeLifecycleHooks"+ "fixture/DescribeLifecycleHooks"++testDescribeAutoScalingGroups :: DescribeAutoScalingGroups -> TestTree+testDescribeAutoScalingGroups = req+ "DescribeAutoScalingGroups"+ "fixture/DescribeAutoScalingGroups"++testSetDesiredCapacity :: SetDesiredCapacity -> TestTree+testSetDesiredCapacity = req+ "SetDesiredCapacity"+ "fixture/SetDesiredCapacity"++testDetachLoadBalancers :: DetachLoadBalancers -> TestTree+testDetachLoadBalancers = req+ "DetachLoadBalancers"+ "fixture/DetachLoadBalancers"++testDeleteScheduledAction :: DeleteScheduledAction -> TestTree+testDeleteScheduledAction = req+ "DeleteScheduledAction"+ "fixture/DeleteScheduledAction"++testCreateOrUpdateTags :: CreateOrUpdateTags -> TestTree+testCreateOrUpdateTags = req+ "CreateOrUpdateTags"+ "fixture/CreateOrUpdateTags"++testDeletePolicy :: DeletePolicy -> TestTree+testDeletePolicy = req+ "DeletePolicy"+ "fixture/DeletePolicy"++testDescribeAutoScalingNotificationTypes :: DescribeAutoScalingNotificationTypes -> TestTree+testDescribeAutoScalingNotificationTypes = req+ "DescribeAutoScalingNotificationTypes"+ "fixture/DescribeAutoScalingNotificationTypes"++testCompleteLifecycleAction :: CompleteLifecycleAction -> TestTree+testCompleteLifecycleAction = req+ "CompleteLifecycleAction"+ "fixture/CompleteLifecycleAction"++testAttachInstances :: AttachInstances -> TestTree+testAttachInstances = req+ "AttachInstances"+ "fixture/AttachInstances"++testDescribeScheduledActions :: DescribeScheduledActions -> TestTree+testDescribeScheduledActions = req+ "DescribeScheduledActions"+ "fixture/DescribeScheduledActions"++testDeleteAutoScalingGroup :: DeleteAutoScalingGroup -> TestTree+testDeleteAutoScalingGroup = req+ "DeleteAutoScalingGroup"+ "fixture/DeleteAutoScalingGroup"++testPutLifecycleHook :: PutLifecycleHook -> TestTree+testPutLifecycleHook = req+ "PutLifecycleHook"+ "fixture/PutLifecycleHook"++testUpdateAutoScalingGroup :: UpdateAutoScalingGroup -> TestTree+testUpdateAutoScalingGroup = req+ "UpdateAutoScalingGroup"+ "fixture/UpdateAutoScalingGroup"++testDeleteLifecycleHook :: DeleteLifecycleHook -> TestTree+testDeleteLifecycleHook = req+ "DeleteLifecycleHook"+ "fixture/DeleteLifecycleHook"++testResumeProcesses :: ResumeProcesses -> TestTree+testResumeProcesses = req+ "ResumeProcesses"+ "fixture/ResumeProcesses"++testExecutePolicy :: ExecutePolicy -> TestTree+testExecutePolicy = req+ "ExecutePolicy"+ "fixture/ExecutePolicy"++testTerminateInstanceInAutoScalingGroup :: TerminateInstanceInAutoScalingGroup -> TestTree+testTerminateInstanceInAutoScalingGroup = req+ "TerminateInstanceInAutoScalingGroup"+ "fixture/TerminateInstanceInAutoScalingGroup"++testDescribeAccountLimits :: DescribeAccountLimits -> TestTree+testDescribeAccountLimits = req+ "DescribeAccountLimits"+ "fixture/DescribeAccountLimits"++testAttachLoadBalancers :: AttachLoadBalancers -> TestTree+testAttachLoadBalancers = req+ "AttachLoadBalancers"+ "fixture/AttachLoadBalancers"++testPutScheduledUpdateGroupAction :: PutScheduledUpdateGroupAction -> TestTree+testPutScheduledUpdateGroupAction = req+ "PutScheduledUpdateGroupAction"+ "fixture/PutScheduledUpdateGroupAction"++testDescribePolicies :: DescribePolicies -> TestTree+testDescribePolicies = req+ "DescribePolicies"+ "fixture/DescribePolicies"++testDescribeNotificationConfigurations :: DescribeNotificationConfigurations -> TestTree+testDescribeNotificationConfigurations = req+ "DescribeNotificationConfigurations"+ "fixture/DescribeNotificationConfigurations"++testDescribeLaunchConfigurations :: DescribeLaunchConfigurations -> TestTree+testDescribeLaunchConfigurations = req+ "DescribeLaunchConfigurations"+ "fixture/DescribeLaunchConfigurations"++testDescribeLifecycleHookTypes :: DescribeLifecycleHookTypes -> TestTree+testDescribeLifecycleHookTypes = req+ "DescribeLifecycleHookTypes"+ "fixture/DescribeLifecycleHookTypes"++testDescribeScalingActivities :: DescribeScalingActivities -> TestTree+testDescribeScalingActivities = req+ "DescribeScalingActivities"+ "fixture/DescribeScalingActivities"++testCreateAutoScalingGroup :: CreateAutoScalingGroup -> TestTree+testCreateAutoScalingGroup = req+ "CreateAutoScalingGroup"+ "fixture/CreateAutoScalingGroup"++testCreateLaunchConfiguration :: CreateLaunchConfiguration -> TestTree+testCreateLaunchConfiguration = req+ "CreateLaunchConfiguration"+ "fixture/CreateLaunchConfiguration"++testDescribeAdjustmentTypes :: DescribeAdjustmentTypes -> TestTree+testDescribeAdjustmentTypes = req+ "DescribeAdjustmentTypes"+ "fixture/DescribeAdjustmentTypes"++-- Responses++testDescribeMetricCollectionTypesResponse :: DescribeMetricCollectionTypesResponse -> TestTree+testDescribeMetricCollectionTypesResponse = res+ "DescribeMetricCollectionTypesResponse"+ "fixture/DescribeMetricCollectionTypesResponse"+ (Proxy :: Proxy DescribeMetricCollectionTypes)++testPutScalingPolicyResponse :: PutScalingPolicyResponse -> TestTree+testPutScalingPolicyResponse = res+ "PutScalingPolicyResponse"+ "fixture/PutScalingPolicyResponse"+ (Proxy :: Proxy PutScalingPolicy)++testDeleteNotificationConfigurationResponse :: DeleteNotificationConfigurationResponse -> TestTree+testDeleteNotificationConfigurationResponse = res+ "DeleteNotificationConfigurationResponse"+ "fixture/DeleteNotificationConfigurationResponse"+ (Proxy :: Proxy DeleteNotificationConfiguration)++testDescribeTagsResponse :: DescribeTagsResponse -> TestTree+testDescribeTagsResponse = res+ "DescribeTagsResponse"+ "fixture/DescribeTagsResponse"+ (Proxy :: Proxy DescribeTags)++testDeleteLaunchConfigurationResponse :: DeleteLaunchConfigurationResponse -> TestTree+testDeleteLaunchConfigurationResponse = res+ "DeleteLaunchConfigurationResponse"+ "fixture/DeleteLaunchConfigurationResponse"+ (Proxy :: Proxy DeleteLaunchConfiguration)++testDescribeLoadBalancersResponse :: DescribeLoadBalancersResponse -> TestTree+testDescribeLoadBalancersResponse = res+ "DescribeLoadBalancersResponse"+ "fixture/DescribeLoadBalancersResponse"+ (Proxy :: Proxy DescribeLoadBalancers)++testPutNotificationConfigurationResponse :: PutNotificationConfigurationResponse -> TestTree+testPutNotificationConfigurationResponse = res+ "PutNotificationConfigurationResponse"+ "fixture/PutNotificationConfigurationResponse"+ (Proxy :: Proxy PutNotificationConfiguration)++testSetInstanceHealthResponse :: SetInstanceHealthResponse -> TestTree+testSetInstanceHealthResponse = res+ "SetInstanceHealthResponse"+ "fixture/SetInstanceHealthResponse"+ (Proxy :: Proxy SetInstanceHealth)++testEnterStandbyResponse :: EnterStandbyResponse -> TestTree+testEnterStandbyResponse = res+ "EnterStandbyResponse"+ "fixture/EnterStandbyResponse"+ (Proxy :: Proxy EnterStandby)++testSuspendProcessesResponse :: SuspendProcessesResponse -> TestTree+testSuspendProcessesResponse = res+ "SuspendProcessesResponse"+ "fixture/SuspendProcessesResponse"+ (Proxy :: Proxy SuspendProcesses)++testExitStandbyResponse :: ExitStandbyResponse -> TestTree+testExitStandbyResponse = res+ "ExitStandbyResponse"+ "fixture/ExitStandbyResponse"+ (Proxy :: Proxy ExitStandby)++testDescribeTerminationPolicyTypesResponse :: DescribeTerminationPolicyTypesResponse -> TestTree+testDescribeTerminationPolicyTypesResponse = res+ "DescribeTerminationPolicyTypesResponse"+ "fixture/DescribeTerminationPolicyTypesResponse"+ (Proxy :: Proxy DescribeTerminationPolicyTypes)++testDescribeAutoScalingInstancesResponse :: DescribeAutoScalingInstancesResponse -> TestTree+testDescribeAutoScalingInstancesResponse = res+ "DescribeAutoScalingInstancesResponse"+ "fixture/DescribeAutoScalingInstancesResponse"+ (Proxy :: Proxy DescribeAutoScalingInstances)++testDetachInstancesResponse :: DetachInstancesResponse -> TestTree+testDetachInstancesResponse = res+ "DetachInstancesResponse"+ "fixture/DetachInstancesResponse"+ (Proxy :: Proxy DetachInstances)++testDisableMetricsCollectionResponse :: DisableMetricsCollectionResponse -> TestTree+testDisableMetricsCollectionResponse = res+ "DisableMetricsCollectionResponse"+ "fixture/DisableMetricsCollectionResponse"+ (Proxy :: Proxy DisableMetricsCollection)++testRecordLifecycleActionHeartbeatResponse :: RecordLifecycleActionHeartbeatResponse -> TestTree+testRecordLifecycleActionHeartbeatResponse = res+ "RecordLifecycleActionHeartbeatResponse"+ "fixture/RecordLifecycleActionHeartbeatResponse"+ (Proxy :: Proxy RecordLifecycleActionHeartbeat)++testDeleteTagsResponse :: DeleteTagsResponse -> TestTree+testDeleteTagsResponse = res+ "DeleteTagsResponse"+ "fixture/DeleteTagsResponse"+ (Proxy :: Proxy DeleteTags)++testDescribeScalingProcessTypesResponse :: DescribeScalingProcessTypesResponse -> TestTree+testDescribeScalingProcessTypesResponse = res+ "DescribeScalingProcessTypesResponse"+ "fixture/DescribeScalingProcessTypesResponse"+ (Proxy :: Proxy DescribeScalingProcessTypes)++testEnableMetricsCollectionResponse :: EnableMetricsCollectionResponse -> TestTree+testEnableMetricsCollectionResponse = res+ "EnableMetricsCollectionResponse"+ "fixture/EnableMetricsCollectionResponse"+ (Proxy :: Proxy EnableMetricsCollection)++testDescribeLifecycleHooksResponse :: DescribeLifecycleHooksResponse -> TestTree+testDescribeLifecycleHooksResponse = res+ "DescribeLifecycleHooksResponse"+ "fixture/DescribeLifecycleHooksResponse"+ (Proxy :: Proxy DescribeLifecycleHooks)++testDescribeAutoScalingGroupsResponse :: DescribeAutoScalingGroupsResponse -> TestTree+testDescribeAutoScalingGroupsResponse = res+ "DescribeAutoScalingGroupsResponse"+ "fixture/DescribeAutoScalingGroupsResponse"+ (Proxy :: Proxy DescribeAutoScalingGroups)++testSetDesiredCapacityResponse :: SetDesiredCapacityResponse -> TestTree+testSetDesiredCapacityResponse = res+ "SetDesiredCapacityResponse"+ "fixture/SetDesiredCapacityResponse"+ (Proxy :: Proxy SetDesiredCapacity)++testDetachLoadBalancersResponse :: DetachLoadBalancersResponse -> TestTree+testDetachLoadBalancersResponse = res+ "DetachLoadBalancersResponse"+ "fixture/DetachLoadBalancersResponse"+ (Proxy :: Proxy DetachLoadBalancers)++testDeleteScheduledActionResponse :: DeleteScheduledActionResponse -> TestTree+testDeleteScheduledActionResponse = res+ "DeleteScheduledActionResponse"+ "fixture/DeleteScheduledActionResponse"+ (Proxy :: Proxy DeleteScheduledAction)++testCreateOrUpdateTagsResponse :: CreateOrUpdateTagsResponse -> TestTree+testCreateOrUpdateTagsResponse = res+ "CreateOrUpdateTagsResponse"+ "fixture/CreateOrUpdateTagsResponse"+ (Proxy :: Proxy CreateOrUpdateTags)++testDeletePolicyResponse :: DeletePolicyResponse -> TestTree+testDeletePolicyResponse = res+ "DeletePolicyResponse"+ "fixture/DeletePolicyResponse"+ (Proxy :: Proxy DeletePolicy)++testDescribeAutoScalingNotificationTypesResponse :: DescribeAutoScalingNotificationTypesResponse -> TestTree+testDescribeAutoScalingNotificationTypesResponse = res+ "DescribeAutoScalingNotificationTypesResponse"+ "fixture/DescribeAutoScalingNotificationTypesResponse"+ (Proxy :: Proxy DescribeAutoScalingNotificationTypes)++testCompleteLifecycleActionResponse :: CompleteLifecycleActionResponse -> TestTree+testCompleteLifecycleActionResponse = res+ "CompleteLifecycleActionResponse"+ "fixture/CompleteLifecycleActionResponse"+ (Proxy :: Proxy CompleteLifecycleAction)++testAttachInstancesResponse :: AttachInstancesResponse -> TestTree+testAttachInstancesResponse = res+ "AttachInstancesResponse"+ "fixture/AttachInstancesResponse"+ (Proxy :: Proxy AttachInstances)++testDescribeScheduledActionsResponse :: DescribeScheduledActionsResponse -> TestTree+testDescribeScheduledActionsResponse = res+ "DescribeScheduledActionsResponse"+ "fixture/DescribeScheduledActionsResponse"+ (Proxy :: Proxy DescribeScheduledActions)++testDeleteAutoScalingGroupResponse :: DeleteAutoScalingGroupResponse -> TestTree+testDeleteAutoScalingGroupResponse = res+ "DeleteAutoScalingGroupResponse"+ "fixture/DeleteAutoScalingGroupResponse"+ (Proxy :: Proxy DeleteAutoScalingGroup)++testPutLifecycleHookResponse :: PutLifecycleHookResponse -> TestTree+testPutLifecycleHookResponse = res+ "PutLifecycleHookResponse"+ "fixture/PutLifecycleHookResponse"+ (Proxy :: Proxy PutLifecycleHook)++testUpdateAutoScalingGroupResponse :: UpdateAutoScalingGroupResponse -> TestTree+testUpdateAutoScalingGroupResponse = res+ "UpdateAutoScalingGroupResponse"+ "fixture/UpdateAutoScalingGroupResponse"+ (Proxy :: Proxy UpdateAutoScalingGroup)++testDeleteLifecycleHookResponse :: DeleteLifecycleHookResponse -> TestTree+testDeleteLifecycleHookResponse = res+ "DeleteLifecycleHookResponse"+ "fixture/DeleteLifecycleHookResponse"+ (Proxy :: Proxy DeleteLifecycleHook)++testResumeProcessesResponse :: ResumeProcessesResponse -> TestTree+testResumeProcessesResponse = res+ "ResumeProcessesResponse"+ "fixture/ResumeProcessesResponse"+ (Proxy :: Proxy ResumeProcesses)++testExecutePolicyResponse :: ExecutePolicyResponse -> TestTree+testExecutePolicyResponse = res+ "ExecutePolicyResponse"+ "fixture/ExecutePolicyResponse"+ (Proxy :: Proxy ExecutePolicy)++testTerminateInstanceInAutoScalingGroupResponse :: TerminateInstanceInAutoScalingGroupResponse -> TestTree+testTerminateInstanceInAutoScalingGroupResponse = res+ "TerminateInstanceInAutoScalingGroupResponse"+ "fixture/TerminateInstanceInAutoScalingGroupResponse"+ (Proxy :: Proxy TerminateInstanceInAutoScalingGroup)++testDescribeAccountLimitsResponse :: DescribeAccountLimitsResponse -> TestTree+testDescribeAccountLimitsResponse = res+ "DescribeAccountLimitsResponse"+ "fixture/DescribeAccountLimitsResponse"+ (Proxy :: Proxy DescribeAccountLimits)++testAttachLoadBalancersResponse :: AttachLoadBalancersResponse -> TestTree+testAttachLoadBalancersResponse = res+ "AttachLoadBalancersResponse"+ "fixture/AttachLoadBalancersResponse"+ (Proxy :: Proxy AttachLoadBalancers)++testPutScheduledUpdateGroupActionResponse :: PutScheduledUpdateGroupActionResponse -> TestTree+testPutScheduledUpdateGroupActionResponse = res+ "PutScheduledUpdateGroupActionResponse"+ "fixture/PutScheduledUpdateGroupActionResponse"+ (Proxy :: Proxy PutScheduledUpdateGroupAction)++testDescribePoliciesResponse :: DescribePoliciesResponse -> TestTree+testDescribePoliciesResponse = res+ "DescribePoliciesResponse"+ "fixture/DescribePoliciesResponse"+ (Proxy :: Proxy DescribePolicies)++testDescribeNotificationConfigurationsResponse :: DescribeNotificationConfigurationsResponse -> TestTree+testDescribeNotificationConfigurationsResponse = res+ "DescribeNotificationConfigurationsResponse"+ "fixture/DescribeNotificationConfigurationsResponse"+ (Proxy :: Proxy DescribeNotificationConfigurations)++testDescribeLaunchConfigurationsResponse :: DescribeLaunchConfigurationsResponse -> TestTree+testDescribeLaunchConfigurationsResponse = res+ "DescribeLaunchConfigurationsResponse"+ "fixture/DescribeLaunchConfigurationsResponse"+ (Proxy :: Proxy DescribeLaunchConfigurations)++testDescribeLifecycleHookTypesResponse :: DescribeLifecycleHookTypesResponse -> TestTree+testDescribeLifecycleHookTypesResponse = res+ "DescribeLifecycleHookTypesResponse"+ "fixture/DescribeLifecycleHookTypesResponse"+ (Proxy :: Proxy DescribeLifecycleHookTypes)++testDescribeScalingActivitiesResponse :: DescribeScalingActivitiesResponse -> TestTree+testDescribeScalingActivitiesResponse = res+ "DescribeScalingActivitiesResponse"+ "fixture/DescribeScalingActivitiesResponse"+ (Proxy :: Proxy DescribeScalingActivities)++testCreateAutoScalingGroupResponse :: CreateAutoScalingGroupResponse -> TestTree+testCreateAutoScalingGroupResponse = res+ "CreateAutoScalingGroupResponse"+ "fixture/CreateAutoScalingGroupResponse"+ (Proxy :: Proxy CreateAutoScalingGroup)++testCreateLaunchConfigurationResponse :: CreateLaunchConfigurationResponse -> TestTree+testCreateLaunchConfigurationResponse = res+ "CreateLaunchConfigurationResponse"+ "fixture/CreateLaunchConfigurationResponse"+ (Proxy :: Proxy CreateLaunchConfiguration)++testDescribeAdjustmentTypesResponse :: DescribeAdjustmentTypesResponse -> TestTree+testDescribeAdjustmentTypesResponse = res+ "DescribeAdjustmentTypesResponse"+ "fixture/DescribeAdjustmentTypesResponse"+ (Proxy :: Proxy DescribeAdjustmentTypes)