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

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

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

final case class RegionBackendServiceArgs private(
  affinityCookieTtlSec: besom.types.Output[scala.Option[Int]],
  backends: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.BackendArgs]]],
  cdnPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.BackendServiceCdnPolicyArgs]],
  circuitBreakers: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.CircuitBreakersArgs]],
  compressionMode: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.RegionBackendServiceCompressionMode]],
  connectionDraining: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ConnectionDrainingArgs]],
  connectionTrackingPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.BackendServiceConnectionTrackingPolicyArgs]],
  consistentHash: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ConsistentHashLoadBalancerSettingsArgs]],
  customRequestHeaders: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  customResponseHeaders: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  description: besom.types.Output[scala.Option[String]],
  enableCDN: besom.types.Output[scala.Option[Boolean]],
  failoverPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.BackendServiceFailoverPolicyArgs]],
  healthChecks: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  iap: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.BackendServiceIapArgs]],
  loadBalancingScheme: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.RegionBackendServiceLoadBalancingScheme]],
  localityLbPolicies: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.BackendServiceLocalityLoadBalancingPolicyConfigArgs]]],
  localityLbPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.RegionBackendServiceLocalityLbPolicy]],
  logConfig: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.BackendServiceLogConfigArgs]],
  maxStreamDuration: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.DurationArgs]],
  metadatas: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  name: besom.types.Output[scala.Option[String]],
  network: besom.types.Output[scala.Option[String]],
  outlierDetection: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.OutlierDetectionArgs]],
  port: besom.types.Output[scala.Option[Int]],
  portName: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  protocol: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.RegionBackendServiceProtocol]],
  region: besom.types.Output[String],
  requestId: besom.types.Output[scala.Option[String]],
  securitySettings: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.SecuritySettingsArgs]],
  serviceBindings: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  sessionAffinity: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.RegionBackendServiceSessionAffinity]],
  subsetting: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.SubsettingArgs]],
  timeoutSec: besom.types.Output[scala.Option[Int]],
  usedBy: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.BackendServiceUsedByArgs]]]
)

object RegionBackendServiceArgs:
  def apply(
    affinityCookieTtlSec: besom.types.Input.Optional[Int] = scala.None,
    backends: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.BackendArgs]]] = scala.None,
    cdnPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.BackendServiceCdnPolicyArgs] = scala.None,
    circuitBreakers: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.CircuitBreakersArgs] = scala.None,
    compressionMode: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.RegionBackendServiceCompressionMode] = scala.None,
    connectionDraining: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ConnectionDrainingArgs] = scala.None,
    connectionTrackingPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.BackendServiceConnectionTrackingPolicyArgs] = scala.None,
    consistentHash: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ConsistentHashLoadBalancerSettingsArgs] = scala.None,
    customRequestHeaders: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    customResponseHeaders: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    enableCDN: besom.types.Input.Optional[Boolean] = scala.None,
    failoverPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.BackendServiceFailoverPolicyArgs] = scala.None,
    healthChecks: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    iap: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.BackendServiceIapArgs] = scala.None,
    loadBalancingScheme: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.RegionBackendServiceLoadBalancingScheme] = scala.None,
    localityLbPolicies: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.BackendServiceLocalityLoadBalancingPolicyConfigArgs]]] = scala.None,
    localityLbPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.RegionBackendServiceLocalityLbPolicy] = scala.None,
    logConfig: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.BackendServiceLogConfigArgs] = scala.None,
    maxStreamDuration: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.DurationArgs] = scala.None,
    metadatas: 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,
    outlierDetection: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.OutlierDetectionArgs] = scala.None,
    port: besom.types.Input.Optional[Int] = scala.None,
    portName: besom.types.Input.Optional[String] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    protocol: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.RegionBackendServiceProtocol] = scala.None,
    region: besom.types.Input[String],
    requestId: besom.types.Input.Optional[String] = scala.None,
    securitySettings: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.SecuritySettingsArgs] = scala.None,
    serviceBindings: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    sessionAffinity: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.RegionBackendServiceSessionAffinity] = scala.None,
    subsetting: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.SubsettingArgs] = scala.None,
    timeoutSec: besom.types.Input.Optional[Int] = scala.None,
    usedBy: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.BackendServiceUsedByArgs]]] = scala.None
  )(using besom.types.Context): RegionBackendServiceArgs =
    new RegionBackendServiceArgs(
      affinityCookieTtlSec = affinityCookieTtlSec.asOptionOutput(isSecret = false),
      backends = backends.asOptionOutput(isSecret = false),
      cdnPolicy = cdnPolicy.asOptionOutput(isSecret = false),
      circuitBreakers = circuitBreakers.asOptionOutput(isSecret = false),
      compressionMode = compressionMode.asOptionOutput(isSecret = false),
      connectionDraining = connectionDraining.asOptionOutput(isSecret = false),
      connectionTrackingPolicy = connectionTrackingPolicy.asOptionOutput(isSecret = false),
      consistentHash = consistentHash.asOptionOutput(isSecret = false),
      customRequestHeaders = customRequestHeaders.asOptionOutput(isSecret = false),
      customResponseHeaders = customResponseHeaders.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      enableCDN = enableCDN.asOptionOutput(isSecret = false),
      failoverPolicy = failoverPolicy.asOptionOutput(isSecret = false),
      healthChecks = healthChecks.asOptionOutput(isSecret = false),
      iap = iap.asOptionOutput(isSecret = false),
      loadBalancingScheme = loadBalancingScheme.asOptionOutput(isSecret = false),
      localityLbPolicies = localityLbPolicies.asOptionOutput(isSecret = false),
      localityLbPolicy = localityLbPolicy.asOptionOutput(isSecret = false),
      logConfig = logConfig.asOptionOutput(isSecret = false),
      maxStreamDuration = maxStreamDuration.asOptionOutput(isSecret = false),
      metadatas = metadatas.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      network = network.asOptionOutput(isSecret = false),
      outlierDetection = outlierDetection.asOptionOutput(isSecret = false),
      port = port.asOptionOutput(isSecret = false),
      portName = portName.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      protocol = protocol.asOptionOutput(isSecret = false),
      region = region.asOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      securitySettings = securitySettings.asOptionOutput(isSecret = false),
      serviceBindings = serviceBindings.asOptionOutput(isSecret = false),
      sessionAffinity = sessionAffinity.asOptionOutput(isSecret = false),
      subsetting = subsetting.asOptionOutput(isSecret = false),
      timeoutSec = timeoutSec.asOptionOutput(isSecret = false),
      usedBy = usedBy.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy