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

src.compute.v1.AutoscalerArgs.scala Maven / Gradle / Ivy

The newest version!
package besom.api.googlenative.compute.v1

final case class AutoscalerArgs private(
  autoscalingPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.AutoscalingPolicyArgs]],
  description: besom.types.Output[scala.Option[String]],
  name: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  requestId: besom.types.Output[scala.Option[String]],
  target: besom.types.Output[scala.Option[String]],
  zone: besom.types.Output[scala.Option[String]]
)

object AutoscalerArgs:
  def apply(
    autoscalingPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.AutoscalingPolicyArgs] = scala.None,
    description: besom.types.Input.Optional[String] = 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,
    target: besom.types.Input.Optional[String] = scala.None,
    zone: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): AutoscalerArgs =
    new AutoscalerArgs(
      autoscalingPolicy = autoscalingPolicy.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      target = target.asOptionOutput(isSecret = false),
      zone = zone.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy