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

com.pulumi.azurenative.botservice.inputs.DirectLineChannelPropertiesArgs Maven / Gradle / Ivy

There is a newer version: 2.82.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.botservice.inputs;

import com.pulumi.azurenative.botservice.inputs.DirectLineSiteArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * The parameters to provide for the Direct Line channel.
 * 
 */
public final class DirectLineChannelPropertiesArgs extends com.pulumi.resources.ResourceArgs {

    public static final DirectLineChannelPropertiesArgs Empty = new DirectLineChannelPropertiesArgs();

    /**
     * Direct Line embed code of the resource
     * 
     */
    @Import(name="directLineEmbedCode")
    private @Nullable Output directLineEmbedCode;

    /**
     * @return Direct Line embed code of the resource
     * 
     */
    public Optional> directLineEmbedCode() {
        return Optional.ofNullable(this.directLineEmbedCode);
    }

    /**
     * The extensionKey1
     * 
     */
    @Import(name="extensionKey1")
    private @Nullable Output extensionKey1;

    /**
     * @return The extensionKey1
     * 
     */
    public Optional> extensionKey1() {
        return Optional.ofNullable(this.extensionKey1);
    }

    /**
     * The extensionKey2
     * 
     */
    @Import(name="extensionKey2")
    private @Nullable Output extensionKey2;

    /**
     * @return The extensionKey2
     * 
     */
    public Optional> extensionKey2() {
        return Optional.ofNullable(this.extensionKey2);
    }

    /**
     * The list of Direct Line sites
     * 
     */
    @Import(name="sites")
    private @Nullable Output> sites;

    /**
     * @return The list of Direct Line sites
     * 
     */
    public Optional>> sites() {
        return Optional.ofNullable(this.sites);
    }

    private DirectLineChannelPropertiesArgs() {}

    private DirectLineChannelPropertiesArgs(DirectLineChannelPropertiesArgs $) {
        this.directLineEmbedCode = $.directLineEmbedCode;
        this.extensionKey1 = $.extensionKey1;
        this.extensionKey2 = $.extensionKey2;
        this.sites = $.sites;
    }

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

    public static final class Builder {
        private DirectLineChannelPropertiesArgs $;

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

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

        /**
         * @param directLineEmbedCode Direct Line embed code of the resource
         * 
         * @return builder
         * 
         */
        public Builder directLineEmbedCode(@Nullable Output directLineEmbedCode) {
            $.directLineEmbedCode = directLineEmbedCode;
            return this;
        }

        /**
         * @param directLineEmbedCode Direct Line embed code of the resource
         * 
         * @return builder
         * 
         */
        public Builder directLineEmbedCode(String directLineEmbedCode) {
            return directLineEmbedCode(Output.of(directLineEmbedCode));
        }

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

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

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

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

        /**
         * @param sites The list of Direct Line sites
         * 
         * @return builder
         * 
         */
        public Builder sites(@Nullable Output> sites) {
            $.sites = sites;
            return this;
        }

        /**
         * @param sites The list of Direct Line sites
         * 
         * @return builder
         * 
         */
        public Builder sites(List sites) {
            return sites(Output.of(sites));
        }

        /**
         * @param sites The list of Direct Line sites
         * 
         * @return builder
         * 
         */
        public Builder sites(DirectLineSiteArgs... sites) {
            return sites(List.of(sites));
        }

        public DirectLineChannelPropertiesArgs build() {
            $.extensionKey1 = Codegen.stringProp("extensionKey1").output().arg($.extensionKey1).def("").getNullable();
            $.extensionKey2 = Codegen.stringProp("extensionKey2").output().arg($.extensionKey2).def("").getNullable();
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy