public class StaxEventItemReader<T> extends AbstractItemCountingItemStreamItemReader<T> implements ResourceAwareItemReaderItemStream<T>, org.springframework.beans.factory.InitializingBean
Constructor and Description |
---|
StaxEventItemReader() |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet()
Ensure that all required dependencies for the ItemReader to run are provided after all properties have been set.
|
protected void |
doClose()
Close the resources opened in
AbstractItemCountingItemStreamItemReader.doOpen() . |
protected void |
doOpen()
Open resources necessary to start reading input.
|
protected T |
doRead()
Move to next fragment and map it to item.
|
protected void |
jumpToItem(int itemIndex)
Move to the given item index.
|
protected boolean |
moveCursorToNextFragment(XMLEventReader reader)
Responsible for moving the cursor before the StartElement of the fragment root.
|
void |
setFragmentRootElementName(String fragmentRootElementName) |
void |
setResource(org.springframework.core.io.Resource resource) |
void |
setStrict(boolean strict)
In strict mode the reader will throw an exception on
AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext) if the input resource does not exist. |
void |
setUnmarshaller(org.springframework.oxm.Unmarshaller unmarshaller) |
close, getCurrentItemCount, isSaveState, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, update
getExecutionContextKey, setExecutionContextName, setName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close, open, update
read
public void setStrict(boolean strict)
AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext)
if the input resource does not exist.strict
- false by defaultpublic void setResource(org.springframework.core.io.Resource resource)
setResource
in interface ResourceAwareItemReaderItemStream<T>
public void setUnmarshaller(org.springframework.oxm.Unmarshaller unmarshaller)
unmarshaller
- maps xml fragments corresponding to records to objectspublic void setFragmentRootElementName(String fragmentRootElementName)
fragmentRootElementName
- name of the root element of the fragmentpublic void afterPropertiesSet() throws Exception
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
IllegalArgumentException
- if the Resource, FragmentDeserializer or FragmentRootElementName is null, or if
the root element is empty.IllegalStateException
- if the Resource does not exist.Exception
InitializingBean.afterPropertiesSet()
protected boolean moveCursorToNextFragment(XMLEventReader reader) throws NonTransientResourceException
true
if next fragment was found, false
otherwise.NonTransientResourceException
- if the cursor could not be moved. This will be treated as fatal and
subsequent calls to read will return null.protected void doClose() throws Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader.doOpen()
.doClose
in class AbstractItemCountingItemStreamItemReader<T>
Exception
protected void doOpen() throws Exception
AbstractItemCountingItemStreamItemReader
doOpen
in class AbstractItemCountingItemStreamItemReader<T>
Exception
protected T doRead() throws Exception
doRead
in class AbstractItemCountingItemStreamItemReader<T>
Exception
protected void jumpToItem(int itemIndex) throws Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader.doRead()
.jumpToItem
in class AbstractItemCountingItemStreamItemReader<T>
Exception
Copyright © 2014 Pivotal. All rights reserved.