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

com.pulumi.azurenative.sql.outputs.GetBackupShortTermRetentionPolicyResult 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.sql.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetBackupShortTermRetentionPolicyResult {
    /**
     * @return The differential backup interval in hours. This is how many interval hours between each differential backup will be supported. This is only applicable to live databases but not dropped databases.
     * 
     */
    private @Nullable Integer diffBackupIntervalInHours;
    /**
     * @return Resource ID.
     * 
     */
    private String id;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return The backup retention period in days. This is how many days Point-in-Time Restore will be supported.
     * 
     */
    private @Nullable Integer retentionDays;
    /**
     * @return Resource type.
     * 
     */
    private String type;

    private GetBackupShortTermRetentionPolicyResult() {}
    /**
     * @return The differential backup interval in hours. This is how many interval hours between each differential backup will be supported. This is only applicable to live databases but not dropped databases.
     * 
     */
    public Optional diffBackupIntervalInHours() {
        return Optional.ofNullable(this.diffBackupIntervalInHours);
    }
    /**
     * @return Resource ID.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The backup retention period in days. This is how many days Point-in-Time Restore will be supported.
     * 
     */
    public Optional retentionDays() {
        return Optional.ofNullable(this.retentionDays);
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }

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

    public static Builder builder(GetBackupShortTermRetentionPolicyResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Integer diffBackupIntervalInHours;
        private String id;
        private String name;
        private @Nullable Integer retentionDays;
        private String type;
        public Builder() {}
        public Builder(GetBackupShortTermRetentionPolicyResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.diffBackupIntervalInHours = defaults.diffBackupIntervalInHours;
    	      this.id = defaults.id;
    	      this.name = defaults.name;
    	      this.retentionDays = defaults.retentionDays;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder diffBackupIntervalInHours(@Nullable Integer diffBackupIntervalInHours) {

            this.diffBackupIntervalInHours = diffBackupIntervalInHours;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetBackupShortTermRetentionPolicyResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetBackupShortTermRetentionPolicyResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder retentionDays(@Nullable Integer retentionDays) {

            this.retentionDays = retentionDays;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetBackupShortTermRetentionPolicyResult", "type");
            }
            this.type = type;
            return this;
        }
        public GetBackupShortTermRetentionPolicyResult build() {
            final var _resultValue = new GetBackupShortTermRetentionPolicyResult();
            _resultValue.diffBackupIntervalInHours = diffBackupIntervalInHours;
            _resultValue.id = id;
            _resultValue.name = name;
            _resultValue.retentionDays = retentionDays;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy