fn put_scaling_policy(
        &self,
        input: PutScalingPolicyRequest,
    ) -> RusotoFuture<PutScalingPolicyResponse, PutScalingPolicyError> {
        let mut request = SignedRequest::new("POST", "application-autoscaling", &self.region, "/");
        request.set_endpoint_prefix("autoscaling".to_string());
        request.set_content_type("application/x-amz-json-1.1".to_owned());
        request.add_header("x-amz-target", "AnyScaleFrontendService.PutScalingPolicy");
        let encoded = serde_json::to_string(&input).unwrap();
        request.set_payload(Some(encoded));

        self.client.sign_and_dispatch(request, |response| {
            if response.status.is_success() {
                Box::new(response.buffer().from_err().and_then(|response| {
                    proto::json::ResponsePayload::new(&response)
                        .deserialize::<PutScalingPolicyResponse, _>()
                }))
            } else {
                Box::new(
                    response
                        .buffer()
                        .from_err()
                        .and_then(|response| Err(PutScalingPolicyError::from_response(response))),
                )
            }
        })
    }
/// <p>Creates or updates a policy for an Application Auto Scaling scalable target.</p> <p>Each scalable target is identified by a service namespace, resource ID, and scalable dimension. A scaling policy applies to the scalable target identified by those three attributes. You cannot create a scaling policy until you have registered the resource as a scalable target using <a>RegisterScalableTarget</a>.</p> <p>To update a policy, specify its policy name and the parameters that you want to change. Any parameters that you don't specify are not changed by this update request.</p> <p>You can view the scaling policies for a service namespace using <a>DescribeScalingPolicies</a>. If you are no longer using a scaling policy, you can delete it using <a>DeleteScalingPolicy</a>.</p> <p>Multiple scaling policies can be in force at the same time for the same scalable target. You can have one or more target tracking scaling policies, one or more step scaling policies, or both. However, there is a chance that multiple policies could conflict, instructing the scalable target to scale out or in at the same time. Application Auto Scaling gives precedence to the policy that provides the largest capacity for both scale in and scale out. For example, if one policy increases capacity by 3, another policy increases capacity by 200 percent, and the current capacity is 10, Application Auto Scaling uses the policy with the highest calculated capacity (200% of 10 = 20) and scales out to 30. </p> <p>Learn more about how to work with scaling policies in the <a href="https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html">Application Auto Scaling User Guide</a>.</p>
Creates or updates a policy for an Application Auto Scaling scalable target. Each scalable target is identified by a service namespace, resource ID, and scalable dimension. A scaling policy applies to the scalable target identified by those three attributes. You cannot create a scaling policy until you have registered the resource as a scalable target using RegisterScalableTarget. To update a policy, specify its policy name and the parameters that you want to change. Any parameters that you don't specify are not changed by this update request. You can view the scaling policies for a service namespace using DescribeScalingPolicies. If you are no longer using a scaling policy, you can delete it using DeleteScalingPolicy. Multiple scaling policies can be in force at the same time for the same scalable target. You can have one or more target tracking scaling policies, one or more step scaling policies, or both. However, there is a chance that multiple policies could conflict, instructing the scalable target to scale out or in at the same time. Application Auto Scaling gives precedence to the policy that provides the largest capacity for both scale in and scale out. For example, if one policy increases capacity by 3, another policy increases capacity by 200 percent, and the current capacity is 10, Application Auto Scaling uses the policy with the highest calculated capacity (200% of 10 = 20) and scales out to 30.  Learn more about how to work with scaling policies in the Application Auto Scaling User Guide.
Creates or updates a policy for an Application Auto Scaling scalable target . Each scalable target is identified by a service namespace resource ID and scalable dimension . A scaling policy applies to the scalable target identified by those three attributes . You cannot create a scaling policy until you have registered the resource as a scalable target using RegisterScalableTarget . To update a policy specify its policy name and the parameters that you want to change . Any parameters that you don ' t specify are not changed by this update request . You can view the scaling policies for a service namespace using DescribeScalingPolicies . If you are no longer using a scaling policy you can delete it using DeleteScalingPolicy . Multiple scaling policies can be in force at the same time for the same scalable target . You can have one or more target tracking scaling policies one or more step scaling policies or both . However there is a chance that multiple policies could conflict instructing the scalable target to scale out or in at the same time . Application Auto Scaling gives precedence to the policy that provides the largest capacity for both scale in and scale out . For example if one policy increases capacity by 3 another policy increases capacity by 200 percent and the current capacity is 10 Application Auto Scaling uses the policy with the highest calculated capacity ( 200% of 10 = 20 ) and scales out to 30 . Learn more about how to work with scaling policies in the Application Auto Scaling User Guide .
fn put_scaling_policy(
        &self,
        input: PutScalingPolicyRequest,
    ) -> RusotoFuture<PutScalingPolicyResponse, PutScalingPolicyError> {
        let mut request = SignedRequest::new("POST", "application-autoscaling", &self.region, "/");
        request.set_endpoint_prefix("autoscaling".to_string());
        request.set_content_type("application/x-amz-json-1.1".to_owned());
        request.add_header("x-amz-target", "AnyScaleFrontendService.PutScalingPolicy");
        let encoded = serde_json::to_string(&input).unwrap();
        request.set_payload(Some(encoded));
        self.client.sign_and_dispatch(request, |response| {
            if response.status.is_success() {
                Box::new(response.buffer().from_err().and_then(|response| {
                    proto::json::ResponsePayload::new(&response)
                        .deserialize::<PutScalingPolicyResponse, _>()
                }))
            } else {
                Box::new(
                    response
                        .buffer()
                        .from_err()
                        .and_then(|response| Err(PutScalingPolicyError::from_response(response))),
                )
            }
        })
    }
fn put_scaling_policy ( & self , input : PutScalingPolicyRequest , ) -> RusotoFuture < PutScalingPolicyResponse , PutScalingPolicyError > { let mut request = SignedRequest :: new ( " " , " " , & self . region , " " ) ; request . set_endpoint_prefix ( " " . to_string ( ) ) ; request . set_content_type ( " " . to_owned ( ) ) ; request . add_header ( " " , " " ) ; let encoded = serde_json :: to_string ( & input ) . unwrap ( ) ; request . set_payload ( Some ( encoded ) ) ; self . client . sign_and_dispatch ( request , | response | { if response . status . is_success ( ) { Box :: new ( response . buffer ( ) . from_err ( ) . and_then ( | response | { proto :: json :: ResponsePayload :: new ( & response ) . deserialize :: < PutScalingPolicyResponse , _ > ( ) } ) ) } else { Box :: new ( response . buffer ( ) . from_err ( ) . and_then ( | response | Err ( PutScalingPolicyError :: from_response ( response ) ) ) , ) } } ) }
<p>Creates or updates a policy for an Application Auto Scaling scalable target.</p> <p>Each scalable target is identified by a service namespace, resource ID, and scalable dimension.
<p > Creates or updates a policy for an Application Auto Scaling scalable target . < / p > <p > Each scalable target is identified by a service namespace resource ID and scalable dimension .
&self
input
PutScalingPolicyRequest
&self
input
PutScalingPolicyRequest