org.apache.lucene.benchmark.byTask.tasks

## Class TaskSequence

- java.lang.Object
- - org.apache.lucene.benchmark.byTask.tasks.PerfTask
  - - org.apache.lucene.benchmark.byTask.tasks.TaskSequence

All Implemented Interfaces:
  Cloneable

    public class TaskSequence
    extends PerfTask

Sequence of parallel or sequential tasks.

### Field Summary

Fields
`static int` `REPEAT_EXHAUST`

### Fields inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask

`logStep, NEW_LINE, params, stopNow`

### Constructor Summary

Constructors
Constructor and Description
`TaskSequence(PerfRunData runData, String name, TaskSequence parent, boolean parallel)`

### Method Summary

Methods
`void` `addTask(PerfTask task)`
`protected TaskSequence` `clone()`
`void` `close()`
`int` `doLogic()` Perform the task once (ignoring repetitions specification) Return number of work items done by this task.
`String` `getName()`
`TaskSequence` `getParent()`
`int` `getRate()` Returns the rate per minute: how many operations should be performed in a minute.
`int` `getRepetitions()`
`ArrayList<PerfTask>` `getTasks()`
`boolean` `isCollapsable()` Return true if can be collapsed in case it is outermost sequence
`boolean` `isParallel()`
`void` `setNoChildReport()` Execute child tasks in a way that they do not report their time separately.
`void` `setRate(int rate, boolean perMin)`
`void` `setRepetitions(int repetitions)`
`void` `setRunTime(double sec)`
`void` `stopNow()`
`String` `toString()`

### Methods inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask

`getAlgLineNum, getBackgroundDeltaPriority, getDepth, getLogMessage, getParams, getRunData, getRunInBackground, isDisableCounting, runAndMaybeStats, setAlgLineNum, setDepth, setDisableCounting, setName, setParams, setRunInBackground, setup, shouldNeverLogAtStart, shouldNotRecordStats, supportsParams, tearDown`

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

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

### Field Detail

#### REPEAT_EXHAUST

    public static int REPEAT_EXHAUST

### Constructor Detail

#### TaskSequence

    public TaskSequence(PerfRunData runData,
                String name,
                TaskSequence parent,
                boolean parallel)

### Method Detail

#### close

    public void close()
               throws Exception

Overrides:
  `close` in class `PerfTask`
Throws:
  `Exception`

#### isParallel

    public boolean isParallel()

Returns:
  Returns the parallel.

#### getRepetitions

    public int getRepetitions()

Returns:
  Returns the repetitions.

#### setRunTime

    public void setRunTime(double sec)
                    throws Exception

Throws:
  `Exception`

#### setRepetitions

    public void setRepetitions(int repetitions)
                        throws Exception

Parameters:
  `repetitions` - The repetitions to set.
Throws:
  `Exception`

#### getParent

    public TaskSequence getParent()

Returns:
  Returns the parent.

#### doLogic

    public int doLogic()
                throws Exception

Description copied from class: `PerfTask`
Perform the task once (ignoring repetitions specification) Return number of work items done by this task. For indexing that can be number of docs added. For warming that can be number of scanned items, etc.

Specified by:
  `doLogic` in class `PerfTask`
Returns:
  number of work items done by this task.
Throws:
  `Exception`

#### stopNow

    public void stopNow()

Overrides:
  `stopNow` in class `PerfTask`

#### addTask

    public void addTask(PerfTask task)

#### toString

    public String toString()

Overrides:
  `toString` in class `PerfTask`

#### setNoChildReport

    public void setNoChildReport()

Execute child tasks in a way that they do not report their time separately.

#### getRate

    public int getRate()

Returns the rate per minute: how many operations should be performed in a minute. If 0 this has no effect.

Returns:
  the rate per min: how many operations should be performed in a minute.

#### setRate

    public void setRate(int rate,
               boolean perMin)

Parameters:
  `rate` - The rate to set.

#### getName

    public String getName()

Overrides:
  `getName` in class `PerfTask`
Returns:
  Returns the name.

#### getTasks

    public ArrayList<PerfTask> getTasks()

Returns:
  Returns the tasks.

#### clone

    protected TaskSequence clone()
                          throws CloneNotSupportedException

Overrides:
  `clone` in class `PerfTask`
Throws:
  `CloneNotSupportedException`

#### isCollapsable

    public boolean isCollapsable()

Return true if can be collapsed in case it is outermost sequence