From 0a75bc7d8490df91ef81a1f7ebe67e1660c64edd Mon Sep 17 00:00:00 2001 From: Mahmoud Ben Hassine Date: Wed, 24 Aug 2022 15:49:29 +0200 Subject: [PATCH] Deprecate Hibernate support Resolves #4150 --- .../batch/item/database/HibernateCursorItemReader.java | 2 ++ .../batch/item/database/HibernateItemReaderHelper.java | 2 ++ .../batch/item/database/HibernateItemWriter.java | 2 ++ .../batch/item/database/HibernatePagingItemReader.java | 5 ++++- .../database/builder/HibernateCursorItemReaderBuilder.java | 5 ++++- .../item/database/builder/HibernateItemWriterBuilder.java | 5 ++++- .../database/builder/HibernatePagingItemReaderBuilder.java | 5 ++++- .../item/database/orm/AbstractHibernateQueryProvider.java | 4 +++- .../item/database/orm/HibernateNativeQueryProvider.java | 6 +++++- .../batch/item/database/orm/HibernateQueryProvider.java | 5 ++++- 10 files changed, 34 insertions(+), 7 deletions(-) diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateCursorItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateCursorItemReader.java index ca1743600..f6367c23f 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateCursorItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateCursorItemReader.java @@ -53,7 +53,9 @@ import org.springframework.util.ClassUtils; * @author Robert Kasanicky * @author Dave Syer * @author Mahmoud Ben Hassine + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaCursorItemReader} instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateCursorItemReader extends AbstractItemCountingItemStreamItemReader implements InitializingBean { diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemReaderHelper.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemReaderHelper.java index 444bbaef1..fc4faef6e 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemReaderHelper.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemReaderHelper.java @@ -37,7 +37,9 @@ import org.springframework.util.StringUtils; * @author Dave Syer * @author Mahmoud Ben Hassine * @author June Young. Park + * @deprecated since 5.0 for removal in 5.2. Use the JPA item readers instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateItemReaderHelper implements InitializingBean { private SessionFactory sessionFactory; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemWriter.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemWriter.java index 4ca03a6cb..a42705328 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemWriter.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernateItemWriter.java @@ -43,8 +43,10 @@ import org.springframework.util.Assert; * @author Thomas Risberg * @author Michael Minella * @author Mahmoud Ben Hassine + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaItemWriter} instead. * */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateItemWriter implements ItemWriter, InitializingBean { protected static final Log logger = LogFactory.getLog(HibernateItemWriter.class); diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernatePagingItemReader.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernatePagingItemReader.java index 4ca8bed42..691259d77 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernatePagingItemReader.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/HibernatePagingItemReader.java @@ -1,5 +1,5 @@ /* - * Copyright 2006-2013 the original author or authors. + * Copyright 2006-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,8 +51,11 @@ import org.springframework.util.ClassUtils; *

* * @author Dave Syer + * @author Mahmoud Ben Hassine * @since 2.1 + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaPagingItemReader} instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernatePagingItemReader extends AbstractPagingItemReader implements InitializingBean { private HibernateItemReaderHelper helper = new HibernateItemReaderHelper<>(); diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateCursorItemReaderBuilder.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateCursorItemReaderBuilder.java index db0e5c692..864a6ad56 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateCursorItemReaderBuilder.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateCursorItemReaderBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright 2017-2018 the original author or authors. + * Copyright 2017-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,7 +40,10 @@ import org.springframework.util.StringUtils; * @author Mahmoud Ben Hassine * @since 4.0 * @see HibernateCursorItemReader + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaCursorItemReaderBuilder} + * instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateCursorItemReaderBuilder { private Map parameterValues; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateItemWriterBuilder.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateItemWriterBuilder.java index cf15b899e..ab313ef3d 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateItemWriterBuilder.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernateItemWriterBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright 2017 the original author or authors. + * Copyright 2017-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,9 +24,12 @@ import org.springframework.util.Assert; * A builder for the {@link HibernateItemWriter} * * @author Michael Minella + * @author Mahmoud Ben Hassine * @since 4.0 * @see HibernateItemWriter + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaItemWriterBuilder} instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateItemWriterBuilder { private boolean clearSession = true; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernatePagingItemReaderBuilder.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernatePagingItemReaderBuilder.java index d22b8811b..8a9c20b84 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernatePagingItemReaderBuilder.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/builder/HibernatePagingItemReaderBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright 2017-2021 the original author or authors. + * Copyright 2017-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,7 +38,10 @@ import org.springframework.util.StringUtils; * @author Mahmoud Ben Hassine * @since 4.0 * @see HibernatePagingItemReader + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaPagingItemReaderBuilder} + * instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernatePagingItemReaderBuilder { private int pageSize = 10; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/AbstractHibernateQueryProvider.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/AbstractHibernateQueryProvider.java index 60cbcddbe..23332c065 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/AbstractHibernateQueryProvider.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/AbstractHibernateQueryProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2006-2013 the original author or authors. + * Copyright 2006-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,9 +35,11 @@ import org.hibernate.StatelessSession; * * @author Anatoly Polinsky * @author Dave Syer + * @author Mahmoud Ben Hassine * @since 2.1 * */ +@Deprecated(since = "5.0", forRemoval = true) public abstract class AbstractHibernateQueryProvider implements HibernateQueryProvider { private StatelessSession statelessSession; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateNativeQueryProvider.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateNativeQueryProvider.java index 6218f9419..e02495d3a 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateNativeQueryProvider.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateNativeQueryProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2006-2008 the original author or authors. + * Copyright 2006-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,8 +30,12 @@ import org.springframework.util.StringUtils; *

* * @author Anatoly Polinsky + * @author Mahmoud Ben Hassine * @param entity returned by executing the query + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaNativeQueryProvider} + * instead. */ +@Deprecated(since = "5.0", forRemoval = true) public class HibernateNativeQueryProvider extends AbstractHibernateQueryProvider { private String sqlQuery; diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateQueryProvider.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateQueryProvider.java index 13171081b..c51930bae 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateQueryProvider.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/database/orm/HibernateQueryProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2006-2008 the original author or authors. + * Copyright 2006-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,9 +29,12 @@ import org.springframework.batch.item.ItemReader; * * @author Anatoly Polinsky * @author Dave Syer + * @author Mahmoud Ben Hassine * @since 2.1 + * @deprecated since 5.0 for removal in 5.2. Use the {@link JpaQueryProvider} instead. * */ +@Deprecated(since = "5.0", forRemoval = true) public interface HibernateQueryProvider { /**