Commit Graph

188 Commits

Author SHA1 Message Date
Mahmoud Ben Hassine
33f04a9435 Polish 4ad06b5081 2019-11-15 14:58:55 +01:00
mikeldpl
a7092a21e4 Added @Nullable annotation to overriding methods.
Resolves BATCH-2839
2019-09-17 16:50:44 +02:00
Mahmoud Ben Hassine
3743894fa4 Replace "Master/Slave" with "Manager/Worker"
Resolves BATCH-2834
2019-08-02 13:13:54 -05:00
Spring Operator
d8fc58338d URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 2 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 1796 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
2019-03-22 10:08:19 +01:00
Spring Operator
8762e34115 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* http://xmlns.jcp.org/xml/ns/javaee/jobXML_1_0.xsd (301) with 29 occurrences migrated to:
  https://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/jobXML_1_0.xsd ([https](https://xmlns.jcp.org/xml/ns/javaee/jobXML_1_0.xsd) result InvalidMediaTypeException).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd (301) with 1 occurrences migrated to:
  https://hibernate.org/dtd/hibernate-mapping-3.0.dtd ([https](https://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd) result 200).
* http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd (301) with 2 occurrences migrated to:
  https://hibernate.org/dtd/hibernate-mapping-3.0.dtd ([https](https://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd) result 200).
* http://www.springframework.org/schema/aop/spring-aop-2.5.xsd with 5 occurrences migrated to:
  https://www.springframework.org/schema/aop/spring-aop-2.5.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-2.5.xsd) result 200).
* http://www.springframework.org/schema/aop/spring-aop-3.1.xsd with 21 occurrences migrated to:
  https://www.springframework.org/schema/aop/spring-aop-3.1.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-3.1.xsd) result 200).
* http://www.springframework.org/schema/aop/spring-aop.xsd with 27 occurrences migrated to:
  https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd) result 200).
* http://www.springframework.org/schema/batch-integration/spring-batch-integration.xsd with 16 occurrences migrated to:
  https://www.springframework.org/schema/batch-integration/spring-batch-integration.xsd ([https](https://www.springframework.org/schema/batch-integration/spring-batch-integration.xsd) result 200).
* http://www.springframework.org/schema/batch/spring-batch-2.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/batch/spring-batch-2.0.xsd ([https](https://www.springframework.org/schema/batch/spring-batch-2.0.xsd) result 200).
* http://www.springframework.org/schema/batch/spring-batch-2.1.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/batch/spring-batch-2.1.xsd ([https](https://www.springframework.org/schema/batch/spring-batch-2.1.xsd) result 200).
* http://www.springframework.org/schema/batch/spring-batch-2.2.xsd with 99 occurrences migrated to:
  https://www.springframework.org/schema/batch/spring-batch-2.2.xsd ([https](https://www.springframework.org/schema/batch/spring-batch-2.2.xsd) result 200).
* http://www.springframework.org/schema/batch/spring-batch-3.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/batch/spring-batch-3.0.xsd ([https](https://www.springframework.org/schema/batch/spring-batch-3.0.xsd) result 200).
* http://www.springframework.org/schema/batch/spring-batch.xsd with 51 occurrences migrated to:
  https://www.springframework.org/schema/batch/spring-batch.xsd ([https](https://www.springframework.org/schema/batch/spring-batch.xsd) result 200).
* http://www.springframework.org/schema/beans/spring-beans-2.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.0.xsd) result 200).
* http://www.springframework.org/schema/beans/spring-beans-2.5.xsd with 14 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.5.xsd) result 200).
* http://www.springframework.org/schema/beans/spring-beans-3.1.xsd with 145 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-3.1.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.1.xsd) result 200).
* http://www.springframework.org/schema/beans/spring-beans.xsd with 166 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd) result 200).
* http://www.springframework.org/schema/context/spring-context-2.5.xsd with 8 occurrences migrated to:
  https://www.springframework.org/schema/context/spring-context-2.5.xsd ([https](https://www.springframework.org/schema/context/spring-context-2.5.xsd) result 200).
* http://www.springframework.org/schema/context/spring-context-3.1.xsd with 2 occurrences migrated to:
  https://www.springframework.org/schema/context/spring-context-3.1.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.1.xsd) result 200).
* http://www.springframework.org/schema/context/spring-context-3.2.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/context/spring-context-3.2.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.2.xsd) result 200).
* http://www.springframework.org/schema/context/spring-context.xsd with 15 occurrences migrated to:
  https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd) result 200).
* http://www.springframework.org/schema/data/jpa/spring-jpa.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/data/jpa/spring-jpa.xsd ([https](https://www.springframework.org/schema/data/jpa/spring-jpa.xsd) result 200).
* http://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd ([https](https://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd) result 200).
* http://www.springframework.org/schema/integration/jms/spring-integration-jms-2.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/integration/jms/spring-integration-jms-2.0.xsd ([https](https://www.springframework.org/schema/integration/jms/spring-integration-jms-2.0.xsd) result 200).
* http://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd with 3 occurrences migrated to:
  https://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd ([https](https://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd) result 200).
* http://www.springframework.org/schema/integration/spring-integration.xsd with 27 occurrences migrated to:
  https://www.springframework.org/schema/integration/spring-integration.xsd ([https](https://www.springframework.org/schema/integration/spring-integration.xsd) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 3 occurrences migrated to:
  https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd) result 200).
* http://www.springframework.org/schema/jms/spring-jms.xsd with 2 occurrences migrated to:
  https://www.springframework.org/schema/jms/spring-jms.xsd ([https](https://www.springframework.org/schema/jms/spring-jms.xsd) result 200).
* http://www.springframework.org/schema/lang/spring-lang.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd) result 200).
* http://www.springframework.org/schema/rabbit/spring-rabbit.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/rabbit/spring-rabbit.xsd ([https](https://www.springframework.org/schema/rabbit/spring-rabbit.xsd) result 200).
* http://www.springframework.org/schema/task/spring-task-3.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/task/spring-task-3.0.xsd ([https](https://www.springframework.org/schema/task/spring-task-3.0.xsd) result 200).
* http://www.springframework.org/schema/task/spring-task.xsd with 2 occurrences migrated to:
  https://www.springframework.org/schema/task/spring-task.xsd ([https](https://www.springframework.org/schema/task/spring-task.xsd) result 200).
* http://www.springframework.org/schema/tx/spring-tx-2.5.xsd with 8 occurrences migrated to:
  https://www.springframework.org/schema/tx/spring-tx-2.5.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-2.5.xsd) result 200).
* http://www.springframework.org/schema/tx/spring-tx-3.1.xsd with 16 occurrences migrated to:
  https://www.springframework.org/schema/tx/spring-tx-3.1.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-3.1.xsd) result 200).
* http://www.springframework.org/schema/tx/spring-tx.xsd with 21 occurrences migrated to:
  https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd) result 200).
* http://www.springframework.org/schema/util/spring-util-3.1.xsd with 9 occurrences migrated to:
  https://www.springframework.org/schema/util/spring-util-3.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-3.1.xsd) result 200).
* http://www.springframework.org/schema/util/spring-util.xsd with 15 occurrences migrated to:
  https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd) result 200).
* http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd with 3 occurrences migrated to:
  https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd) result 302).

# Ignored
These URLs were intentionally ignored.

* http://java.sun.com/xml/ns/persistence with 6 occurrences
* http://www.springframework.org/schema/aop with 104 occurrences
* http://www.springframework.org/schema/batch with 343 occurrences
* http://www.springframework.org/schema/batch-integration with 32 occurrences
* http://www.springframework.org/schema/batch/test with 1 occurrences
* http://www.springframework.org/schema/beans with 673 occurrences
* http://www.springframework.org/schema/context with 52 occurrences
* http://www.springframework.org/schema/data/jpa with 2 occurrences
* http://www.springframework.org/schema/integration with 65 occurrences
* http://www.springframework.org/schema/integration/jdbc with 2 occurrences
* http://www.springframework.org/schema/integration/jms with 6 occurrences
* http://www.springframework.org/schema/jdbc with 8 occurrences
* http://www.springframework.org/schema/jms with 3 occurrences
* http://www.springframework.org/schema/lang with 2 occurrences
* http://www.springframework.org/schema/p with 60 occurrences
* http://www.springframework.org/schema/rabbit with 2 occurrences
* http://www.springframework.org/schema/task with 6 occurrences
* http://www.springframework.org/schema/tx with 89 occurrences
* http://www.springframework.org/schema/util with 48 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 330 occurrences
* http://xmlns.jcp.org/xml/ns/javaee with 82 occurrences
2019-03-21 10:59:44 +01:00
Mahmoud Ben Hassine
d620012ebd Bump SI version to 5.2.0.BUILD-SNAPSHOT 2019-03-21 09:55:49 +01:00
Mahmoud Ben Hassine
ffe158cade Fix concurrency issue in RetryTransactionalPollingIntegrationTests 2019-02-01 11:54:12 +01:00
Mahmoud Ben Hassine
76c34c7f72 fix build warnings 2018-11-29 15:17:01 +01:00
Drummond Dawson
3fe5fc3427 Replace explicit type with diamond operator in integration module 2018-11-06 21:23:43 +01:00
Mahmoud Ben Hassine
249fa2673e Fix typos 2018-10-02 22:40:56 +02:00
Michael Minella
4b1a78323e Updated to fix test and build file 2018-07-26 11:25:46 -05:00
Mahmoud Ben Hassine
d72cd67cad Make the outputChannel and messagingTemplate mutually exclusive
This commit changes the remote chunking and partitioning master step
builders to either accept an output channel or a messaging template
but not both.

See BATCH-2687
2018-07-12 17:31:15 +02:00
Mahmoud Ben Hassine
39676a45c4 Add builders to simplify remote partitioning setup
Resolves BATCH-2687

* use hard coded constants in docs
* change visibility of method `beanFactory` to public in builders
2018-07-11 17:07:40 -05:00
Mahmoud Ben Hassine
1f900ee83b Add a default constructor to StepExecutionRequest
Without a default constructor, a StepExecutionRequest instance cannot
be deserialized using Jackson. This commit adds a (private) default
constructor to fix the issue.

Resolves BATCH-2732
2018-07-05 15:34:19 -05:00
Michael Minella
98070e4a1c Polish and updated a test to validate the conditions 2018-05-25 16:46:32 -05:00
Mahmoud Ben Hassine
ee56a2320d Add builders for master/worker beans in remote chunking setup
This commit adds a new annotation `@EnableBatchIntegration` that makes
it possible to autowire two beans in the application context:

* RemoteChunkingMasterStepBuilderFactory: used to create a master step
* RemoteChunkingWorkerBuilder: used to create a worker integration flow

The goal of these new APIs is to simplify the setup of remote chunking
job by automatically configuring infrastructure beans.

Resolves BATCH-2686
2018-05-25 16:46:24 -05:00
Michael Minella
f61679b55f Added updates for properties files as well 2017-11-27 12:06:29 -06:00
Michael Minella
52d2c257c5 Version updates 2017-10-23 15:52:55 -05:00
Michael Minella
263e978a1f Updated for various code warnings
This commit addresses a number of deprications and other code warnings.
There are still many more to address, but this is a start.
2017-05-02 12:48:03 -05:00
Michael Minella
54a90beed7 Upgraded Mockito
This commit upgrades mockito to the latest currently available version
as well as does some additional cleanup.
2017-01-24 14:18:05 -06:00
Michael Minella
8a2b23d669 Fixed unit tests due to changes in exception messages 2016-11-21 15:20:49 -06:00
Michael Minella
32f723ba34 Upgraded to Spring Integration 5 2016-10-18 12:56:46 -05:00
Michael Minella
cfad543a63 Unwrap ExecutionException in the AsyncItemWriter
When using the `AsyncItemProcessor` and `AsyncItemWriter`, business
exceptions that occur during the process phase are hidden by an
`ExecutionException` that is returned wrapping the originally thrown
exception in the `AsyncItemWriter`.  In this commit, we now unwrap any
`ExecutionException` that is returned and throw the cause.  Debug
logging is also added to allow the logging of the original exception as
well.

Resolves BATCH-2386
2016-10-13 14:23:58 -05:00
Michael Minella
f4c0530730 Upgraded dependency versions and minor polish 2016-08-09 13:19:14 -05:00
Michael Minella
7d2c1a1eca Updated HibernateItemReaderHelper to use reflection for Session#close()
Hibernate 5 changed the signature of the Session#close() method from
returning a Connection to being void.  To support both verions, we've
moved to making the call via reflection.

This commit also upgrades the ActiveMQ version used in testing to be
compliant with the Spring IO Platform.

Resolves BATCH-2496
2016-04-20 22:51:05 -05:00
Andy Wilkinson
68ee9a2916 Update SmokeTests to be compatible with Spring Integration 4.2
Spring Integration 4.2 has fixed a bug where integration components
were being started too early. SmokeTests was relying on this bug to
start the test class which is also a @MessageEndpoint.

This commit updates the test to use a nested inner-class for the
endpoint and a bean declaration in the XML configuration. This allows
the test to pass against both Spring Integration 4.0 and 4.2.
2015-11-20 16:50:10 -06:00
Amer Aljovic
716c9baff3 BATCH-2312 Implement ItemStream in AsyncItemWriter
This commit adds the feature of allowing a delegate ItemWriter to be an
ItemStreamWriter and have Spring Batch respect the ItemStream lifecycle
events without explicitly configuring the delegate as a stream.
2015-07-09 16:58:59 -05:00
Michael Minella
066c59a390 Add job repository polling option to MessageChannelPartitionHandler
When using remote partitioning, each slave worker persists it's current
status in the same job repsository that the master uses.  Because of
this, there is no hard need for the master to wait for each worker to
send a formal response once it's work is complete.  Instead, the master
(at the cost of polling a db periodically) can determine if the workers
are done by looking up each partition's status in the job repository.
This commit removes the requirement for a reply channel and implements
the polling of the job repository to determine if the workers are done.

BATCH-2332
2014-12-23 16:29:41 -06:00
Michael Minella
2fec70d25e Add null check to AsyncItemWriter
The AsyncItemWriter is used in conjunction with the AsyncItemProcessor
to unwrap the Futures that are returned by that processor.
Traditionally when an ItemProcessor returns null, it's considered having
been filtered out and should not be passed to the ItemWriter.  In this
case, the AsyncItemWriter was not checking for nulls so they were being
passed to the delegate ItemWriter.  Most of the OOTB ItemWriters do not
perform a null check prior to doing the write so they were throwing NPEs
when using this paradigm.
2014-09-11 11:53:17 -05:00
Chris Schaefer
4f32f623f0 BATCH-2241 & BATCH-2243 - add namespace support for remote chunking 2014-09-03 01:10:47 -04:00
Michael Minella
deb4c6fb5b BATCH-2283: Updated MessageChannelPartitionHandler to return null when no partitions are specified 2014-08-06 14:52:02 -05:00
Michael Minella
e7a4e348a5 BATCH-2229 & BATCH-2218: Removed OSGi related metadata and Maven POMs 2014-05-12 15:32:02 -05:00
Michael Minella
f6b83167ac XD-1389: Added null check when receiving partitioned messages back to handle timeouts 2014-05-01 09:48:02 -05:00
Gunnar Hillert
f1d71a06f4 BATCH-2144 Convert Spring Batch to use Gradle
* Use Gradle 1.11
* Remove SpringSource references
* Update JavaDoc overview
* Update Jacoco conf + Add license/manifest files
* Addresses also BATCH-2187
* Update a number of unit tests to not be ignored

Jira: https://jira.springsource.org/browse/BATCH-2144
2014-04-24 12:16:17 -05:00
Michael Minella
9d17a3d088 Updated Spring Batch Integration to use Spring Integration 4.0.0.RC1 2014-04-16 09:44:46 -05:00
Michael Minella
1bb02e4f55 Consolidated Spring Batch Integration into the regular Spring Batch build. Note: There will need to be additional build work done during the release process. That will be addressed then 2014-01-07 16:33:14 -06:00
Gary Russell
e5afdf735e @Ignore 2 Tests
Two tests don't run under Spring 4; needs investigation.
2014-01-07 14:07:28 -06:00
Gary Russell
5105f59dd1 Initial SF/SI 4
More
2014-01-07 14:07:28 -06:00
Andrew Eisenberg
c6b804bfe3 Expose Job parameters in JdbcSearchableJobExecutionDao
See https://jira.springsource.org/browse/BATCHADM-176

Must be applied after
https://github.com/spring-projects/spring-batch/pull/231

As part of this, I had to update the dependency on spring-batch to
3.0.0-BUILD_SNAPSHOT.

Because of this dependency change, I had to add two
methods to JobRepositorySupport.  It looks like a stub class, so I
left the two methods implemented as stubs.
2014-01-07 14:07:28 -06:00
Michael Minella
5eb39ca118 BATCHADM-161: Tightened up tests and XML configurations 2014-01-07 14:07:28 -06:00
Gunnar Hillert
143cb4925a BATCHADM-161 - Add Job Launching Gateway
For reference see: https://jira.springsource.org/browse/BATCHADM-161

* Add XML Schema
* Add Namespace Handler
* Add Parser and Gateway classes
* Add tests
2014-01-07 14:06:42 -06:00
Michael Minella
aa099d226c BATCHADM-161: Tightened up tests and XML configurations 2014-01-07 13:35:12 -06:00
Gunnar Hillert
3909b75151 BATCHADM-161 - Add Job Launching Gateway
For reference see: https://jira.springsource.org/browse/BATCHADM-161

* Add XML Schema
* Add Namespace Handler
* Add Parser and Gateway classes
* Add tests
2014-01-07 13:35:12 -06:00
willschipp
f23dd64740 BATCHADM-137 - added optional setting of the replyChannel externally in
the messagechannelparitionhandler
2014-01-07 13:35:12 -06:00
Michael Minella
9c942734e6 BATCHADM-155: Updated to support Spring Batch 2.2.0 2014-01-07 13:35:12 -06:00
dvictor
4dc5dddc16 BATCHADM-125: Version-less URLs for S.I. 2.1
Also changes for deprecation of interval-trigger on poller.

BATCHADM-125 Polishing (garyrussell)

Revert spaces to tabs; fix up some inconsistent newlines.

RemoteChunkFaultTolerantStepJdbcIntegrationTests-context.xml
FileDropJobIntegrationTests-context.xml
AbstractIntegrationViewTests-context.xml
VanillaIntegrationTests-context.xml
RepeatTransactionalPollingIntegrationTests-context.xml
RetryRepeatTransactionalPollingIntegrationTests-context.xml
TransactionalPollingIntegrationTests-context.xml
RetryTransactionalPollingIntegrationTests-context.xml
2014-01-07 13:34:57 -06:00
Dave Syer
5779a04cfb Fix tests after upgrade to 2.1.7 2014-01-07 13:34:32 -06:00
Dave Syer
c06c3ec289 JMS tests cannot run in same context 2014-01-07 13:34:02 -06:00
Dave Syer
57993c31af BATCHADM-102: Change MessageChannelPartitionHandler to not require a replyChannl 2014-01-07 13:33:50 -06:00
Dave Syer
5b646c4edf BATCHADM-81: add step context manipulation for async processors
- AsyncItemProcessor creates step context for its runnable
 - We also provide StepContextInterceptor for supplying StepExecution to downsteam consumers
2014-01-07 13:33:50 -06:00