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

com.pulumi.aws.opensearch.inputs.PackageState Maven / Gradle / Ivy

// *** 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.aws.opensearch.inputs;

import com.pulumi.aws.opensearch.inputs.PackagePackageSourceArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final PackageState Empty = new PackageState();

    /**
     * The current version of the package.
     * 
     */
    @Import(name="availablePackageVersion")
    private @Nullable Output availablePackageVersion;

    /**
     * @return The current version of the package.
     * 
     */
    public Optional> availablePackageVersion() {
        return Optional.ofNullable(this.availablePackageVersion);
    }

    /**
     * Description of the package.
     * 
     */
    @Import(name="packageDescription")
    private @Nullable Output packageDescription;

    /**
     * @return Description of the package.
     * 
     */
    public Optional> packageDescription() {
        return Optional.ofNullable(this.packageDescription);
    }

    @Import(name="packageId")
    private @Nullable Output packageId;

    public Optional> packageId() {
        return Optional.ofNullable(this.packageId);
    }

    /**
     * Unique name for the package.
     * 
     */
    @Import(name="packageName")
    private @Nullable Output packageName;

    /**
     * @return Unique name for the package.
     * 
     */
    public Optional> packageName() {
        return Optional.ofNullable(this.packageName);
    }

    /**
     * Configuration block for the package source options.
     * 
     */
    @Import(name="packageSource")
    private @Nullable Output packageSource;

    /**
     * @return Configuration block for the package source options.
     * 
     */
    public Optional> packageSource() {
        return Optional.ofNullable(this.packageSource);
    }

    /**
     * The type of package.
     * 
     */
    @Import(name="packageType")
    private @Nullable Output packageType;

    /**
     * @return The type of package.
     * 
     */
    public Optional> packageType() {
        return Optional.ofNullable(this.packageType);
    }

    private PackageState() {}

    private PackageState(PackageState $) {
        this.availablePackageVersion = $.availablePackageVersion;
        this.packageDescription = $.packageDescription;
        this.packageId = $.packageId;
        this.packageName = $.packageName;
        this.packageSource = $.packageSource;
        this.packageType = $.packageType;
    }

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

    public static final class Builder {
        private PackageState $;

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

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

        /**
         * @param availablePackageVersion The current version of the package.
         * 
         * @return builder
         * 
         */
        public Builder availablePackageVersion(@Nullable Output availablePackageVersion) {
            $.availablePackageVersion = availablePackageVersion;
            return this;
        }

        /**
         * @param availablePackageVersion The current version of the package.
         * 
         * @return builder
         * 
         */
        public Builder availablePackageVersion(String availablePackageVersion) {
            return availablePackageVersion(Output.of(availablePackageVersion));
        }

        /**
         * @param packageDescription Description of the package.
         * 
         * @return builder
         * 
         */
        public Builder packageDescription(@Nullable Output packageDescription) {
            $.packageDescription = packageDescription;
            return this;
        }

        /**
         * @param packageDescription Description of the package.
         * 
         * @return builder
         * 
         */
        public Builder packageDescription(String packageDescription) {
            return packageDescription(Output.of(packageDescription));
        }

        public Builder packageId(@Nullable Output packageId) {
            $.packageId = packageId;
            return this;
        }

        public Builder packageId(String packageId) {
            return packageId(Output.of(packageId));
        }

        /**
         * @param packageName Unique name for the package.
         * 
         * @return builder
         * 
         */
        public Builder packageName(@Nullable Output packageName) {
            $.packageName = packageName;
            return this;
        }

        /**
         * @param packageName Unique name for the package.
         * 
         * @return builder
         * 
         */
        public Builder packageName(String packageName) {
            return packageName(Output.of(packageName));
        }

        /**
         * @param packageSource Configuration block for the package source options.
         * 
         * @return builder
         * 
         */
        public Builder packageSource(@Nullable Output packageSource) {
            $.packageSource = packageSource;
            return this;
        }

        /**
         * @param packageSource Configuration block for the package source options.
         * 
         * @return builder
         * 
         */
        public Builder packageSource(PackagePackageSourceArgs packageSource) {
            return packageSource(Output.of(packageSource));
        }

        /**
         * @param packageType The type of package.
         * 
         * @return builder
         * 
         */
        public Builder packageType(@Nullable Output packageType) {
            $.packageType = packageType;
            return this;
        }

        /**
         * @param packageType The type of package.
         * 
         * @return builder
         * 
         */
        public Builder packageType(String packageType) {
            return packageType(Output.of(packageType));
        }

        public PackageState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy