Commit Graph

1682 Commits

Author SHA1 Message Date
Mahmoud Ben Hassine
f245593726 Add synchronized decorators for non-stream item readers/writers
Resolves #4368
2023-07-19 08:04:45 +02:00
Shaoqiang Lu
14b6c66543 Replace Charset.defaultCharset() with StandardCharsets.UTF_8 in tests
Resolves #4417
2023-07-18 18:12:52 +02:00
Mahmoud Ben Hassine
85196328ed Make getCurrentItemCount public in AbstractItemCountingItemStreamItemReader
Resolves #1639
2023-07-18 17:39:54 +02:00
Stefano Cordio
aaa0aee44f Fix typo in SimpleMailMessageItemWriter Javadoc 2023-07-18 13:37:50 +02:00
Mahmoud Ben Hassine
6fa4e45356 Refine contribution #4376
* Rename variable
* Update Javadocs
* Update tests

Related to #804
2023-07-18 12:21:48 +02:00
jinwoo-Bae
34eda1fb0d Add option to clear the persistence context in JpaItemWriter
Resolves #804
2023-07-18 11:57:14 +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
52064c0541 Code cleanup
- Inline variables
- Remove unused variables
- Remove redundant array creation
- Remove redundant `@SuppressWarnings`
- Remove unnecessary exceptions from throws list
- Remove redundant initializers
- Use List.subList().clear() where appropriate
- Use try-with-resources where needed
- Use pattern variables where appropriate
2023-07-12 23:25:18 +02:00
Mahmoud Ben Hassine
4763480c57 Fix compiler warnings
- Add `@Nullable` where needed
- Suppress warnings where appropriate
- Add generic type definitions
2023-07-12 20:55:18 +02:00
Mahmoud Ben Hassine
d937a61603 Upgrade version to 5.1.0-SNAPSHOT 2023-07-06 09:35:22 +02:00
Mahmoud Ben Hassine
f82c16b825 Fix javadoc errors and warnings
Resolves #1624
2023-07-06 06:46:26 +02:00
Mahmoud Ben Hassine
060c96f01f Move KafkaItemReader integration tests to a separate class
Tests requiring a kafka broker should be part of the
integration tests suite, not the unit tests suite.
2023-07-05 08:54:11 +02:00
Mahmoud Ben Hassine
c1ef2c0fe5 Remove unnecessary default branch for enum in switch statement 2023-07-05 08:03:49 +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
Mahmoud Ben Hassine
0a1cdb095f Mark fields as final where appropriate 2023-07-05 08:03:48 +02:00
Mahmoud Ben Hassine
241e37e672 Remove concatenation with empty string 2023-07-05 08:03:47 +02:00
Mahmoud Ben Hassine
b5e7269847 Remove unnecessary return statements 2023-07-04 21:17:42 +02:00
Mahmoud Ben Hassine
5c8cb7663f Make inner classes static 2023-07-04 21:03:55 +02:00
Mahmoud Ben Hassine
167f3c427d Remove usage of raw parametrized types 2023-07-04 19:03:18 +02:00
Mahmoud Ben Hassine
5585749925 Use Map.computeIfAbsent where appropriate 2023-07-04 18:58:23 +02:00
Mahmoud Ben Hassine
d0be13e995 Use Comparator.comparingInt where appropriate 2023-07-04 18:56:34 +02:00
Mahmoud Ben Hassine
5a6fff032d Replace for loops with enhanced for loops 2023-07-04 18:52:19 +02:00
Mahmoud Ben Hassine
96f8d6bd35 Replace anonymous types with lambda expressions or method references 2023-07-04 18:50:16 +02:00
Mahmoud Ben Hassine
018fcf4799 Refactor tests in spring-batch-core
- Remove unused resources
- Fix logging libraries conflicts
- Merge duplicate data source configuration
- Merge scattered DDL scripts
- Replace usage of DataSourceInitializer with Spring JDBC test utilities
2023-06-23 11:30:04 +02:00
Mahmoud Ben Hassine
8aea17f21d Refactor tests in spring-batch-infrastructure
- Remove unused resources
- Fix logging libraries conflicts
- Merge duplicate data source configuration
- Merge scattered DDL scripts
- Replace usage of DataSourceInitializer with Spring JDBC test utilities
2023-06-23 08:52:08 +02:00
Mahmoud Ben Hassine
e6e9c4e7a2 Refactor ReflectionUtils 2023-06-22 16:17:23 +02:00
Mahmoud Ben Hassine
ee30af4789 Remove redundant "extends Object" 2023-06-22 11:17:13 +02:00
Mahmoud Ben Hassine
93d911e100 Use lambdas and method references where appropriate 2023-06-12 16:43:46 +02:00
Mahmoud Ben Hassine
c5b4f1a777 Remove unnecessary boxing/unboxing 2023-06-12 16:17:32 +02:00
Mahmoud Ben Hassine
7babb341f5 Replace for loops with enhanced for loop where appropriate 2023-06-12 16:05:44 +02:00
Mahmoud Ben Hassine
8c5456cff6 Replace for loops with String.repeat where appropriate 2023-06-12 16:00:45 +02:00
Mahmoud Ben Hassine
a63755b546 Use Files.readString where appropriate 2023-06-12 15:59:30 +02:00
Mahmoud Ben Hassine
53f4912991 Use enhanced switch statements where appropriate 2023-06-12 15:57:05 +02:00
Mahmoud Ben Hassine
a193fc3688 Replace String concatenation with text blocks where appropriate 2023-06-12 15:55:32 +02:00
Mahmoud Ben Hassine
0f44e2bad1 Use pattern matching variables where appropriate 2023-06-12 15:47:57 +02:00
Mahmoud Ben Hassine
a2be6ba0c3 Replace unmodifiable collection creation with collection factory methods 2023-06-12 15:42:02 +02:00
Dimitrios Liapis
f0787454f8 Fix thread usage in SynchronizedItemStreamReaderTests
along with its builder test class SynchronizedItemStreamReaderBuilderTests

Resolves #837
2023-06-12 14:22:03 +02:00
Mahmoud Ben Hassine
0bfe31e569 Remove stack traces from tests 2023-06-07 15:54:19 +02:00
Mahmoud Ben Hassine
7f80b7230b Remove System.err.println from tests 2023-06-07 15:47:56 +02:00
Mahmoud Ben Hassine
98c426ca4f Remove System.out.println from tests 2023-06-07 15:47:56 +02:00
Mahmoud Ben Hassine
92159cbc2b Use diamond operator where appropriate 2023-06-05 13:48:49 +02:00
Mahmoud Ben Hassine
0dc5b63469 Replace identical catch sections with multi-catch blocks 2023-06-05 13:30:23 +02:00
Mahmoud Ben Hassine
8070751da8 Improve String concatenation where appropriate 2023-06-05 13:19:28 +02:00
Mahmoud Ben Hassine
6d3e48a0bc Simplify assertions in tests 2023-06-05 13:08:15 +02:00
Mahmoud Ben Hassine
c25cd55901 Upgrade spring-javaformat maven plugin to version 0.0.39 2023-06-05 11:11:48 +02:00
Mahmoud Ben Hassine
b0f7e3d6fe Next development version 2023-05-17 16:15:55 +02:00
Mahmoud Ben Hassine
1266de6e35 Release version 5.0.2 2023-05-17 16:13:05 +02:00
jinwoo-Bae
30e8766faa Move equals/hashcode from ChunkIterator to Chunk class
Those methods were mistakenly added in ChunkIterator.

Issue #4314
2023-05-11 10:23:40 +02:00
Mahmoud Ben Hassine
2374a5ac11 Document thread-safety of item readers and writers
This commit also adds a sample of how to use the
synchronized decorators of item readers and writers.

Resolves #3646
2023-05-09 11:55:32 +02:00