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

src.compute.beta.ServiceAttachmentArgs.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 ServiceAttachmentArgs private(
  connectionPreference: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.ServiceAttachmentConnectionPreference]],
  consumerAcceptLists: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.beta.inputs.ServiceAttachmentConsumerProjectLimitArgs]]],
  consumerRejectLists: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  description: besom.types.Output[scala.Option[String]],
  domainNames: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  enableProxyProtocol: besom.types.Output[scala.Option[Boolean]],
  name: besom.types.Output[scala.Option[String]],
  natSubnets: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  producerForwardingRule: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  reconcileConnections: besom.types.Output[scala.Option[Boolean]],
  region: besom.types.Output[String],
  requestId: besom.types.Output[scala.Option[String]],
  targetService: besom.types.Output[scala.Option[String]],
  tunnelingConfig: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.inputs.ServiceAttachmentTunnelingConfigArgs]]
)

object ServiceAttachmentArgs:
  def apply(
    connectionPreference: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.ServiceAttachmentConnectionPreference] = scala.None,
    consumerAcceptLists: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.beta.inputs.ServiceAttachmentConsumerProjectLimitArgs]]] = scala.None,
    consumerRejectLists: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    domainNames: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    enableProxyProtocol: besom.types.Input.Optional[Boolean] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    natSubnets: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    producerForwardingRule: besom.types.Input.Optional[String] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    reconcileConnections: besom.types.Input.Optional[Boolean] = scala.None,
    region: besom.types.Input[String],
    requestId: besom.types.Input.Optional[String] = scala.None,
    targetService: besom.types.Input.Optional[String] = scala.None,
    tunnelingConfig: besom.types.Input.Optional[besom.api.googlenative.compute.beta.inputs.ServiceAttachmentTunnelingConfigArgs] = scala.None
  )(using besom.types.Context): ServiceAttachmentArgs =
    new ServiceAttachmentArgs(
      connectionPreference = connectionPreference.asOptionOutput(isSecret = false),
      consumerAcceptLists = consumerAcceptLists.asOptionOutput(isSecret = false),
      consumerRejectLists = consumerRejectLists.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      domainNames = domainNames.asOptionOutput(isSecret = false),
      enableProxyProtocol = enableProxyProtocol.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      natSubnets = natSubnets.asOptionOutput(isSecret = false),
      producerForwardingRule = producerForwardingRule.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      reconcileConnections = reconcileConnections.asOptionOutput(isSecret = false),
      region = region.asOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      targetService = targetService.asOptionOutput(isSecret = false),
      tunnelingConfig = tunnelingConfig.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy