T
- item typepublic class MultiResourceItemWriter<T> extends AbstractItemStreamItemWriter<T>
ResourceAwareItemWriterItemStream
and creates a new output
resource when the count of items written in current resource exceeds
setItemCountLimitPerResource(int)
. Suffix creation can be customized
with setResourceSuffixCreator(ResourceSuffixCreator)
.
Note that new resources are created only at chunk boundaries i.e. the number
of items written into one resource is between the limit set by
setItemCountLimitPerResource(int)
and (limit + chunk size).Constructor and Description |
---|
MultiResourceItemWriter() |
Modifier and Type | Method and Description |
---|---|
void |
close()
No-op.
|
void |
open(ExecutionContext executionContext)
No-op.
|
void |
setDelegate(ResourceAwareItemWriterItemStream<? super T> delegate)
Delegate used for actual writing of the output.
|
void |
setItemCountLimitPerResource(int itemCountLimitPerResource)
After this limit is exceeded the next chunk will be written into newly
created resource.
|
void |
setResource(org.springframework.core.io.Resource resource)
Prototype for output resources.
|
void |
setResourceSuffixCreator(ResourceSuffixCreator suffixCreator)
Allows customization of the suffix of the created resources based on the
index.
|
void |
setSaveState(boolean saveState) |
void |
update(ExecutionContext executionContext)
Return empty
ExecutionContext . |
void |
write(List<? extends T> items)
Process the supplied data element.
|
getExecutionContextKey, setExecutionContextName, setName
public void write(List<? extends T> items) throws Exception
ItemWriter
Exception
- if there are errors. The framework will catch the
exception and convert or rethrow it as appropriate.public void setResourceSuffixCreator(ResourceSuffixCreator suffixCreator)
public void setItemCountLimitPerResource(int itemCountLimitPerResource)
public void setDelegate(ResourceAwareItemWriterItemStream<? super T> delegate)
public void setResource(org.springframework.core.io.Resource resource)
setResourceSuffixCreator(ResourceSuffixCreator)
.public void setSaveState(boolean saveState)
public void close() throws ItemStreamException
ItemStreamSupport
close
in interface ItemStream
close
in class ItemStreamSupport
ItemStreamException
ItemStream.close()
public void open(ExecutionContext executionContext) throws ItemStreamException
ItemStreamSupport
open
in interface ItemStream
open
in class ItemStreamSupport
ItemStreamException
ItemStream.open(ExecutionContext)
public void update(ExecutionContext executionContext) throws ItemStreamException
ItemStreamSupport
ExecutionContext
.update
in interface ItemStream
update
in class ItemStreamSupport
executionContext
- to be updatedItemStreamException
ItemStream.update(ExecutionContext)
Copyright © 2014 Pivotal. All rights reserved.