BATCH-2241 & BATCH-2243 - add namespace support for remote chunking
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.
BATCH-1863: The batch namespace can not be used with allowBeanDefinitionOverriding=false
Deleting an unnecessary import class in ExecutionContext.
"import org.springframework.util.Assert;"
Add BeanCreationException to list of standard failure exceptions

Without this change, when passing an invalid job parameter to a bean
that is created internally by Spring Batch will cause a
BeanCreationException that is essentially ignored.  Due to it being
ignored, an infinite loop occurs in processing.
Change ClassifierCompositeItemWriter to honor item order

The ClassifierCompositeItemWriter loops through the items passed to the
write method twice.  The first time to classifier each item.  The second
tiem to perform the actual writes (this prevents the unnecessicary IO if
an error occurs during classification).  A HashMap was previously used
to hold the classified items (key to the writer : item) however this
causes the items to be written out of order.  This update changes it to
a LinkedHashMap to honor the order the items come in.
Added test to DelimitedLineTokenizer based on StackOverflow Question

A question was asked on StackOverflow
(http://stackoverflow.com/questions/25914945/spring-batch-delimitedlinetokenizer-with-line-breaks-newline-in-csv)
in which a row wasn't being parsed as expected.  We didn't have a test
for that specific scenario so this commit adds one.
Conditionally add custom scopes when using XML configuration

When using a combination of Java configuration and the XML namespace
configuration, prior to this commit, we would add the batch custom
scopes twice which lead to issues.  This commit gives priority to the
custom scopes provided by the java configuration.  If you've used
@EnableBatchProcessing and have configured batch components using the
batch namespace, the custom scopes that come with the java config will
take precidence.

This commit addresses Jira BATCH-2266
Update DefaultBatchConfigurer to conform to @PostConstruct contracts

Prior to this commit the initialize method (which is annotated with
@PostConstruct) was throwing a checked exception wich goes against the
@PostConstruct contract.  We now wrap any checked exceptions in a
BatchConfigurationException and throw that.

This commit fixes (again) BATCH-2276
Fixed configuration of sort keys in JdbcPagingItemReader

The JdbcPagingItemReader allows the configuration of multiple sort keys.
If a user configures one of those columns with a table alias, it causes
issues.  This update strips the aliases off of the sort keys.
Update stopped flag to volitile in SystemCommandTasklet

The SystemCommandTasklet checks a flag to determine if another thread
has requested that it be stopped.  Since this flag will be set via
another thread than the executing thread, it needs to be declared
volitile so that it's state is propigated across threads correctly.  The
documentation for StoppableTasklet has also been upadted to call out
that scenario.

This commit addresses Jira BATCH-2271
Handle scenario where scanned item is filtered out

BATCH-2302 documents a scenario where an item throws an exception in a
fault tollerant step in the write, then in the process, throws an
exception as well.  This leads to an infinite loop.  To address this,
prior to attempting to write items during scanning we need to validate
that the there are items to be written (we were not which was causing a
NoSuchElementException when we did inputs.next().

This commit also removes an eronous System.out left in the
CoreNamespaceUtils.
Update javadoc to remove javadoc warnings
Ignoring tests that I had unignored
Add explicit call to afterPropertiesSet to a Flow when using Java config

When using java config, the call to SimpleFlow#afterPropertiesSet is not
called in all cases as noted in BATCH-2291.  This commit updates the
builder to explicitly make the call, and updates the SimpleFlow to be
idempotent for calls to afterPropertiesSet.
Fixes the RepositoryItemReader ignoring explicitly set currentItemCount

If the user explicitly sets the currentItemCount value on a
RepositoryItemReader, prior to this commit, it is ignored.  this commit
addresses this by moving the current counter up to the correct value
when that value is set.  This fix addresses BATCH-2274.

This commit also addresses a number of compiler warnings around javadoc.
Updated sequence initalization insert to be idempotent

BATCH-2159 provides a tweak to the insert statement used for
initializing the sequence tables used in the job repository database so
that they don't error if run multiple times as well as don't insert
multiple rows.
BATCH-2242: Stopping a job in STARTING state throws OptimisticLockingFailureException
BATCH-2248: Fixes for Ldif reader tests
Change prefetch on jms tests to 0 and add @DirtiesContext to tests

With the upgrade to ActiveMQ 5.9.0 as part of Spring IO, ActiveMQ's
prefetch behavior changed.  With each call to
JmsTemplate#receiveAndConvert, the template creates a new consumer.  In
these tests, the first call created a consumer which prefetched all the
test messages on the queue, leaving them unavailable for the second
consumer the JmsTemplate created.  By setting prefetch to 0, the
messages are now available for the subsequent
JmsTemplate#receiveAndConvert calls.  This addresses BATCH-2248.