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

io.burkard.cdk.services.sqs.CfnQueue.scala Maven / Gradle / Ivy

The newest version!
package io.burkard.cdk.services.sqs

import scala.collection.JavaConverters._

@scala.annotation.nowarn("cat=deprecation")
@SuppressWarnings(Array("org.wartremover.warts.DefaultArguments", "org.wartremover.warts.Null", "DisableSyntax.null"))
object CfnQueue {

  def apply(
    internalResourceId: String,
    fifoThroughputLimit: Option[String] = None,
    tags: Option[List[_ <: software.amazon.awscdk.CfnTag]] = None,
    messageRetentionPeriod: Option[Number] = None,
    visibilityTimeout: Option[Number] = None,
    deduplicationScope: Option[String] = None,
    fifoQueue: Option[Boolean] = None,
    kmsDataKeyReusePeriodSeconds: Option[Number] = None,
    queueName: Option[String] = None,
    receiveMessageWaitTimeSeconds: Option[Number] = None,
    contentBasedDeduplication: Option[Boolean] = None,
    kmsMasterKeyId: Option[String] = None,
    sqsManagedSseEnabled: Option[Boolean] = None,
    maximumMessageSize: Option[Number] = None,
    redrivePolicy: Option[AnyRef] = None,
    delaySeconds: Option[Number] = None,
    redriveAllowPolicy: Option[AnyRef] = None
  )(implicit stackCtx: software.amazon.awscdk.Stack): software.amazon.awscdk.services.sqs.CfnQueue =
    software.amazon.awscdk.services.sqs.CfnQueue.Builder
      .create(stackCtx, internalResourceId)
      .fifoThroughputLimit(fifoThroughputLimit.orNull)
      .tags(tags.map(_.asJava).orNull)
      .messageRetentionPeriod(messageRetentionPeriod.orNull)
      .visibilityTimeout(visibilityTimeout.orNull)
      .deduplicationScope(deduplicationScope.orNull)
      .fifoQueue(fifoQueue.map(Boolean.box).orNull)
      .kmsDataKeyReusePeriodSeconds(kmsDataKeyReusePeriodSeconds.orNull)
      .queueName(queueName.orNull)
      .receiveMessageWaitTimeSeconds(receiveMessageWaitTimeSeconds.orNull)
      .contentBasedDeduplication(contentBasedDeduplication.map(Boolean.box).orNull)
      .kmsMasterKeyId(kmsMasterKeyId.orNull)
      .sqsManagedSseEnabled(sqsManagedSseEnabled.map(Boolean.box).orNull)
      .maximumMessageSize(maximumMessageSize.orNull)
      .redrivePolicy(redrivePolicy.orNull)
      .delaySeconds(delaySeconds.orNull)
      .redriveAllowPolicy(redriveAllowPolicy.orNull)
      .build()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy