# Class UserParameters

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.modifiers.UserParameters

All Implemented Interfaces:
  `Serializable, Cloneable, LoopIterationListener, Searchable, PreProcessor, TestElement`

public class UserParameters extends AbstractTestElement implements Serializable, PreProcessor, LoopIterationListener

See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`NAMES`
`static final String`
`PER_ITERATION`
`static final String`
`THREAD_VALUES`

### Fields inherited from interface TestElement

`COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

## Constructor Summary

Constructors
Constructor
Description
`UserParameters()`

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
`CollectionProperty`
`getNames()`
`CollectionProperty`
`getThreadLists()`
`boolean`
`isPerIteration()`
`void`
`iterationStart(LoopIterationEvent event)`
Called when a loop iteration is about to start.
`protected void`
`mergeIn(TestElement element)`
Add to this the properties of element (by reference)
`void`
`process()`
`void`
`setNames(Collection<?> list)`
The list of names of the variables to hold values.
`void`
`setNames(CollectionProperty list)`
The list of names of the variables to hold values.
`void`
`setPerIteration(boolean perIter)`
`void`
`setThreadLists(Collection<?> threadLists)`
The thread list is a list of lists.
`void`
`setThreadLists(CollectionProperty threadLists)`
The thread list is a list of lists.

### Methods inherited from class AbstractTestElement

`addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

### Methods inherited from class Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### NAMES

public static final String NAMES

See Also:
  - Constant Field Values

### THREAD_VALUES

public static final String THREAD_VALUES

See Also:
  - Constant Field Values

### PER_ITERATION

public static final String PER_ITERATION

See Also:
  - Constant Field Values

## Constructor Details

### UserParameters

public UserParameters()

## Method Details

### getNames

public CollectionProperty getNames()

### getThreadLists

public CollectionProperty getThreadLists()

### setNames

public void setNames(Collection<?> list)
The list of names of the variables to hold values. This list must come in the same order as the sub lists that are given to `setThreadLists(Collection)`.

Parameters:
  `list` - The ordered list of names

### setNames

public void setNames(CollectionProperty list)
The list of names of the variables to hold values. This list must come in the same order as the sub lists that are given to `setThreadLists(CollectionProperty)`.

Parameters:
  `list` - The ordered list of names

### setThreadLists

public void setThreadLists(Collection<?> threadLists)
The thread list is a list of lists. Each list within the parent list is a collection of values for a simulated user. As many different sets of values can be supplied in this fashion to cause JMeter to set different values to variables for different test threads.

Parameters:
  `threadLists` - The list of lists of values for each user thread

### setThreadLists

public void setThreadLists(CollectionProperty threadLists)
The thread list is a list of lists. Each list within the parent list is a collection of values for a simulated user. As many different sets of values can be supplied in this fashion to cause JMeter to set different values to variables for different test threads.

Parameters:
  `threadLists` - The list of lists of values for each user thread

### isPerIteration

public boolean isPerIteration()

### setPerIteration

public void setPerIteration(boolean perIter)

### process

public void process()

Specified by:
  `process` in interface `PreProcessor`

### iterationStart

public void iterationStart(LoopIterationEvent event)
Description copied from interface: `LoopIterationListener`
Called when a loop iteration is about to start.

Specified by:
  `iterationStart` in interface `LoopIterationListener`
Parameters:
  `event` - the event
See Also:
  - `LoopIterationListener.iterationStart(LoopIterationEvent)`

### clone

public Object clone()

Specified by:
  `clone` in interface `TestElement`
Overrides:
  `clone` in class `AbstractTestElement`

### mergeIn

protected void mergeIn(TestElement element)
Add to this the properties of element (by reference)

Overrides:
  `mergeIn` in class `AbstractTestElement`
Parameters:
  `element` - `TestElement`