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

software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichment Maven / Gradle / Ivy

package software.amazon.awscdk.services.pipes.enrichments.alpha;

/**
 * (experimental) A Lambda enrichment for a pipe.
 * 

* Example: *

*

 * Queue sourceQueue;
 * Queue targetQueue;
 * Function enrichmentFunction;
 * LambdaEnrichment enrichment = new LambdaEnrichment(enrichmentFunction);
 * Pipe pipe = Pipe.Builder.create(this, "Pipe")
 *         .source(new SomeSource(sourceQueue))
 *         .enrichment(enrichment)
 *         .target(new SomeTarget(targetQueue))
 *         .build();
 * 
*/ @javax.annotation.Generated(value = "jsii-pacmak/1.103.1 (build bef2dea)", date = "2024-10-11T15:56:08.396Z") @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.pipes.enrichments.alpha.$Module.class, fqn = "@aws-cdk/aws-pipes-enrichments-alpha.LambdaEnrichment") public class LambdaEnrichment extends software.amazon.jsii.JsiiObject implements software.amazon.awscdk.services.pipes.alpha.IEnrichment { protected LambdaEnrichment(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); } protected LambdaEnrichment(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) { super(initializationMode); } /** * @param lambda This parameter is required. * @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public LambdaEnrichment(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.lambda.IFunction lambda, final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichmentProps props) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(lambda, "lambda is required"), props }); } /** * @param lambda This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public LambdaEnrichment(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.lambda.IFunction lambda) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(lambda, "lambda is required") }); } /** * (experimental) Bind this enrichment to a pipe. *

* @param pipe This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.pipes.alpha.EnrichmentParametersConfig bind(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.pipes.alpha.IPipe pipe) { return software.amazon.jsii.Kernel.call(this, "bind", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.pipes.alpha.EnrichmentParametersConfig.class), new Object[] { java.util.Objects.requireNonNull(pipe, "pipe is required") }); } /** * (experimental) Grant the pipes role to invoke the enrichment. *

* @param pipeRole This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public void grantInvoke(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IRole pipeRole) { software.amazon.jsii.Kernel.call(this, "grantInvoke", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(pipeRole, "pipeRole is required") }); } /** * (experimental) The ARN of the enrichment resource. *

* Length Constraints: Minimum length of 0. Maximum length of 1600. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public @org.jetbrains.annotations.NotNull java.lang.String getEnrichmentArn() { return software.amazon.jsii.Kernel.get(this, "enrichmentArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * (experimental) A fluent builder for {@link software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichment}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public static final class Builder implements software.amazon.jsii.Builder { /** * @return a new instance of {@link Builder}. * @param lambda This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public static Builder create(final software.amazon.awscdk.services.lambda.IFunction lambda) { return new Builder(lambda); } private final software.amazon.awscdk.services.lambda.IFunction lambda; private software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichmentProps.Builder props; private Builder(final software.amazon.awscdk.services.lambda.IFunction lambda) { this.lambda = lambda; } /** * (experimental) The input transformation for the enrichment. *

* Default: - None *

* @return {@code this} * @see https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-input-transformation.html * @param inputTransformation The input transformation for the enrichment. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder inputTransformation(final software.amazon.awscdk.services.pipes.alpha.InputTransformation inputTransformation) { this.props().inputTransformation(inputTransformation); return this; } /** * @return a newly built instance of {@link software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichment}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichment build() { return new software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichment( this.lambda, this.props != null ? this.props.build() : null ); } private software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichmentProps.Builder props() { if (this.props == null) { this.props = new software.amazon.awscdk.services.pipes.enrichments.alpha.LambdaEnrichmentProps.Builder(); } return this.props; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy