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

src.containeranalysis.v1beta1.OccurrenceArgs.scala Maven / Gradle / Ivy

package besom.api.googlenative.containeranalysis.v1beta1

final case class OccurrenceArgs private(
  attestation: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.DetailsArgs]],
  build: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1BuildDetailsArgs]],
  deployment: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1DeploymentDetailsArgs]],
  derivedImage: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1ImageDetailsArgs]],
  discovered: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1DiscoveryDetailsArgs]],
  envelope: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.EnvelopeArgs]],
  installation: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1PackageDetailsArgs]],
  intoto: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1IntotoDetailsArgs]],
  noteName: besom.types.Output[String],
  project: besom.types.Output[scala.Option[String]],
  remediation: besom.types.Output[scala.Option[String]],
  resource: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.inputs.ResourceArgs],
  sbom: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.DocumentOccurrenceArgs]],
  sbomReference: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.SbomReferenceOccurrenceArgs]],
  spdxFile: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.FileOccurrenceArgs]],
  spdxPackage: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.PackageInfoOccurrenceArgs]],
  spdxRelationship: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.RelationshipOccurrenceArgs]],
  vulnerability: besom.types.Output[scala.Option[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1VulnerabilityDetailsArgs]]
)

object OccurrenceArgs:
  def apply(
    attestation: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.DetailsArgs] = scala.None,
    build: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1BuildDetailsArgs] = scala.None,
    deployment: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1DeploymentDetailsArgs] = scala.None,
    derivedImage: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1ImageDetailsArgs] = scala.None,
    discovered: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1DiscoveryDetailsArgs] = scala.None,
    envelope: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.EnvelopeArgs] = scala.None,
    installation: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1PackageDetailsArgs] = scala.None,
    intoto: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1IntotoDetailsArgs] = scala.None,
    noteName: besom.types.Input[String],
    project: besom.types.Input.Optional[String] = scala.None,
    remediation: besom.types.Input.Optional[String] = scala.None,
    resource: besom.types.Input[besom.api.googlenative.containeranalysis.v1beta1.inputs.ResourceArgs],
    sbom: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.DocumentOccurrenceArgs] = scala.None,
    sbomReference: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.SbomReferenceOccurrenceArgs] = scala.None,
    spdxFile: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.FileOccurrenceArgs] = scala.None,
    spdxPackage: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.PackageInfoOccurrenceArgs] = scala.None,
    spdxRelationship: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.RelationshipOccurrenceArgs] = scala.None,
    vulnerability: besom.types.Input.Optional[besom.api.googlenative.containeranalysis.v1beta1.inputs.GrafeasV1beta1VulnerabilityDetailsArgs] = scala.None
  )(using besom.types.Context): OccurrenceArgs =
    new OccurrenceArgs(
      attestation = attestation.asOptionOutput(isSecret = false),
      build = build.asOptionOutput(isSecret = false),
      deployment = deployment.asOptionOutput(isSecret = false),
      derivedImage = derivedImage.asOptionOutput(isSecret = false),
      discovered = discovered.asOptionOutput(isSecret = false),
      envelope = envelope.asOptionOutput(isSecret = false),
      installation = installation.asOptionOutput(isSecret = false),
      intoto = intoto.asOptionOutput(isSecret = false),
      noteName = noteName.asOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      remediation = remediation.asOptionOutput(isSecret = false),
      resource = resource.asOutput(isSecret = false),
      sbom = sbom.asOptionOutput(isSecret = false),
      sbomReference = sbomReference.asOptionOutput(isSecret = false),
      spdxFile = spdxFile.asOptionOutput(isSecret = false),
      spdxPackage = spdxPackage.asOptionOutput(isSecret = false),
      spdxRelationship = spdxRelationship.asOptionOutput(isSecret = false),
      vulnerability = vulnerability.asOptionOutput(isSecret = false)
    )

  given encoder(using besom.types.Context): besom.types.Encoder[OccurrenceArgs] =
    besom.internal.Encoder.derived[OccurrenceArgs]
  given argsEncoder(using besom.types.Context): besom.types.ArgsEncoder[OccurrenceArgs] =
    besom.internal.ArgsEncoder.derived[OccurrenceArgs]






© 2015 - 2025 Weber Informatics LLC | Privacy Policy