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

com.pulumi.azurenative.containerinstance.outputs.ContainerResponse Maven / Gradle / Ivy

There is a newer version: 2.82.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.containerinstance.outputs;

import com.pulumi.azurenative.containerinstance.outputs.ContainerPortResponse;
import com.pulumi.azurenative.containerinstance.outputs.ContainerProbeResponse;
import com.pulumi.azurenative.containerinstance.outputs.ContainerPropertiesResponseInstanceView;
import com.pulumi.azurenative.containerinstance.outputs.EnvironmentVariableResponse;
import com.pulumi.azurenative.containerinstance.outputs.ResourceRequirementsResponse;
import com.pulumi.azurenative.containerinstance.outputs.SecurityContextDefinitionResponse;
import com.pulumi.azurenative.containerinstance.outputs.VolumeMountResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class ContainerResponse {
    /**
     * @return The commands to execute within the container instance in exec form.
     * 
     */
    private @Nullable List command;
    /**
     * @return The environment variables to set in the container instance.
     * 
     */
    private @Nullable List environmentVariables;
    /**
     * @return The name of the image used to create the container instance.
     * 
     */
    private String image;
    /**
     * @return The instance view of the container instance. Only valid in response.
     * 
     */
    private ContainerPropertiesResponseInstanceView instanceView;
    /**
     * @return The liveness probe.
     * 
     */
    private @Nullable ContainerProbeResponse livenessProbe;
    /**
     * @return The user-provided name of the container instance.
     * 
     */
    private String name;
    /**
     * @return The exposed ports on the container instance.
     * 
     */
    private @Nullable List ports;
    /**
     * @return The readiness probe.
     * 
     */
    private @Nullable ContainerProbeResponse readinessProbe;
    /**
     * @return The resource requirements of the container instance.
     * 
     */
    private ResourceRequirementsResponse resources;
    /**
     * @return The container security properties.
     * 
     */
    private @Nullable SecurityContextDefinitionResponse securityContext;
    /**
     * @return The volume mounts available to the container instance.
     * 
     */
    private @Nullable List volumeMounts;

    private ContainerResponse() {}
    /**
     * @return The commands to execute within the container instance in exec form.
     * 
     */
    public List command() {
        return this.command == null ? List.of() : this.command;
    }
    /**
     * @return The environment variables to set in the container instance.
     * 
     */
    public List environmentVariables() {
        return this.environmentVariables == null ? List.of() : this.environmentVariables;
    }
    /**
     * @return The name of the image used to create the container instance.
     * 
     */
    public String image() {
        return this.image;
    }
    /**
     * @return The instance view of the container instance. Only valid in response.
     * 
     */
    public ContainerPropertiesResponseInstanceView instanceView() {
        return this.instanceView;
    }
    /**
     * @return The liveness probe.
     * 
     */
    public Optional livenessProbe() {
        return Optional.ofNullable(this.livenessProbe);
    }
    /**
     * @return The user-provided name of the container instance.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The exposed ports on the container instance.
     * 
     */
    public List ports() {
        return this.ports == null ? List.of() : this.ports;
    }
    /**
     * @return The readiness probe.
     * 
     */
    public Optional readinessProbe() {
        return Optional.ofNullable(this.readinessProbe);
    }
    /**
     * @return The resource requirements of the container instance.
     * 
     */
    public ResourceRequirementsResponse resources() {
        return this.resources;
    }
    /**
     * @return The container security properties.
     * 
     */
    public Optional securityContext() {
        return Optional.ofNullable(this.securityContext);
    }
    /**
     * @return The volume mounts available to the container instance.
     * 
     */
    public List volumeMounts() {
        return this.volumeMounts == null ? List.of() : this.volumeMounts;
    }

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

    public static Builder builder(ContainerResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List command;
        private @Nullable List environmentVariables;
        private String image;
        private ContainerPropertiesResponseInstanceView instanceView;
        private @Nullable ContainerProbeResponse livenessProbe;
        private String name;
        private @Nullable List ports;
        private @Nullable ContainerProbeResponse readinessProbe;
        private ResourceRequirementsResponse resources;
        private @Nullable SecurityContextDefinitionResponse securityContext;
        private @Nullable List volumeMounts;
        public Builder() {}
        public Builder(ContainerResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.command = defaults.command;
    	      this.environmentVariables = defaults.environmentVariables;
    	      this.image = defaults.image;
    	      this.instanceView = defaults.instanceView;
    	      this.livenessProbe = defaults.livenessProbe;
    	      this.name = defaults.name;
    	      this.ports = defaults.ports;
    	      this.readinessProbe = defaults.readinessProbe;
    	      this.resources = defaults.resources;
    	      this.securityContext = defaults.securityContext;
    	      this.volumeMounts = defaults.volumeMounts;
        }

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

            this.command = command;
            return this;
        }
        public Builder command(String... command) {
            return command(List.of(command));
        }
        @CustomType.Setter
        public Builder environmentVariables(@Nullable List environmentVariables) {

            this.environmentVariables = environmentVariables;
            return this;
        }
        public Builder environmentVariables(EnvironmentVariableResponse... environmentVariables) {
            return environmentVariables(List.of(environmentVariables));
        }
        @CustomType.Setter
        public Builder image(String image) {
            if (image == null) {
              throw new MissingRequiredPropertyException("ContainerResponse", "image");
            }
            this.image = image;
            return this;
        }
        @CustomType.Setter
        public Builder instanceView(ContainerPropertiesResponseInstanceView instanceView) {
            if (instanceView == null) {
              throw new MissingRequiredPropertyException("ContainerResponse", "instanceView");
            }
            this.instanceView = instanceView;
            return this;
        }
        @CustomType.Setter
        public Builder livenessProbe(@Nullable ContainerProbeResponse livenessProbe) {

            this.livenessProbe = livenessProbe;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("ContainerResponse", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder ports(@Nullable List ports) {

            this.ports = ports;
            return this;
        }
        public Builder ports(ContainerPortResponse... ports) {
            return ports(List.of(ports));
        }
        @CustomType.Setter
        public Builder readinessProbe(@Nullable ContainerProbeResponse readinessProbe) {

            this.readinessProbe = readinessProbe;
            return this;
        }
        @CustomType.Setter
        public Builder resources(ResourceRequirementsResponse resources) {
            if (resources == null) {
              throw new MissingRequiredPropertyException("ContainerResponse", "resources");
            }
            this.resources = resources;
            return this;
        }
        @CustomType.Setter
        public Builder securityContext(@Nullable SecurityContextDefinitionResponse securityContext) {

            this.securityContext = securityContext;
            return this;
        }
        @CustomType.Setter
        public Builder volumeMounts(@Nullable List volumeMounts) {

            this.volumeMounts = volumeMounts;
            return this;
        }
        public Builder volumeMounts(VolumeMountResponse... volumeMounts) {
            return volumeMounts(List.of(volumeMounts));
        }
        public ContainerResponse build() {
            final var _resultValue = new ContainerResponse();
            _resultValue.command = command;
            _resultValue.environmentVariables = environmentVariables;
            _resultValue.image = image;
            _resultValue.instanceView = instanceView;
            _resultValue.livenessProbe = livenessProbe;
            _resultValue.name = name;
            _resultValue.ports = ports;
            _resultValue.readinessProbe = readinessProbe;
            _resultValue.resources = resources;
            _resultValue.securityContext = securityContext;
            _resultValue.volumeMounts = volumeMounts;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy