From ab88c2dd5427320a8dcc6c9c579f987ea4f399c9 Mon Sep 17 00:00:00 2001 From: dsyer Date: Mon, 7 Sep 2009 07:21:22 +0000 Subject: [PATCH] RESOLVED - issue BATCH-1389: Thread safety in *PagingReader Javadocs --- .../batch/item/database/AbstractPagingItemReader.java | 1 + .../batch/item/database/IbatisPagingItemReader.java | 5 ++++- .../batch/item/database/JdbcPagingItemReader.java | 4 +++- .../batch/item/database/JpaPagingItemReader.java | 5 ++++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/AbstractPagingItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/AbstractPagingItemReader.java index a62e6e9aa..f21e9ab20 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/AbstractPagingItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/AbstractPagingItemReader.java @@ -36,6 +36,7 @@ import org.springframework.util.ClassUtils; *

* * @author Thomas Risberg + * @author Dave Syer * @since 2.0 */ public abstract class AbstractPagingItemReader extends AbstractItemCountingItemStreamItemReader implements diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/IbatisPagingItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/IbatisPagingItemReader.java index 359bd08ee..bd25a122f 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/IbatisPagingItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/IbatisPagingItemReader.java @@ -18,6 +18,7 @@ package org.springframework.batch.item.database; import org.springframework.util.ClassUtils; import org.springframework.util.Assert; +import org.springframework.batch.item.ExecutionContext; import org.springframework.orm.ibatis.SqlMapClientTemplate; import java.util.Map; @@ -60,12 +61,14 @@ import com.ibatis.sqlmap.client.SqlMapClient; *

* *

- * The implementation is thread-safe, but remember to use + * The implementation is thread-safe in between calls to + * {@link #open(ExecutionContext)}, but remember to use * saveState=false if used in a multi-threaded client (no restart * available). *

* * @author Thomas Risberg + * @author Dave Syer * @since 2.0 */ public class IbatisPagingItemReader extends AbstractPagingItemReader { diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JdbcPagingItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JdbcPagingItemReader.java index dba296a4c..e6700e603 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JdbcPagingItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JdbcPagingItemReader.java @@ -28,6 +28,7 @@ import java.util.concurrent.CopyOnWriteArrayList; import javax.sql.DataSource; +import org.springframework.batch.item.ExecutionContext; import org.springframework.beans.factory.InitializingBean; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowCallbackHandler; @@ -61,7 +62,8 @@ import org.springframework.util.ClassUtils; *

* *

- * The implementation is thread-safe, but remember to use + * The implementation is thread-safe in between calls to + * {@link #open(ExecutionContext)}, but remember to use * saveState=false if used in a multi-threaded client (no restart * available). *

diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JpaPagingItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JpaPagingItemReader.java index 03cab065d..8a332b4f2 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JpaPagingItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/JpaPagingItemReader.java @@ -25,6 +25,7 @@ import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Query; +import org.springframework.batch.item.ExecutionContext; import org.springframework.dao.DataAccessResourceFailureException; import org.springframework.util.Assert; import org.springframework.util.ClassUtils; @@ -68,13 +69,15 @@ import org.springframework.util.ClassUtils; *

* *

- * The implementation is thread-safe, but remember to use + * The implementation is thread-safe in between calls to + * {@link #open(ExecutionContext)}, but remember to use * saveState=false if used in a multi-threaded client (no restart * available). *

* * * @author Thomas Risberg + * @author Dave Syer * @since 2.0 */ public class JpaPagingItemReader extends AbstractPagingItemReader {