Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.appsync.inputs.ApiCacheState Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.appsync.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class ApiCacheState extends com.pulumi.resources.ResourceArgs {
public static final ApiCacheState Empty = new ApiCacheState();
/**
* Caching behavior. Valid values are `FULL_REQUEST_CACHING` and `PER_RESOLVER_CACHING`.
*
*/
@Import(name="apiCachingBehavior")
private @Nullable Output apiCachingBehavior;
/**
* @return Caching behavior. Valid values are `FULL_REQUEST_CACHING` and `PER_RESOLVER_CACHING`.
*
*/
public Optional> apiCachingBehavior() {
return Optional.ofNullable(this.apiCachingBehavior);
}
/**
* GraphQL API ID.
*
*/
@Import(name="apiId")
private @Nullable Output apiId;
/**
* @return GraphQL API ID.
*
*/
public Optional> apiId() {
return Optional.ofNullable(this.apiId);
}
/**
* At-rest encryption flag for cache. You cannot update this setting after creation.
*
*/
@Import(name="atRestEncryptionEnabled")
private @Nullable Output atRestEncryptionEnabled;
/**
* @return At-rest encryption flag for cache. You cannot update this setting after creation.
*
*/
public Optional> atRestEncryptionEnabled() {
return Optional.ofNullable(this.atRestEncryptionEnabled);
}
/**
* Transit encryption flag when connecting to cache. You cannot update this setting after creation.
*
*/
@Import(name="transitEncryptionEnabled")
private @Nullable Output transitEncryptionEnabled;
/**
* @return Transit encryption flag when connecting to cache. You cannot update this setting after creation.
*
*/
public Optional> transitEncryptionEnabled() {
return Optional.ofNullable(this.transitEncryptionEnabled);
}
/**
* TTL in seconds for cache entries.
*
*/
@Import(name="ttl")
private @Nullable Output ttl;
/**
* @return TTL in seconds for cache entries.
*
*/
public Optional> ttl() {
return Optional.ofNullable(this.ttl);
}
/**
* Cache instance type. Valid values are `SMALL`, `MEDIUM`, `LARGE`, `XLARGE`, `LARGE_2X`, `LARGE_4X`, `LARGE_8X`, `LARGE_12X`, `T2_SMALL`, `T2_MEDIUM`, `R4_LARGE`, `R4_XLARGE`, `R4_2XLARGE`, `R4_4XLARGE`, `R4_8XLARGE`.
*
*/
@Import(name="type")
private @Nullable Output type;
/**
* @return Cache instance type. Valid values are `SMALL`, `MEDIUM`, `LARGE`, `XLARGE`, `LARGE_2X`, `LARGE_4X`, `LARGE_8X`, `LARGE_12X`, `T2_SMALL`, `T2_MEDIUM`, `R4_LARGE`, `R4_XLARGE`, `R4_2XLARGE`, `R4_4XLARGE`, `R4_8XLARGE`.
*
*/
public Optional> type() {
return Optional.ofNullable(this.type);
}
private ApiCacheState() {}
private ApiCacheState(ApiCacheState $) {
this.apiCachingBehavior = $.apiCachingBehavior;
this.apiId = $.apiId;
this.atRestEncryptionEnabled = $.atRestEncryptionEnabled;
this.transitEncryptionEnabled = $.transitEncryptionEnabled;
this.ttl = $.ttl;
this.type = $.type;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ApiCacheState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private ApiCacheState $;
public Builder() {
$ = new ApiCacheState();
}
public Builder(ApiCacheState defaults) {
$ = new ApiCacheState(Objects.requireNonNull(defaults));
}
/**
* @param apiCachingBehavior Caching behavior. Valid values are `FULL_REQUEST_CACHING` and `PER_RESOLVER_CACHING`.
*
* @return builder
*
*/
public Builder apiCachingBehavior(@Nullable Output apiCachingBehavior) {
$.apiCachingBehavior = apiCachingBehavior;
return this;
}
/**
* @param apiCachingBehavior Caching behavior. Valid values are `FULL_REQUEST_CACHING` and `PER_RESOLVER_CACHING`.
*
* @return builder
*
*/
public Builder apiCachingBehavior(String apiCachingBehavior) {
return apiCachingBehavior(Output.of(apiCachingBehavior));
}
/**
* @param apiId GraphQL API ID.
*
* @return builder
*
*/
public Builder apiId(@Nullable Output apiId) {
$.apiId = apiId;
return this;
}
/**
* @param apiId GraphQL API ID.
*
* @return builder
*
*/
public Builder apiId(String apiId) {
return apiId(Output.of(apiId));
}
/**
* @param atRestEncryptionEnabled At-rest encryption flag for cache. You cannot update this setting after creation.
*
* @return builder
*
*/
public Builder atRestEncryptionEnabled(@Nullable Output atRestEncryptionEnabled) {
$.atRestEncryptionEnabled = atRestEncryptionEnabled;
return this;
}
/**
* @param atRestEncryptionEnabled At-rest encryption flag for cache. You cannot update this setting after creation.
*
* @return builder
*
*/
public Builder atRestEncryptionEnabled(Boolean atRestEncryptionEnabled) {
return atRestEncryptionEnabled(Output.of(atRestEncryptionEnabled));
}
/**
* @param transitEncryptionEnabled Transit encryption flag when connecting to cache. You cannot update this setting after creation.
*
* @return builder
*
*/
public Builder transitEncryptionEnabled(@Nullable Output transitEncryptionEnabled) {
$.transitEncryptionEnabled = transitEncryptionEnabled;
return this;
}
/**
* @param transitEncryptionEnabled Transit encryption flag when connecting to cache. You cannot update this setting after creation.
*
* @return builder
*
*/
public Builder transitEncryptionEnabled(Boolean transitEncryptionEnabled) {
return transitEncryptionEnabled(Output.of(transitEncryptionEnabled));
}
/**
* @param ttl TTL in seconds for cache entries.
*
* @return builder
*
*/
public Builder ttl(@Nullable Output ttl) {
$.ttl = ttl;
return this;
}
/**
* @param ttl TTL in seconds for cache entries.
*
* @return builder
*
*/
public Builder ttl(Integer ttl) {
return ttl(Output.of(ttl));
}
/**
* @param type Cache instance type. Valid values are `SMALL`, `MEDIUM`, `LARGE`, `XLARGE`, `LARGE_2X`, `LARGE_4X`, `LARGE_8X`, `LARGE_12X`, `T2_SMALL`, `T2_MEDIUM`, `R4_LARGE`, `R4_XLARGE`, `R4_2XLARGE`, `R4_4XLARGE`, `R4_8XLARGE`.
*
* @return builder
*
*/
public Builder type(@Nullable Output type) {
$.type = type;
return this;
}
/**
* @param type Cache instance type. Valid values are `SMALL`, `MEDIUM`, `LARGE`, `XLARGE`, `LARGE_2X`, `LARGE_4X`, `LARGE_8X`, `LARGE_12X`, `T2_SMALL`, `T2_MEDIUM`, `R4_LARGE`, `R4_XLARGE`, `R4_2XLARGE`, `R4_4XLARGE`, `R4_8XLARGE`.
*
* @return builder
*
*/
public Builder type(String type) {
return type(Output.of(type));
}
public ApiCacheState build() {
return $;
}
}
}