877 Commits

Author SHA1 Message Date
Patrick Schwizer
6a4d94575e remove JobRegistrySmartInitializingSingleton usage
Signed-off-by: Patrick Schwizer <schwizer.p@proton.me>
2025-06-13 12:13:29 +02:00
Mahmoud Ben Hassine
d95397faf0 Move job and step APIs in their dedicated packages
Resolves #4877
2025-06-12 10:45:08 +02:00
Mahmoud Ben Hassine
e35c87ccdd Fix tests 2025-06-09 15:43:52 +02:00
Mahmoud Ben Hassine
90f7398222 Move listener APIs under core.listener package
Resolves #4867
2025-06-09 12:32:56 +02:00
Stefano Cordio
74975c506d Introduce ErrorProne, fix compiler warnings
Signed-off-by: Stefano Cordio <stefano.cordio@gmail.com>
2025-06-04 00:53:02 +02:00
Yanming Zhou
22cfc55f7a Polishing sql files
1. `\s+,\s*$` -> `,`
2. `\s+\(\s*$` -> ` (`

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-03 23:37:58 +02:00
Mahmoud Ben Hassine
08c4cb16b8 Move core partitioning APIs under org.springframework.batch.core.partition
Resolves #4849
2025-05-23 16:42:07 +02:00
Mahmoud Ben Hassine
f7fcfaa4fd Improve batch infrastructure configuration
Before this commit, EnableBatchProcessing was tied to a JDBC
infrastructure. Therefore, it was impossible to use a non-JDBC
job repository with that annotation.

This commit removes the dependency to a JDBC infrastructure from
EnableBatchProcessing and introduces new annotations to configure
specific job repository implementations. It also updates the
programmatic way of configuring infrastructure beans with a base
configuration class for each supported job repository implementation.

NB: The XML namespace was not changed accordingly as the XSD will not
be updated starting from v6.

Resolves #4718
2025-05-22 11:44:07 +02:00
Mahmoud Ben Hassine
e5bda0d40a Rename SimpleJobOperator to TaskExecutorJobOperator
Resolves #4834
2025-05-07 23:55:27 +02:00
Mahmoud Ben Hassine
fc4a66516a Make JobOperator extend JobLauncher
Related to #4832
2025-05-07 22:03:03 +02:00
Mahmoud Ben Hassine
46d42ab757 Rename JobRepositoryFactoryBean to JdbcJobRepositoryFactoryBean
Resolves #4829
2025-05-06 18:43:55 +02:00
Mahmoud Ben Hassine
d7e13fb7f5 Move core.explore package under core.repository
Resolves #4827
2025-05-06 10:13:48 +02:00
Mahmoud Ben Hassine
6992b79b8d Remove dependency to JobExplorer in SimpleJobOperator
Resolves #4817
2025-05-05 18:34:04 +02:00
Mahmoud Ben Hassine
43ac1f12cf Remove deprecated APIs scheduled for removal in v6
Resolves #4819
2025-04-29 09:03:13 +02:00
Mahmoud Ben Hassine
60f83438e9 Disable test failing on CI but not locally 2025-03-18 09:47:29 +01:00
Mahmoud Ben Hassine
618e03b00b Fix incorrect test class name
This test class is about the composite item
reader and not the composite item writer.
2025-03-18 09:22:16 +01:00
Mahmoud Ben Hassine
e706957eb7 Fix tests
Signed-off-by: Mahmoud Ben Hassine <mbenhassine@vmware.com>
2025-01-07 13:20:22 +01:00
Mahmoud Ben Hassine
90e7e9fefa Add sample job based on PetClinic application
Signed-off-by: Mahmoud Ben Hassine <mbenhassine@vmware.com>
2025-01-07 12:07:32 +01:00
Mahmoud Ben Hassine
69310604b3 Update MongoDB sample 2024-11-21 02:20:50 +01:00
Mahmoud Ben Hassine
6cc718a78c Add composite item reader implementation
Resolves #757
2024-10-03 09:39:55 +02:00
Mahmoud Ben Hassine
b812492798 Remove deprecated APIs scheduled for removal in v5.2
Resolves #4398
2024-04-24 16:07:12 +02:00
Henning Poettker
0d1d89c82f Use annotation @Override consistently 2023-12-19 13:35:46 +01:00
Mahmoud Ben Hassine
9f56a50b2e Add hello world sample
Issue #4329
2023-10-17 16:05:45 +02:00
Mahmoud Ben Hassine
db7fa32753 Refactor samples to use a common datasource configuration
Issue #4329
2023-10-17 15:30:04 +02:00
Mahmoud Ben Hassine
746ffab09d Update samples
- Restructure contexts
- Remove unused resources
- Remove irrelevant tests

Issue #4329
2023-10-17 13:39:26 +02:00
Mahmoud Ben Hassine
b2a0d0343e Rename samples base package to org.springframework.batch.samples 2023-10-11 20:50:11 +02:00
Mahmoud Ben Hassine
da8e92be0a Remove unused resources and outdated/deprecated samples 2023-10-11 20:19:50 +02:00
Mahmoud Ben Hassine
474b3f4cf2 Restructure samples by feature 2023-10-11 18:46:21 +02:00
Mahmoud Ben Hassine
b1ac90df68 Add java configuration for the multi-record type sample
Issue #3663
2023-10-04 17:46:36 +02:00
Mahmoud Ben Hassine
0141fc578b Add java configuration for the Repository item reader/writer sample
Issue #3663
2023-10-03 22:43:14 +02:00
Mahmoud Ben Hassine
84fe5048d6 Add java configuration for the JPA sample
Issue #3663
2023-10-03 21:20:21 +02:00
Mahmoud Ben Hassine
327faa801a Refactor the JSON job sample
Issue #3663
2023-10-03 16:51:26 +02:00
Mahmoud Ben Hassine
f4bb0c7aac Restructure test resources in samples 2023-10-02 11:57:36 +02:00
Mahmoud Ben Hassine
e42167b52d Add java configuration for the multi-line job sample
Issue #3663
2023-10-02 10:48:16 +02:00
Mahmoud Ben Hassine
7bb5ca726f Add java configuration for the multi-resource job sample
Issue #3663
2023-10-02 08:49:41 +02:00
Mahmoud Ben Hassine
bb8d267b5d Add java configuration for the XML file import sample
Issue #3663
2023-09-26 10:55:16 +02:00
Mahmoud Ben Hassine
43e7c8c9f1 Add java configuration for the fixed length file import sample
Issue #3663
2023-09-26 10:55:16 +02:00
Mahmoud Ben Hassine
2750238462 Add java configuration for the delimited file import sample
Issue #3663
2023-09-26 10:55:16 +02:00
Mahmoud Ben Hassine
8b0007ac91 Add java configuration for the Jdbc paging sample
Issue #3663
2023-09-25 11:18:09 +02:00
Mahmoud Ben Hassine
5f12a83609 Add java configuration for the Jdbc cursor sample
Issue #3663
2023-09-25 10:51:38 +02:00
Mahmoud Ben Hassine
1eab6f63ed Move AMQP sample to rabbitmq package
Issue #3663
2023-09-25 09:25:57 +02:00
Mahmoud Ben Hassine
e693879144 Add java configuration for the Football Job sample
Issue #3663
2023-09-22 13:25:26 +02:00
Mahmoud Ben Hassine
e708bf23a1 Refactor AMQP sample to use TestContainers for RabbitMQ
Issue #4052
2023-09-21 12:55:01 +02:00
Glenn Renfro
7f0d06fcc6 Add sample for AMQP Reader and writer using java configuration
Issue #3663
2023-09-21 11:56:02 +02:00
Shaoqiang Lu
1add2830f5 Auto-detect the class/interface to be mocked
Issue #4426
2023-08-03 09:51:59 +02:00
Mahmoud Ben Hassine
5bccfed523 Replace synchronized blocks and methods with locks
This commit replaces synchronized blocks and methods
that are used frequently or that guard blocking I/O
operations with locks. This is required to prevent
virtual threads pinning, as explained in JEP 444 [1].

Note that synchronized blocks and methods that are used
infrequently (like AutomaticJobRegistrar#start/stop) or
that guard in-memory operations were not replaced as this
is not required, see JEP 444 [1].

Resolves to #4399

---
[1]: https://openjdk.org/jeps/444
2023-07-15 08:18:07 +02:00
Mahmoud Ben Hassine
05168089f1 Add test suite for virtual threads support
Related to #4399
2023-07-14 23:53:20 +02:00
Mahmoud Ben Hassine
f82c16b825 Fix javadoc errors and warnings
Resolves #1624
2023-07-06 06:46:26 +02:00
Mahmoud Ben Hassine
efdb59e570 Replace hardcoded charsets with StandardCharsets 2023-07-05 08:03:48 +02:00
Mahmoud Ben Hassine
f0137bc54c Remove redundant modifiers 2023-07-05 08:03:48 +02:00