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

com.pulumi.googlenative.containeranalysis.v1beta1.kotlin.inputs.DocumentOccurrenceArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.googlenative.containeranalysis.v1beta1.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.containeranalysis.v1beta1.inputs.DocumentOccurrenceArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * DocumentOccurrence represents an SPDX Document Creation Information section: https://spdx.github.io/spdx-spec/v2.3/document-creation-information/
 * @property createTime Identify when the SPDX file was originally created. The date is to be specified according to combined date and time in UTC format as specified in ISO 8601 standard
 * @property creatorComment A field for creators of the SPDX file to provide general comments about the creation of the SPDX file or any other relevant comment not included in the other fields
 * @property creators Identify who (or what, in the case of a tool) created the SPDX file. If the SPDX file was created by an individual, indicate the person's name
 * @property documentComment A field for creators of the SPDX file content to provide comments to the consumers of the SPDX document
 * @property externalDocumentRefs Identify any external SPDX documents referenced within this SPDX document
 * @property id Identify the current SPDX document which may be referenced in relationships by other files, packages internally and documents externally
 * @property licenseListVersion A field for creators of the SPDX file to provide the version of the SPDX License List used when the SPDX file was created
 * @property namespace Provide an SPDX document specific namespace as a unique absolute Uniform Resource Identifier (URI) as specified in RFC-3986, with the exception of the ‘#’ delimiter
 * @property title Identify name of this document as designated by creator
 */
public data class DocumentOccurrenceArgs(
    public val createTime: Output? = null,
    public val creatorComment: Output? = null,
    public val creators: Output>? = null,
    public val documentComment: Output? = null,
    public val externalDocumentRefs: Output>? = null,
    public val id: Output? = null,
    public val licenseListVersion: Output? = null,
    public val namespace: Output? = null,
    public val title: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.googlenative.containeranalysis.v1beta1.inputs.DocumentOccurrenceArgs =
        com.pulumi.googlenative.containeranalysis.v1beta1.inputs.DocumentOccurrenceArgs.builder()
            .createTime(createTime?.applyValue({ args0 -> args0 }))
            .creatorComment(creatorComment?.applyValue({ args0 -> args0 }))
            .creators(creators?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .documentComment(documentComment?.applyValue({ args0 -> args0 }))
            .externalDocumentRefs(externalDocumentRefs?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .id(id?.applyValue({ args0 -> args0 }))
            .licenseListVersion(licenseListVersion?.applyValue({ args0 -> args0 }))
            .namespace(namespace?.applyValue({ args0 -> args0 }))
            .title(title?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [DocumentOccurrenceArgs].
 */
@PulumiTagMarker
public class DocumentOccurrenceArgsBuilder internal constructor() {
    private var createTime: Output? = null

    private var creatorComment: Output? = null

    private var creators: Output>? = null

    private var documentComment: Output? = null

    private var externalDocumentRefs: Output>? = null

    private var id: Output? = null

    private var licenseListVersion: Output? = null

    private var namespace: Output? = null

    private var title: Output? = null

    /**
     * @param value Identify when the SPDX file was originally created. The date is to be specified according to combined date and time in UTC format as specified in ISO 8601 standard
     */
    @JvmName("goltfmtdcqqupvvk")
    public suspend fun createTime(`value`: Output) {
        this.createTime = value
    }

    /**
     * @param value A field for creators of the SPDX file to provide general comments about the creation of the SPDX file or any other relevant comment not included in the other fields
     */
    @JvmName("turvlwapxvapspfy")
    public suspend fun creatorComment(`value`: Output) {
        this.creatorComment = value
    }

    /**
     * @param value Identify who (or what, in the case of a tool) created the SPDX file. If the SPDX file was created by an individual, indicate the person's name
     */
    @JvmName("igllkdxtkffkyogo")
    public suspend fun creators(`value`: Output>) {
        this.creators = value
    }

    @JvmName("ixhrxwnhqwaefqcj")
    public suspend fun creators(vararg values: Output) {
        this.creators = Output.all(values.asList())
    }

    /**
     * @param values Identify who (or what, in the case of a tool) created the SPDX file. If the SPDX file was created by an individual, indicate the person's name
     */
    @JvmName("sjgtrmbypmyxqaxg")
    public suspend fun creators(values: List>) {
        this.creators = Output.all(values)
    }

    /**
     * @param value A field for creators of the SPDX file content to provide comments to the consumers of the SPDX document
     */
    @JvmName("xvykhpxaxnqjfvhb")
    public suspend fun documentComment(`value`: Output) {
        this.documentComment = value
    }

    /**
     * @param value Identify any external SPDX documents referenced within this SPDX document
     */
    @JvmName("tixonbsofwuyyapn")
    public suspend fun externalDocumentRefs(`value`: Output>) {
        this.externalDocumentRefs = value
    }

    @JvmName("xixoyiqywicqodba")
    public suspend fun externalDocumentRefs(vararg values: Output) {
        this.externalDocumentRefs = Output.all(values.asList())
    }

    /**
     * @param values Identify any external SPDX documents referenced within this SPDX document
     */
    @JvmName("wqowffnxcputlsbj")
    public suspend fun externalDocumentRefs(values: List>) {
        this.externalDocumentRefs = Output.all(values)
    }

    /**
     * @param value Identify the current SPDX document which may be referenced in relationships by other files, packages internally and documents externally
     */
    @JvmName("bryahdloijinficl")
    public suspend fun id(`value`: Output) {
        this.id = value
    }

    /**
     * @param value A field for creators of the SPDX file to provide the version of the SPDX License List used when the SPDX file was created
     */
    @JvmName("pujmjywbhpelxcdi")
    public suspend fun licenseListVersion(`value`: Output) {
        this.licenseListVersion = value
    }

    /**
     * @param value Provide an SPDX document specific namespace as a unique absolute Uniform Resource Identifier (URI) as specified in RFC-3986, with the exception of the ‘#’ delimiter
     */
    @JvmName("upignnerpktfvctj")
    public suspend fun namespace(`value`: Output) {
        this.namespace = value
    }

    /**
     * @param value Identify name of this document as designated by creator
     */
    @JvmName("abecgtvmrcrvhttx")
    public suspend fun title(`value`: Output) {
        this.title = value
    }

    /**
     * @param value Identify when the SPDX file was originally created. The date is to be specified according to combined date and time in UTC format as specified in ISO 8601 standard
     */
    @JvmName("ijjngsofnqbuphib")
    public suspend fun createTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.createTime = mapped
    }

    /**
     * @param value A field for creators of the SPDX file to provide general comments about the creation of the SPDX file or any other relevant comment not included in the other fields
     */
    @JvmName("akbivmhgheopvlcp")
    public suspend fun creatorComment(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.creatorComment = mapped
    }

    /**
     * @param value Identify who (or what, in the case of a tool) created the SPDX file. If the SPDX file was created by an individual, indicate the person's name
     */
    @JvmName("jorncxbhhnscnhvx")
    public suspend fun creators(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.creators = mapped
    }

    /**
     * @param values Identify who (or what, in the case of a tool) created the SPDX file. If the SPDX file was created by an individual, indicate the person's name
     */
    @JvmName("lbojcycbabhsgmdl")
    public suspend fun creators(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.creators = mapped
    }

    /**
     * @param value A field for creators of the SPDX file content to provide comments to the consumers of the SPDX document
     */
    @JvmName("hoiumoxeausbhiua")
    public suspend fun documentComment(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.documentComment = mapped
    }

    /**
     * @param value Identify any external SPDX documents referenced within this SPDX document
     */
    @JvmName("himdrieihaakqlhl")
    public suspend fun externalDocumentRefs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalDocumentRefs = mapped
    }

    /**
     * @param values Identify any external SPDX documents referenced within this SPDX document
     */
    @JvmName("ceocityeiltbenki")
    public suspend fun externalDocumentRefs(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.externalDocumentRefs = mapped
    }

    /**
     * @param value Identify the current SPDX document which may be referenced in relationships by other files, packages internally and documents externally
     */
    @JvmName("dynmrvyhrnqkcgxj")
    public suspend fun id(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.id = mapped
    }

    /**
     * @param value A field for creators of the SPDX file to provide the version of the SPDX License List used when the SPDX file was created
     */
    @JvmName("sfnkidqamrknoyog")
    public suspend fun licenseListVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.licenseListVersion = mapped
    }

    /**
     * @param value Provide an SPDX document specific namespace as a unique absolute Uniform Resource Identifier (URI) as specified in RFC-3986, with the exception of the ‘#’ delimiter
     */
    @JvmName("lnoinynjybuxinrg")
    public suspend fun namespace(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.namespace = mapped
    }

    /**
     * @param value Identify name of this document as designated by creator
     */
    @JvmName("xbcrgdrpmubfaggk")
    public suspend fun title(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.title = mapped
    }

    internal fun build(): DocumentOccurrenceArgs = DocumentOccurrenceArgs(
        createTime = createTime,
        creatorComment = creatorComment,
        creators = creators,
        documentComment = documentComment,
        externalDocumentRefs = externalDocumentRefs,
        id = id,
        licenseListVersion = licenseListVersion,
        namespace = namespace,
        title = title,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy