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

com.pulumi.azurenative.network.inputs.EndpointPropertiesSubnetsArgs 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.network.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Subnet first address, scope, and/or last address.
 * 
 */
public final class EndpointPropertiesSubnetsArgs extends com.pulumi.resources.ResourceArgs {

    public static final EndpointPropertiesSubnetsArgs Empty = new EndpointPropertiesSubnetsArgs();

    /**
     * First address in the subnet.
     * 
     */
    @Import(name="first")
    private @Nullable Output first;

    /**
     * @return First address in the subnet.
     * 
     */
    public Optional> first() {
        return Optional.ofNullable(this.first);
    }

    /**
     * Last address in the subnet.
     * 
     */
    @Import(name="last")
    private @Nullable Output last;

    /**
     * @return Last address in the subnet.
     * 
     */
    public Optional> last() {
        return Optional.ofNullable(this.last);
    }

    /**
     * Block size (number of leading bits in the subnet mask).
     * 
     */
    @Import(name="scope")
    private @Nullable Output scope;

    /**
     * @return Block size (number of leading bits in the subnet mask).
     * 
     */
    public Optional> scope() {
        return Optional.ofNullable(this.scope);
    }

    private EndpointPropertiesSubnetsArgs() {}

    private EndpointPropertiesSubnetsArgs(EndpointPropertiesSubnetsArgs $) {
        this.first = $.first;
        this.last = $.last;
        this.scope = $.scope;
    }

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

    public static final class Builder {
        private EndpointPropertiesSubnetsArgs $;

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

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

        /**
         * @param first First address in the subnet.
         * 
         * @return builder
         * 
         */
        public Builder first(@Nullable Output first) {
            $.first = first;
            return this;
        }

        /**
         * @param first First address in the subnet.
         * 
         * @return builder
         * 
         */
        public Builder first(String first) {
            return first(Output.of(first));
        }

        /**
         * @param last Last address in the subnet.
         * 
         * @return builder
         * 
         */
        public Builder last(@Nullable Output last) {
            $.last = last;
            return this;
        }

        /**
         * @param last Last address in the subnet.
         * 
         * @return builder
         * 
         */
        public Builder last(String last) {
            return last(Output.of(last));
        }

        /**
         * @param scope Block size (number of leading bits in the subnet mask).
         * 
         * @return builder
         * 
         */
        public Builder scope(@Nullable Output scope) {
            $.scope = scope;
            return this;
        }

        /**
         * @param scope Block size (number of leading bits in the subnet mask).
         * 
         * @return builder
         * 
         */
        public Builder scope(Integer scope) {
            return scope(Output.of(scope));
        }

        public EndpointPropertiesSubnetsArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy