From 680f1f73af5d57aeebc3f1a388e9d3b51464e3ca Mon Sep 17 00:00:00 2001 From: Gunnar Morling Date: Thu, 9 Apr 2020 17:36:25 +0200 Subject: [PATCH] DBZ-1782 Misc. fixes --- .../main/java/io/debezium/transforms/Filter.java | 4 +++- .../java/io/debezium/transforms/FilterTest.java | 15 ++++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/debezium-core/src/main/java/io/debezium/transforms/Filter.java b/debezium-core/src/main/java/io/debezium/transforms/Filter.java index 2fc534310..d38363063 100644 --- a/debezium-core/src/main/java/io/debezium/transforms/Filter.java +++ b/debezium-core/src/main/java/io/debezium/transforms/Filter.java @@ -15,6 +15,7 @@ import org.slf4j.LoggerFactory; import io.debezium.DebeziumException; +import io.debezium.common.annotation.Incubating; import io.debezium.config.Configuration; import io.debezium.config.EnumeratedValue; import io.debezium.config.Field; @@ -34,6 +35,7 @@ * @param the subtype of {@link ConnectRecord} on which this transformation will operate * @author Jiri Pechanec */ +@Incubating public class Filter> implements Transformation { private static final Logger LOGGER = LoggerFactory.getLogger(Filter.class); @@ -154,7 +156,7 @@ public static NullHandling parse(String value, String defaultValue) { .withEnum(ExpressionLanguage.class) .withWidth(ConfigDef.Width.MEDIUM) .withImportance(ConfigDef.Importance.HIGH) - .withDescription("An expression language used to evaluate the filtering condition. Only 'groovy' is supported."); + .withDescription("An expression language used to evaluate the filtering condition. 'groovy' and 'graal.js' are supported."); public static final Field EXPRESSION = Field.create("condition") .withDisplayName("Filtering condition") diff --git a/debezium-core/src/test/java/io/debezium/transforms/FilterTest.java b/debezium-core/src/test/java/io/debezium/transforms/FilterTest.java index b673185c0..252ea67bd 100644 --- a/debezium-core/src/test/java/io/debezium/transforms/FilterTest.java +++ b/debezium-core/src/test/java/io/debezium/transforms/FilterTest.java @@ -5,6 +5,8 @@ */ package io.debezium.transforms; +import static org.fest.assertions.Assertions.assertThat; + import java.time.Instant; import java.util.HashMap; import java.util.Map; @@ -13,7 +15,6 @@ import org.apache.kafka.connect.data.SchemaBuilder; import org.apache.kafka.connect.data.Struct; import org.apache.kafka.connect.source.SourceRecord; -import org.fest.assertions.Assertions; import org.junit.Test; import io.debezium.DebeziumException; @@ -89,8 +90,8 @@ public void shouldProcessCondition() { props.put(LANGUAGE, "groovy"); transform.configure(props); final SourceRecord record = createDeleteRecord(1); - Assertions.assertThat(transform.apply(createDeleteRecord(2))).isNull(); - Assertions.assertThat(transform.apply(record)).isSameAs(record); + assertThat(transform.apply(createDeleteRecord(2))).isNull(); + assertThat(transform.apply(record)).isSameAs(record); } } @@ -102,7 +103,7 @@ public void shouldKeepNulls() { props.put(LANGUAGE, "groovy"); transform.configure(props); final SourceRecord record = createNullRecord(); - Assertions.assertThat(transform.apply(record)).isSameAs(record); + assertThat(transform.apply(record)).isSameAs(record); } } @@ -115,7 +116,7 @@ public void shouldDropNulls() { props.put(NULL_HANDLING, "drop"); transform.configure(props); final SourceRecord record = createNullRecord(); - Assertions.assertThat(transform.apply(record)).isNull(); + assertThat(transform.apply(record)).isNull(); } } @@ -167,8 +168,8 @@ public void shouldRunJavaScript() { props.put(LANGUAGE, "graal.js"); transform.configure(props); final SourceRecord record = createDeleteRecord(1); - Assertions.assertThat(transform.apply(createDeleteRecord(2))).isNull(); - Assertions.assertThat(transform.apply(record)).isSameAs(record); + assertThat(transform.apply(createDeleteRecord(2))).isNull(); + assertThat(transform.apply(record)).isSameAs(record); } } }