# Class TestElementProperty

java.lang.Object
org.apache.jmeter.testelement.property.AbstractProperty
org.apache.jmeter.testelement.property.MultiProperty
org.apache.jmeter.testelement.property.TestElementProperty

All Implemented Interfaces:
  `Serializable, Cloneable, Comparable<JMeterProperty>, JMeterProperty`

public class TestElementProperty extends MultiProperty

See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class AbstractProperty

`log`

## Constructor Summary

Constructors
Constructor
Description
`TestElementProperty()`
`TestElementProperty(String name, TestElement value)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addProperty(JMeterProperty prop)`
Add a property to the collection.
`void`
`clear()`
Clear away all values in the property.
`TestElementProperty`
`clone()`
`boolean`
`equals(Object o)`
Determines if two test elements are equal.
`TestElement`
`getElement()`
`Object`
`getObjectValue()`
`String`
`getStringValue()`
`int`
`hashCode()`
`PropertyIterator`
`iterator()`
Get the property iterator to iterate through the sub-values of this JMeterProperty.
`void`
`mergeIn(JMeterProperty prop)`
Take the given property object and merge it's value with the current property object.
`void`
`recoverRunningVersion(TestElement owner)`
Tell the property to revert to the state at the time setRunningVersion(true) was called.
`void`
`setElement(TestElement el)`
`void`
`setObjectValue(Object v)`
`void`
`setRunningVersion(boolean runningVersion)`
Make the property a running version or turn it off as the running version.

### Methods inherited from class MultiProperty

`recoverRunningVersionOfSubElements`

### Methods inherited from class AbstractProperty

`compareTo, convertObject, createProperty, getBlankProperty, getBlankProperty, getBooleanValue, getDoubleValue, getFloatValue, getIntValue, getIterator, getLongValue, getName, getPropertyType, isEqualType, isRunningVersion, makeProperty, normalizeList, normalizeMap, setName, toString`

### Methods inherited from class Object

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

## Constructor Details

### TestElementProperty

public TestElementProperty(String name, TestElement value)

### TestElementProperty

public TestElementProperty()

## Method Details

### equals

public boolean equals(Object o)
Determines if two test elements are equal.

Overrides:
  `equals` in class `AbstractProperty`
Returns:
  true if the value is not null and equals the other Objects value; false otherwise (even if both values are null)

### hashCode

public int hashCode()
Description copied from class: `AbstractProperty`

Overrides:
  `hashCode` in class `AbstractProperty`

### getStringValue

public String getStringValue()

### setObjectValue

public void setObjectValue(Object v)

### getObjectValue

public Object getObjectValue()

### getElement

public TestElement getElement()

### setElement

public void setElement(TestElement el)

### clone

public TestElementProperty clone()

Specified by:
  `clone` in interface `JMeterProperty`
Overrides:
  `clone` in class `AbstractProperty`

### mergeIn

public void mergeIn(JMeterProperty prop)
Take the given property object and merge it's value with the current property object. For most property types, this will simply be ignored. But for collection properties and test element properties, more complex behavior is required.

Specified by:
  `mergeIn` in interface `JMeterProperty`
Overrides:
  `mergeIn` in class `MultiProperty`
Parameters:
  `prop` - the property object to merge into this property

### recoverRunningVersion

public void recoverRunningVersion(TestElement owner)
Tell the property to revert to the state at the time setRunningVersion(true) was called.

Parameters:
  `owner` - the owning element

### setRunningVersion

public void setRunningVersion(boolean runningVersion)
Make the property a running version or turn it off as the running version. A property that is made a running version will preserve the current state in such a way that it is retrievable by a future call to 'recoverRunningVersion()'. Additionally, a property that is a running version will resolve all functions prior to returning it's property value. A non-running version property will return functions as their uncompiled string representation.

Specified by:
  `setRunningVersion` in interface `JMeterProperty`
Overrides:
  `setRunningVersion` in class `MultiProperty`
Parameters:
  `runningVersion` - flag whether this property is a running version

### addProperty

public void addProperty(JMeterProperty prop)
Add a property to the collection.

Specified by:
  `addProperty` in class `MultiProperty`
Parameters:
  `prop` - the `JMeterProperty` to add

### clear

public void clear()
Clear away all values in the property.

Specified by:
  `clear` in class `MultiProperty`

### iterator

public PropertyIterator iterator()
Get the property iterator to iterate through the sub-values of this JMeterProperty.

Specified by:
  `iterator` in class `MultiProperty`
Returns:
  an iterator for the sub-values of this property