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

com.pulumi.azurenative.iotoperationsmq.outputs.DiskBackedMessageBufferSettingsResponse 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.iotoperationsmq.outputs;

import com.pulumi.azurenative.iotoperationsmq.outputs.VolumeClaimSpecResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class DiskBackedMessageBufferSettingsResponse {
    /**
     * @return Use the specified persistent volume claim template to mount a "generic ephemeral volume" for the message buffer. See <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes> for details.
     * 
     */
    private @Nullable VolumeClaimSpecResponse ephemeralVolumeClaimSpec;
    /**
     * @return The max size of the message buffer on disk. If a PVC template is specified using one of ephemeralVolumeClaimSpec or persistentVolumeClaimSpec, then this size is used as the request and limit sizes of that template. If neither ephemeralVolumeClaimSpec nor persistentVolumeClaimSpec are specified, then an emptyDir volume is mounted with this size as its limit. See <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir> for details.
     * 
     */
    private String maxSize;
    /**
     * @return Use the specified persistent volume claim template to mount a persistent volume for the message buffer.
     * 
     */
    private @Nullable VolumeClaimSpecResponse persistentVolumeClaimSpec;

    private DiskBackedMessageBufferSettingsResponse() {}
    /**
     * @return Use the specified persistent volume claim template to mount a "generic ephemeral volume" for the message buffer. See <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes> for details.
     * 
     */
    public Optional ephemeralVolumeClaimSpec() {
        return Optional.ofNullable(this.ephemeralVolumeClaimSpec);
    }
    /**
     * @return The max size of the message buffer on disk. If a PVC template is specified using one of ephemeralVolumeClaimSpec or persistentVolumeClaimSpec, then this size is used as the request and limit sizes of that template. If neither ephemeralVolumeClaimSpec nor persistentVolumeClaimSpec are specified, then an emptyDir volume is mounted with this size as its limit. See <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir> for details.
     * 
     */
    public String maxSize() {
        return this.maxSize;
    }
    /**
     * @return Use the specified persistent volume claim template to mount a persistent volume for the message buffer.
     * 
     */
    public Optional persistentVolumeClaimSpec() {
        return Optional.ofNullable(this.persistentVolumeClaimSpec);
    }

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

    public static Builder builder(DiskBackedMessageBufferSettingsResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable VolumeClaimSpecResponse ephemeralVolumeClaimSpec;
        private String maxSize;
        private @Nullable VolumeClaimSpecResponse persistentVolumeClaimSpec;
        public Builder() {}
        public Builder(DiskBackedMessageBufferSettingsResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.ephemeralVolumeClaimSpec = defaults.ephemeralVolumeClaimSpec;
    	      this.maxSize = defaults.maxSize;
    	      this.persistentVolumeClaimSpec = defaults.persistentVolumeClaimSpec;
        }

        @CustomType.Setter
        public Builder ephemeralVolumeClaimSpec(@Nullable VolumeClaimSpecResponse ephemeralVolumeClaimSpec) {

            this.ephemeralVolumeClaimSpec = ephemeralVolumeClaimSpec;
            return this;
        }
        @CustomType.Setter
        public Builder maxSize(String maxSize) {
            if (maxSize == null) {
              throw new MissingRequiredPropertyException("DiskBackedMessageBufferSettingsResponse", "maxSize");
            }
            this.maxSize = maxSize;
            return this;
        }
        @CustomType.Setter
        public Builder persistentVolumeClaimSpec(@Nullable VolumeClaimSpecResponse persistentVolumeClaimSpec) {

            this.persistentVolumeClaimSpec = persistentVolumeClaimSpec;
            return this;
        }
        public DiskBackedMessageBufferSettingsResponse build() {
            final var _resultValue = new DiskBackedMessageBufferSettingsResponse();
            _resultValue.ephemeralVolumeClaimSpec = ephemeralVolumeClaimSpec;
            _resultValue.maxSize = maxSize;
            _resultValue.persistentVolumeClaimSpec = persistentVolumeClaimSpec;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy