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

src.compute.beta.MachineImageArgs.scala Maven / Gradle / Ivy

There is a newer version: 0.32.0-core.0.4
Show newest version
package besom.api.googlenative.compute.beta

final case class MachineImageArgs private(
  description: besom.types.Output[scala.Option[String]],
  guestFlush: besom.types.Output[scala.Option[Boolean]],
  machineImageEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.inputs.CustomerEncryptionKeyArgs]],
  name: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  requestId: besom.types.Output[scala.Option[String]],
  savedDisks: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.beta.inputs.SavedDiskArgs]]],
  sourceDiskEncryptionKeys: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.beta.inputs.SourceDiskEncryptionKeyArgs]]],
  sourceInstance: besom.types.Output[String],
  storageLocations: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]]
)

object MachineImageArgs:
  def apply(
    description: besom.types.Input.Optional[String] = scala.None,
    guestFlush: besom.types.Input.Optional[Boolean] = scala.None,
    machineImageEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.beta.inputs.CustomerEncryptionKeyArgs] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    requestId: besom.types.Input.Optional[String] = scala.None,
    savedDisks: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.beta.inputs.SavedDiskArgs]]] = scala.None,
    sourceDiskEncryptionKeys: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.beta.inputs.SourceDiskEncryptionKeyArgs]]] = scala.None,
    sourceInstance: besom.types.Input[String],
    storageLocations: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None
  )(using besom.types.Context): MachineImageArgs =
    new MachineImageArgs(
      description = description.asOptionOutput(isSecret = false),
      guestFlush = guestFlush.asOptionOutput(isSecret = false),
      machineImageEncryptionKey = machineImageEncryptionKey.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      savedDisks = savedDisks.asOptionOutput(isSecret = false),
      sourceDiskEncryptionKeys = sourceDiskEncryptionKeys.asOptionOutput(isSecret = false),
      sourceInstance = sourceInstance.asOutput(isSecret = false),
      storageLocations = storageLocations.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy