sdk/java/src/main/java/com/pulumi/ovh/Dbaas/outputs/GetLogsClusterResult.java
// *** 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.ovh.Dbaas.outputs;

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

@CustomType
public final class GetLogsClusterResult {
    /**
     * @return is allowed networks for ARCHIVE flow type
     * 
     */
    private List<String> archiveAllowedNetworks;
    /**
     * @return is type of cluster (DEDICATED, PRO or TRIAL)
     * 
     */
    private String clusterType;
    /**
     * @return is PEM for dedicated inputs
     * 
     */
    private String dedicatedInputPem;
    /**
     * @return is allowed networks for DIRECT_INPUT flow type
     * 
     */
    private List<String> directInputAllowedNetworks;
    /**
     * @return is PEM for direct inputs
     * 
     */
    private String directInputPem;
    /**
     * @return is cluster hostname hosting the tenant
     * 
     */
    private String hostname;
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    private String id;
    /**
     * @return is true if all content generated by given service will be placed on this cluster
     * 
     */
    private Boolean isDefault;
    /**
     * @return is true if given service can perform advanced operations on cluster
     * 
     */
    private Boolean isUnlocked;
    /**
     * @return is allowed networks for QUERY flow type
     * 
     */
    private List<String> queryAllowedNetworks;
    /**
     * @return is datacenter localization
     * 
     */
    private String region;
    private String serviceName;

    private GetLogsClusterResult() {}
    /**
     * @return is allowed networks for ARCHIVE flow type
     * 
     */
    public List<String> archiveAllowedNetworks() {
        return this.archiveAllowedNetworks;
    }
    /**
     * @return is type of cluster (DEDICATED, PRO or TRIAL)
     * 
     */
    public String clusterType() {
        return this.clusterType;
    }
    /**
     * @return is PEM for dedicated inputs
     * 
     */
    public String dedicatedInputPem() {
        return this.dedicatedInputPem;
    }
    /**
     * @return is allowed networks for DIRECT_INPUT flow type
     * 
     */
    public List<String> directInputAllowedNetworks() {
        return this.directInputAllowedNetworks;
    }
    /**
     * @return is PEM for direct inputs
     * 
     */
    public String directInputPem() {
        return this.directInputPem;
    }
    /**
     * @return is cluster hostname hosting the tenant
     * 
     */
    public String hostname() {
        return this.hostname;
    }
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return is true if all content generated by given service will be placed on this cluster
     * 
     */
    public Boolean isDefault() {
        return this.isDefault;
    }
    /**
     * @return is true if given service can perform advanced operations on cluster
     * 
     */
    public Boolean isUnlocked() {
        return this.isUnlocked;
    }
    /**
     * @return is allowed networks for QUERY flow type
     * 
     */
    public List<String> queryAllowedNetworks() {
        return this.queryAllowedNetworks;
    }
    /**
     * @return is datacenter localization
     * 
     */
    public String region() {
        return this.region;
    }
    public String serviceName() {
        return this.serviceName;
    }

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

    public static Builder builder(GetLogsClusterResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private List<String> archiveAllowedNetworks;
        private String clusterType;
        private String dedicatedInputPem;
        private List<String> directInputAllowedNetworks;
        private String directInputPem;
        private String hostname;
        private String id;
        private Boolean isDefault;
        private Boolean isUnlocked;
        private List<String> queryAllowedNetworks;
        private String region;
        private String serviceName;
        public Builder() {}
        public Builder(GetLogsClusterResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.archiveAllowedNetworks = defaults.archiveAllowedNetworks;
    	      this.clusterType = defaults.clusterType;
    	      this.dedicatedInputPem = defaults.dedicatedInputPem;
    	      this.directInputAllowedNetworks = defaults.directInputAllowedNetworks;
    	      this.directInputPem = defaults.directInputPem;
    	      this.hostname = defaults.hostname;
    	      this.id = defaults.id;
    	      this.isDefault = defaults.isDefault;
    	      this.isUnlocked = defaults.isUnlocked;
    	      this.queryAllowedNetworks = defaults.queryAllowedNetworks;
    	      this.region = defaults.region;
    	      this.serviceName = defaults.serviceName;
        }

        @CustomType.Setter
        public Builder archiveAllowedNetworks(List<String> archiveAllowedNetworks) {
            this.archiveAllowedNetworks = Objects.requireNonNull(archiveAllowedNetworks);
            return this;
        }
        public Builder archiveAllowedNetworks(String... archiveAllowedNetworks) {
            return archiveAllowedNetworks(List.of(archiveAllowedNetworks));
        }
        @CustomType.Setter
        public Builder clusterType(String clusterType) {
            this.clusterType = Objects.requireNonNull(clusterType);
            return this;
        }
        @CustomType.Setter
        public Builder dedicatedInputPem(String dedicatedInputPem) {
            this.dedicatedInputPem = Objects.requireNonNull(dedicatedInputPem);
            return this;
        }
        @CustomType.Setter
        public Builder directInputAllowedNetworks(List<String> directInputAllowedNetworks) {
            this.directInputAllowedNetworks = Objects.requireNonNull(directInputAllowedNetworks);
            return this;
        }
        public Builder directInputAllowedNetworks(String... directInputAllowedNetworks) {
            return directInputAllowedNetworks(List.of(directInputAllowedNetworks));
        }
        @CustomType.Setter
        public Builder directInputPem(String directInputPem) {
            this.directInputPem = Objects.requireNonNull(directInputPem);
            return this;
        }
        @CustomType.Setter
        public Builder hostname(String hostname) {
            this.hostname = Objects.requireNonNull(hostname);
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            this.id = Objects.requireNonNull(id);
            return this;
        }
        @CustomType.Setter
        public Builder isDefault(Boolean isDefault) {
            this.isDefault = Objects.requireNonNull(isDefault);
            return this;
        }
        @CustomType.Setter
        public Builder isUnlocked(Boolean isUnlocked) {
            this.isUnlocked = Objects.requireNonNull(isUnlocked);
            return this;
        }
        @CustomType.Setter
        public Builder queryAllowedNetworks(List<String> queryAllowedNetworks) {
            this.queryAllowedNetworks = Objects.requireNonNull(queryAllowedNetworks);
            return this;
        }
        public Builder queryAllowedNetworks(String... queryAllowedNetworks) {
            return queryAllowedNetworks(List.of(queryAllowedNetworks));
        }
        @CustomType.Setter
        public Builder region(String region) {
            this.region = Objects.requireNonNull(region);
            return this;
        }
        @CustomType.Setter
        public Builder serviceName(String serviceName) {
            this.serviceName = Objects.requireNonNull(serviceName);
            return this;
        }
        public GetLogsClusterResult build() {
            final var o = new GetLogsClusterResult();
            o.archiveAllowedNetworks = archiveAllowedNetworks;
            o.clusterType = clusterType;
            o.dedicatedInputPem = dedicatedInputPem;
            o.directInputAllowedNetworks = directInputAllowedNetworks;
            o.directInputPem = directInputPem;
            o.hostname = hostname;
            o.id = id;
            o.isDefault = isDefault;
            o.isUnlocked = isUnlocked;
            o.queryAllowedNetworks = queryAllowedNetworks;
            o.region = region;
            o.serviceName = serviceName;
            return o;
        }
    }
}
