Commit Graph

163 Commits

Author SHA1 Message Date
Marten Deinum
4fb5fb906d Update documentation
Document on how to use the BeanWrapperRowMapper with the StreamingXlsxItemReader as that requires a bit more configuration due to the streaming nature.

Next to the documentation also added a test case for this to show how to configure it as well.

Closes: #115
2024-09-18 16:50:02 +02:00
Marten Deinum
6335a69e17 Merge pull request #143 from spring-projects/more-flexible-configuration
Customization of Apache POI helpers
2024-09-18 15:57:42 +02:00
Marten Deinum
395560672a Customization of Apache POI helpers
Prior to this commit it was impossible to modify or configure the DataFormatter and FormulaEvaluator in use. With this commit we resolve this by introducing two interfaces. 1 DataFormatterCustomizer to customize/configure the the DataFormatter in use. 1 interface the FormulaEvaluatorFactory which is a factory used to create the FormulaEvaluator.

The default DataFormatterCustomizer will configure the formatter to use the cached values from cells instead of evaluating the formulas.

The default FormulaEvaluatorFactory in use will always return null instead of creating a FormulaEvaluator.

Fixes: #126
2024-09-18 15:52:18 +02:00
Gerrit Meier
41cbb93142 Update Neo4j extension to use Spring Data Neo4j. (#125)
Move away from the Neo4j OGM usage because Spring Data Neo4j
fits better in the ecosystem, spring-batch is settled in.

Previously there was no visible difference to users because Spring Data Neo4j
was based on Neo4j OGM which isn't the case anymore.
2024-08-20 17:50:41 +02:00
Volodymyr
42093bc813 [bq] test BQ with Docker emulator 2024-08-18 21:13:09 +03:00
Volodymyr
6f3277a2a3 [bq] refactoring & dependency upgrade 2024-08-18 18:36:21 +03:00
Marten Deinum
50f93d3cab Merge pull request #140 from spring-projects/improve-isodateformatter
Improve IsoFormattingDateDataFormatter
2024-08-08 15:31:24 +02:00
Marten Deinum
9b03569dd7 Improve IsoFormattingDateDataFormatter
Prior to this commit all date related fields were formatted as an
ISO_LOCAL_DATE_TIME.

With this commit we inspect the type it actually is date, time or
datetime and use the proper ISO_LOCAL formatting for that.

Another improvement is to use the cached result for the formula instead
of re-evaluating the formula and use that type.
2024-08-08 15:29:29 +02:00
Marten Deinum
80813019b6 Merge pull request #139 from spring-projects/junit-best-practices
Upgrade to spring-java-format 0.0.42
2024-08-07 21:30:04 +02:00
Marten Deinum
9ee6eff5b7 Upgrade to spring-java-format 0.0.42
With this commit we upgrade the java formatting to the new version and
also adhere to the standards applied there. Mainly for Junit5 names of
the test classes and visibility of methods.

Closes: #138
2024-08-07 21:27:18 +02:00
Marten Deinum
05087745e4 Update Github Actions to JDK17
Use JDK17 with a proper distribution.
2024-08-07 21:05:29 +02:00
Marten Deinum
f7e1974762 Update Github Actions to JDK17
Use JDK17 in github actions.
2024-08-07 21:02:10 +02:00
Marten Deinum
cc72e8d616 Fix IsoFormattingDateDataFormatter
The format used the ISO_OFFSET_DATE_TIME is the wrong one and leads to errors
formatting the date. Instead we should have used the ISO_LOCAL_DATE_TIME instead.

This commit fixes that and also includes a bug fix for the XLSX variant as that didn't
use the overridden method. The correct method for this has been overridden now also
formatting the dates/times for that using the ISO_LOCAL_DATE_TIME format.

Tests for different types have been added as well, as to make sure this
keeps working for newer versions.

Closes: #121
2024-08-07 14:11:52 +02:00
Marten Deinum
b6e2b97068 Consistently open workbook in readonly mode
The itemreaders provided by this project are reading only. So it makes
sense to open them with only read-only priviliges. We already did this
for the streaming version of the itemreader. With this commit we also
enable this for the regular itemreader.

Closes: #128
2024-08-07 13:04:42 +02:00
Marten Deinum
b3cbefb773 New development version (0.2) 2024-08-07 13:03:04 +02:00
Marten Deinum
39ffa4e005 Merge pull request #137 from spring-projects/spring-batch-excel-to-batch-51
Upgrade to Spring Batch 5.1
2024-08-07 13:01:02 +02:00
Marten Deinum
61b3220ab8 Upgrade to AssertJ 3.26.3
Closes: #135
2024-08-07 11:52:20 +02:00
Marten Deinum
dafedb2e1d Upgrade to Mockito 5.12.0
Closes: #134
2024-08-07 11:50:20 +02:00
Marten Deinum
fe710f6245 Upgrade to JUnit JUpiter 5.10.2
Closes: #133
2024-08-07 11:48:45 +02:00
Marten Deinum
6b875f018b Upgrade to Spring Batch 5.3.0
Closes: #132
2024-08-07 11:46:41 +02:00
Marten Deinum
1ca8459de9 Upgrade to Apache POI 5.3.0
Closes: #131
2024-08-07 11:45:25 +02:00
Marten Deinum
ce21f2f529 Upgrade to Java17
Closes: #130
2024-08-07 11:44:15 +02:00
Volodymyr
c871dcac07 [bq] upgrade dependencies 2023-12-11 08:24:12 +02:00
Marten Deinum
c076942628 Upgrade to Spring Batch 4.3.9 (#120)
* Upgrade to Spring Batch 4.3.8.
2023-10-02 20:26:40 +02:00
Joey Mason
7e2f5b9537 Bump spring-batch-excel Mockito version from 3.11.0 to 3.12.4 (#119) 2023-10-02 16:30:19 +02:00
Marten Deinum
38ce224502 Prefer ArrayList over LinkedList (#118)
Both the ArrayList and LinkedList keep the order
of insertion, there is no need to use the LinkedList.
2023-10-02 16:18:54 +02:00
Marten Deinum
7efdb2054a Update README.adoc
Include a FAQ section for commonly asked questions. 

Closes: #97
2023-10-02 16:02:20 +02:00
Marten Deinum
8a276f921c Update README.adoc
Include the supported Spring Batch versions in the documentation.

Closes: #111
2023-10-02 15:55:17 +02:00
Marten Deinum
f9709d9c35 Allow a Locale to be set for formatting (#100)
The internal DataFormatter used from Apache POI allows for setting a fixed
Locale to use when reading numbers, dates etc. Initially we didn't set this
and thus it always used the default Locale as set from the Java runtime. This
could lead to unexpected results. We now allow to set the userLocale property
and use this to configure the DataFormatter used internally.

We also took the opportunity to make this work with the streaming ItemReader
as well as the regular ItemReader. The streaming item reader now also uses
a pre-configured DataFormatter.

Closes: #98
2023-09-19 20:48:29 +02:00
Volodymyr
bc7fda30b6 [bq] describe how to run batch query 2023-08-26 10:25:32 +03:00
Volodymyr
56f3fc6bbc [bq] upgrade dependencies 2023-08-25 17:04:38 +03:00
Volodymyr
9c02e11eac [bq] 0.2 introduce BigQuery interactive reader 2023-01-17 16:19:56 +02:00
Volodymyr
038f973015 [bq] 0.2 refactoring 2022-12-22 14:44:26 +02:00
Volodymyr
760cde444a [bq] 0.2 introduce integration tests for writers 2022-12-22 13:38:16 +02:00
Volodymyr
79465739ce [bq] 0.2 upgrade dependencies & refactor writers 2022-12-17 11:43:32 +02:00
Volodymyr
ce115bbfe8 [bq] 0.2 upgrade workflow to Java 17 2022-12-17 11:35:39 +02:00
Marten Deinum
3ba05fb4c6 Polish build file (#107) 2022-12-15 15:58:36 +01:00
Marten Deinum
3e8c0c5884 Downgrade to Checkstyle 9.3
Closes: #105
2022-12-06 15:43:14 +01:00
Marten Deinum
7a4762b675 Upgrade Maven Javadoc Plugin to 3.4.1
Closes: #104
2022-12-06 15:22:15 +01:00
Marten Deinum
8cfd20a722 Upgrade checkstyle plugin to 3.2.0
This commit also upgrades the used Checkstyle and
spring-java-format rules to respecive version 10.5.0
and 0.0.35.

Closes: #103
2022-12-06 15:22:15 +01:00
Marten Deinum
07a80c43cb Upgrade surefire/failsafe to version 3.0.0-M7
Closes: #102
2022-12-06 15:22:15 +01:00
Marten Deinum
0fe27c4821 Upgrade maven-compiler-plugin to 3.10.1
Closes: #101
2022-12-06 15:22:15 +01:00
Marten Deinum
e8c67a115d Add maven.config file
Reduce the output generated for the build. 

Add the -ntp (no transfer progress) as to not to pollute the server output
and thus improve performance.
2022-12-06 14:19:25 +01:00
Marten Deinum
ff44bc5db8 Fix error in pom.xml 2022-12-06 14:09:37 +01:00
Marten Deinum
700e3bfe15 Remove now obsolete log4j2.xml 2022-12-06 14:08:38 +01:00
Marten Deinum
cd72a2851d Reduce output during test
Instead of Log4j2 use the SLF4J NOP logger. This will disable logging output,
this will cleanup the output during a build.
2022-12-06 13:45:26 +01:00
Marten Deinum
3ed5093daa Fix dependency scope for AssertJ
Prior to this commit the dependency scope was not set and thus the default 
provided would apply. We now explicitly set it to a scope of test
2022-12-06 13:42:16 +01:00
Marten Deinum
005e4cb206 Update Spring Batch to 4.3.7 2022-12-06 10:59:59 +01:00
Mahmoud Ben Hassine
e971789964 Add new module for Apache Geode support
Related to https://github.com/spring-projects/spring-batch/issues/4214
2022-10-18 13:19:18 +02:00
Mahmoud Ben Hassine
c72b72fed8 Add parikshitdutta as lead of spring-batch-elasticsearch 2022-06-08 13:15:45 +02:00