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

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

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

@SuppressWarnings(Array("org.wartremover.warts.DefaultArguments", "org.wartremover.warts.Null", "DisableSyntax.null"))
object QueueProps {

  def apply(
    fifoThroughputLimit: Option[software.amazon.awscdk.services.sqs.FifoThroughputLimit] = None,
    retentionPeriod: Option[software.amazon.awscdk.Duration] = None,
    deadLetterQueue: Option[software.amazon.awscdk.services.sqs.DeadLetterQueue] = None,
    visibilityTimeout: Option[software.amazon.awscdk.Duration] = None,
    maxMessageSizeBytes: Option[Number] = None,
    deliveryDelay: Option[software.amazon.awscdk.Duration] = None,
    deduplicationScope: Option[software.amazon.awscdk.services.sqs.DeduplicationScope] = None,
    encryptionMasterKey: Option[software.amazon.awscdk.services.kms.IKey] = None,
    encryption: Option[software.amazon.awscdk.services.sqs.QueueEncryption] = None,
    queueName: Option[String] = None,
    receiveMessageWaitTime: Option[software.amazon.awscdk.Duration] = None,
    contentBasedDeduplication: Option[Boolean] = None,
    fifo: Option[Boolean] = None,
    removalPolicy: Option[software.amazon.awscdk.RemovalPolicy] = None,
    dataKeyReuse: Option[software.amazon.awscdk.Duration] = None
  ): software.amazon.awscdk.services.sqs.QueueProps =
    (new software.amazon.awscdk.services.sqs.QueueProps.Builder)
      .fifoThroughputLimit(fifoThroughputLimit.orNull)
      .retentionPeriod(retentionPeriod.orNull)
      .deadLetterQueue(deadLetterQueue.orNull)
      .visibilityTimeout(visibilityTimeout.orNull)
      .maxMessageSizeBytes(maxMessageSizeBytes.orNull)
      .deliveryDelay(deliveryDelay.orNull)
      .deduplicationScope(deduplicationScope.orNull)
      .encryptionMasterKey(encryptionMasterKey.orNull)
      .encryption(encryption.orNull)
      .queueName(queueName.orNull)
      .receiveMessageWaitTime(receiveMessageWaitTime.orNull)
      .contentBasedDeduplication(contentBasedDeduplication.map(Boolean.box).orNull)
      .fifo(fifo.map(Boolean.box).orNull)
      .removalPolicy(removalPolicy.orNull)
      .dataKeyReuse(dataKeyReuse.orNull)
      .build()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy