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

com.pulumi.googlenative.websecurityscanner.v1beta.kotlin.inputs.CustomAccountArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.googlenative.websecurityscanner.v1beta.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.websecurityscanner.v1beta.inputs.CustomAccountArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * Describes authentication configuration that uses a custom account.
 * @property loginUrl The login form URL of the website.
 * @property password Input only. The password of the custom account. The credential is stored encrypted and not returned in any response nor included in audit logs.
 * @property username The user name of the custom account.
 */
public data class CustomAccountArgs(
    public val loginUrl: Output,
    public val password: Output,
    public val username: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.googlenative.websecurityscanner.v1beta.inputs.CustomAccountArgs = com.pulumi.googlenative.websecurityscanner.v1beta.inputs.CustomAccountArgs.builder()
        .loginUrl(loginUrl.applyValue({ args0 -> args0 }))
        .password(password.applyValue({ args0 -> args0 }))
        .username(username.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [CustomAccountArgs].
 */
@PulumiTagMarker
public class CustomAccountArgsBuilder internal constructor() {
    private var loginUrl: Output? = null

    private var password: Output? = null

    private var username: Output? = null

    /**
     * @param value The login form URL of the website.
     */
    @JvmName("bqvqpdrkpmqwxbwv")
    public suspend fun loginUrl(`value`: Output) {
        this.loginUrl = value
    }

    /**
     * @param value Input only. The password of the custom account. The credential is stored encrypted and not returned in any response nor included in audit logs.
     */
    @JvmName("vdtxqwdcdfpwlppk")
    public suspend fun password(`value`: Output) {
        this.password = value
    }

    /**
     * @param value The user name of the custom account.
     */
    @JvmName("powfqhcmrykoqwfc")
    public suspend fun username(`value`: Output) {
        this.username = value
    }

    /**
     * @param value The login form URL of the website.
     */
    @JvmName("jnlsuafkboyleiix")
    public suspend fun loginUrl(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.loginUrl = mapped
    }

    /**
     * @param value Input only. The password of the custom account. The credential is stored encrypted and not returned in any response nor included in audit logs.
     */
    @JvmName("hibuaudmnaykllmx")
    public suspend fun password(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.password = mapped
    }

    /**
     * @param value The user name of the custom account.
     */
    @JvmName("nluiwtunprxwfwyb")
    public suspend fun username(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.username = mapped
    }

    internal fun build(): CustomAccountArgs = CustomAccountArgs(
        loginUrl = loginUrl ?: throw PulumiNullFieldException("loginUrl"),
        password = password ?: throw PulumiNullFieldException("password"),
        username = username ?: throw PulumiNullFieldException("username"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy