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

com.pulumi.digitalocean.kotlin.ProviderArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 4.35.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.digitalocean.kotlin

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.digitalocean.ProviderArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Double
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * The provider type for the digitalocean package. By default, resources use package-wide configuration
 * settings, however an explicit `Provider` instance may be created and passed during resource
 * construction to achieve fine-grained programmatic control over provider settings. See the
 * [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
 * @property apiEndpoint The URL to use for the DigitalOcean API.
 * @property httpRetryMax The maximum number of retries on a failed API request.
 * @property httpRetryWaitMax The maximum wait time (in seconds) between failed API requests.
 * @property httpRetryWaitMin The minimum wait time (in seconds) between failed API requests.
 * @property requestsPerSecond The rate of requests per second to limit the HTTP client.
 * @property spacesAccessId The access key ID for Spaces API operations.
 * @property spacesEndpoint The URL to use for the DigitalOcean Spaces API.
 * @property spacesSecretKey The secret access key for Spaces API operations.
 * @property token The token key for API operations.
 */
public data class ProviderArgs(
    public val apiEndpoint: Output? = null,
    public val httpRetryMax: Output? = null,
    public val httpRetryWaitMax: Output? = null,
    public val httpRetryWaitMin: Output? = null,
    public val requestsPerSecond: Output? = null,
    public val spacesAccessId: Output? = null,
    public val spacesEndpoint: Output? = null,
    public val spacesSecretKey: Output? = null,
    public val token: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.digitalocean.ProviderArgs =
        com.pulumi.digitalocean.ProviderArgs.builder()
            .apiEndpoint(apiEndpoint?.applyValue({ args0 -> args0 }))
            .httpRetryMax(httpRetryMax?.applyValue({ args0 -> args0 }))
            .httpRetryWaitMax(httpRetryWaitMax?.applyValue({ args0 -> args0 }))
            .httpRetryWaitMin(httpRetryWaitMin?.applyValue({ args0 -> args0 }))
            .requestsPerSecond(requestsPerSecond?.applyValue({ args0 -> args0 }))
            .spacesAccessId(spacesAccessId?.applyValue({ args0 -> args0 }))
            .spacesEndpoint(spacesEndpoint?.applyValue({ args0 -> args0 }))
            .spacesSecretKey(spacesSecretKey?.applyValue({ args0 -> args0 }))
            .token(token?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ProviderArgs].
 */
@PulumiTagMarker
public class ProviderArgsBuilder internal constructor() {
    private var apiEndpoint: Output? = null

    private var httpRetryMax: Output? = null

    private var httpRetryWaitMax: Output? = null

    private var httpRetryWaitMin: Output? = null

    private var requestsPerSecond: Output? = null

    private var spacesAccessId: Output? = null

    private var spacesEndpoint: Output? = null

    private var spacesSecretKey: Output? = null

    private var token: Output? = null

    /**
     * @param value The URL to use for the DigitalOcean API.
     */
    @JvmName("fjaaxpbvbuamgmcl")
    public suspend fun apiEndpoint(`value`: Output) {
        this.apiEndpoint = value
    }

    /**
     * @param value The maximum number of retries on a failed API request.
     */
    @JvmName("pblhmdbqycmasbpi")
    public suspend fun httpRetryMax(`value`: Output) {
        this.httpRetryMax = value
    }

    /**
     * @param value The maximum wait time (in seconds) between failed API requests.
     */
    @JvmName("qhvpusjxnlpsuwsf")
    public suspend fun httpRetryWaitMax(`value`: Output) {
        this.httpRetryWaitMax = value
    }

    /**
     * @param value The minimum wait time (in seconds) between failed API requests.
     */
    @JvmName("qemdpuqarbgbnxni")
    public suspend fun httpRetryWaitMin(`value`: Output) {
        this.httpRetryWaitMin = value
    }

    /**
     * @param value The rate of requests per second to limit the HTTP client.
     */
    @JvmName("lsbrlxlsfwnmvonk")
    public suspend fun requestsPerSecond(`value`: Output) {
        this.requestsPerSecond = value
    }

    /**
     * @param value The access key ID for Spaces API operations.
     */
    @JvmName("vbhgjfqnasdufjlt")
    public suspend fun spacesAccessId(`value`: Output) {
        this.spacesAccessId = value
    }

    /**
     * @param value The URL to use for the DigitalOcean Spaces API.
     */
    @JvmName("hvsqrbqbqenapasy")
    public suspend fun spacesEndpoint(`value`: Output) {
        this.spacesEndpoint = value
    }

    /**
     * @param value The secret access key for Spaces API operations.
     */
    @JvmName("rwbnfguhipppdtku")
    public suspend fun spacesSecretKey(`value`: Output) {
        this.spacesSecretKey = value
    }

    /**
     * @param value The token key for API operations.
     */
    @JvmName("tmqaotrxpuxslcjd")
    public suspend fun token(`value`: Output) {
        this.token = value
    }

    /**
     * @param value The URL to use for the DigitalOcean API.
     */
    @JvmName("mldswdwqlokyjvxl")
    public suspend fun apiEndpoint(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apiEndpoint = mapped
    }

    /**
     * @param value The maximum number of retries on a failed API request.
     */
    @JvmName("fhnegllekcdwjeja")
    public suspend fun httpRetryMax(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.httpRetryMax = mapped
    }

    /**
     * @param value The maximum wait time (in seconds) between failed API requests.
     */
    @JvmName("plogrucoptykujdm")
    public suspend fun httpRetryWaitMax(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.httpRetryWaitMax = mapped
    }

    /**
     * @param value The minimum wait time (in seconds) between failed API requests.
     */
    @JvmName("opijiidfrcldiqik")
    public suspend fun httpRetryWaitMin(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.httpRetryWaitMin = mapped
    }

    /**
     * @param value The rate of requests per second to limit the HTTP client.
     */
    @JvmName("fsnbtusdxwswnxua")
    public suspend fun requestsPerSecond(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requestsPerSecond = mapped
    }

    /**
     * @param value The access key ID for Spaces API operations.
     */
    @JvmName("xexvfnrtnhwxbioc")
    public suspend fun spacesAccessId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spacesAccessId = mapped
    }

    /**
     * @param value The URL to use for the DigitalOcean Spaces API.
     */
    @JvmName("ivgnvrheaxubakko")
    public suspend fun spacesEndpoint(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spacesEndpoint = mapped
    }

    /**
     * @param value The secret access key for Spaces API operations.
     */
    @JvmName("cfcgsdvyfxbbqolt")
    public suspend fun spacesSecretKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spacesSecretKey = mapped
    }

    /**
     * @param value The token key for API operations.
     */
    @JvmName("aqfdnvmdatcdvhxp")
    public suspend fun token(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.token = mapped
    }

    internal fun build(): ProviderArgs = ProviderArgs(
        apiEndpoint = apiEndpoint,
        httpRetryMax = httpRetryMax,
        httpRetryWaitMax = httpRetryWaitMax,
        httpRetryWaitMin = httpRetryWaitMin,
        requestsPerSecond = requestsPerSecond,
        spacesAccessId = spacesAccessId,
        spacesEndpoint = spacesEndpoint,
        spacesSecretKey = spacesSecretKey,
        token = token,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy