// *** 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.gcp.sql.outputs;

import com.pulumi.core.annotations.CustomType;
import java.lang.String;
import java.util.Objects;

@CustomType
public final class GetDatabaseInstanceServerCaCert {
    private String cert;
    private String commonName;
    private String createTime;
    private String expirationTime;
    private String sha1Fingerprint;

    private GetDatabaseInstanceServerCaCert() {}
    public String cert() {
        return this.cert;
    }
    public String commonName() {
        return this.commonName;
    }
    public String createTime() {
        return this.createTime;
    }
    public String expirationTime() {
        return this.expirationTime;
    }
    public String sha1Fingerprint() {
        return this.sha1Fingerprint;
    }

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

    public static Builder builder(GetDatabaseInstanceServerCaCert defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private String cert;
        private String commonName;
        private String createTime;
        private String expirationTime;
        private String sha1Fingerprint;
        public Builder() {}
        public Builder(GetDatabaseInstanceServerCaCert defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.cert = defaults.cert;
    	      this.commonName = defaults.commonName;
    	      this.createTime = defaults.createTime;
    	      this.expirationTime = defaults.expirationTime;
    	      this.sha1Fingerprint = defaults.sha1Fingerprint;
        }

        @CustomType.Setter
        public Builder cert(String cert) {
            this.cert = Objects.requireNonNull(cert);
            return this;
        }
        @CustomType.Setter
        public Builder commonName(String commonName) {
            this.commonName = Objects.requireNonNull(commonName);
            return this;
        }
        @CustomType.Setter
        public Builder createTime(String createTime) {
            this.createTime = Objects.requireNonNull(createTime);
            return this;
        }
        @CustomType.Setter
        public Builder expirationTime(String expirationTime) {
            this.expirationTime = Objects.requireNonNull(expirationTime);
            return this;
        }
        @CustomType.Setter
        public Builder sha1Fingerprint(String sha1Fingerprint) {
            this.sha1Fingerprint = Objects.requireNonNull(sha1Fingerprint);
            return this;
        }
        public GetDatabaseInstanceServerCaCert build() {
            final var o = new GetDatabaseInstanceServerCaCert();
            o.cert = cert;
            o.commonName = commonName;
            o.createTime = createTime;
            o.expirationTime = expirationTime;
            o.sha1Fingerprint = sha1Fingerprint;
            return o;
        }
    }
}
