{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.ApplicationAutoScaling.DeregisterScalableTarget -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Deregisters an Application Auto Scaling scalable target when you have -- finished using it. To see which resources have been registered, use -- <https://docs.aws.amazon.com/autoscaling/application/APIReference/API_DescribeScalableTargets.html DescribeScalableTargets>. -- -- Deregistering a scalable target deletes the scaling policies and the -- scheduled actions that are associated with it. module Amazonka.ApplicationAutoScaling.DeregisterScalableTarget ( -- * Creating a Request DeregisterScalableTarget (..), newDeregisterScalableTarget, -- * Request Lenses deregisterScalableTarget_serviceNamespace, deregisterScalableTarget_resourceId, deregisterScalableTarget_scalableDimension, -- * Destructuring the Response DeregisterScalableTargetResponse (..), newDeregisterScalableTargetResponse, -- * Response Lenses deregisterScalableTargetResponse_httpStatus, ) where import Amazonka.ApplicationAutoScaling.Types import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Data as Data import qualified Amazonka.Prelude as Prelude import qualified Amazonka.Request as Request import qualified Amazonka.Response as Response -- | /See:/ 'newDeregisterScalableTarget' smart constructor. data DeregisterScalableTarget = DeregisterScalableTarget' { -- | The namespace of the Amazon Web Services service that provides the -- resource. For a resource provided by your own application or service, -- use @custom-resource@ instead. DeregisterScalableTarget -> ServiceNamespace serviceNamespace :: ServiceNamespace, -- | The identifier of the resource associated with the scalable target. This -- string consists of the resource type and unique identifier. -- -- - ECS service - The resource type is @service@ and the unique -- identifier is the cluster name and service name. Example: -- @service\/default\/sample-webapp@. -- -- - Spot Fleet - The resource type is @spot-fleet-request@ and the -- unique identifier is the Spot Fleet request ID. Example: -- @spot-fleet-request\/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE@. -- -- - EMR cluster - The resource type is @instancegroup@ and the unique -- identifier is the cluster ID and instance group ID. Example: -- @instancegroup\/j-2EEZNYKUA1NTV\/ig-1791Y4E1L8YI0@. -- -- - AppStream 2.0 fleet - The resource type is @fleet@ and the unique -- identifier is the fleet name. Example: @fleet\/sample-fleet@. -- -- - DynamoDB table - The resource type is @table@ and the unique -- identifier is the table name. Example: @table\/my-table@. -- -- - DynamoDB global secondary index - The resource type is @index@ and -- the unique identifier is the index name. Example: -- @table\/my-table\/index\/my-table-index@. -- -- - Aurora DB cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:my-db-cluster@. -- -- - SageMaker endpoint variant - The resource type is @variant@ and the -- unique identifier is the resource ID. Example: -- @endpoint\/my-end-point\/variant\/KMeansClustering@. -- -- - Custom resources are not supported with a resource type. This -- parameter must specify the @OutputValue@ from the CloudFormation -- template stack used to access the resources. The unique identifier -- is defined by the service provider. More information is available in -- our -- <https://github.com/aws/aws-auto-scaling-custom-resource GitHub repository>. -- -- - Amazon Comprehend document classification endpoint - The resource -- type and unique identifier are specified using the endpoint ARN. -- Example: -- @arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint\/EXAMPLE@. -- -- - Amazon Comprehend entity recognizer endpoint - The resource type and -- unique identifier are specified using the endpoint ARN. Example: -- @arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint\/EXAMPLE@. -- -- - Lambda provisioned concurrency - The resource type is @function@ and -- the unique identifier is the function name with a function version -- or alias name suffix that is not @$LATEST@. Example: -- @function:my-function:prod@ or @function:my-function:1@. -- -- - Amazon Keyspaces table - The resource type is @table@ and the unique -- identifier is the table name. Example: -- @keyspace\/mykeyspace\/table\/mytable@. -- -- - Amazon MSK cluster - The resource type and unique identifier are -- specified using the cluster ARN. Example: -- @arn:aws:kafka:us-east-1:123456789012:cluster\/demo-cluster-1\/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5@. -- -- - Amazon ElastiCache replication group - The resource type is -- @replication-group@ and the unique identifier is the replication -- group name. Example: @replication-group\/mycluster@. -- -- - Neptune cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:mycluster@. DeregisterScalableTarget -> Text resourceId :: Prelude.Text, -- | The scalable dimension associated with the scalable target. This string -- consists of the service namespace, resource type, and scaling property. -- -- - @ecs:service:DesiredCount@ - The desired task count of an ECS -- service. -- -- - @elasticmapreduce:instancegroup:InstanceCount@ - The instance count -- of an EMR Instance Group. -- -- - @ec2:spot-fleet-request:TargetCapacity@ - The target capacity of a -- Spot Fleet. -- -- - @appstream:fleet:DesiredCapacity@ - The desired capacity of an -- AppStream 2.0 fleet. -- -- - @dynamodb:table:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB table. -- -- - @dynamodb:table:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB table. -- -- - @dynamodb:index:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB global secondary index. -- -- - @dynamodb:index:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB global secondary index. -- -- - @rds:cluster:ReadReplicaCount@ - The count of Aurora Replicas in an -- Aurora DB cluster. Available for Aurora MySQL-compatible edition and -- Aurora PostgreSQL-compatible edition. -- -- - @sagemaker:variant:DesiredInstanceCount@ - The number of EC2 -- instances for a SageMaker model endpoint variant. -- -- - @custom-resource:ResourceType:Property@ - The scalable dimension for -- a custom resource provided by your own application or service. -- -- - @comprehend:document-classifier-endpoint:DesiredInferenceUnits@ - -- The number of inference units for an Amazon Comprehend document -- classification endpoint. -- -- - @comprehend:entity-recognizer-endpoint:DesiredInferenceUnits@ - The -- number of inference units for an Amazon Comprehend entity recognizer -- endpoint. -- -- - @lambda:function:ProvisionedConcurrency@ - The provisioned -- concurrency for a Lambda function. -- -- - @cassandra:table:ReadCapacityUnits@ - The provisioned read capacity -- for an Amazon Keyspaces table. -- -- - @cassandra:table:WriteCapacityUnits@ - The provisioned write -- capacity for an Amazon Keyspaces table. -- -- - @kafka:broker-storage:VolumeSize@ - The provisioned volume size (in -- GiB) for brokers in an Amazon MSK cluster. -- -- - @elasticache:replication-group:NodeGroups@ - The number of node -- groups for an Amazon ElastiCache replication group. -- -- - @elasticache:replication-group:Replicas@ - The number of replicas -- per node group for an Amazon ElastiCache replication group. -- -- - @neptune:cluster:ReadReplicaCount@ - The count of read replicas in -- an Amazon Neptune DB cluster. DeregisterScalableTarget -> ScalableDimension scalableDimension :: ScalableDimension } deriving (DeregisterScalableTarget -> DeregisterScalableTarget -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: DeregisterScalableTarget -> DeregisterScalableTarget -> Bool $c/= :: DeregisterScalableTarget -> DeregisterScalableTarget -> Bool == :: DeregisterScalableTarget -> DeregisterScalableTarget -> Bool $c== :: DeregisterScalableTarget -> DeregisterScalableTarget -> Bool Prelude.Eq, ReadPrec [DeregisterScalableTarget] ReadPrec DeregisterScalableTarget Int -> ReadS DeregisterScalableTarget ReadS [DeregisterScalableTarget] forall a. (Int -> ReadS a) -> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a readListPrec :: ReadPrec [DeregisterScalableTarget] $creadListPrec :: ReadPrec [DeregisterScalableTarget] readPrec :: ReadPrec DeregisterScalableTarget $creadPrec :: ReadPrec DeregisterScalableTarget readList :: ReadS [DeregisterScalableTarget] $creadList :: ReadS [DeregisterScalableTarget] readsPrec :: Int -> ReadS DeregisterScalableTarget $creadsPrec :: Int -> ReadS DeregisterScalableTarget Prelude.Read, Int -> DeregisterScalableTarget -> ShowS [DeregisterScalableTarget] -> ShowS DeregisterScalableTarget -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [DeregisterScalableTarget] -> ShowS $cshowList :: [DeregisterScalableTarget] -> ShowS show :: DeregisterScalableTarget -> String $cshow :: DeregisterScalableTarget -> String showsPrec :: Int -> DeregisterScalableTarget -> ShowS $cshowsPrec :: Int -> DeregisterScalableTarget -> ShowS Prelude.Show, forall x. Rep DeregisterScalableTarget x -> DeregisterScalableTarget forall x. DeregisterScalableTarget -> Rep DeregisterScalableTarget x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep DeregisterScalableTarget x -> DeregisterScalableTarget $cfrom :: forall x. DeregisterScalableTarget -> Rep DeregisterScalableTarget x Prelude.Generic) -- | -- Create a value of 'DeregisterScalableTarget' with all optional fields omitted. -- -- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'serviceNamespace', 'deregisterScalableTarget_serviceNamespace' - The namespace of the Amazon Web Services service that provides the -- resource. For a resource provided by your own application or service, -- use @custom-resource@ instead. -- -- 'resourceId', 'deregisterScalableTarget_resourceId' - The identifier of the resource associated with the scalable target. This -- string consists of the resource type and unique identifier. -- -- - ECS service - The resource type is @service@ and the unique -- identifier is the cluster name and service name. Example: -- @service\/default\/sample-webapp@. -- -- - Spot Fleet - The resource type is @spot-fleet-request@ and the -- unique identifier is the Spot Fleet request ID. Example: -- @spot-fleet-request\/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE@. -- -- - EMR cluster - The resource type is @instancegroup@ and the unique -- identifier is the cluster ID and instance group ID. Example: -- @instancegroup\/j-2EEZNYKUA1NTV\/ig-1791Y4E1L8YI0@. -- -- - AppStream 2.0 fleet - The resource type is @fleet@ and the unique -- identifier is the fleet name. Example: @fleet\/sample-fleet@. -- -- - DynamoDB table - The resource type is @table@ and the unique -- identifier is the table name. Example: @table\/my-table@. -- -- - DynamoDB global secondary index - The resource type is @index@ and -- the unique identifier is the index name. Example: -- @table\/my-table\/index\/my-table-index@. -- -- - Aurora DB cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:my-db-cluster@. -- -- - SageMaker endpoint variant - The resource type is @variant@ and the -- unique identifier is the resource ID. Example: -- @endpoint\/my-end-point\/variant\/KMeansClustering@. -- -- - Custom resources are not supported with a resource type. This -- parameter must specify the @OutputValue@ from the CloudFormation -- template stack used to access the resources. The unique identifier -- is defined by the service provider. More information is available in -- our -- <https://github.com/aws/aws-auto-scaling-custom-resource GitHub repository>. -- -- - Amazon Comprehend document classification endpoint - The resource -- type and unique identifier are specified using the endpoint ARN. -- Example: -- @arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint\/EXAMPLE@. -- -- - Amazon Comprehend entity recognizer endpoint - The resource type and -- unique identifier are specified using the endpoint ARN. Example: -- @arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint\/EXAMPLE@. -- -- - Lambda provisioned concurrency - The resource type is @function@ and -- the unique identifier is the function name with a function version -- or alias name suffix that is not @$LATEST@. Example: -- @function:my-function:prod@ or @function:my-function:1@. -- -- - Amazon Keyspaces table - The resource type is @table@ and the unique -- identifier is the table name. Example: -- @keyspace\/mykeyspace\/table\/mytable@. -- -- - Amazon MSK cluster - The resource type and unique identifier are -- specified using the cluster ARN. Example: -- @arn:aws:kafka:us-east-1:123456789012:cluster\/demo-cluster-1\/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5@. -- -- - Amazon ElastiCache replication group - The resource type is -- @replication-group@ and the unique identifier is the replication -- group name. Example: @replication-group\/mycluster@. -- -- - Neptune cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:mycluster@. -- -- 'scalableDimension', 'deregisterScalableTarget_scalableDimension' - The scalable dimension associated with the scalable target. This string -- consists of the service namespace, resource type, and scaling property. -- -- - @ecs:service:DesiredCount@ - The desired task count of an ECS -- service. -- -- - @elasticmapreduce:instancegroup:InstanceCount@ - The instance count -- of an EMR Instance Group. -- -- - @ec2:spot-fleet-request:TargetCapacity@ - The target capacity of a -- Spot Fleet. -- -- - @appstream:fleet:DesiredCapacity@ - The desired capacity of an -- AppStream 2.0 fleet. -- -- - @dynamodb:table:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB table. -- -- - @dynamodb:table:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB table. -- -- - @dynamodb:index:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB global secondary index. -- -- - @dynamodb:index:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB global secondary index. -- -- - @rds:cluster:ReadReplicaCount@ - The count of Aurora Replicas in an -- Aurora DB cluster. Available for Aurora MySQL-compatible edition and -- Aurora PostgreSQL-compatible edition. -- -- - @sagemaker:variant:DesiredInstanceCount@ - The number of EC2 -- instances for a SageMaker model endpoint variant. -- -- - @custom-resource:ResourceType:Property@ - The scalable dimension for -- a custom resource provided by your own application or service. -- -- - @comprehend:document-classifier-endpoint:DesiredInferenceUnits@ - -- The number of inference units for an Amazon Comprehend document -- classification endpoint. -- -- - @comprehend:entity-recognizer-endpoint:DesiredInferenceUnits@ - The -- number of inference units for an Amazon Comprehend entity recognizer -- endpoint. -- -- - @lambda:function:ProvisionedConcurrency@ - The provisioned -- concurrency for a Lambda function. -- -- - @cassandra:table:ReadCapacityUnits@ - The provisioned read capacity -- for an Amazon Keyspaces table. -- -- - @cassandra:table:WriteCapacityUnits@ - The provisioned write -- capacity for an Amazon Keyspaces table. -- -- - @kafka:broker-storage:VolumeSize@ - The provisioned volume size (in -- GiB) for brokers in an Amazon MSK cluster. -- -- - @elasticache:replication-group:NodeGroups@ - The number of node -- groups for an Amazon ElastiCache replication group. -- -- - @elasticache:replication-group:Replicas@ - The number of replicas -- per node group for an Amazon ElastiCache replication group. -- -- - @neptune:cluster:ReadReplicaCount@ - The count of read replicas in -- an Amazon Neptune DB cluster. newDeregisterScalableTarget :: -- | 'serviceNamespace' ServiceNamespace -> -- | 'resourceId' Prelude.Text -> -- | 'scalableDimension' ScalableDimension -> DeregisterScalableTarget newDeregisterScalableTarget :: ServiceNamespace -> Text -> ScalableDimension -> DeregisterScalableTarget newDeregisterScalableTarget ServiceNamespace pServiceNamespace_ Text pResourceId_ ScalableDimension pScalableDimension_ = DeregisterScalableTarget' { $sel:serviceNamespace:DeregisterScalableTarget' :: ServiceNamespace serviceNamespace = ServiceNamespace pServiceNamespace_, $sel:resourceId:DeregisterScalableTarget' :: Text resourceId = Text pResourceId_, $sel:scalableDimension:DeregisterScalableTarget' :: ScalableDimension scalableDimension = ScalableDimension pScalableDimension_ } -- | The namespace of the Amazon Web Services service that provides the -- resource. For a resource provided by your own application or service, -- use @custom-resource@ instead. deregisterScalableTarget_serviceNamespace :: Lens.Lens' DeregisterScalableTarget ServiceNamespace deregisterScalableTarget_serviceNamespace :: Lens' DeregisterScalableTarget ServiceNamespace deregisterScalableTarget_serviceNamespace = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b Lens.lens (\DeregisterScalableTarget' {ServiceNamespace serviceNamespace :: ServiceNamespace $sel:serviceNamespace:DeregisterScalableTarget' :: DeregisterScalableTarget -> ServiceNamespace serviceNamespace} -> ServiceNamespace serviceNamespace) (\s :: DeregisterScalableTarget s@DeregisterScalableTarget' {} ServiceNamespace a -> DeregisterScalableTarget s {$sel:serviceNamespace:DeregisterScalableTarget' :: ServiceNamespace serviceNamespace = ServiceNamespace a} :: DeregisterScalableTarget) -- | The identifier of the resource associated with the scalable target. This -- string consists of the resource type and unique identifier. -- -- - ECS service - The resource type is @service@ and the unique -- identifier is the cluster name and service name. Example: -- @service\/default\/sample-webapp@. -- -- - Spot Fleet - The resource type is @spot-fleet-request@ and the -- unique identifier is the Spot Fleet request ID. Example: -- @spot-fleet-request\/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE@. -- -- - EMR cluster - The resource type is @instancegroup@ and the unique -- identifier is the cluster ID and instance group ID. Example: -- @instancegroup\/j-2EEZNYKUA1NTV\/ig-1791Y4E1L8YI0@. -- -- - AppStream 2.0 fleet - The resource type is @fleet@ and the unique -- identifier is the fleet name. Example: @fleet\/sample-fleet@. -- -- - DynamoDB table - The resource type is @table@ and the unique -- identifier is the table name. Example: @table\/my-table@. -- -- - DynamoDB global secondary index - The resource type is @index@ and -- the unique identifier is the index name. Example: -- @table\/my-table\/index\/my-table-index@. -- -- - Aurora DB cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:my-db-cluster@. -- -- - SageMaker endpoint variant - The resource type is @variant@ and the -- unique identifier is the resource ID. Example: -- @endpoint\/my-end-point\/variant\/KMeansClustering@. -- -- - Custom resources are not supported with a resource type. This -- parameter must specify the @OutputValue@ from the CloudFormation -- template stack used to access the resources. The unique identifier -- is defined by the service provider. More information is available in -- our -- <https://github.com/aws/aws-auto-scaling-custom-resource GitHub repository>. -- -- - Amazon Comprehend document classification endpoint - The resource -- type and unique identifier are specified using the endpoint ARN. -- Example: -- @arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint\/EXAMPLE@. -- -- - Amazon Comprehend entity recognizer endpoint - The resource type and -- unique identifier are specified using the endpoint ARN. Example: -- @arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint\/EXAMPLE@. -- -- - Lambda provisioned concurrency - The resource type is @function@ and -- the unique identifier is the function name with a function version -- or alias name suffix that is not @$LATEST@. Example: -- @function:my-function:prod@ or @function:my-function:1@. -- -- - Amazon Keyspaces table - The resource type is @table@ and the unique -- identifier is the table name. Example: -- @keyspace\/mykeyspace\/table\/mytable@. -- -- - Amazon MSK cluster - The resource type and unique identifier are -- specified using the cluster ARN. Example: -- @arn:aws:kafka:us-east-1:123456789012:cluster\/demo-cluster-1\/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5@. -- -- - Amazon ElastiCache replication group - The resource type is -- @replication-group@ and the unique identifier is the replication -- group name. Example: @replication-group\/mycluster@. -- -- - Neptune cluster - The resource type is @cluster@ and the unique -- identifier is the cluster name. Example: @cluster:mycluster@. deregisterScalableTarget_resourceId :: Lens.Lens' DeregisterScalableTarget Prelude.Text deregisterScalableTarget_resourceId :: Lens' DeregisterScalableTarget Text deregisterScalableTarget_resourceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b Lens.lens (\DeregisterScalableTarget' {Text resourceId :: Text $sel:resourceId:DeregisterScalableTarget' :: DeregisterScalableTarget -> Text resourceId} -> Text resourceId) (\s :: DeregisterScalableTarget s@DeregisterScalableTarget' {} Text a -> DeregisterScalableTarget s {$sel:resourceId:DeregisterScalableTarget' :: Text resourceId = Text a} :: DeregisterScalableTarget) -- | The scalable dimension associated with the scalable target. This string -- consists of the service namespace, resource type, and scaling property. -- -- - @ecs:service:DesiredCount@ - The desired task count of an ECS -- service. -- -- - @elasticmapreduce:instancegroup:InstanceCount@ - The instance count -- of an EMR Instance Group. -- -- - @ec2:spot-fleet-request:TargetCapacity@ - The target capacity of a -- Spot Fleet. -- -- - @appstream:fleet:DesiredCapacity@ - The desired capacity of an -- AppStream 2.0 fleet. -- -- - @dynamodb:table:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB table. -- -- - @dynamodb:table:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB table. -- -- - @dynamodb:index:ReadCapacityUnits@ - The provisioned read capacity -- for a DynamoDB global secondary index. -- -- - @dynamodb:index:WriteCapacityUnits@ - The provisioned write capacity -- for a DynamoDB global secondary index. -- -- - @rds:cluster:ReadReplicaCount@ - The count of Aurora Replicas in an -- Aurora DB cluster. Available for Aurora MySQL-compatible edition and -- Aurora PostgreSQL-compatible edition. -- -- - @sagemaker:variant:DesiredInstanceCount@ - The number of EC2 -- instances for a SageMaker model endpoint variant. -- -- - @custom-resource:ResourceType:Property@ - The scalable dimension for -- a custom resource provided by your own application or service. -- -- - @comprehend:document-classifier-endpoint:DesiredInferenceUnits@ - -- The number of inference units for an Amazon Comprehend document -- classification endpoint. -- -- - @comprehend:entity-recognizer-endpoint:DesiredInferenceUnits@ - The -- number of inference units for an Amazon Comprehend entity recognizer -- endpoint. -- -- - @lambda:function:ProvisionedConcurrency@ - The provisioned -- concurrency for a Lambda function. -- -- - @cassandra:table:ReadCapacityUnits@ - The provisioned read capacity -- for an Amazon Keyspaces table. -- -- - @cassandra:table:WriteCapacityUnits@ - The provisioned write -- capacity for an Amazon Keyspaces table. -- -- - @kafka:broker-storage:VolumeSize@ - The provisioned volume size (in -- GiB) for brokers in an Amazon MSK cluster. -- -- - @elasticache:replication-group:NodeGroups@ - The number of node -- groups for an Amazon ElastiCache replication group. -- -- - @elasticache:replication-group:Replicas@ - The number of replicas -- per node group for an Amazon ElastiCache replication group. -- -- - @neptune:cluster:ReadReplicaCount@ - The count of read replicas in -- an Amazon Neptune DB cluster. deregisterScalableTarget_scalableDimension :: Lens.Lens' DeregisterScalableTarget ScalableDimension deregisterScalableTarget_scalableDimension :: Lens' DeregisterScalableTarget ScalableDimension deregisterScalableTarget_scalableDimension = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b Lens.lens (\DeregisterScalableTarget' {ScalableDimension scalableDimension :: ScalableDimension $sel:scalableDimension:DeregisterScalableTarget' :: DeregisterScalableTarget -> ScalableDimension scalableDimension} -> ScalableDimension scalableDimension) (\s :: DeregisterScalableTarget s@DeregisterScalableTarget' {} ScalableDimension a -> DeregisterScalableTarget s {$sel:scalableDimension:DeregisterScalableTarget' :: ScalableDimension scalableDimension = ScalableDimension a} :: DeregisterScalableTarget) instance Core.AWSRequest DeregisterScalableTarget where type AWSResponse DeregisterScalableTarget = DeregisterScalableTargetResponse request :: (Service -> Service) -> DeregisterScalableTarget -> Request DeregisterScalableTarget request Service -> Service overrides = forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a Request.postJSON (Service -> Service overrides Service defaultService) response :: forall (m :: * -> *). MonadResource m => (ByteStringLazy -> IO ByteStringLazy) -> Service -> Proxy DeregisterScalableTarget -> ClientResponse ClientBody -> m (Either Error (ClientResponse (AWSResponse DeregisterScalableTarget))) response = forall (m :: * -> *) a. MonadResource m => (Int -> ResponseHeaders -> () -> Either String (AWSResponse a)) -> (ByteStringLazy -> IO ByteStringLazy) -> Service -> Proxy a -> ClientResponse ClientBody -> m (Either Error (ClientResponse (AWSResponse a))) Response.receiveEmpty ( \Int s ResponseHeaders h () x -> Int -> DeregisterScalableTargetResponse DeregisterScalableTargetResponse' forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b Prelude.<$> (forall (f :: * -> *) a. Applicative f => a -> f a Prelude.pure (forall a. Enum a => a -> Int Prelude.fromEnum Int s)) ) instance Prelude.Hashable DeregisterScalableTarget where hashWithSalt :: Int -> DeregisterScalableTarget -> Int hashWithSalt Int _salt DeregisterScalableTarget' {Text ScalableDimension ServiceNamespace scalableDimension :: ScalableDimension resourceId :: Text serviceNamespace :: ServiceNamespace $sel:scalableDimension:DeregisterScalableTarget' :: DeregisterScalableTarget -> ScalableDimension $sel:resourceId:DeregisterScalableTarget' :: DeregisterScalableTarget -> Text $sel:serviceNamespace:DeregisterScalableTarget' :: DeregisterScalableTarget -> ServiceNamespace ..} = Int _salt forall a. Hashable a => Int -> a -> Int `Prelude.hashWithSalt` ServiceNamespace serviceNamespace forall a. Hashable a => Int -> a -> Int `Prelude.hashWithSalt` Text resourceId forall a. Hashable a => Int -> a -> Int `Prelude.hashWithSalt` ScalableDimension scalableDimension instance Prelude.NFData DeregisterScalableTarget where rnf :: DeregisterScalableTarget -> () rnf DeregisterScalableTarget' {Text ScalableDimension ServiceNamespace scalableDimension :: ScalableDimension resourceId :: Text serviceNamespace :: ServiceNamespace $sel:scalableDimension:DeregisterScalableTarget' :: DeregisterScalableTarget -> ScalableDimension $sel:resourceId:DeregisterScalableTarget' :: DeregisterScalableTarget -> Text $sel:serviceNamespace:DeregisterScalableTarget' :: DeregisterScalableTarget -> ServiceNamespace ..} = forall a. NFData a => a -> () Prelude.rnf ServiceNamespace serviceNamespace seq :: forall a b. a -> b -> b `Prelude.seq` forall a. NFData a => a -> () Prelude.rnf Text resourceId seq :: forall a b. a -> b -> b `Prelude.seq` forall a. NFData a => a -> () Prelude.rnf ScalableDimension scalableDimension instance Data.ToHeaders DeregisterScalableTarget where toHeaders :: DeregisterScalableTarget -> ResponseHeaders toHeaders = forall a b. a -> b -> a Prelude.const ( forall a. Monoid a => [a] -> a Prelude.mconcat [ HeaderName "X-Amz-Target" forall a. ToHeader a => HeaderName -> a -> ResponseHeaders Data.=# ( ByteString "AnyScaleFrontendService.DeregisterScalableTarget" :: Prelude.ByteString ), HeaderName "Content-Type" forall a. ToHeader a => HeaderName -> a -> ResponseHeaders Data.=# ( ByteString "application/x-amz-json-1.1" :: Prelude.ByteString ) ] ) instance Data.ToJSON DeregisterScalableTarget where toJSON :: DeregisterScalableTarget -> Value toJSON DeregisterScalableTarget' {Text ScalableDimension ServiceNamespace scalableDimension :: ScalableDimension resourceId :: Text serviceNamespace :: ServiceNamespace $sel:scalableDimension:DeregisterScalableTarget' :: DeregisterScalableTarget -> ScalableDimension $sel:resourceId:DeregisterScalableTarget' :: DeregisterScalableTarget -> Text $sel:serviceNamespace:DeregisterScalableTarget' :: DeregisterScalableTarget -> ServiceNamespace ..} = [Pair] -> Value Data.object ( forall a. [Maybe a] -> [a] Prelude.catMaybes [ forall a. a -> Maybe a Prelude.Just (Key "ServiceNamespace" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv Data..= ServiceNamespace serviceNamespace), forall a. a -> Maybe a Prelude.Just (Key "ResourceId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv Data..= Text resourceId), forall a. a -> Maybe a Prelude.Just (Key "ScalableDimension" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv Data..= ScalableDimension scalableDimension) ] ) instance Data.ToPath DeregisterScalableTarget where toPath :: DeregisterScalableTarget -> ByteString toPath = forall a b. a -> b -> a Prelude.const ByteString "/" instance Data.ToQuery DeregisterScalableTarget where toQuery :: DeregisterScalableTarget -> QueryString toQuery = forall a b. a -> b -> a Prelude.const forall a. Monoid a => a Prelude.mempty -- | /See:/ 'newDeregisterScalableTargetResponse' smart constructor. data DeregisterScalableTargetResponse = DeregisterScalableTargetResponse' { -- | The response's http status code. DeregisterScalableTargetResponse -> Int httpStatus :: Prelude.Int } deriving (DeregisterScalableTargetResponse -> DeregisterScalableTargetResponse -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: DeregisterScalableTargetResponse -> DeregisterScalableTargetResponse -> Bool $c/= :: DeregisterScalableTargetResponse -> DeregisterScalableTargetResponse -> Bool == :: DeregisterScalableTargetResponse -> DeregisterScalableTargetResponse -> Bool $c== :: DeregisterScalableTargetResponse -> DeregisterScalableTargetResponse -> Bool Prelude.Eq, ReadPrec [DeregisterScalableTargetResponse] ReadPrec DeregisterScalableTargetResponse Int -> ReadS DeregisterScalableTargetResponse ReadS [DeregisterScalableTargetResponse] forall a. (Int -> ReadS a) -> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a readListPrec :: ReadPrec [DeregisterScalableTargetResponse] $creadListPrec :: ReadPrec [DeregisterScalableTargetResponse] readPrec :: ReadPrec DeregisterScalableTargetResponse $creadPrec :: ReadPrec DeregisterScalableTargetResponse readList :: ReadS [DeregisterScalableTargetResponse] $creadList :: ReadS [DeregisterScalableTargetResponse] readsPrec :: Int -> ReadS DeregisterScalableTargetResponse $creadsPrec :: Int -> ReadS DeregisterScalableTargetResponse Prelude.Read, Int -> DeregisterScalableTargetResponse -> ShowS [DeregisterScalableTargetResponse] -> ShowS DeregisterScalableTargetResponse -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [DeregisterScalableTargetResponse] -> ShowS $cshowList :: [DeregisterScalableTargetResponse] -> ShowS show :: DeregisterScalableTargetResponse -> String $cshow :: DeregisterScalableTargetResponse -> String showsPrec :: Int -> DeregisterScalableTargetResponse -> ShowS $cshowsPrec :: Int -> DeregisterScalableTargetResponse -> ShowS Prelude.Show, forall x. Rep DeregisterScalableTargetResponse x -> DeregisterScalableTargetResponse forall x. DeregisterScalableTargetResponse -> Rep DeregisterScalableTargetResponse x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep DeregisterScalableTargetResponse x -> DeregisterScalableTargetResponse $cfrom :: forall x. DeregisterScalableTargetResponse -> Rep DeregisterScalableTargetResponse x Prelude.Generic) -- | -- Create a value of 'DeregisterScalableTargetResponse' with all optional fields omitted. -- -- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'httpStatus', 'deregisterScalableTargetResponse_httpStatus' - The response's http status code. newDeregisterScalableTargetResponse :: -- | 'httpStatus' Prelude.Int -> DeregisterScalableTargetResponse newDeregisterScalableTargetResponse :: Int -> DeregisterScalableTargetResponse newDeregisterScalableTargetResponse Int pHttpStatus_ = DeregisterScalableTargetResponse' { $sel:httpStatus:DeregisterScalableTargetResponse' :: Int httpStatus = Int pHttpStatus_ } -- | The response's http status code. deregisterScalableTargetResponse_httpStatus :: Lens.Lens' DeregisterScalableTargetResponse Prelude.Int deregisterScalableTargetResponse_httpStatus :: Lens' DeregisterScalableTargetResponse Int deregisterScalableTargetResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b Lens.lens (\DeregisterScalableTargetResponse' {Int httpStatus :: Int $sel:httpStatus:DeregisterScalableTargetResponse' :: DeregisterScalableTargetResponse -> Int httpStatus} -> Int httpStatus) (\s :: DeregisterScalableTargetResponse s@DeregisterScalableTargetResponse' {} Int a -> DeregisterScalableTargetResponse s {$sel:httpStatus:DeregisterScalableTargetResponse' :: Int httpStatus = Int a} :: DeregisterScalableTargetResponse) instance Prelude.NFData DeregisterScalableTargetResponse where rnf :: DeregisterScalableTargetResponse -> () rnf DeregisterScalableTargetResponse' {Int httpStatus :: Int $sel:httpStatus:DeregisterScalableTargetResponse' :: DeregisterScalableTargetResponse -> Int ..} = forall a. NFData a => a -> () Prelude.rnf Int httpStatus