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

io.burkard.cdk.services.stepfunctions.tasks.LambdaInvoke.scala Maven / Gradle / Ivy

package io.burkard.cdk.services.stepfunctions.tasks

import scala.collection.JavaConverters._

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

  def apply(
    internalResourceId: String,
    lambdaFunction: software.amazon.awscdk.services.lambda.IFunction,
    qualifier: Option[String] = None,
    payload: Option[software.amazon.awscdk.services.stepfunctions.TaskInput] = None,
    invocationType: Option[software.amazon.awscdk.services.stepfunctions.tasks.LambdaInvocationType] = None,
    retryOnServiceExceptions: Option[Boolean] = None,
    payloadResponseOnly: Option[Boolean] = None,
    resultPath: Option[String] = None,
    integrationPattern: Option[software.amazon.awscdk.services.stepfunctions.IntegrationPattern] = None,
    outputPath: Option[String] = None,
    comment: Option[String] = None,
    clientContext: Option[String] = None,
    resultSelector: Option[Map[String, _]] = None,
    inputPath: Option[String] = None,
    timeout: Option[software.amazon.awscdk.Duration] = None,
    heartbeat: Option[software.amazon.awscdk.Duration] = None
  )(implicit stackCtx: software.amazon.awscdk.Stack): software.amazon.awscdk.services.stepfunctions.tasks.LambdaInvoke =
    software.amazon.awscdk.services.stepfunctions.tasks.LambdaInvoke.Builder
      .create(stackCtx, internalResourceId)
      .lambdaFunction(lambdaFunction)
      .qualifier(qualifier.orNull)
      .payload(payload.orNull)
      .invocationType(invocationType.orNull)
      .retryOnServiceExceptions(retryOnServiceExceptions.map(Boolean.box).orNull)
      .payloadResponseOnly(payloadResponseOnly.map(Boolean.box).orNull)
      .resultPath(resultPath.orNull)
      .integrationPattern(integrationPattern.orNull)
      .outputPath(outputPath.orNull)
      .comment(comment.orNull)
      .clientContext(clientContext.orNull)
      .resultSelector(resultSelector.map(_.asJava).orNull)
      .inputPath(inputPath.orNull)
      .timeout(timeout.orNull)
      .heartbeat(heartbeat.orNull)
      .build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy