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

com.pulumi.azurenative.operationsmanagement.inputs.SolutionPlanArgs 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.operationsmanagement.inputs;

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;


/**
 * Plan for solution object supported by the OperationsManagement resource provider.
 * 
 */
public final class SolutionPlanArgs extends com.pulumi.resources.ResourceArgs {

    public static final SolutionPlanArgs Empty = new SolutionPlanArgs();

    /**
     * name of the solution to be created. For Microsoft published solution it should be in the format of solutionType(workspaceName). SolutionType part is case sensitive. For third party solution, it can be anything.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return name of the solution to be created. For Microsoft published solution it should be in the format of solutionType(workspaceName). SolutionType part is case sensitive. For third party solution, it can be anything.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * name of the solution to enabled/add. For Microsoft published gallery solution it should be in the format of OMSGallery/<solutionType>. This is case sensitive
     * 
     */
    @Import(name="product")
    private @Nullable Output product;

    /**
     * @return name of the solution to enabled/add. For Microsoft published gallery solution it should be in the format of OMSGallery/<solutionType>. This is case sensitive
     * 
     */
    public Optional> product() {
        return Optional.ofNullable(this.product);
    }

    /**
     * promotionCode, Not really used now, can you left as empty
     * 
     */
    @Import(name="promotionCode")
    private @Nullable Output promotionCode;

    /**
     * @return promotionCode, Not really used now, can you left as empty
     * 
     */
    public Optional> promotionCode() {
        return Optional.ofNullable(this.promotionCode);
    }

    /**
     * Publisher name. For gallery solution, it is Microsoft.
     * 
     */
    @Import(name="publisher")
    private @Nullable Output publisher;

    /**
     * @return Publisher name. For gallery solution, it is Microsoft.
     * 
     */
    public Optional> publisher() {
        return Optional.ofNullable(this.publisher);
    }

    private SolutionPlanArgs() {}

    private SolutionPlanArgs(SolutionPlanArgs $) {
        this.name = $.name;
        this.product = $.product;
        this.promotionCode = $.promotionCode;
        this.publisher = $.publisher;
    }

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

    public static final class Builder {
        private SolutionPlanArgs $;

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

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

        /**
         * @param name name of the solution to be created. For Microsoft published solution it should be in the format of solutionType(workspaceName). SolutionType part is case sensitive. For third party solution, it can be anything.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name name of the solution to be created. For Microsoft published solution it should be in the format of solutionType(workspaceName). SolutionType part is case sensitive. For third party solution, it can be anything.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param product name of the solution to enabled/add. For Microsoft published gallery solution it should be in the format of OMSGallery/<solutionType>. This is case sensitive
         * 
         * @return builder
         * 
         */
        public Builder product(@Nullable Output product) {
            $.product = product;
            return this;
        }

        /**
         * @param product name of the solution to enabled/add. For Microsoft published gallery solution it should be in the format of OMSGallery/<solutionType>. This is case sensitive
         * 
         * @return builder
         * 
         */
        public Builder product(String product) {
            return product(Output.of(product));
        }

        /**
         * @param promotionCode promotionCode, Not really used now, can you left as empty
         * 
         * @return builder
         * 
         */
        public Builder promotionCode(@Nullable Output promotionCode) {
            $.promotionCode = promotionCode;
            return this;
        }

        /**
         * @param promotionCode promotionCode, Not really used now, can you left as empty
         * 
         * @return builder
         * 
         */
        public Builder promotionCode(String promotionCode) {
            return promotionCode(Output.of(promotionCode));
        }

        /**
         * @param publisher Publisher name. For gallery solution, it is Microsoft.
         * 
         * @return builder
         * 
         */
        public Builder publisher(@Nullable Output publisher) {
            $.publisher = publisher;
            return this;
        }

        /**
         * @param publisher Publisher name. For gallery solution, it is Microsoft.
         * 
         * @return builder
         * 
         */
        public Builder publisher(String publisher) {
            return publisher(Output.of(publisher));
        }

        public SolutionPlanArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy