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

com.pulumi.consul.inputs.AclRoleServiceIdentityArgs Maven / Gradle / Ivy

There is a newer version: 3.13.0-alpha.1727221178
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.consul.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
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;


public final class AclRoleServiceIdentityArgs extends com.pulumi.resources.ResourceArgs {

    public static final AclRoleServiceIdentityArgs Empty = new AclRoleServiceIdentityArgs();

    /**
     * The datacenters the effective policy is valid within. When no datacenters are provided the effective policy is valid in all datacenters including those which do not yet exist but may in the future.
     * 
     */
    @Import(name="datacenters")
    private @Nullable Output> datacenters;

    /**
     * @return The datacenters the effective policy is valid within. When no datacenters are provided the effective policy is valid in all datacenters including those which do not yet exist but may in the future.
     * 
     */
    public Optional>> datacenters() {
        return Optional.ofNullable(this.datacenters);
    }

    /**
     * The name of the service.
     * 
     */
    @Import(name="serviceName", required=true)
    private Output serviceName;

    /**
     * @return The name of the service.
     * 
     */
    public Output serviceName() {
        return this.serviceName;
    }

    private AclRoleServiceIdentityArgs() {}

    private AclRoleServiceIdentityArgs(AclRoleServiceIdentityArgs $) {
        this.datacenters = $.datacenters;
        this.serviceName = $.serviceName;
    }

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

    public static final class Builder {
        private AclRoleServiceIdentityArgs $;

        public Builder() {
            $ = new AclRoleServiceIdentityArgs();
        }

        public Builder(AclRoleServiceIdentityArgs defaults) {
            $ = new AclRoleServiceIdentityArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param datacenters The datacenters the effective policy is valid within. When no datacenters are provided the effective policy is valid in all datacenters including those which do not yet exist but may in the future.
         * 
         * @return builder
         * 
         */
        public Builder datacenters(@Nullable Output> datacenters) {
            $.datacenters = datacenters;
            return this;
        }

        /**
         * @param datacenters The datacenters the effective policy is valid within. When no datacenters are provided the effective policy is valid in all datacenters including those which do not yet exist but may in the future.
         * 
         * @return builder
         * 
         */
        public Builder datacenters(List datacenters) {
            return datacenters(Output.of(datacenters));
        }

        /**
         * @param datacenters The datacenters the effective policy is valid within. When no datacenters are provided the effective policy is valid in all datacenters including those which do not yet exist but may in the future.
         * 
         * @return builder
         * 
         */
        public Builder datacenters(String... datacenters) {
            return datacenters(List.of(datacenters));
        }

        /**
         * @param serviceName The name of the service.
         * 
         * @return builder
         * 
         */
        public Builder serviceName(Output serviceName) {
            $.serviceName = serviceName;
            return this;
        }

        /**
         * @param serviceName The name of the service.
         * 
         * @return builder
         * 
         */
        public Builder serviceName(String serviceName) {
            return serviceName(Output.of(serviceName));
        }

        public AclRoleServiceIdentityArgs build() {
            if ($.serviceName == null) {
                throw new MissingRequiredPropertyException("AclRoleServiceIdentityArgs", "serviceName");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy