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

src.pubsublite.v1.SubscriptionArgs.scala Maven / Gradle / Ivy

package besom.api.googlenative.pubsublite.v1

final case class SubscriptionArgs private(
  deliveryConfig: besom.types.Output[scala.Option[besom.api.googlenative.pubsublite.v1.inputs.DeliveryConfigArgs]],
  exportConfig: besom.types.Output[scala.Option[besom.api.googlenative.pubsublite.v1.inputs.ExportConfigArgs]],
  location: besom.types.Output[scala.Option[String]],
  name: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  skipBacklog: besom.types.Output[scala.Option[Boolean]],
  subscriptionId: besom.types.Output[String],
  topic: besom.types.Output[scala.Option[String]]
)

object SubscriptionArgs:
  def apply(
    deliveryConfig: besom.types.Input.Optional[besom.api.googlenative.pubsublite.v1.inputs.DeliveryConfigArgs] = scala.None,
    exportConfig: besom.types.Input.Optional[besom.api.googlenative.pubsublite.v1.inputs.ExportConfigArgs] = scala.None,
    location: besom.types.Input.Optional[String] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    skipBacklog: besom.types.Input.Optional[Boolean] = scala.None,
    subscriptionId: besom.types.Input[String],
    topic: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): SubscriptionArgs =
    new SubscriptionArgs(
      deliveryConfig = deliveryConfig.asOptionOutput(isSecret = false),
      exportConfig = exportConfig.asOptionOutput(isSecret = false),
      location = location.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      skipBacklog = skipBacklog.asOptionOutput(isSecret = false),
      subscriptionId = subscriptionId.asOutput(isSecret = false),
      topic = topic.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy