com.pulumi.awsnative.events.kotlin.inputs.RuleTargetArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.events.kotlin.inputs
import com.pulumi.awsnative.events.inputs.RuleTargetArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property appSyncParameters Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API.
* @property arn The Amazon Resource Name (ARN) of the target.
* @property batchParameters If the event target is an AWS Batch job, this contains the job definition, job name, and other parameters. For more information, see [Jobs](https://docs.aws.amazon.com/batch/latest/userguide/jobs.html) in the *AWS Batch User Guide* .
* @property deadLetterConfig The `DeadLetterConfig` that defines the target queue to send dead-letter queue events to.
* @property ecsParameters Contains the Amazon ECS task definition and task count to be used, if the event target is an Amazon ECS task. For more information about Amazon ECS tasks, see [Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon EC2 Container Service Developer Guide* .
* @property httpParameters Contains the HTTP parameters to use when the target is a API Gateway endpoint or EventBridge ApiDestination.
* If you specify an API Gateway API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.
* @property id The ID of the target within the specified rule. Use this ID to reference the target when updating the rule. We recommend using a memorable and unique string.
* @property input Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target. For more information, see [The JavaScript Object Notation (JSON) Data Interchange Format](https://docs.aws.amazon.com/http://www.rfc-editor.org/rfc/rfc7159.txt) .
* @property inputPath The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. You may use JSON dot notation or bracket notation. For more information about JSON paths, see [JSONPath](https://docs.aws.amazon.com/http://goessner.net/articles/JsonPath/) .
* @property inputTransformer Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target.
* @property kinesisParameters The custom parameter you can use to control the shard assignment, when the target is a Kinesis data stream. If you do not include this parameter, the default is to use the `eventId` as the partition key.
* @property redshiftDataParameters Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.
* If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.
* @property retryPolicy The `RetryPolicy` object that contains the retry policy configuration to use for the dead-letter queue.
* @property roleArn The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If one rule triggers multiple targets, you can use a different IAM role for each target.
* @property runCommandParameters Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
* @property sageMakerPipelineParameters Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.
* If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events.
* @property sqsParameters Contains the message group ID to use when the target is a FIFO queue.
* If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled.
*/
public data class RuleTargetArgs(
public val appSyncParameters: Output? = null,
public val arn: Output,
public val batchParameters: Output? = null,
public val deadLetterConfig: Output? = null,
public val ecsParameters: Output? = null,
public val httpParameters: Output? = null,
public val id: Output,
public val input: Output? = null,
public val inputPath: Output? = null,
public val inputTransformer: Output? = null,
public val kinesisParameters: Output? = null,
public val redshiftDataParameters: Output? = null,
public val retryPolicy: Output? = null,
public val roleArn: Output? = null,
public val runCommandParameters: Output? = null,
public val sageMakerPipelineParameters: Output? = null,
public val sqsParameters: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.events.inputs.RuleTargetArgs =
com.pulumi.awsnative.events.inputs.RuleTargetArgs.builder()
.appSyncParameters(appSyncParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.arn(arn.applyValue({ args0 -> args0 }))
.batchParameters(batchParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.deadLetterConfig(deadLetterConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.ecsParameters(ecsParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.httpParameters(httpParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.id(id.applyValue({ args0 -> args0 }))
.input(input?.applyValue({ args0 -> args0 }))
.inputPath(inputPath?.applyValue({ args0 -> args0 }))
.inputTransformer(inputTransformer?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.kinesisParameters(kinesisParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.redshiftDataParameters(
redshiftDataParameters?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.retryPolicy(retryPolicy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.roleArn(roleArn?.applyValue({ args0 -> args0 }))
.runCommandParameters(
runCommandParameters?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.sageMakerPipelineParameters(
sageMakerPipelineParameters?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.sqsParameters(sqsParameters?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [RuleTargetArgs].
*/
@PulumiTagMarker
public class RuleTargetArgsBuilder internal constructor() {
private var appSyncParameters: Output? = null
private var arn: Output? = null
private var batchParameters: Output? = null
private var deadLetterConfig: Output? = null
private var ecsParameters: Output? = null
private var httpParameters: Output? = null
private var id: Output? = null
private var input: Output? = null
private var inputPath: Output? = null
private var inputTransformer: Output? = null
private var kinesisParameters: Output? = null
private var redshiftDataParameters: Output? = null
private var retryPolicy: Output? = null
private var roleArn: Output? = null
private var runCommandParameters: Output? = null
private var sageMakerPipelineParameters: Output? = null
private var sqsParameters: Output? = null
/**
* @param value Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API.
*/
@JvmName("vyyhugvhjpoksmxo")
public suspend fun appSyncParameters(`value`: Output) {
this.appSyncParameters = value
}
/**
* @param value The Amazon Resource Name (ARN) of the target.
*/
@JvmName("jngdfgrxchxkontj")
public suspend fun arn(`value`: Output) {
this.arn = value
}
/**
* @param value If the event target is an AWS Batch job, this contains the job definition, job name, and other parameters. For more information, see [Jobs](https://docs.aws.amazon.com/batch/latest/userguide/jobs.html) in the *AWS Batch User Guide* .
*/
@JvmName("dtubbarfpuulpobd")
public suspend fun batchParameters(`value`: Output) {
this.batchParameters = value
}
/**
* @param value The `DeadLetterConfig` that defines the target queue to send dead-letter queue events to.
*/
@JvmName("dycpmecnddplaypd")
public suspend fun deadLetterConfig(`value`: Output) {
this.deadLetterConfig = value
}
/**
* @param value Contains the Amazon ECS task definition and task count to be used, if the event target is an Amazon ECS task. For more information about Amazon ECS tasks, see [Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon EC2 Container Service Developer Guide* .
*/
@JvmName("bovpodqoqqmnflaf")
public suspend fun ecsParameters(`value`: Output) {
this.ecsParameters = value
}
/**
* @param value Contains the HTTP parameters to use when the target is a API Gateway endpoint or EventBridge ApiDestination.
* If you specify an API Gateway API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.
*/
@JvmName("yvtrgwryegtxxlta")
public suspend fun httpParameters(`value`: Output) {
this.httpParameters = value
}
/**
* @param value The ID of the target within the specified rule. Use this ID to reference the target when updating the rule. We recommend using a memorable and unique string.
*/
@JvmName("ywidktaxlhpvsaxc")
public suspend fun id(`value`: Output) {
this.id = value
}
/**
* @param value Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target. For more information, see [The JavaScript Object Notation (JSON) Data Interchange Format](https://docs.aws.amazon.com/http://www.rfc-editor.org/rfc/rfc7159.txt) .
*/
@JvmName("csqlovohyldaarmy")
public suspend fun input(`value`: Output) {
this.input = value
}
/**
* @param value The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. You may use JSON dot notation or bracket notation. For more information about JSON paths, see [JSONPath](https://docs.aws.amazon.com/http://goessner.net/articles/JsonPath/) .
*/
@JvmName("qwuywgbxpxhbxxsu")
public suspend fun inputPath(`value`: Output) {
this.inputPath = value
}
/**
* @param value Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target.
*/
@JvmName("uugukvoqgbavqaak")
public suspend fun inputTransformer(`value`: Output) {
this.inputTransformer = value
}
/**
* @param value The custom parameter you can use to control the shard assignment, when the target is a Kinesis data stream. If you do not include this parameter, the default is to use the `eventId` as the partition key.
*/
@JvmName("stobeqpevrvqkfyr")
public suspend fun kinesisParameters(`value`: Output) {
this.kinesisParameters = value
}
/**
* @param value Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.
* If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.
*/
@JvmName("ayiifydirqxwqvcr")
public suspend fun redshiftDataParameters(`value`: Output) {
this.redshiftDataParameters = value
}
/**
* @param value The `RetryPolicy` object that contains the retry policy configuration to use for the dead-letter queue.
*/
@JvmName("tacvouoporgoysen")
public suspend fun retryPolicy(`value`: Output) {
this.retryPolicy = value
}
/**
* @param value The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If one rule triggers multiple targets, you can use a different IAM role for each target.
*/
@JvmName("ilqiyohyxrjgyfqm")
public suspend fun roleArn(`value`: Output) {
this.roleArn = value
}
/**
* @param value Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
*/
@JvmName("gosuhvjvhmjhfitu")
public suspend fun runCommandParameters(`value`: Output) {
this.runCommandParameters = value
}
/**
* @param value Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.
* If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events.
*/
@JvmName("nnunbpyqyibtoorw")
public suspend fun sageMakerPipelineParameters(`value`: Output) {
this.sageMakerPipelineParameters = value
}
/**
* @param value Contains the message group ID to use when the target is a FIFO queue.
* If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled.
*/
@JvmName("dseydpmfhckoumoh")
public suspend fun sqsParameters(`value`: Output) {
this.sqsParameters = value
}
/**
* @param value Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API.
*/
@JvmName("yushdcosxiuagobv")
public suspend fun appSyncParameters(`value`: RuleAppSyncParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.appSyncParameters = mapped
}
/**
* @param argument Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API.
*/
@JvmName("bxyaxsavmosaaxgb")
public suspend fun appSyncParameters(argument: suspend RuleAppSyncParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleAppSyncParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.appSyncParameters = mapped
}
/**
* @param value The Amazon Resource Name (ARN) of the target.
*/
@JvmName("hmjfhacotynlqppx")
public suspend fun arn(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.arn = mapped
}
/**
* @param value If the event target is an AWS Batch job, this contains the job definition, job name, and other parameters. For more information, see [Jobs](https://docs.aws.amazon.com/batch/latest/userguide/jobs.html) in the *AWS Batch User Guide* .
*/
@JvmName("qfnqdqjjjphkjvbf")
public suspend fun batchParameters(`value`: RuleBatchParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.batchParameters = mapped
}
/**
* @param argument If the event target is an AWS Batch job, this contains the job definition, job name, and other parameters. For more information, see [Jobs](https://docs.aws.amazon.com/batch/latest/userguide/jobs.html) in the *AWS Batch User Guide* .
*/
@JvmName("tijvopttxyiipist")
public suspend fun batchParameters(argument: suspend RuleBatchParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleBatchParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.batchParameters = mapped
}
/**
* @param value The `DeadLetterConfig` that defines the target queue to send dead-letter queue events to.
*/
@JvmName("bvaxlyuyeotkevrj")
public suspend fun deadLetterConfig(`value`: RuleDeadLetterConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.deadLetterConfig = mapped
}
/**
* @param argument The `DeadLetterConfig` that defines the target queue to send dead-letter queue events to.
*/
@JvmName("jbnviqkkighexmln")
public suspend fun deadLetterConfig(argument: suspend RuleDeadLetterConfigArgsBuilder.() -> Unit) {
val toBeMapped = RuleDeadLetterConfigArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.deadLetterConfig = mapped
}
/**
* @param value Contains the Amazon ECS task definition and task count to be used, if the event target is an Amazon ECS task. For more information about Amazon ECS tasks, see [Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon EC2 Container Service Developer Guide* .
*/
@JvmName("fhkotqavywtqfspy")
public suspend fun ecsParameters(`value`: RuleEcsParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.ecsParameters = mapped
}
/**
* @param argument Contains the Amazon ECS task definition and task count to be used, if the event target is an Amazon ECS task. For more information about Amazon ECS tasks, see [Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon EC2 Container Service Developer Guide* .
*/
@JvmName("bvrohmoyixvmepcd")
public suspend fun ecsParameters(argument: suspend RuleEcsParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleEcsParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.ecsParameters = mapped
}
/**
* @param value Contains the HTTP parameters to use when the target is a API Gateway endpoint or EventBridge ApiDestination.
* If you specify an API Gateway API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.
*/
@JvmName("gvnmvaaxcyagituw")
public suspend fun httpParameters(`value`: RuleHttpParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpParameters = mapped
}
/**
* @param argument Contains the HTTP parameters to use when the target is a API Gateway endpoint or EventBridge ApiDestination.
* If you specify an API Gateway API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.
*/
@JvmName("wcndcmpdursvigtw")
public suspend fun httpParameters(argument: suspend RuleHttpParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleHttpParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.httpParameters = mapped
}
/**
* @param value The ID of the target within the specified rule. Use this ID to reference the target when updating the rule. We recommend using a memorable and unique string.
*/
@JvmName("knpnsfshshlqwflx")
public suspend fun id(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.id = mapped
}
/**
* @param value Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target. For more information, see [The JavaScript Object Notation (JSON) Data Interchange Format](https://docs.aws.amazon.com/http://www.rfc-editor.org/rfc/rfc7159.txt) .
*/
@JvmName("dpniybqrcflwdhrp")
public suspend fun input(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.input = mapped
}
/**
* @param value The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. You may use JSON dot notation or bracket notation. For more information about JSON paths, see [JSONPath](https://docs.aws.amazon.com/http://goessner.net/articles/JsonPath/) .
*/
@JvmName("ymaygbrgxsinlguh")
public suspend fun inputPath(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.inputPath = mapped
}
/**
* @param value Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target.
*/
@JvmName("jcaltqaysqpwbhnt")
public suspend fun inputTransformer(`value`: RuleInputTransformerArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.inputTransformer = mapped
}
/**
* @param argument Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target.
*/
@JvmName("tnhuciosliqepvfj")
public suspend fun inputTransformer(argument: suspend RuleInputTransformerArgsBuilder.() -> Unit) {
val toBeMapped = RuleInputTransformerArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.inputTransformer = mapped
}
/**
* @param value The custom parameter you can use to control the shard assignment, when the target is a Kinesis data stream. If you do not include this parameter, the default is to use the `eventId` as the partition key.
*/
@JvmName("ahhajwcccrkbmkox")
public suspend fun kinesisParameters(`value`: RuleKinesisParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kinesisParameters = mapped
}
/**
* @param argument The custom parameter you can use to control the shard assignment, when the target is a Kinesis data stream. If you do not include this parameter, the default is to use the `eventId` as the partition key.
*/
@JvmName("svtxhqbxtuhghwux")
public suspend fun kinesisParameters(argument: suspend RuleKinesisParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleKinesisParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.kinesisParameters = mapped
}
/**
* @param value Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.
* If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.
*/
@JvmName("jcklkfxsyrdkcikl")
public suspend fun redshiftDataParameters(`value`: RuleRedshiftDataParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.redshiftDataParameters = mapped
}
/**
* @param argument Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.
* If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.
*/
@JvmName("uricpqkrpjuefphm")
public suspend fun redshiftDataParameters(argument: suspend RuleRedshiftDataParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleRedshiftDataParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.redshiftDataParameters = mapped
}
/**
* @param value The `RetryPolicy` object that contains the retry policy configuration to use for the dead-letter queue.
*/
@JvmName("fhcaqlewdhftnnyq")
public suspend fun retryPolicy(`value`: RuleRetryPolicyArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.retryPolicy = mapped
}
/**
* @param argument The `RetryPolicy` object that contains the retry policy configuration to use for the dead-letter queue.
*/
@JvmName("ncisxtvqhqvghktq")
public suspend fun retryPolicy(argument: suspend RuleRetryPolicyArgsBuilder.() -> Unit) {
val toBeMapped = RuleRetryPolicyArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.retryPolicy = mapped
}
/**
* @param value The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If one rule triggers multiple targets, you can use a different IAM role for each target.
*/
@JvmName("fykqceqhwhugrcok")
public suspend fun roleArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.roleArn = mapped
}
/**
* @param value Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
*/
@JvmName("owmsafwctrcjxvpf")
public suspend fun runCommandParameters(`value`: RuleRunCommandParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.runCommandParameters = mapped
}
/**
* @param argument Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
*/
@JvmName("eboaxtuwhvjqkvui")
public suspend fun runCommandParameters(argument: suspend RuleRunCommandParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleRunCommandParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.runCommandParameters = mapped
}
/**
* @param value Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.
* If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events.
*/
@JvmName("gsmvfkldehvxbflx")
public suspend fun sageMakerPipelineParameters(`value`: RuleSageMakerPipelineParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sageMakerPipelineParameters = mapped
}
/**
* @param argument Contains the SageMaker Model Building Pipeline parameters to start execution of a SageMaker Model Building Pipeline.
* If you specify a SageMaker Model Building Pipeline as a target, you can use this to specify parameters to start a pipeline execution based on EventBridge events.
*/
@JvmName("prpernvskvduqcus")
public suspend fun sageMakerPipelineParameters(argument: suspend RuleSageMakerPipelineParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleSageMakerPipelineParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.sageMakerPipelineParameters = mapped
}
/**
* @param value Contains the message group ID to use when the target is a FIFO queue.
* If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled.
*/
@JvmName("xvdlhngqpcrsfcfr")
public suspend fun sqsParameters(`value`: RuleSqsParametersArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sqsParameters = mapped
}
/**
* @param argument Contains the message group ID to use when the target is a FIFO queue.
* If you specify an SQS FIFO queue as a target, the queue must have content-based deduplication enabled.
*/
@JvmName("khainexqaitmecxo")
public suspend fun sqsParameters(argument: suspend RuleSqsParametersArgsBuilder.() -> Unit) {
val toBeMapped = RuleSqsParametersArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.sqsParameters = mapped
}
internal fun build(): RuleTargetArgs = RuleTargetArgs(
appSyncParameters = appSyncParameters,
arn = arn ?: throw PulumiNullFieldException("arn"),
batchParameters = batchParameters,
deadLetterConfig = deadLetterConfig,
ecsParameters = ecsParameters,
httpParameters = httpParameters,
id = id ?: throw PulumiNullFieldException("id"),
input = input,
inputPath = inputPath,
inputTransformer = inputTransformer,
kinesisParameters = kinesisParameters,
redshiftDataParameters = redshiftDataParameters,
retryPolicy = retryPolicy,
roleArn = roleArn,
runCommandParameters = runCommandParameters,
sageMakerPipelineParameters = sageMakerPipelineParameters,
sqsParameters = sqsParameters,
)
}