Commit Graph

1213 Commits

Author SHA1 Message Date
Mahmoud Ben Hassine
dbdbf787e6 Update Javadocs 2023-03-21 17:51:53 +01:00
drow724
89e76164af Add default component name in constructor of AvroItemReader
Issue #4285
2023-02-21 18:08:46 +01:00
Mahmoud Ben Hassine
4ea54388e7 Fix inconsistent state validation rules in RepositoryItemReader
Before this commit, state validation rules in RepositoryItemReader
were not consistent with those applied in its builder.

This commit makes validation rules consistent between the two ways
of creating a RepositoryItemReader. This commit also adds a getter
for the component name in ExecutionContextUserSupport to be able to
assert on it where appropriate down the hierarchy.

Resolves #4276
2023-02-18 04:46:47 +01:00
Henning Poettker
523386e674 Prefer Slice over Page in RepositoryItemReader
Resolves #4115
2023-02-17 17:13:36 +01:00
jinwoo-Bae
4f1dc94b07 Implement equals() and hashcode() in Chunk class
Resolves #4296
2023-02-17 06:18:25 +01:00
Mahmoud Ben Hassine
46c8ebbe7e Fix parameters parsing in JobOperator and MetaDataInstanceFactory
Before this commit, the parsing of job parameters in
JobOperator#start and MetaDataInstanceFactory#createJobExecution
was accepting the comma separated key=value pairs format,
which is incompatible with the new job parameters format
introduced in v5.

This commit updates the contract as well as the implementation
of those APIs to be compatible with v5.

Resolves #4253
Resolves #4301
2023-02-16 16:19:04 +01:00
Philippe Marschall
8c7fb5ca02 Check the return value of File.delete()
Check the return value of File.delete() and
throw an exception if deleting a file fails.

Issue #4203
2023-02-13 14:12:56 +01:00
Mahmoud Ben Hassine
15069aa1dc Fix typos 2022-11-23 15:52:10 +01:00
Danilo Piazzalunga
fc0ec01ff8 Throw IllegalStateException from afterPropertiesSet
Consistently use Assert.state in the afterPropertiesSet()
methods to throw IllegalStateException instead of
IllegalArgumentException when some properties are missing
and/or invalid.

Resolves #2244
2022-11-23 12:22:26 +01:00
Mahmoud Ben Hassine
f72e0f4d16 Fix deprecation notes in ItemStreamSupport
Resolves #4238
2022-11-22 16:54:01 +01:00
Mahmoud Ben Hassine
919f73e78c Remove the SQL Server sequence incrementer in favor of the one provided by Spring Framework 2022-11-08 21:15:49 +01:00
Mahmoud Ben Hassine
1cb172b5e5 Remove the MariaDB sequence incrementer in favor of the one provided by Spring Framework 2022-11-08 21:15:40 +01:00
Mahmoud Ben Hassine
524e9564c0 Add full support for MariaDB
This commit adds full support for MariaDB as
a job repository and removes the code that
treats it as MySQL.

Resolves #3891
Resolves #4217
2022-10-25 11:11:57 +02:00
Mahmoud Ben Hassine
d55a091654 Remove Gemfire support in Spring Batch
Based on the decision to discontinue the support
of Spring Data for Apache Geode [1], this commit
removes the support for Geode in Spring Batch.

The code will be moved to the spring-batch-extensions
repository as a community-driven effort.

[1]: https://github.com/spring-projects/spring-data-geode#notice

Resolves #4214
2022-10-18 12:31:09 +02:00
Mahmoud Ben Hassine
bd9d0d90d6 Deprecate internal classes related to concurrency in TaskExecutorRepeatTemplate
Related to #3949
Related to #3950
Related to #3951
2022-10-12 19:00:40 +02:00
Mahmoud Ben Hassine
1ff04d532d Deprecate throttle limit in TaskExecutorRepeatTemplate
Resolves #2218
2022-10-12 18:57:18 +02:00
Mahmoud Ben Hassine
157d7a3a20 Deprecate ItemStreamSupport in favor of using default methods in the ItemStream interface 2022-10-12 18:55:46 +02:00
Mahmoud Ben Hassine
668c614ed9 Add default methods in ItemStream interface 2022-10-12 18:55:06 +02:00
Mahmoud Ben Hassine
30cee99578 Remove unused constructor in SkipWrapper
This constructor does not make sense as it
does not accept the skipped item.
2022-10-12 18:53:52 +02:00
Mahmoud Ben Hassine
87e69f3e87 Deprecate Classifier
This annotation is not used or introspected
by production code.
2022-10-12 18:51:08 +02:00
Henning Poettker
220de61f75 Remove un-used code for jump-to-item queries 2022-10-11 22:10:59 +02:00
Mahmoud Ben Hassine
b9b7c0891a Fix formatting 2022-09-22 07:40:44 +02:00
Mahmoud Ben Hassine
39b8279831 Fix incorrect reference to SimpleJdbcTemplate in reference documentation
Resolves #4197
2022-09-22 07:11:33 +02:00
Mahmoud Ben Hassine
42b1b2f2c9 Put back "Replace ListenableFuture with CompletableFuture"
Related to a165247284.
2022-08-24 20:08:14 +02:00
Mahmoud Ben Hassine
a165247284 Revert "Replace ListenableFuture with CompletableFuture"
This reverts commit a2cf74ad as the change was made after
spring-kafka 3.0.0-M5 was released. This version is required
to release spring-batch 5.0.0-M5

This change will be put back after releasing 5.0.0-M5.
2022-08-24 18:09:29 +02:00
Mahmoud Ben Hassine
0a75bc7d84 Deprecate Hibernate support
Resolves #4150
2022-08-24 15:49:29 +02:00
Mahmoud Ben Hassine
fe40370f39 Refine contribution #4167
The documentation generation change introduced
in #4167 seems to scan more files than previously
WRT checking the code formatting style.

This commit fixes the formatting of the files
that do not conform to the Spring style.
2022-08-21 09:52:35 +02:00
Mahmoud Ben Hassine
e67c0069f1 Use the Chunk API consistently
This commit replaces the usage of List with Chunk
where appropriate. Summary of changes:

- The Chunk class was moved from the `org.springframework.batch.core.step.item` package to the `org.springframework.batch.item` package
- The signature of the method `ItemWriter#write(List)` was changed to `ItemWriter#write(Chunk)`
- All implementations of `ItemWriter` were updated to use the Chunk API instead of List
- All methods in the `ItemWriteListener` interface were updated to use the Chunk API instead of List
- All implementations of `ItemWriteListener` were updated to use the Chunk API instead of List
- The constructor of `ChunkRequest` was changed to accept a Chunk instead of a Collection of items
- The return type of `ChunkRequest#getItems()` was changed from List to Chunk

Resolves #3954
2022-08-19 13:40:09 +02:00
Mahmoud Ben Hassine
30166a8aae Revert "Improve generic type handling in RepositoryItemReader"
This reverts commit a30aaac4be
which had the side effect of no longer being able to use queries
in `RepositoryItemReader` that return a different type than the
repository's entity type.

Resolves #4164
2022-07-26 07:00:22 +02:00
Henning Poettker
a2cf74adec Replace ListenableFuture with CompletableFuture
Related to https://github.com/spring-projects/spring-kafka/issues/2357
2022-07-26 06:39:19 +02:00
Taeik Lim
ed945ca61d Add @FunctionalInterface where appropriate
Resolves #4107
2022-07-20 19:05:36 +02:00
Fadhel Mahmoud Ben Hassine
1b8a012907 Configure the right FieldExtractor based on the type of items in FlatFileItemWriterBuilder
Resolves #4161
2022-07-20 12:23:17 +02:00
Fadhel Mahmoud Ben Hassine
4d46d581f9 Configure the right FieldSetMapper based on the type of items in FlatFileItemReaderBuilder
Resolves #4160
2022-07-20 07:10:05 +02:00
Fadhel Mahmoud Ben Hassine
9a8fb1e8ec Add FieldExtractor implementation for Java records
Resolves #4159
2022-07-20 06:30:58 +02:00
Marvin Deng
adbc39a381 Remove DataAccessResourceFailureException in xml related classes
Resolves #4132
2022-07-18 18:42:35 +02:00
Mahmoud Ben Hassine
a30aaac4be Improve generic type handling in RepositoryItemReader 2022-07-17 08:18:20 +02:00
Mahmoud Ben Hassine
5ba363c8ab Remove RepositoryMethodReference from RepositoryItemReaderBuilder
This class and its usage have been reported to be confusing and
causing context startup failures without real added value.

