software.amazon.awssdk.services.amp.model.ThrottlingException Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of amp Show documentation
Show all versions of amp Show documentation
The AWS Java SDK for Amp module holds the client classes that are used for
communicating with Amp.
/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package software.amazon.awssdk.services.amp.model;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.BiConsumer;
import java.util.function.Function;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.awscore.exception.AwsErrorDetails;
import software.amazon.awssdk.core.SdkField;
import software.amazon.awssdk.core.SdkPojo;
import software.amazon.awssdk.core.protocol.MarshallLocation;
import software.amazon.awssdk.core.protocol.MarshallingType;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
/**
*
* The request was denied due to request throttling.
*
*/
@Generated("software.amazon.awssdk:codegen")
public final class ThrottlingException extends AmpException implements
ToCopyableBuilder {
private static final SdkField QUOTA_CODE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("quotaCode").getter(getter(ThrottlingException::quotaCode)).setter(setter(Builder::quotaCode))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("quotaCode").build()).build();
private static final SdkField RETRY_AFTER_SECONDS_FIELD = SdkField. builder(MarshallingType.INTEGER)
.memberName("retryAfterSeconds").getter(getter(ThrottlingException::retryAfterSeconds))
.setter(setter(Builder::retryAfterSeconds))
.traits(LocationTrait.builder().location(MarshallLocation.HEADER).locationName("Retry-After").build()).build();
private static final SdkField SERVICE_CODE_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("serviceCode").getter(getter(ThrottlingException::serviceCode)).setter(setter(Builder::serviceCode))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("serviceCode").build()).build();
private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(QUOTA_CODE_FIELD,
RETRY_AFTER_SECONDS_FIELD, SERVICE_CODE_FIELD));
private static final Map> SDK_NAME_TO_FIELD = Collections
.unmodifiableMap(new HashMap>() {
{
put("quotaCode", QUOTA_CODE_FIELD);
put("Retry-After", RETRY_AFTER_SECONDS_FIELD);
put("serviceCode", SERVICE_CODE_FIELD);
}
});
private static final long serialVersionUID = 1L;
private final String quotaCode;
private final Integer retryAfterSeconds;
private final String serviceCode;
private ThrottlingException(BuilderImpl builder) {
super(builder);
this.quotaCode = builder.quotaCode;
this.retryAfterSeconds = builder.retryAfterSeconds;
this.serviceCode = builder.serviceCode;
}
@Override
public Builder toBuilder() {
return new BuilderImpl(this);
}
public static Builder builder() {
return new BuilderImpl();
}
public static Class extends Builder> serializableBuilderClass() {
return BuilderImpl.class;
}
/**
*
* Service quotas code for the originating quota.
*
*
* @return Service quotas code for the originating quota.
*/
public String quotaCode() {
return quotaCode;
}
/**
*
* Advice to clients on when the call can be safely retried.
*
*
* @return Advice to clients on when the call can be safely retried.
*/
public Integer retryAfterSeconds() {
return retryAfterSeconds;
}
/**
*
* Service quotas code for the originating service.
*
*
* @return Service quotas code for the originating service.
*/
public String serviceCode() {
return serviceCode;
}
@Override
public boolean isRetryableException() {
return true;
}
@Override
public final List> sdkFields() {
return SDK_FIELDS;
}
@Override
public final Map> sdkFieldNameToField() {
return SDK_NAME_TO_FIELD;
}
private static Function
© 2015 - 2024 Weber Informatics LLC | Privacy Policy