Skip to content

Commit 1b9020c

Browse files
lsuskimpkorstanje
authored andcommitted
[Core] Upgrade datatable to 1.1.3
Squashed commit of the following: commit 06ced5a Author: M.P. Korstanje <rien.korstanje@gmail.com> Date: Fri Jul 27 13:50:14 2018 +0200 Upgrade datatable to 1.1.3 commit 8dfbd90 Author: lukasz.suski <szakal783@wp.pl> Date: Fri Jul 6 17:10:29 2018 +0200 Add ability to register default transformers for table cell and entry
1 parent f840358 commit 1b9020c

File tree

4 files changed

+30
-6
lines changed

4 files changed

+30
-6
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Please see [CONTRIBUTING.md](https://github.com/cucumber/cucumber/blob/master/CO
1010
* [Weld] Document the need for a beans.xml per source root ([#923](https://github.com/cucumber/cucumber-jvm/pull/923) Harald Albers)
1111

1212
### Changed
13+
* [Core] Upgrade datatable to 1.1.3 ([#1414](https://github.com/cucumber/cucumber-jvm/pull/1414) Łukasz Suski)
1314
* [Core] Upgrade cucumber expressions to 6.0.0 ([#1377](https://github.com/cucumber/cucumber-jvm/pull/1377) Aslak Hellesøy)
1415
* Throw an error if a parameter type is used inside optional text parenthesis, or with alternative text.
1516
* Bugfix for nested capture groups.
Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,29 @@
11
package cucumber.api;
22

33
import io.cucumber.cucumberexpressions.ParameterType;
4-
import io.cucumber.cucumberexpressions.ParameterTypeRegistry;
54
import io.cucumber.datatable.DataTableType;
6-
import io.cucumber.datatable.DataTableTypeRegistry;
7-
8-
import java.lang.reflect.Type;
9-
import java.util.Locale;
5+
import io.cucumber.datatable.TableCellByTypeTransformer;
6+
import io.cucumber.datatable.TableEntryByTypeTransformer;
107

118
public interface TypeRegistry {
129

1310
void defineParameterType(ParameterType<?> parameterType);
1411

1512
void defineDataTableType(DataTableType tableType);
1613

14+
/**
15+
* Set default transformer for entries which are not defined by
16+
* {@code defineDataTableType(new DataTableType(Class<T>,TableEntryTransformer<T>))}
17+
*
18+
* @param tableEntryByTypeTransformer default transformer
19+
*/
20+
void setDefaultDataTableEntryTransformer(TableEntryByTypeTransformer tableEntryByTypeTransformer);
21+
22+
/**
23+
* Set default transformer for cells which are not defined by
24+
* {@code defineDataTableType(new DataTableType(Class<T>,TableEntryTransformer<T>))}
25+
*
26+
* @param tableCellByTypeTransformer default transformer
27+
*/
28+
void setDefaultDataTableCellTransformer(TableCellByTypeTransformer tableCellByTypeTransformer);
1729
}

core/src/main/java/io/cucumber/stepexpression/TypeRegistry.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
import io.cucumber.cucumberexpressions.ParameterTypeRegistry;
55
import io.cucumber.datatable.DataTableType;
66
import io.cucumber.datatable.DataTableTypeRegistry;
7+
import io.cucumber.datatable.DefaultDataTableEntryTransformer;
8+
import io.cucumber.datatable.TableCellByTypeTransformer;
79

810
import java.util.Locale;
911

@@ -35,4 +37,13 @@ public void defineDataTableType(DataTableType tableType) {
3537
dataTableTypeRegistry.defineDataTableType(tableType);
3638
}
3739

40+
@Override
41+
public void setDefaultDataTableEntryTransformer(DefaultDataTableEntryTransformer defaultDataTableEntryTransformer) {
42+
dataTableTypeRegistry.setDefaultDataTableEntryTransformer(defaultDataTableEntryTransformer);
43+
}
44+
45+
@Override
46+
public void setDefaultDataTableCellTransformer(TableCellByTypeTransformer defaultDataTableCellTransformer) {
47+
dataTableTypeRegistry.setDefaultDataTableCellTransformer(defaultDataTableCellTransformer);
48+
}
3849
}

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
<tag-expressions.version>1.1.1</tag-expressions.version>
8585
<typetools.version>0.5.0</typetools.version>
8686
<cucumber-expressions.version>6.0.0</cucumber-expressions.version>
87-
<datatable.version>1.0.3</datatable.version>
87+
<datatable.version>1.1.3</datatable.version>
8888
</properties>
8989
<licenses>
9090
<license>

0 commit comments

Comments
 (0)