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

src.dns.v1beta2.ResponsePolicyArgs.scala Maven / Gradle / Ivy

package besom.api.googlenative.dns.v1beta2

final case class ResponsePolicyArgs private(
  clientOperationId: besom.types.Output[scala.Option[String]],
  description: besom.types.Output[scala.Option[String]],
  gkeClusters: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.dns.v1beta2.inputs.ResponsePolicyGkeClusterArgs]]],
  kind: besom.types.Output[scala.Option[String]],
  labels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  networks: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.dns.v1beta2.inputs.ResponsePolicyNetworkArgs]]],
  project: besom.types.Output[scala.Option[String]],
  responsePolicyName: besom.types.Output[scala.Option[String]]
)

object ResponsePolicyArgs:
  def apply(
    clientOperationId: besom.types.Input.Optional[String] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    gkeClusters: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.dns.v1beta2.inputs.ResponsePolicyGkeClusterArgs]]] = scala.None,
    kind: besom.types.Input.Optional[String] = scala.None,
    labels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
    networks: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.dns.v1beta2.inputs.ResponsePolicyNetworkArgs]]] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    responsePolicyName: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): ResponsePolicyArgs =
    new ResponsePolicyArgs(
      clientOperationId = clientOperationId.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      gkeClusters = gkeClusters.asOptionOutput(isSecret = false),
      kind = kind.asOptionOutput(isSecret = false),
      labels = labels.asOptionOutput(isSecret = false),
      networks = networks.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      responsePolicyName = responsePolicyName.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy