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.linode.ObjectStorageObjectArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing linode cloud resources.
// *** 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.linode;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class ObjectStorageObjectArgs extends com.pulumi.resources.ResourceArgs {
public static final ObjectStorageObjectArgs Empty = new ObjectStorageObjectArgs();
/**
* The REQUIRED access key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_access_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
*/
@Import(name="accessKey")
private @Nullable Output accessKey;
/**
* @return The REQUIRED access key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_access_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
*/
public Optional> accessKey() {
return Optional.ofNullable(this.accessKey);
}
/**
* The canned ACL to apply. (`private`, `public-read`, `authenticated-read`, `public-read-write`, `custom`) (defaults to `private`).
*
*/
@Import(name="acl")
private @Nullable Output acl;
/**
* @return The canned ACL to apply. (`private`, `public-read`, `authenticated-read`, `public-read-write`, `custom`) (defaults to `private`).
*
*/
public Optional> acl() {
return Optional.ofNullable(this.acl);
}
/**
* The name of the bucket to put the object in.
*
*/
@Import(name="bucket", required=true)
private Output bucket;
/**
* @return The name of the bucket to put the object in.
*
*/
public Output bucket() {
return this.bucket;
}
/**
* Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details.
*
*/
@Import(name="cacheControl")
private @Nullable Output cacheControl;
/**
* @return Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details.
*
*/
public Optional> cacheControl() {
return Optional.ofNullable(this.cacheControl);
}
/**
* The cluster the bucket is in. Required if `region` is not configured. Deprecated in favor of `region`.
*
* @deprecated
* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`.
*
*/
@Deprecated /* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`. */
@Import(name="cluster")
private @Nullable Output cluster;
/**
* @return The cluster the bucket is in. Required if `region` is not configured. Deprecated in favor of `region`.
*
* @deprecated
* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`.
*
*/
@Deprecated /* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`. */
public Optional> cluster() {
return Optional.ofNullable(this.cluster);
}
/**
* Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
*
*/
@Import(name="content")
private @Nullable Output content;
/**
* @return Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
*
*/
public Optional> content() {
return Optional.ofNullable(this.content);
}
/**
* Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the `gzipbase64` function with small text strings. For larger objects, use `source` to stream the content from a disk file.
*
*/
@Import(name="contentBase64")
private @Nullable Output contentBase64;
/**
* @return Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the `gzipbase64` function with small text strings. For larger objects, use `source` to stream the content from a disk file.
*
*/
public Optional> contentBase64() {
return Optional.ofNullable(this.contentBase64);
}
/**
* Specifies presentational information for the object. Read [w3c content_disposition](http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1) for further information.
*
*/
@Import(name="contentDisposition")
private @Nullable Output contentDisposition;
/**
* @return Specifies presentational information for the object. Read [w3c content_disposition](http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1) for further information.
*
*/
public Optional> contentDisposition() {
return Optional.ofNullable(this.contentDisposition);
}
/**
* Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read [w3c content encoding](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11) for further information.
*
*/
@Import(name="contentEncoding")
private @Nullable Output contentEncoding;
/**
* @return Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read [w3c content encoding](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11) for further information.
*
*/
public Optional> contentEncoding() {
return Optional.ofNullable(this.contentEncoding);
}
/**
* The language the content is in e.g. en-US or en-GB.
*
*/
@Import(name="contentLanguage")
private @Nullable Output contentLanguage;
/**
* @return The language the content is in e.g. en-US or en-GB.
*
*/
public Optional> contentLanguage() {
return Optional.ofNullable(this.contentLanguage);
}
/**
* A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.
*
*/
@Import(name="contentType")
private @Nullable Output contentType;
/**
* @return A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.
*
*/
public Optional> contentType() {
return Optional.ofNullable(this.contentType);
}
/**
* Used with the s3 client to make bucket changes and will be computed automatically if left blank, override for testing/debug purposes.
*
*/
@Import(name="endpoint")
private @Nullable Output endpoint;
/**
* @return Used with the s3 client to make bucket changes and will be computed automatically if left blank, override for testing/debug purposes.
*
*/
public Optional> endpoint() {
return Optional.ofNullable(this.endpoint);
}
/**
* The specific version of this object.
*
*/
@Import(name="etag")
private @Nullable Output etag;
/**
* @return The specific version of this object.
*
*/
public Optional> etag() {
return Optional.ofNullable(this.etag);
}
/**
* Allow the object to be deleted regardless of any legal hold or object lock (defaults to `false`).
*
*/
@Import(name="forceDestroy")
private @Nullable Output forceDestroy;
/**
* @return Allow the object to be deleted regardless of any legal hold or object lock (defaults to `false`).
*
*/
public Optional> forceDestroy() {
return Optional.ofNullable(this.forceDestroy);
}
/**
* They name of the object once it is in the bucket.
*
*/
@Import(name="key", required=true)
private Output key;
/**
* @return They name of the object once it is in the bucket.
*
*/
public Output key() {
return this.key;
}
/**
* A map of keys/values to provision metadata.
*
*/
@Import(name="metadata")
private @Nullable Output> metadata;
/**
* @return A map of keys/values to provision metadata.
*
*/
public Optional>> metadata() {
return Optional.ofNullable(this.metadata);
}
/**
* The cluster the bucket is in. Required if `cluster` is not configured.
*
*/
@Import(name="region")
private @Nullable Output region;
/**
* @return The cluster the bucket is in. Required if `cluster` is not configured.
*
*/
public Optional> region() {
return Optional.ofNullable(this.region);
}
/**
* The REQUIRED secret key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_secret_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
*/
@Import(name="secretKey")
private @Nullable Output secretKey;
/**
* @return The REQUIRED secret key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_secret_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
*/
public Optional> secretKey() {
return Optional.ofNullable(this.secretKey);
}
/**
* The path to a file that will be read and uploaded as raw bytes for the object content. The path must either be relative to the root module or absolute.
*
*/
@Import(name="source")
private @Nullable Output source;
/**
* @return The path to a file that will be read and uploaded as raw bytes for the object content. The path must either be relative to the root module or absolute.
*
*/
public Optional> source() {
return Optional.ofNullable(this.source);
}
/**
* Specifies a target URL for website redirect.
*
*/
@Import(name="websiteRedirect")
private @Nullable Output websiteRedirect;
/**
* @return Specifies a target URL for website redirect.
*
*/
public Optional> websiteRedirect() {
return Optional.ofNullable(this.websiteRedirect);
}
private ObjectStorageObjectArgs() {}
private ObjectStorageObjectArgs(ObjectStorageObjectArgs $) {
this.accessKey = $.accessKey;
this.acl = $.acl;
this.bucket = $.bucket;
this.cacheControl = $.cacheControl;
this.cluster = $.cluster;
this.content = $.content;
this.contentBase64 = $.contentBase64;
this.contentDisposition = $.contentDisposition;
this.contentEncoding = $.contentEncoding;
this.contentLanguage = $.contentLanguage;
this.contentType = $.contentType;
this.endpoint = $.endpoint;
this.etag = $.etag;
this.forceDestroy = $.forceDestroy;
this.key = $.key;
this.metadata = $.metadata;
this.region = $.region;
this.secretKey = $.secretKey;
this.source = $.source;
this.websiteRedirect = $.websiteRedirect;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ObjectStorageObjectArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private ObjectStorageObjectArgs $;
public Builder() {
$ = new ObjectStorageObjectArgs();
}
public Builder(ObjectStorageObjectArgs defaults) {
$ = new ObjectStorageObjectArgs(Objects.requireNonNull(defaults));
}
/**
* @param accessKey The REQUIRED access key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_access_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
* @return builder
*
*/
public Builder accessKey(@Nullable Output accessKey) {
$.accessKey = accessKey;
return this;
}
/**
* @param accessKey The REQUIRED access key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_access_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
* @return builder
*
*/
public Builder accessKey(String accessKey) {
return accessKey(Output.of(accessKey));
}
/**
* @param acl The canned ACL to apply. (`private`, `public-read`, `authenticated-read`, `public-read-write`, `custom`) (defaults to `private`).
*
* @return builder
*
*/
public Builder acl(@Nullable Output acl) {
$.acl = acl;
return this;
}
/**
* @param acl The canned ACL to apply. (`private`, `public-read`, `authenticated-read`, `public-read-write`, `custom`) (defaults to `private`).
*
* @return builder
*
*/
public Builder acl(String acl) {
return acl(Output.of(acl));
}
/**
* @param bucket The name of the bucket to put the object in.
*
* @return builder
*
*/
public Builder bucket(Output bucket) {
$.bucket = bucket;
return this;
}
/**
* @param bucket The name of the bucket to put the object in.
*
* @return builder
*
*/
public Builder bucket(String bucket) {
return bucket(Output.of(bucket));
}
/**
* @param cacheControl Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details.
*
* @return builder
*
*/
public Builder cacheControl(@Nullable Output cacheControl) {
$.cacheControl = cacheControl;
return this;
}
/**
* @param cacheControl Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details.
*
* @return builder
*
*/
public Builder cacheControl(String cacheControl) {
return cacheControl(Output.of(cacheControl));
}
/**
* @param cluster The cluster the bucket is in. Required if `region` is not configured. Deprecated in favor of `region`.
*
* @return builder
*
* @deprecated
* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`.
*
*/
@Deprecated /* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`. */
public Builder cluster(@Nullable Output cluster) {
$.cluster = cluster;
return this;
}
/**
* @param cluster The cluster the bucket is in. Required if `region` is not configured. Deprecated in favor of `region`.
*
* @return builder
*
* @deprecated
* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`.
*
*/
@Deprecated /* The cluster attribute has been deprecated, please consider switching to the region attribute. For example, a cluster value of `us-mia-1` can be translated to a region value of `us-mia`. */
public Builder cluster(String cluster) {
return cluster(Output.of(cluster));
}
/**
* @param content Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
*
* @return builder
*
*/
public Builder content(@Nullable Output content) {
$.content = content;
return this;
}
/**
* @param content Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.
*
* @return builder
*
*/
public Builder content(String content) {
return content(Output.of(content));
}
/**
* @param contentBase64 Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the `gzipbase64` function with small text strings. For larger objects, use `source` to stream the content from a disk file.
*
* @return builder
*
*/
public Builder contentBase64(@Nullable Output contentBase64) {
$.contentBase64 = contentBase64;
return this;
}
/**
* @param contentBase64 Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the `gzipbase64` function with small text strings. For larger objects, use `source` to stream the content from a disk file.
*
* @return builder
*
*/
public Builder contentBase64(String contentBase64) {
return contentBase64(Output.of(contentBase64));
}
/**
* @param contentDisposition Specifies presentational information for the object. Read [w3c content_disposition](http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1) for further information.
*
* @return builder
*
*/
public Builder contentDisposition(@Nullable Output contentDisposition) {
$.contentDisposition = contentDisposition;
return this;
}
/**
* @param contentDisposition Specifies presentational information for the object. Read [w3c content_disposition](http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1) for further information.
*
* @return builder
*
*/
public Builder contentDisposition(String contentDisposition) {
return contentDisposition(Output.of(contentDisposition));
}
/**
* @param contentEncoding Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read [w3c content encoding](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11) for further information.
*
* @return builder
*
*/
public Builder contentEncoding(@Nullable Output contentEncoding) {
$.contentEncoding = contentEncoding;
return this;
}
/**
* @param contentEncoding Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read [w3c content encoding](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11) for further information.
*
* @return builder
*
*/
public Builder contentEncoding(String contentEncoding) {
return contentEncoding(Output.of(contentEncoding));
}
/**
* @param contentLanguage The language the content is in e.g. en-US or en-GB.
*
* @return builder
*
*/
public Builder contentLanguage(@Nullable Output contentLanguage) {
$.contentLanguage = contentLanguage;
return this;
}
/**
* @param contentLanguage The language the content is in e.g. en-US or en-GB.
*
* @return builder
*
*/
public Builder contentLanguage(String contentLanguage) {
return contentLanguage(Output.of(contentLanguage));
}
/**
* @param contentType A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.
*
* @return builder
*
*/
public Builder contentType(@Nullable Output contentType) {
$.contentType = contentType;
return this;
}
/**
* @param contentType A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.
*
* @return builder
*
*/
public Builder contentType(String contentType) {
return contentType(Output.of(contentType));
}
/**
* @param endpoint Used with the s3 client to make bucket changes and will be computed automatically if left blank, override for testing/debug purposes.
*
* @return builder
*
*/
public Builder endpoint(@Nullable Output endpoint) {
$.endpoint = endpoint;
return this;
}
/**
* @param endpoint Used with the s3 client to make bucket changes and will be computed automatically if left blank, override for testing/debug purposes.
*
* @return builder
*
*/
public Builder endpoint(String endpoint) {
return endpoint(Output.of(endpoint));
}
/**
* @param etag The specific version of this object.
*
* @return builder
*
*/
public Builder etag(@Nullable Output etag) {
$.etag = etag;
return this;
}
/**
* @param etag The specific version of this object.
*
* @return builder
*
*/
public Builder etag(String etag) {
return etag(Output.of(etag));
}
/**
* @param forceDestroy Allow the object to be deleted regardless of any legal hold or object lock (defaults to `false`).
*
* @return builder
*
*/
public Builder forceDestroy(@Nullable Output forceDestroy) {
$.forceDestroy = forceDestroy;
return this;
}
/**
* @param forceDestroy Allow the object to be deleted regardless of any legal hold or object lock (defaults to `false`).
*
* @return builder
*
*/
public Builder forceDestroy(Boolean forceDestroy) {
return forceDestroy(Output.of(forceDestroy));
}
/**
* @param key They name of the object once it is in the bucket.
*
* @return builder
*
*/
public Builder key(Output key) {
$.key = key;
return this;
}
/**
* @param key They name of the object once it is in the bucket.
*
* @return builder
*
*/
public Builder key(String key) {
return key(Output.of(key));
}
/**
* @param metadata A map of keys/values to provision metadata.
*
* @return builder
*
*/
public Builder metadata(@Nullable Output> metadata) {
$.metadata = metadata;
return this;
}
/**
* @param metadata A map of keys/values to provision metadata.
*
* @return builder
*
*/
public Builder metadata(Map metadata) {
return metadata(Output.of(metadata));
}
/**
* @param region The cluster the bucket is in. Required if `cluster` is not configured.
*
* @return builder
*
*/
public Builder region(@Nullable Output region) {
$.region = region;
return this;
}
/**
* @param region The cluster the bucket is in. Required if `cluster` is not configured.
*
* @return builder
*
*/
public Builder region(String region) {
return region(Output.of(region));
}
/**
* @param secretKey The REQUIRED secret key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_secret_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
* @return builder
*
*/
public Builder secretKey(@Nullable Output secretKey) {
$.secretKey = secretKey;
return this;
}
/**
* @param secretKey The REQUIRED secret key to authenticate with. If it's not specified with the resource, you must provide its value by
* * configuring the `obj_secret_key` in the provider configuration;
* * or, opting-in generating it implicitly at apply-time using `obj_use_temp_keys` at provider-level.
*
* @return builder
*
*/
public Builder secretKey(String secretKey) {
return secretKey(Output.of(secretKey));
}
/**
* @param source The path to a file that will be read and uploaded as raw bytes for the object content. The path must either be relative to the root module or absolute.
*
* @return builder
*
*/
public Builder source(@Nullable Output source) {
$.source = source;
return this;
}
/**
* @param source The path to a file that will be read and uploaded as raw bytes for the object content. The path must either be relative to the root module or absolute.
*
* @return builder
*
*/
public Builder source(String source) {
return source(Output.of(source));
}
/**
* @param websiteRedirect Specifies a target URL for website redirect.
*
* @return builder
*
*/
public Builder websiteRedirect(@Nullable Output websiteRedirect) {
$.websiteRedirect = websiteRedirect;
return this;
}
/**
* @param websiteRedirect Specifies a target URL for website redirect.
*
* @return builder
*
*/
public Builder websiteRedirect(String websiteRedirect) {
return websiteRedirect(Output.of(websiteRedirect));
}
public ObjectStorageObjectArgs build() {
if ($.bucket == null) {
throw new MissingRequiredPropertyException("ObjectStorageObjectArgs", "bucket");
}
if ($.key == null) {
throw new MissingRequiredPropertyException("ObjectStorageObjectArgs", "key");
}
return $;
}
}
}