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

com.pulumi.azurenative.azurestackhci.outputs.RemoteSupportJobReportedPropertiesResponse 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.azurenative.azurestackhci.outputs;

import com.pulumi.azurenative.azurestackhci.outputs.EceActionStatusResponse;
import com.pulumi.azurenative.azurestackhci.outputs.RemoteSupportJobNodeSettingsResponse;
import com.pulumi.azurenative.azurestackhci.outputs.RemoteSupportSessionResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.util.List;
import java.util.Objects;

@CustomType
public final class RemoteSupportJobReportedPropertiesResponse {
    /**
     * @return Deployment status of job.
     * 
     */
    private EceActionStatusResponse deploymentStatus;
    /**
     * @return Optional settings for configuring the node for remote support.
     * 
     */
    private RemoteSupportJobNodeSettingsResponse nodeSettings;
    /**
     * @return The percentage of the job that is complete.
     * 
     */
    private Integer percentComplete;
    /**
     * @return Details of the remote support session.
     * 
     */
    private List sessionDetails;
    /**
     * @return Validation status of job.
     * 
     */
    private EceActionStatusResponse validationStatus;

    private RemoteSupportJobReportedPropertiesResponse() {}
    /**
     * @return Deployment status of job.
     * 
     */
    public EceActionStatusResponse deploymentStatus() {
        return this.deploymentStatus;
    }
    /**
     * @return Optional settings for configuring the node for remote support.
     * 
     */
    public RemoteSupportJobNodeSettingsResponse nodeSettings() {
        return this.nodeSettings;
    }
    /**
     * @return The percentage of the job that is complete.
     * 
     */
    public Integer percentComplete() {
        return this.percentComplete;
    }
    /**
     * @return Details of the remote support session.
     * 
     */
    public List sessionDetails() {
        return this.sessionDetails;
    }
    /**
     * @return Validation status of job.
     * 
     */
    public EceActionStatusResponse validationStatus() {
        return this.validationStatus;
    }

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

    public static Builder builder(RemoteSupportJobReportedPropertiesResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private EceActionStatusResponse deploymentStatus;
        private RemoteSupportJobNodeSettingsResponse nodeSettings;
        private Integer percentComplete;
        private List sessionDetails;
        private EceActionStatusResponse validationStatus;
        public Builder() {}
        public Builder(RemoteSupportJobReportedPropertiesResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.deploymentStatus = defaults.deploymentStatus;
    	      this.nodeSettings = defaults.nodeSettings;
    	      this.percentComplete = defaults.percentComplete;
    	      this.sessionDetails = defaults.sessionDetails;
    	      this.validationStatus = defaults.validationStatus;
        }

        @CustomType.Setter
        public Builder deploymentStatus(EceActionStatusResponse deploymentStatus) {
            if (deploymentStatus == null) {
              throw new MissingRequiredPropertyException("RemoteSupportJobReportedPropertiesResponse", "deploymentStatus");
            }
            this.deploymentStatus = deploymentStatus;
            return this;
        }
        @CustomType.Setter
        public Builder nodeSettings(RemoteSupportJobNodeSettingsResponse nodeSettings) {
            if (nodeSettings == null) {
              throw new MissingRequiredPropertyException("RemoteSupportJobReportedPropertiesResponse", "nodeSettings");
            }
            this.nodeSettings = nodeSettings;
            return this;
        }
        @CustomType.Setter
        public Builder percentComplete(Integer percentComplete) {
            if (percentComplete == null) {
              throw new MissingRequiredPropertyException("RemoteSupportJobReportedPropertiesResponse", "percentComplete");
            }
            this.percentComplete = percentComplete;
            return this;
        }
        @CustomType.Setter
        public Builder sessionDetails(List sessionDetails) {
            if (sessionDetails == null) {
              throw new MissingRequiredPropertyException("RemoteSupportJobReportedPropertiesResponse", "sessionDetails");
            }
            this.sessionDetails = sessionDetails;
            return this;
        }
        public Builder sessionDetails(RemoteSupportSessionResponse... sessionDetails) {
            return sessionDetails(List.of(sessionDetails));
        }
        @CustomType.Setter
        public Builder validationStatus(EceActionStatusResponse validationStatus) {
            if (validationStatus == null) {
              throw new MissingRequiredPropertyException("RemoteSupportJobReportedPropertiesResponse", "validationStatus");
            }
            this.validationStatus = validationStatus;
            return this;
        }
        public RemoteSupportJobReportedPropertiesResponse build() {
            final var _resultValue = new RemoteSupportJobReportedPropertiesResponse();
            _resultValue.deploymentStatus = deploymentStatus;
            _resultValue.nodeSettings = nodeSettings;
            _resultValue.percentComplete = percentComplete;
            _resultValue.sessionDetails = sessionDetails;
            _resultValue.validationStatus = validationStatus;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy