javax.batch.api.partition

## Class PartitionPlanImpl

- java.lang.Object
- - javax.batch.api.partition.PartitionPlanImpl

All Implemented Interfaces:
  PartitionPlan

    public class PartitionPlanImpl
    extends Object
    implements PartitionPlan

The PartitionPlanImpl class provides a basic implementation of the PartitionPlan interface.

### Constructor Summary

Constructors
Constructor and Description
`PartitionPlanImpl()`

### Method Summary

Methods
`Properties[]` `getPartitionProperties()` Gets array of Partition Properties objects for Partitions.
`int` `getPartitions()` Gets count of Partitions.
`boolean` `getPartitionsOverride()` Return current value of partition override setting.
`int` `getThreads()` Gets maximum number of threads requested to use to run partitions for this step.
`void` `setPartitionProperties(Properties[] props)` Sets array of substitution Properties objects for the set of Partitions.
`void` `setPartitions(int count)` Set number of partitions.
`void` `setPartitionsOverride(boolean override)` Specify whether or not to override the partition count from the previous job execution.
`void` `setThreads(int count)` Set maximum number of threads requested to use to run partitions for this step.

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

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

### Constructor Detail

#### PartitionPlanImpl

    public PartitionPlanImpl()

### Method Detail

#### setPartitions

    public void setPartitions(int count)

Description copied from interface: `PartitionPlan`
Set number of partitions.

Specified by:
  `setPartitions` in interface `PartitionPlan`
Parameters:
  `count` - specifies the partition count

#### setThreads

    public void setThreads(int count)

Description copied from interface: `PartitionPlan`
Set maximum number of threads requested to use to run partitions for this step. A value of '0' requests the batch implementation to use the partition count as the thread count. Note the batch runtime is not required to use this full number of threads; it may not have this many available, and may use less.

Specified by:
  `setThreads` in interface `PartitionPlan`
Parameters:
  `count` - specifies the requested thread count

#### setPartitionsOverride

    public void setPartitionsOverride(boolean override)

Description copied from interface: `PartitionPlan`
Specify whether or not to override the partition count from the previous job execution. This applies only to step restart.

When `false` is specified, the partition count from the previous job execution is used and any new value set for partition count in the current run is ignored. In addition, partition results from the previous job execution are remembered, and only incomplete partitions are reprocessed.

When `true` is specified, the partition count from the current run is used and all results from past partitions are discarded. Any resource cleanup or back out of work done in the previous run is the responsibility of the application. The PartitionReducer artifact's rollbackPartitionedStep method is invoked during restart before any partitions begin processing to provide a cleanup hook.

Specified by:
  `setPartitionsOverride` in interface `PartitionPlan`
Parameters:
  `override` - See method description

#### getPartitionsOverride

    public boolean getPartitionsOverride()

Description copied from interface: `PartitionPlan`
Return current value of partition override setting.

Specified by:
  `getPartitionsOverride` in interface `PartitionPlan`
Returns:
  override setting.
See Also:
  `PartitionPlan.setPartitionsOverride(boolean)`

#### setPartitionProperties

    public void setPartitionProperties(Properties[] props)

Description copied from interface: `PartitionPlan`
Sets array of substitution Properties objects for the set of Partitions.

Specified by:
  `setPartitionProperties` in interface `PartitionPlan`
Parameters:
  `props` - specifies the Properties object array
See Also:
  `PartitionPlan.getPartitionProperties()`

#### getPartitions

    public int getPartitions()

Description copied from interface: `PartitionPlan`
Gets count of Partitions.

Specified by:
  `getPartitions` in interface `PartitionPlan`
Returns:
  Partition count

#### getThreads

    public int getThreads()

Description copied from interface: `PartitionPlan`
Gets maximum number of threads requested to use to run partitions for this step. A value of '0' requests the batch implementation to use the partition count as the thread count. Note the batch runtime is not required to use this full number of threads; it may not have this many available, and may use less.

Specified by:
  `getThreads` in interface `PartitionPlan`
Returns:
  requested thread count

#### getPartitionProperties

    public Properties[] getPartitionProperties()

Description copied from interface: `PartitionPlan`
Gets array of Partition Properties objects for Partitions.

These can be used in Job XML substitution using substitution expressions with the syntax: #{partitionPlan['propertyName']}

Each element of the Properties array returned can be used to resolving substitutions for a single partition. In the typical use case, each Properties element will have a similar set of property names, with a substitution potentially resolving to the corresponding value for each partition.

Specified by:
  `getPartitionProperties` in interface `PartitionPlan`
Returns:
  Partition Properties object array

© Copyright IBM Corp. 2014
Licensed under the Apache License, Version 2.0