All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.apigateway.model.GetUsageRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon API Gateway module holds the client classes that are used for communicating with Amazon API Gateway

There is a newer version: 2.0.0-preview-11
Show newest version
/*
 * Copyright 2013-2018 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.apigateway.model;

import java.util.Objects;
import java.util.Optional;
import java.util.function.Consumer;
import javax.annotation.Generated;
import software.amazon.awssdk.core.AwsRequestOverrideConfig;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 * 

* The GET request to get the usage data of a usage plan in a specified time interval. *

*/ @Generated("software.amazon.awssdk:codegen") public class GetUsageRequest extends APIGatewayRequest implements ToCopyableBuilder { private final String usagePlanId; private final String keyId; private final String startDate; private final String endDate; private final String position; private final Integer limit; private GetUsageRequest(BuilderImpl builder) { super(builder); this.usagePlanId = builder.usagePlanId; this.keyId = builder.keyId; this.startDate = builder.startDate; this.endDate = builder.endDate; this.position = builder.position; this.limit = builder.limit; } /** *

* The Id of the usage plan associated with the usage data. *

* * @return The Id of the usage plan associated with the usage data. */ public String usagePlanId() { return usagePlanId; } /** *

* The Id of the API key associated with the resultant usage data. *

* * @return The Id of the API key associated with the resultant usage data. */ public String keyId() { return keyId; } /** *

* The starting date (e.g., 2016-01-01) of the usage data. *

* * @return The starting date (e.g., 2016-01-01) of the usage data. */ public String startDate() { return startDate; } /** *

* The ending date (e.g., 2016-12-31) of the usage data. *

* * @return The ending date (e.g., 2016-12-31) of the usage data. */ public String endDate() { return endDate; } /** *

* The current pagination position in the paged result set. *

* * @return The current pagination position in the paged result set. */ public String position() { return position; } /** *

* The maximum number of returned results per page. *

* * @return The maximum number of returned results per page. */ public Integer limit() { return limit; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(usagePlanId()); hashCode = 31 * hashCode + Objects.hashCode(keyId()); hashCode = 31 * hashCode + Objects.hashCode(startDate()); hashCode = 31 * hashCode + Objects.hashCode(endDate()); hashCode = 31 * hashCode + Objects.hashCode(position()); hashCode = 31 * hashCode + Objects.hashCode(limit()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof GetUsageRequest)) { return false; } GetUsageRequest other = (GetUsageRequest) obj; return Objects.equals(usagePlanId(), other.usagePlanId()) && Objects.equals(keyId(), other.keyId()) && Objects.equals(startDate(), other.startDate()) && Objects.equals(endDate(), other.endDate()) && Objects.equals(position(), other.position()) && Objects.equals(limit(), other.limit()); } @Override public String toString() { return ToString.builder("GetUsageRequest").add("UsagePlanId", usagePlanId()).add("KeyId", keyId()) .add("StartDate", startDate()).add("EndDate", endDate()).add("Position", position()).add("Limit", limit()) .build(); } public Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "usagePlanId": return Optional.of(clazz.cast(usagePlanId())); case "keyId": return Optional.of(clazz.cast(keyId())); case "startDate": return Optional.of(clazz.cast(startDate())); case "endDate": return Optional.of(clazz.cast(endDate())); case "position": return Optional.of(clazz.cast(position())); case "limit": return Optional.of(clazz.cast(limit())); default: return Optional.empty(); } } public interface Builder extends APIGatewayRequest.Builder, CopyableBuilder { /** *

* The Id of the usage plan associated with the usage data. *

* * @param usagePlanId * The Id of the usage plan associated with the usage data. * @return Returns a reference to this object so that method calls can be chained together. */ Builder usagePlanId(String usagePlanId); /** *

* The Id of the API key associated with the resultant usage data. *

* * @param keyId * The Id of the API key associated with the resultant usage data. * @return Returns a reference to this object so that method calls can be chained together. */ Builder keyId(String keyId); /** *

* The starting date (e.g., 2016-01-01) of the usage data. *

* * @param startDate * The starting date (e.g., 2016-01-01) of the usage data. * @return Returns a reference to this object so that method calls can be chained together. */ Builder startDate(String startDate); /** *

* The ending date (e.g., 2016-12-31) of the usage data. *

* * @param endDate * The ending date (e.g., 2016-12-31) of the usage data. * @return Returns a reference to this object so that method calls can be chained together. */ Builder endDate(String endDate); /** *

* The current pagination position in the paged result set. *

* * @param position * The current pagination position in the paged result set. * @return Returns a reference to this object so that method calls can be chained together. */ Builder position(String position); /** *

* The maximum number of returned results per page. *

* * @param limit * The maximum number of returned results per page. * @return Returns a reference to this object so that method calls can be chained together. */ Builder limit(Integer limit); @Override Builder requestOverrideConfig(AwsRequestOverrideConfig awsRequestOverrideConfig); } static final class BuilderImpl extends APIGatewayRequest.BuilderImpl implements Builder { private String usagePlanId; private String keyId; private String startDate; private String endDate; private String position; private Integer limit; private BuilderImpl() { } private BuilderImpl(GetUsageRequest model) { usagePlanId(model.usagePlanId); keyId(model.keyId); startDate(model.startDate); endDate(model.endDate); position(model.position); limit(model.limit); } public final String getUsagePlanId() { return usagePlanId; } @Override public final Builder usagePlanId(String usagePlanId) { this.usagePlanId = usagePlanId; return this; } public final void setUsagePlanId(String usagePlanId) { this.usagePlanId = usagePlanId; } public final String getKeyId() { return keyId; } @Override public final Builder keyId(String keyId) { this.keyId = keyId; return this; } public final void setKeyId(String keyId) { this.keyId = keyId; } public final String getStartDate() { return startDate; } @Override public final Builder startDate(String startDate) { this.startDate = startDate; return this; } public final void setStartDate(String startDate) { this.startDate = startDate; } public final String getEndDate() { return endDate; } @Override public final Builder endDate(String endDate) { this.endDate = endDate; return this; } public final void setEndDate(String endDate) { this.endDate = endDate; } public final String getPosition() { return position; } @Override public final Builder position(String position) { this.position = position; return this; } public final void setPosition(String position) { this.position = position; } public final Integer getLimit() { return limit; } @Override public final Builder limit(Integer limit) { this.limit = limit; return this; } public final void setLimit(Integer limit) { this.limit = limit; } @Override public Builder requestOverrideConfig(AwsRequestOverrideConfig awsRequestOverrideConfig) { super.requestOverrideConfig(awsRequestOverrideConfig); return this; } @Override public Builder requestOverrideConfig(Consumer builderConsumer) { super.requestOverrideConfig(builderConsumer); return this; } @Override public GetUsageRequest build() { return new GetUsageRequest(this); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy