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

com.pulumi.azurenative.awsconnector.outputs.EmrClusterStatusResponse Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** 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.azurenative.awsconnector.outputs;

import com.pulumi.azurenative.awsconnector.outputs.ClusterStateChangeReasonResponse;
import com.pulumi.azurenative.awsconnector.outputs.ClusterStateEnumValueResponse;
import com.pulumi.azurenative.awsconnector.outputs.ClusterTimelineResponse;
import com.pulumi.azurenative.awsconnector.outputs.ErrorDetailResponse;
import com.pulumi.core.annotations.CustomType;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class EmrClusterStatusResponse {
    /**
     * @return <p>A list of tuples that provides information about the errors that caused a cluster to terminate. This structure can contain up to 10 different <code>ErrorDetail</code> tuples.</p>
     * 
     */
    private @Nullable List errorDetails;
    /**
     * @return <p>The current state of the cluster.</p>
     * 
     */
    private @Nullable ClusterStateEnumValueResponse state;
    /**
     * @return <p>The reason for the cluster status change.</p>
     * 
     */
    private @Nullable ClusterStateChangeReasonResponse stateChangeReason;
    /**
     * @return <p>A timeline that represents the status of a cluster over the lifetime of the cluster.</p>
     * 
     */
    private @Nullable ClusterTimelineResponse timeline;

    private EmrClusterStatusResponse() {}
    /**
     * @return <p>A list of tuples that provides information about the errors that caused a cluster to terminate. This structure can contain up to 10 different <code>ErrorDetail</code> tuples.</p>
     * 
     */
    public List errorDetails() {
        return this.errorDetails == null ? List.of() : this.errorDetails;
    }
    /**
     * @return <p>The current state of the cluster.</p>
     * 
     */
    public Optional state() {
        return Optional.ofNullable(this.state);
    }
    /**
     * @return <p>The reason for the cluster status change.</p>
     * 
     */
    public Optional stateChangeReason() {
        return Optional.ofNullable(this.stateChangeReason);
    }
    /**
     * @return <p>A timeline that represents the status of a cluster over the lifetime of the cluster.</p>
     * 
     */
    public Optional timeline() {
        return Optional.ofNullable(this.timeline);
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(EmrClusterStatusResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List errorDetails;
        private @Nullable ClusterStateEnumValueResponse state;
        private @Nullable ClusterStateChangeReasonResponse stateChangeReason;
        private @Nullable ClusterTimelineResponse timeline;
        public Builder() {}
        public Builder(EmrClusterStatusResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.errorDetails = defaults.errorDetails;
    	      this.state = defaults.state;
    	      this.stateChangeReason = defaults.stateChangeReason;
    	      this.timeline = defaults.timeline;
        }

        @CustomType.Setter
        public Builder errorDetails(@Nullable List errorDetails) {

            this.errorDetails = errorDetails;
            return this;
        }
        public Builder errorDetails(ErrorDetailResponse... errorDetails) {
            return errorDetails(List.of(errorDetails));
        }
        @CustomType.Setter
        public Builder state(@Nullable ClusterStateEnumValueResponse state) {

            this.state = state;
            return this;
        }
        @CustomType.Setter
        public Builder stateChangeReason(@Nullable ClusterStateChangeReasonResponse stateChangeReason) {

            this.stateChangeReason = stateChangeReason;
            return this;
        }
        @CustomType.Setter
        public Builder timeline(@Nullable ClusterTimelineResponse timeline) {

            this.timeline = timeline;
            return this;
        }
        public EmrClusterStatusResponse build() {
            final var _resultValue = new EmrClusterStatusResponse();
            _resultValue.errorDetails = errorDetails;
            _resultValue.state = state;
            _resultValue.stateChangeReason = stateChangeReason;
            _resultValue.timeline = timeline;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy