Package org.springframework.batch.core.partition.support

# Class MultiResourcePartitioner

java.lang.Object
org.springframework.batch.core.partition.support.MultiResourcePartitioner

All Implemented Interfaces:
  `Partitioner`

public class MultiResourcePartitioner extends Object implements Partitioner
Implementation of `Partitioner` that locates multiple resources and associates their file names with execution context keys. Creates an `ExecutionContext` per resource, and labels them as `{partition0, partition1, ..., partitionN}`. The grid size is ignored.

Since:
  2.0
Author:
  Dave Syer

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MultiResourcePartitioner()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Map<String,ExecutionContext>`
  `partition(int gridSize)`
  Assign the filename of each of the injected resources to an `ExecutionContext`.
  `void`
  `setKeyName(String keyName)`
  The name of the key for the file name in each `ExecutionContext`.
  `void`
  `setResources(org.springframework.core.io.Resource[] resources)`
  The resources to assign to each partition.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### MultiResourcePartitioner

    public MultiResourcePartitioner()

- ## Method Details

  - ### setResources

    public void setResources(org.springframework.core.io.Resource[] resources)
    The resources to assign to each partition. In Spring configuration you can use a pattern to select multiple resources.
    Parameters:
      `resources` - the resources to use

  - ### setKeyName

    public void setKeyName(String keyName)
    The name of the key for the file name in each `ExecutionContext`. Defaults to "fileName".
    Parameters:
      `keyName` - the value of the key

  - ### partition

    public Map<String,ExecutionContext> partition(int gridSize)
    Assign the filename of each of the injected resources to an `ExecutionContext`.
    Specified by:
      `partition` in interface `Partitioner`
    Parameters:
      `gridSize` - the size of the map to return
    Returns:
      a map from identifier to input parameters
    See Also:
      - `Partitioner.partition(int)`