This commit removes that class to simplify the creation
of a RepositoryItemReader through its builder.

Resolves #793
2022-07-17 06:58:29 +02:00
Mahmoud Ben Hassine
5a69b6b28b Upgrade Hibernate to version 6.1.1.Final 2022-07-13 18:42:39 +02:00
Mahmoud Ben Hassine
c4ad90b9b1 Apply spring-javaformat style for consistency with other projects
Resolves #4118
2022-05-25 23:06:48 +02:00
Mahmoud Ben Hassine
df8dac19df Change default encoding to UTF-8 in file-based readers and writers
This commit overrides the fix in #3910 by using UTF-8
as default encoding in file-based item readers and writers.

Issue #1154
2022-05-17 20:07:03 +02:00
Mahmoud Ben Hassine
5bce15288a Change Resource to WritableResource in file-based item writers
Resolves #756
2022-05-09 11:03:22 +02:00
Mahmoud Ben Hassine
6dad2a2d81 Fix NPE in MongoItemReader when sorting is not specified through the builder
Resolves #4082
2022-05-05 15:57:51 +02:00
Drummond Dawson
15e18e5fcd Add constructors with var args/Lists
For classes that have a setter for a List<T> field,
create Constructors that take List<T> and var args of T.

Issue #686
2022-03-21 17:16:24 +01:00
Mahmoud Ben Hassine
968a5b5b2e Refine contribution #595
- Update versions of jdbc driver and docker image
- Update Javadocs
- Remove JOB_CONFIGURATION_LOCATION from DDL schema
- Remove unused resources
2022-03-18 17:45:36 +01:00
Jonathan Bregler
9388abb589 Integrate SAP Hana as supported Spring Batch database
This commit adds SAP HANA as a supported Spring Batch database, enabling
developers to seamlessly move their existing Spring Batch projects to SAP HANA
or easily starting new Spring Batch projects on SAP HANA.

This commit contains the following changes:

- Add SAP HANA to the DatabaseType enum
- Add HanaPagingQueryProvider and tests
- Add properties files for SAP HANA

Issue #2515
2022-03-18 16:52:50 +01:00
Edgar Asatryan
2e68451cf3 Check arguments of MongoItemReader#setSort
Issue #4014
2022-02-23 12:29:21 +01:00
me
212b3ce950 change parameterValues check -> CollectionUtils.isEmpty
Resolves #4021
2022-02-22 14:08:25 +01:00
Henning Poettker
d23d4f9dde Adapt H2PagingQueryProvider for H2 v2.x
Issue #4047
2022-01-18 16:10:00 +01:00
Mahmoud Ben Hassine
e5c752b4b8 Remove JSR-352 implementation
Resolves #3894
2021-12-13 09:57:48 +01:00
Mahmoud Ben Hassine
5dc17b190e Upgrade dependencies to major versions for Spring Batch 5
* Upgrade to Jakarta EE 9
* Upgrade to Spring Framework 6
* Upgrade to Spring Integration 6
* Upgrade to Spring Data 3
* Upgrade to Spring AMQP 3
* Upgrade to Spring for Apache Kafka 3

LDIF support is still in progress waiting for the next
major version of Spring LDAP.

Closes #4027
Closes #3656
2021-11-22 12:16:49 +01:00