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

com.pulumi.azurenative.signalrservice.inputs.SignalRFeatureArgs 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.signalrservice.inputs;

import com.pulumi.azurenative.signalrservice.enums.FeatureFlags;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Feature of a resource, which controls the runtime behavior.
 * 
 */
public final class SignalRFeatureArgs extends com.pulumi.resources.ResourceArgs {

    public static final SignalRFeatureArgs Empty = new SignalRFeatureArgs();

    /**
     * FeatureFlags is the supported features of Azure SignalR service.
     * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
     * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
     * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
     * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
     * 
     */
    @Import(name="flag", required=true)
    private Output> flag;

    /**
     * @return FeatureFlags is the supported features of Azure SignalR service.
     * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
     * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
     * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
     * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
     * 
     */
    public Output> flag() {
        return this.flag;
    }

    /**
     * Optional properties related to this feature.
     * 
     */
    @Import(name="properties")
    private @Nullable Output> properties;

    /**
     * @return Optional properties related to this feature.
     * 
     */
    public Optional>> properties() {
        return Optional.ofNullable(this.properties);
    }

    /**
     * Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.
     * 
     */
    @Import(name="value", required=true)
    private Output value;

    /**
     * @return Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.
     * 
     */
    public Output value() {
        return this.value;
    }

    private SignalRFeatureArgs() {}

    private SignalRFeatureArgs(SignalRFeatureArgs $) {
        this.flag = $.flag;
        this.properties = $.properties;
        this.value = $.value;
    }

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

    public static final class Builder {
        private SignalRFeatureArgs $;

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

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

        /**
         * @param flag FeatureFlags is the supported features of Azure SignalR service.
         * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
         * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
         * 
         * @return builder
         * 
         */
        public Builder flag(Output> flag) {
            $.flag = flag;
            return this;
        }

        /**
         * @param flag FeatureFlags is the supported features of Azure SignalR service.
         * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
         * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
         * 
         * @return builder
         * 
         */
        public Builder flag(Either flag) {
            return flag(Output.of(flag));
        }

        /**
         * @param flag FeatureFlags is the supported features of Azure SignalR service.
         * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
         * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
         * 
         * @return builder
         * 
         */
        public Builder flag(String flag) {
            return flag(Either.ofLeft(flag));
        }

        /**
         * @param flag FeatureFlags is the supported features of Azure SignalR service.
         * - ServiceMode: Flag for backend server for SignalR service. Values allowed: "Default": have your own backend server; "Serverless": your application doesn't have a backend server; "Classic": for backward compatibility. Support both Default and Serverless mode but not recommended; "PredefinedOnly": for future use.
         * - EnableConnectivityLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableMessagingLogs: "true"/"false", to enable/disable the connectivity log category respectively.
         * - EnableLiveTrace: Live Trace allows you to know what's happening inside Azure SignalR service, it will give you live traces in real time, it will be helpful when you developing your own Azure SignalR based web application or self-troubleshooting some issues. Please note that live traces are counted as outbound messages that will be charged. Values allowed: "true"/"false", to enable/disable live trace feature.
         * 
         * @return builder
         * 
         */
        public Builder flag(FeatureFlags flag) {
            return flag(Either.ofRight(flag));
        }

        /**
         * @param properties Optional properties related to this feature.
         * 
         * @return builder
         * 
         */
        public Builder properties(@Nullable Output> properties) {
            $.properties = properties;
            return this;
        }

        /**
         * @param properties Optional properties related to this feature.
         * 
         * @return builder
         * 
         */
        public Builder properties(Map properties) {
            return properties(Output.of(properties));
        }

        /**
         * @param value Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.
         * 
         * @return builder
         * 
         */
        public Builder value(Output value) {
            $.value = value;
            return this;
        }

        /**
         * @param value Value of the feature flag. See Azure SignalR service document https://docs.microsoft.com/azure/azure-signalr/ for allowed values.
         * 
         * @return builder
         * 
         */
        public Builder value(String value) {
            return value(Output.of(value));
        }

        public SignalRFeatureArgs build() {
            if ($.flag == null) {
                throw new MissingRequiredPropertyException("SignalRFeatureArgs", "flag");
            }
            if ($.value == null) {
                throw new MissingRequiredPropertyException("SignalRFeatureArgs", "value");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy