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

src.compute.beta.AddressArgs.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 AddressArgs private(
  address: besom.types.Output[scala.Option[String]],
  addressType: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.AddressAddressType]],
  description: besom.types.Output[scala.Option[String]],
  ipVersion: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.AddressIpVersion]],
  ipv6EndpointType: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.AddressIpv6EndpointType]],
  labels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  name: besom.types.Output[scala.Option[String]],
  network: besom.types.Output[scala.Option[String]],
  networkTier: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.AddressNetworkTier]],
  prefixLength: besom.types.Output[scala.Option[Int]],
  project: besom.types.Output[scala.Option[String]],
  purpose: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.AddressPurpose]],
  region: besom.types.Output[String],
  requestId: besom.types.Output[scala.Option[String]],
  subnetwork: besom.types.Output[scala.Option[String]]
)

object AddressArgs:
  def apply(
    address: besom.types.Input.Optional[String] = scala.None,
    addressType: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.AddressAddressType] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    ipVersion: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.AddressIpVersion] = scala.None,
    ipv6EndpointType: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.AddressIpv6EndpointType] = scala.None,
    labels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    network: besom.types.Input.Optional[String] = scala.None,
    networkTier: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.AddressNetworkTier] = scala.None,
    prefixLength: besom.types.Input.Optional[Int] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    purpose: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.AddressPurpose] = scala.None,
    region: besom.types.Input[String],
    requestId: besom.types.Input.Optional[String] = scala.None,
    subnetwork: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): AddressArgs =
    new AddressArgs(
      address = address.asOptionOutput(isSecret = false),
      addressType = addressType.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      ipVersion = ipVersion.asOptionOutput(isSecret = false),
      ipv6EndpointType = ipv6EndpointType.asOptionOutput(isSecret = false),
      labels = labels.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      network = network.asOptionOutput(isSecret = false),
      networkTier = networkTier.asOptionOutput(isSecret = false),
      prefixLength = prefixLength.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      purpose = purpose.asOptionOutput(isSecret = false),
      region = region.asOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      subnetwork = subnetwork.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy