com.hashicorp.cdktf.providers.kubernetes.Job Maven / Gradle / Ivy
package com.hashicorp.cdktf.providers.kubernetes;
/**
* Represents a {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html kubernetes_job}.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.41.0 (build a274beb)", date = "2021-10-29T04:10:50.290Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.providers.kubernetes.$Module.class, fqn = "@cdktf/provider-kubernetes.Job")
public class Job extends com.hashicorp.cdktf.TerraformResource {
protected Job(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected Job(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
TF_RESOURCE_TYPE = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.hashicorp.cdktf.providers.kubernetes.Job.class, "tfResourceType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Create a new {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html kubernetes_job} Resource.
*
* @param scope The scope in which to define this construct. This parameter is required.
* @param id The scoped construct ID. This parameter is required.
* @param config This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Job(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobConfig config) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(config, "config is required") });
}
/**
* @param value This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void putMetadata(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobMetadata value) {
software.amazon.jsii.Kernel.call(this, "putMetadata", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(value, "value is required") });
}
/**
* @param value This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void putSpec(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobSpec value) {
software.amazon.jsii.Kernel.call(this, "putSpec", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(value, "value is required") });
}
/**
* @param value
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void putTimeouts(final @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.kubernetes.JobTimeouts value) {
software.amazon.jsii.Kernel.call(this, "putTimeouts", software.amazon.jsii.NativeType.VOID, new Object[] { value });
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void putTimeouts() {
software.amazon.jsii.Kernel.call(this, "putTimeouts", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetTimeouts() {
software.amazon.jsii.Kernel.call(this, "resetTimeouts", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetWaitForCompletion() {
software.amazon.jsii.Kernel.call(this, "resetWaitForCompletion", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeAttributes() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public final static java.lang.String TF_RESOURCE_TYPE;
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getId() {
return software.amazon.jsii.Kernel.get(this, "id", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobMetadataOutputReference getMetadata() {
return software.amazon.jsii.Kernel.get(this, "metadata", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobMetadataOutputReference.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobSpecOutputReference getSpec() {
return software.amazon.jsii.Kernel.get(this, "spec", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobSpecOutputReference.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.kubernetes.JobTimeoutsOutputReference getTimeouts() {
return software.amazon.jsii.Kernel.get(this, "timeouts", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobTimeoutsOutputReference.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.kubernetes.JobMetadata getMetadataInput() {
return software.amazon.jsii.Kernel.get(this, "metadataInput", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobMetadata.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.kubernetes.JobSpec getSpecInput() {
return software.amazon.jsii.Kernel.get(this, "specInput", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobSpec.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.kubernetes.JobTimeouts getTimeoutsInput() {
return software.amazon.jsii.Kernel.get(this, "timeoutsInput", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.kubernetes.JobTimeouts.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getWaitForCompletionInput() {
return software.amazon.jsii.Kernel.get(this, "waitForCompletionInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getWaitForCompletion() {
return software.amazon.jsii.Kernel.get(this, "waitForCompletion", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setWaitForCompletion(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "waitForCompletion", value);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setWaitForCompletion(final @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "waitForCompletion", value);
}
/**
* A fluent builder for {@link com.hashicorp.cdktf.providers.kubernetes.Job}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param scope The scope in which to define this construct. This parameter is required.
* @param id The scoped construct ID. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static Builder create(final software.constructs.Construct scope, final java.lang.String id) {
return new Builder(scope, id);
}
private final software.constructs.Construct scope;
private final java.lang.String id;
private final com.hashicorp.cdktf.providers.kubernetes.JobConfig.Builder config;
private Builder(final software.constructs.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
this.config = new com.hashicorp.cdktf.providers.kubernetes.JobConfig.Builder();
}
/**
* @return {@code this}
* @param count This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(final java.lang.Number count) {
this.config.count(count);
return this;
}
/**
* @return {@code this}
* @param count This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(final com.hashicorp.cdktf.IResolvable count) {
this.config.count(count);
return this;
}
/**
* @return {@code this}
* @param dependsOn This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder dependsOn(final java.util.List extends com.hashicorp.cdktf.ITerraformDependable> dependsOn) {
this.config.dependsOn(dependsOn);
return this;
}
/**
* @return {@code this}
* @param lifecycle This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder lifecycle(final com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle) {
this.config.lifecycle(lifecycle);
return this;
}
/**
* @return {@code this}
* @param provider This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder provider(final com.hashicorp.cdktf.TerraformProvider provider) {
this.config.provider(provider);
return this;
}
/**
* metadata block.
*
* Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#metadata Job#metadata}
*
* @return {@code this}
* @param metadata metadata block. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder metadata(final com.hashicorp.cdktf.providers.kubernetes.JobMetadata metadata) {
this.config.metadata(metadata);
return this;
}
/**
* spec block.
*
* Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#spec Job#spec}
*
* @return {@code this}
* @param spec spec block. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder spec(final com.hashicorp.cdktf.providers.kubernetes.JobSpec spec) {
this.config.spec(spec);
return this;
}
/**
* timeouts block.
*
* Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#timeouts Job#timeouts}
*
* @return {@code this}
* @param timeouts timeouts block. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder timeouts(final com.hashicorp.cdktf.providers.kubernetes.JobTimeouts timeouts) {
this.config.timeouts(timeouts);
return this;
}
/**
* Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#wait_for_completion Job#wait_for_completion}.
*
* @return {@code this}
* @param waitForCompletion Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#wait_for_completion Job#wait_for_completion}. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder waitForCompletion(final java.lang.Boolean waitForCompletion) {
this.config.waitForCompletion(waitForCompletion);
return this;
}
/**
* Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#wait_for_completion Job#wait_for_completion}.
*
* @return {@code this}
* @param waitForCompletion Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/kubernetes/r/job.html#wait_for_completion Job#wait_for_completion}. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder waitForCompletion(final com.hashicorp.cdktf.IResolvable waitForCompletion) {
this.config.waitForCompletion(waitForCompletion);
return this;
}
/**
* @returns a newly built instance of {@link com.hashicorp.cdktf.providers.kubernetes.Job}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public com.hashicorp.cdktf.providers.kubernetes.Job build() {
return new com.hashicorp.cdktf.providers.kubernetes.Job(
this.scope,
this.id,
this.config.build()
);
}
}
}